[SCM] Samba Shared Repository - branch v3-3-test updated -
release-3-2-0pre2-4280-g5ee3d6c
Jeremy Allison
jra at samba.org
Wed Oct 22 20:30:08 GMT 2008
The branch, v3-3-test has been updated
via 5ee3d6c3b1394e705691247b471c4511244a97af (commit)
from 3690f2d87549840b5408771d2596069ff1732fc5 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test
- Log -----------------------------------------------------------------
commit 5ee3d6c3b1394e705691247b471c4511244a97af
Author: Jeremy Allison <jra at samba.org>
Date: Wed Oct 22 13:29:21 2008 -0700
Janitor for Guenther, "fix _lsa_GetUserName."
Jeremy.
-----------------------------------------------------------------------
Summary of changes:
source/rpc_server/srv_lsa_nt.c | 27 ++++++++++++++++++++-------
source/rpcclient/cmd_lsarpc.c | 3 ++-
2 files changed, 22 insertions(+), 8 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/rpc_server/srv_lsa_nt.c b/source/rpc_server/srv_lsa_nt.c
index 910b302..77eecaf 100644
--- a/source/rpc_server/srv_lsa_nt.c
+++ b/source/rpc_server/srv_lsa_nt.c
@@ -1462,6 +1462,16 @@ NTSTATUS _lsa_GetUserName(pipes_struct *p,
struct lsa_String *account_name = NULL;
struct lsa_String *authority_name = NULL;
+ if (r->in.account_name &&
+ *r->in.account_name) {
+ return NT_STATUS_INVALID_PARAMETER;
+ }
+
+ if (r->in.authority_name &&
+ *r->in.authority_name) {
+ return NT_STATUS_INVALID_PARAMETER;
+ }
+
if (p->server_info->guest) {
/*
* I'm 99% sure this is not the right place to do this,
@@ -1481,17 +1491,20 @@ NTSTATUS _lsa_GetUserName(pipes_struct *p,
if (!account_name) {
return NT_STATUS_NO_MEMORY;
}
+ init_lsa_String(account_name, username);
- authority_name = TALLOC_ZERO_P(p->mem_ctx, struct lsa_String);
- if (!authority_name) {
- return NT_STATUS_NO_MEMORY;
+ if (r->out.authority_name) {
+ authority_name = TALLOC_ZERO_P(p->mem_ctx, struct lsa_String);
+ if (!authority_name) {
+ return NT_STATUS_NO_MEMORY;
+ }
+ init_lsa_String(authority_name, domname);
}
- init_lsa_String(account_name, username);
- init_lsa_String(authority_name, domname);
-
*r->out.account_name = account_name;
- *r->out.authority_name = authority_name;
+ if (r->out.authority_name) {
+ *r->out.authority_name = authority_name;
+ }
return NT_STATUS_OK;
}
diff --git a/source/rpcclient/cmd_lsarpc.c b/source/rpcclient/cmd_lsarpc.c
index 110b34c..e02fbee 100644
--- a/source/rpcclient/cmd_lsarpc.c
+++ b/source/rpcclient/cmd_lsarpc.c
@@ -1184,7 +1184,8 @@ static NTSTATUS cmd_lsa_get_username(struct rpc_pipe_client *cli,
/* Print results */
printf("Account Name: %s, Authority Name: %s\n",
- account_name->string, authority_name->string);
+ account_name->string, authority_name ? authority_name->string :
+ "");
rpccli_lsa_Close(cli, mem_ctx, &pol);
done:
--
Samba Shared Repository
More information about the samba-cvs
mailing list