summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2008-05-16 14:14:55 +0200
committerGünther Deschner <gd@samba.org>2008-05-16 14:23:51 +0200
commit58f22b738e038730dbb0e0d0779099ce364f7b9a (patch)
treeecb637a9a1879de77b8345b5d4aaf5bd15a8a887
parentce623c0736388838cbb739e483e561316af77834 (diff)
downloadsamba-58f22b738e038730dbb0e0d0779099ce364f7b9a.tar.gz
Re-add samr getdispinfoindex parsing which got lost in the glue commit.
Guenther
-rw-r--r--source/include/rpc_samr.h2
-rw-r--r--source/rpc_parse/parse_samr.c81
2 files changed, 82 insertions, 1 deletions
diff --git a/source/include/rpc_samr.h b/source/include/rpc_samr.h
index a7a9660c7ff..1df0bee541a 100644
--- a/source/include/rpc_samr.h
+++ b/source/include/rpc_samr.h
@@ -130,7 +130,7 @@ SamrTestPrivateFunctionsUser
#define SAMR_UNKNOWN_2f 0x2f
#define SAMR_QUERY_DISPINFO3 0x30 /* Alias for SAMR_QUERY_DISPINFO
with info level 3 */
-#define SAMR_UNKNOWN_31 0x31
+#define SAMR_GET_DISPENUM_INDEX2 0x31
#define SAMR_CREATE_USER 0x32
#define SAMR_QUERY_DISPINFO4 0x33 /* Alias for SAMR_QUERY_DISPINFO
with info level 4 */
diff --git a/source/rpc_parse/parse_samr.c b/source/rpc_parse/parse_samr.c
index c9a6ee3cc32..f0130cd81f1 100644
--- a/source/rpc_parse/parse_samr.c
+++ b/source/rpc_parse/parse_samr.c
@@ -2173,6 +2173,76 @@ BOOL samr_io_r_query_dispinfo(const char *desc, SAMR_R_QUERY_DISPINFO * r_u,
}
/*******************************************************************
+inits a SAMR_Q_GET_DISPENUM_INDEX structure.
+********************************************************************/
+
+void init_samr_q_get_dispenum_index(SAMR_Q_GET_DISPENUM_INDEX * q_e, POLICY_HND *pol,
+ uint16 switch_level, const char *name)
+{
+ DEBUG(5, ("init_samr_q_get_dispenum_index\n"));
+
+ q_e->domain_pol = *pol;
+
+ q_e->switch_level = switch_level;
+
+ init_lsa_string(&q_e->name, name);
+}
+
+/*******************************************************************
+reads or writes a structure.
+********************************************************************/
+
+BOOL samr_io_q_get_dispenum_index(const char *desc, SAMR_Q_GET_DISPENUM_INDEX * q_e,
+ prs_struct *ps, int depth)
+{
+ if (q_e == NULL)
+ return False;
+
+ prs_debug(ps, depth, desc, "samr_io_q_get_dispenum_index");
+ depth++;
+
+ if(!prs_align(ps))
+ return False;
+
+ if(!smb_io_pol_hnd("domain_pol", &q_e->domain_pol, ps, depth))
+ return False;
+
+ if(!prs_uint16("switch_level", ps, depth, &q_e->switch_level))
+ return False;
+
+ if (!smb_io_lsa_string("name", &q_e->name, ps, depth))
+ return False;
+
+ return True;
+}
+
+/*******************************************************************
+reads or writes a structure.
+********************************************************************/
+
+BOOL samr_io_r_get_dispenum_index(const char *desc, SAMR_R_GET_DISPENUM_INDEX * r_u,
+ prs_struct *ps, int depth)
+{
+ if (r_u == NULL)
+ return False;
+
+ prs_debug(ps, depth, desc, "samr_io_r_get_dispenum_index");
+ depth++;
+
+ if(!prs_align(ps))
+ return False;
+
+ if(!prs_uint32("idx", ps, depth, &r_u->idx))
+ return False;
+
+ if(!prs_ntstatus("status", ps, depth, &r_u->status))
+ return False;
+
+ return True;
+}
+
+
+/*******************************************************************
inits a SAMR_Q_OPEN_GROUP structure.
********************************************************************/
@@ -2188,6 +2258,17 @@ void init_samr_q_open_group(SAMR_Q_OPEN_GROUP * q_c,
}
/*******************************************************************
+inits a SAMR_R_GET_DISPENUM_INDEX structure.
+********************************************************************/
+
+void init_samr_r_get_dispenum_index(SAMR_R_GET_DISPENUM_INDEX * q_e, uint32 idx)
+{
+ DEBUG(5, ("init_samr_r_get_dispenum_index\n"));
+
+ q_e->idx = idx;
+}
+
+/*******************************************************************
reads or writes a structure.
********************************************************************/