diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2008-12-19 21:47:45 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2008-12-19 21:47:45 +0100 |
commit | 5076c64d43c68a028ac944c336715b4cb277365f (patch) | |
tree | e88fc16979b75b5b30377e84b76ebb1b87e01591 /source3/rpc_server/srv_netlog_nt.c | |
parent | 6998ef4fe021ebf40f63c2191d3259888a8ad7f4 (diff) | |
parent | 13eefa7c435cb5ac656f662c78260a82caf43180 (diff) | |
download | samba-5076c64d43c68a028ac944c336715b4cb277365f.tar.gz samba-5076c64d43c68a028ac944c336715b4cb277365f.tar.bz2 samba-5076c64d43c68a028ac944c336715b4cb277365f.zip |
Merge branch 'master' of ssh://git.samba.org/data/git/samba
Diffstat (limited to 'source3/rpc_server/srv_netlog_nt.c')
-rw-r--r-- | source3/rpc_server/srv_netlog_nt.c | 60 |
1 files changed, 32 insertions, 28 deletions
diff --git a/source3/rpc_server/srv_netlog_nt.c b/source3/rpc_server/srv_netlog_nt.c index 038690d0f1..16d370ce6d 100644 --- a/source3/rpc_server/srv_netlog_nt.c +++ b/source3/rpc_server/srv_netlog_nt.c @@ -90,28 +90,24 @@ static void init_netlogon_info3(struct netr_NETLOGON_INFO_3 *r, WERROR _netr_LogonControl(pipes_struct *p, struct netr_LogonControl *r) { - struct netr_NETLOGON_INFO_1 *info1; - uint32_t flags = 0x0; - uint32_t pdc_connection_status = W_ERROR_V(WERR_OK); - - /* Setup the Logon Control response */ + struct netr_LogonControl2Ex l; switch (r->in.level) { - case 1: - info1 = TALLOC_ZERO_P(p->mem_ctx, struct netr_NETLOGON_INFO_1); - if (!info1) { - return WERR_NOMEM; - } - init_netlogon_info1(info1, - flags, - pdc_connection_status); - r->out.info->info1 = info1; - break; - default: - return WERR_UNKNOWN_LEVEL; + case 1: + break; + case 2: + return WERR_NOT_SUPPORTED; + default: + return WERR_UNKNOWN_LEVEL; } - return WERR_OK; + l.in.logon_server = r->in.logon_server; + l.in.function_code = r->in.function_code; + l.in.level = r->in.level; + l.in.data = NULL; + l.out.query = r->out.info; + + return _netr_LogonControl2Ex(p, &l); } /**************************************************************************** @@ -132,6 +128,24 @@ static void send_sync_message(void) WERROR _netr_LogonControl2(pipes_struct *p, struct netr_LogonControl2 *r) { + struct netr_LogonControl2Ex l; + + l.in.logon_server = r->in.logon_server; + l.in.function_code = r->in.function_code; + l.in.level = r->in.level; + l.in.data = r->in.data; + l.out.query = r->out.query; + + return _netr_LogonControl2Ex(p, &l); +} + +/**************************************************************** + _netr_LogonControl2Ex +****************************************************************/ + +WERROR _netr_LogonControl2Ex(pipes_struct *p, + struct netr_LogonControl2Ex *r) +{ uint32 flags = 0x0; uint32 pdc_connection_status = 0x0; uint32 logon_attempts = 0x0; @@ -1142,16 +1156,6 @@ NTSTATUS _netr_DatabaseRedo(pipes_struct *p, /**************************************************************** ****************************************************************/ -WERROR _netr_LogonControl2Ex(pipes_struct *p, - struct netr_LogonControl2Ex *r) -{ - p->rng_fault_state = true; - return WERR_NOT_SUPPORTED; -} - -/**************************************************************** -****************************************************************/ - WERROR _netr_DsRGetDCName(pipes_struct *p, struct netr_DsRGetDCName *r) { |