diff options
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/proto.h | 8 | ||||
-rw-r--r-- | source3/include/rpc_svcctl.h | 24 |
2 files changed, 32 insertions, 0 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index 75a1d55ac0..ed314fa88e 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -2051,6 +2051,9 @@ BOOL svc_enum_svcs(struct cli_state *cli, uint16 fnum, uint32 *buf_size, uint32 *resume_hnd, uint32 *dos_error, ENUM_SRVC_STATUS **svcs, uint32 *num_svcs); +BOOL svc_stop_service(struct cli_state *cli, uint16 fnum, + POLICY_HND *hnd, + uint32 unknown); BOOL svc_start_service(struct cli_state *cli, uint16 fnum, POLICY_HND *hnd, uint32 argc, @@ -3059,6 +3062,10 @@ BOOL svc_io_q_open_service(char *desc, SVC_Q_OPEN_SERVICE *q_u, prs_struct *ps, BOOL make_svc_r_open_service(SVC_R_OPEN_SERVICE *r_u, POLICY_HND *hnd, uint32 status) ; BOOL svc_io_r_open_service(char *desc, SVC_R_OPEN_SERVICE *r_u, prs_struct *ps, int depth); +BOOL make_svc_q_stop_service(SVC_Q_STOP_SERVICE *q_c, POLICY_HND *hnd, + uint32 unk); +BOOL svc_io_q_stop_service(char *desc, SVC_Q_STOP_SERVICE *q_s, prs_struct *ps, int depth); +BOOL svc_io_r_stop_service(char *desc, SVC_R_STOP_SERVICE *r_s, prs_struct *ps, int depth); BOOL make_svc_q_start_service(SVC_Q_START_SERVICE *q_c, POLICY_HND *hnd, uint32 argc, char **argv); @@ -3322,6 +3329,7 @@ BOOL msrpc_svc_enum(struct client_info *info, SVC_INFO_FN(info_fn), SVC_QUERY_FN(query_fn)); void cmd_svc_enum(struct client_info *info); +void cmd_svc_stop(struct client_info *info); void cmd_svc_start(struct client_info *info); /*The following definitions come from rpcclient/cmd_wkssvc.c */ diff --git a/source3/include/rpc_svcctl.h b/source3/include/rpc_svcctl.h index e72f7df376..e3b825fa53 100644 --- a/source3/include/rpc_svcctl.h +++ b/source3/include/rpc_svcctl.h @@ -32,6 +32,7 @@ #define SVC_QUERY_DISP_NAME 0x14 #define SVC_OPEN_SERVICE 0x10 #define SVC_START_SERVICE 0x13 +#define SVC_STOP_SERVICE 0x01 #define SVC_CLOSE 0x00 @@ -75,6 +76,29 @@ typedef struct r_svc_open_service_info #define MAX_SVC_ARGS 10 +/* SVC_Q_STOP_SERVICE */ +typedef struct q_svc_stop_service_info +{ + POLICY_HND pol; + + uint32 unknown; + +} SVC_Q_STOP_SERVICE; + +/* SVC_R_STOP_SERVICE */ +typedef struct r_svc_stop_service_info +{ + uint32 unknown0; /* 0x00000020 */ + uint32 unknown1; /* 0x00000001 */ + uint32 unknown2; /* 0x00000001 */ + uint32 unknown3; /* 0x00000000 */ + uint32 unknown4; /* 0x00000000 */ + uint32 unknown5; /* 0x00000000 */ + uint32 unknown6; /* 0x00000000 */ + uint32 status; + +} SVC_R_STOP_SERVICE; + /* SVC_Q_START_SERVICE */ typedef struct q_svc_start_service_info { |