summaryrefslogtreecommitdiff
path: root/source3/rpc_parse
diff options
context:
space:
mode:
authorVolker Lendecke <vlendec@samba.org>2007-05-23 15:17:49 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:22:44 -0500
commit2945490a0fb3dbcd6088a8825a3cd46d9f91ebf7 (patch)
treefc816f5c4bcf6469400aef188b2b769ae1dec1f4 /source3/rpc_parse
parent918b6ea082562dd269c5f23941adb2f47a61dd59 (diff)
downloadsamba-2945490a0fb3dbcd6088a8825a3cd46d9f91ebf7.tar.gz
samba-2945490a0fb3dbcd6088a8825a3cd46d9f91ebf7.tar.bz2
samba-2945490a0fb3dbcd6088a8825a3cd46d9f91ebf7.zip
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)
Diffstat (limited to 'source3/rpc_parse')
-rw-r--r--source3/rpc_parse/parse_misc.c3
-rw-r--r--source3/rpc_parse/parse_net.c18
2 files changed, 20 insertions, 1 deletions
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
@@ -1376,6 +1376,21 @@ void init_sam_info(DOM_SAM_INFO *sam,
}
/*******************************************************************
+ 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;