From 2945490a0fb3dbcd6088a8825a3cd46d9f91ebf7 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Wed, 23 May 2007 15:17:49 +0000 Subject: r23091: Add rpccli_netlogon_sam_network_logon_ex, fix its parsing. This does not use the credential chain and only works over netlogon, but it would allow multiple outstanding auth requests for a single workstation account. (This used to be commit 123290d0947191abca4a3b3d81718c823c1bc4a0) --- source3/rpc_parse/parse_misc.c | 3 ++- source3/rpc_parse/parse_net.c | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) (limited to 'source3/rpc_parse') diff --git a/source3/rpc_parse/parse_misc.c b/source3/rpc_parse/parse_misc.c index 6838547090..586598db89 100644 --- a/source3/rpc_parse/parse_misc.c +++ b/source3/rpc_parse/parse_misc.c @@ -1337,7 +1337,8 @@ void init_dom_rid4(DOM_RID4 *rid4, uint16 unknown, uint16 attr, uint32 rid) Inits a DOM_CLNT_SRV structure. ********************************************************************/ -static void init_clnt_srv(DOM_CLNT_SRV *logcln, const char *logon_srv, const char *comp_name) +void init_clnt_srv(DOM_CLNT_SRV *logcln, const char *logon_srv, + const char *comp_name) { DEBUG(5,("init_clnt_srv: %d\n", __LINE__)); diff --git a/source3/rpc_parse/parse_net.c b/source3/rpc_parse/parse_net.c index 6e2b2b26e7..01d77f4e07 100644 --- a/source3/rpc_parse/parse_net.c +++ b/source3/rpc_parse/parse_net.c @@ -1375,6 +1375,21 @@ void init_sam_info(DOM_SAM_INFO *sam, sam->ctr = ctr; } +/******************************************************************* + Inits a DOM_SAM_INFO structure. +********************************************************************/ + +void init_sam_info_ex(DOM_SAM_INFO_EX *sam, + const char *logon_srv, const char *comp_name, + uint16 logon_level, NET_ID_INFO_CTR *ctr) +{ + DEBUG(5,("init_sam_info_ex: %d\n", __LINE__)); + + init_clnt_srv(&sam->client, logon_srv, comp_name); + sam->logon_level = logon_level; + sam->ctr = ctr; +} + /******************************************************************* Reads or writes a DOM_SAM_INFO structure. ********************************************************************/ @@ -1993,6 +2008,9 @@ BOOL net_io_q_sam_logon_ex(const char *desc, NET_Q_SAM_LOGON_EX *q_l, prs_struct if(!prs_uint16("validation_level", ps, depth, &q_l->validation_level)) return False; + if (!prs_align(ps)) + return False; + if(!prs_uint32("flags ", ps, depth, &q_l->flags)) return False; -- cgit