summaryrefslogtreecommitdiff
path: root/source3/rpc_parse
diff options
context:
space:
mode:
authorMatthew Chapman <matty@samba.org>1999-03-18 09:36:43 +0000
committerMatthew Chapman <matty@samba.org>1999-03-18 09:36:43 +0000
commitf7eaf17216c91c66719b2393c7a8716fc55e4e5f (patch)
treeacf6cd8bf859203a497b46fb70af5b3bcb75d454 /source3/rpc_parse
parenteb82f27bd194f578ffa0557bdfb289e89a132e6b (diff)
downloadsamba-f7eaf17216c91c66719b2393c7a8716fc55e4e5f.tar.gz
samba-f7eaf17216c91c66719b2393c7a8716fc55e4e5f.tar.bz2
samba-f7eaf17216c91c66719b2393c7a8716fc55e4e5f.zip
Added SVC_START_SERVICE rpc. An NT PDC will attempt to start the NETLOGON
service on its BDC's prior to initiating SAM replication. For now just return success. (This used to be commit 113d03a38a34e5c4115dab59349078093bcd4888)
Diffstat (limited to 'source3/rpc_parse')
-rw-r--r--source3/rpc_parse/parse_svc.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/source3/rpc_parse/parse_svc.c b/source3/rpc_parse/parse_svc.c
index e8cdd35a2c..f936df24b9 100644
--- a/source3/rpc_parse/parse_svc.c
+++ b/source3/rpc_parse/parse_svc.c
@@ -163,6 +163,54 @@ void svc_io_r_open_service(char *desc, SVC_R_OPEN_SERVICE *r_u, prs_struct *ps,
}
/*******************************************************************
+reads or writes a SVC_Q_START_SERVICE structure.
+********************************************************************/
+void svc_io_q_start_service(char *desc, SVC_Q_START_SERVICE *q_s, prs_struct *ps, int depth)
+{
+ if (q_s == NULL) return;
+
+ prs_debug(ps, depth, desc, "svc_io_q_start_service");
+ depth++;
+
+ prs_align(ps);
+ smb_io_pol_hnd("", &(q_s->pol), ps, depth);
+
+ prs_align(ps);
+ prs_uint32("argc ", ps, depth, &(q_s->argc ));
+ prs_uint32("ptr_argv", ps, depth, &(q_s->ptr_argv));
+
+ if (q_s->ptr_argv != 0)
+ {
+ int i;
+
+ prs_uint32("argc2 ", ps, depth, &(q_s->argc2));
+
+ if (q_s->argc2 > MAX_SVC_ARGS)
+ {
+ q_s->argc = q_s->argc2 = MAX_SVC_ARGS;
+ }
+
+ for (i = 0; i < q_s->argc2; i++)
+ {
+ smb_io_unistr2("", &(q_s->argv[i]), 1, ps, depth);
+ }
+ }
+}
+
+/*******************************************************************
+reads or writes a structure.
+********************************************************************/
+void svc_io_r_start_service(char *desc, SVC_R_START_SERVICE *r_s, prs_struct *ps, int depth)
+{
+ if (r_s == NULL) return;
+
+ prs_debug(ps, depth, desc, "svc_io_r_start_service");
+ depth++;
+
+ prs_uint32("status", ps, depth, &(r_s->status));
+}
+
+/*******************************************************************
make_svc_query_svc_cfg
********************************************************************/
void make_svc_query_svc_cfg(QUERY_SERVICE_CONFIG *q_u,