diff options
author | Günther Deschner <gd@samba.org> | 2005-11-22 14:10:49 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 11:05:30 -0500 |
commit | 63addcb4d7c9c13446d91a0972fe29542a7e1bad (patch) | |
tree | 33c02eb431e34273e4f9526a90867ef9484cd61a /source3/rpc_parse | |
parent | e09cc27d3b0156fd410c1e47cbbb6686819119d4 (diff) | |
download | samba-63addcb4d7c9c13446d91a0972fe29542a7e1bad.tar.gz samba-63addcb4d7c9c13446d91a0972fe29542a7e1bad.tar.bz2 samba-63addcb4d7c9c13446d91a0972fe29542a7e1bad.zip |
r11853: Add Dsr_GetSiteName (handy for experimenting with GPOs).
Guenther
(This used to be commit c54430a7b5e40d3bdf8afdc813eb722c0a3b861e)
Diffstat (limited to 'source3/rpc_parse')
-rw-r--r-- | source3/rpc_parse/parse_net.c | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/source3/rpc_parse/parse_net.c b/source3/rpc_parse/parse_net.c index 3732ab3a72..ce2a085f47 100644 --- a/source3/rpc_parse/parse_net.c +++ b/source3/rpc_parse/parse_net.c @@ -3389,3 +3389,75 @@ BOOL net_io_r_dsr_getdcname(const char *desc, NET_R_DSR_GETDCNAME *r_t, return True; } + +/******************************************************************* + Inits a NET_Q_DSR_GETSITENAME structure. +********************************************************************/ + +void init_net_q_dsr_getsitename(NET_Q_DSR_GETSITENAME *r_t, const char *computer_name) +{ + DEBUG(5, ("init_net_q_dsr_getsitename\n")); + + r_t->ptr_computer_name = (computer_name != NULL); + init_unistr2(&r_t->uni_computer_name, computer_name, UNI_STR_TERMINATE); +} + +/******************************************************************* + Reads or writes an NET_Q_DSR_GETSITENAME structure. +********************************************************************/ + +BOOL net_io_q_dsr_getsitename(const char *desc, NET_Q_DSR_GETSITENAME *r_t, + prs_struct *ps, int depth) +{ + if (r_t == NULL) + return False; + + prs_debug(ps, depth, desc, "net_io_q_dsr_getsitename"); + depth++; + + if (!prs_uint32("ptr_computer_name", ps, depth, &r_t->ptr_computer_name)) + return False; + + if (!smb_io_unistr2("computer_name", &r_t->uni_computer_name, + r_t->ptr_computer_name, ps, depth)) + return False; + + if (!prs_align(ps)) + return False; + + return True; +} + +/******************************************************************* + Reads or writes an NET_R_DSR_GETSITENAME structure. +********************************************************************/ + +BOOL net_io_r_dsr_getsitename(const char *desc, NET_R_DSR_GETSITENAME *r_t, + prs_struct *ps, int depth) +{ + if (r_t == NULL) + return False; + + prs_debug(ps, depth, desc, "net_io_r_dsr_getsitename"); + depth++; + + if (!prs_uint32("ptr_site_name", ps, depth, &r_t->ptr_site_name)) + return False; + + if (!prs_align(ps)) + return False; + + if (!smb_io_unistr2("site_name", &r_t->uni_site_name, + r_t->ptr_site_name, ps, depth)) + return False; + + if (!prs_align(ps)) + return False; + + if (!prs_werror("result", ps, depth, &r_t->result)) + return False; + + return True; +} + + |