summaryrefslogtreecommitdiff
path: root/source3/rpc_server/srv_netlog_nt.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2001-03-13 20:13:20 +0000
committerJeremy Allison <jra@samba.org>2001-03-13 20:13:20 +0000
commit13a584b05acab8d0bb0257712664a3c6a90e3f97 (patch)
tree96eb1c2aa6fe77aca0060715cebb98212113c703 /source3/rpc_server/srv_netlog_nt.c
parent0f710e9bdc740a30468cc85131bf60848306b6bb (diff)
downloadsamba-13a584b05acab8d0bb0257712664a3c6a90e3f97.tar.gz
samba-13a584b05acab8d0bb0257712664a3c6a90e3f97.tar.bz2
samba-13a584b05acab8d0bb0257712664a3c6a90e3f97.zip
rpc_parse/parse_samr.c: Removed unneeded deubg.
rpc_server/srv_netlog_nt.c: Ensure we marshall a bad password return correctly to a w2k client. Jeremy. (This used to be commit 500c7bc0fed16713401643bdede67cc0c8044d52)
Diffstat (limited to 'source3/rpc_server/srv_netlog_nt.c')
-rw-r--r--source3/rpc_server/srv_netlog_nt.c25
1 files changed, 10 insertions, 15 deletions
diff --git a/source3/rpc_server/srv_netlog_nt.c b/source3/rpc_server/srv_netlog_nt.c
index 6a6254574c..15ca079238 100644
--- a/source3/rpc_server/srv_netlog_nt.c
+++ b/source3/rpc_server/srv_netlog_nt.c
@@ -477,6 +477,15 @@ uint32 _net_sam_logon(pipes_struct *p, NET_Q_SAM_LOGON *q_u, NET_R_SAM_LOGON *r_
else
memcpy(&p->dc.srv_cred, &p->dc.clnt_cred, sizeof(p->dc.clnt_cred));
+ r_u->buffer_creds = 1; /* yes, we have valid server credentials */
+ memcpy(&r_u->srv_creds, &srv_cred, sizeof(r_u->srv_creds));
+
+ /* store the user information, if there is any. */
+ r_u->user = usr_info;
+ r_u->switch_value = 0; /* indicates no info */
+ r_u->auth_resp = 1; /* authoritative response */
+ r_u->switch_value = 3; /* indicates type of validation user info */
+
/* find the username */
switch (q_u->sam_id.logon_level) {
@@ -593,19 +602,5 @@ uint32 _net_sam_logon(pipes_struct *p, NET_Q_SAM_LOGON *q_u, NET_R_SAM_LOGON *r_
NULL); /* char *other_sids */
}
- /* XXXX maybe we want to say 'no', reject the client's credentials */
- r_u->buffer_creds = 1; /* yes, we have valid server credentials */
- memcpy(&r_u->srv_creds, &srv_cred, sizeof(r_u->srv_creds));
-
- /* store the user information, if there is any. */
- r_u->user = usr_info;
- if (status == NT_STATUS_NOPROBLEMO && usr_info != NULL && usr_info->ptr_user_info != 0)
- r_u->switch_value = 3; /* indicates type of validation user info */
- else
- r_u->switch_value = 0; /* indicates no info */
-
- r_u->status = status;
- r_u->auth_resp = 1; /* authoritative response */
-
- return r_u->status;
+ return status;
}