diff options
author | Günther Deschner <gd@samba.org> | 2009-01-06 19:00:05 +0100 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2009-01-08 11:19:33 +0100 |
commit | 385316a09a6dbb790e5f7cb012614acd42bbbb00 (patch) | |
tree | dc4c06911db1bd49b6924d5e13be5296a33d9fa8 /source3 | |
parent | b42cb4944a6c4c1509e175553c25b52f765bb3bb (diff) | |
download | samba-385316a09a6dbb790e5f7cb012614acd42bbbb00.tar.gz samba-385316a09a6dbb790e5f7cb012614acd42bbbb00.tar.bz2 samba-385316a09a6dbb790e5f7cb012614acd42bbbb00.zip |
s3-svcctl: remove old hand marshalling of svcctl_QueryServiceStatusEx.
Guenther
Diffstat (limited to 'source3')
-rw-r--r-- | source3/include/proto.h | 4 | ||||
-rw-r--r-- | source3/include/rpc_svcctl.h | 21 | ||||
-rw-r--r-- | source3/rpc_parse/parse_svcctl.c | 77 | ||||
-rw-r--r-- | source3/rpc_server/srv_svcctl_nt.c | 4 |
4 files changed, 2 insertions, 104 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index ec8f413d2f..301ffc109f 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -6157,7 +6157,6 @@ bool convert_port_data_1( NT_PORT_DATA_1 *port1, RPC_BUFFER *buf ) ; /* The following definitions come from rpc_parse/parse_svcctl.c */ bool svcctl_io_enum_services_status( const char *desc, ENUM_SERVICES_STATUS *enum_status, RPC_BUFFER *buffer, int depth ); -bool svcctl_io_service_status_process( const char *desc, SERVICE_STATUS_PROCESS *status, RPC_BUFFER *buffer, int depth ); uint32 svcctl_sizeof_enum_services_status( ENUM_SERVICES_STATUS *status ); bool svcctl_io_q_enum_services_status(const char *desc, SVCCTL_Q_ENUM_SERVICES_STATUS *q_u, prs_struct *ps, int depth); bool svcctl_io_r_enum_services_status(const char *desc, SVCCTL_R_ENUM_SERVICES_STATUS *r_u, prs_struct *ps, int depth); @@ -6168,8 +6167,6 @@ uint32 svcctl_sizeof_service_description( SERVICE_DESCRIPTION *desc ); bool svcctl_io_service_fa( const char *desc, SERVICE_FAILURE_ACTIONS *fa, RPC_BUFFER *buffer, int depth ); uint32 svcctl_sizeof_service_fa( SERVICE_FAILURE_ACTIONS *fa); bool svcctl_io_r_query_service_config2(const char *desc, SVCCTL_R_QUERY_SERVICE_CONFIG2 *r_u, prs_struct *ps, int depth); -bool svcctl_io_q_query_service_status_ex(const char *desc, SVCCTL_Q_QUERY_SERVICE_STATUSEX *q_u, prs_struct *ps, int depth); -bool svcctl_io_r_query_service_status_ex(const char *desc, SVCCTL_R_QUERY_SERVICE_STATUSEX *r_u, prs_struct *ps, int depth); /* The following definitions come from rpc_server/srv_eventlog.c */ @@ -6409,7 +6406,6 @@ NTSTATUS rpc_svcctl2_init(void); bool init_service_op_table( void ); WERROR _svcctl_enum_services_status(pipes_struct *p, SVCCTL_Q_ENUM_SERVICES_STATUS *q_u, SVCCTL_R_ENUM_SERVICES_STATUS *r_u); -WERROR _svcctl_query_service_status_ex( pipes_struct *p, SVCCTL_Q_QUERY_SERVICE_STATUSEX *q_u, SVCCTL_R_QUERY_SERVICE_STATUSEX *r_u ); WERROR _svcctl_query_service_config2( pipes_struct *p, SVCCTL_Q_QUERY_SERVICE_CONFIG2 *q_u, SVCCTL_R_QUERY_SERVICE_CONFIG2 *r_u ); /* The following definitions come from rpcclient/cmd_dfs.c */ diff --git a/source3/include/rpc_svcctl.h b/source3/include/rpc_svcctl.h index 303b126a54..4f36d23644 100644 --- a/source3/include/rpc_svcctl.h +++ b/source3/include/rpc_svcctl.h @@ -98,13 +98,6 @@ typedef struct SERVICE_STATUS SERVICE_STATUS; typedef struct { - SERVICE_STATUS status; - uint32 process_id; - uint32 service_flags; -} SERVICE_STATUS_PROCESS; - - -typedef struct { UNISTR servicename; UNISTR displayname; SERVICE_STATUS status; @@ -164,19 +157,5 @@ typedef struct { } SVCCTL_R_QUERY_SERVICE_CONFIG2; -/**************************/ - -typedef struct { - POLICY_HND handle; - uint32 level; - uint32 buffer_size; -} SVCCTL_Q_QUERY_SERVICE_STATUSEX; - -typedef struct { - RPC_BUFFER buffer; - uint32 needed; - WERROR status; -} SVCCTL_R_QUERY_SERVICE_STATUSEX; - #endif /* _RPC_SVCCTL_H */ diff --git a/source3/rpc_parse/parse_svcctl.c b/source3/rpc_parse/parse_svcctl.c index 7d31f4b2f0..8441165a1c 100644 --- a/source3/rpc_parse/parse_svcctl.c +++ b/source3/rpc_parse/parse_svcctl.c @@ -79,29 +79,6 @@ bool svcctl_io_enum_services_status( const char *desc, ENUM_SERVICES_STATUS *enu /******************************************************************* ********************************************************************/ -bool svcctl_io_service_status_process( const char *desc, SERVICE_STATUS_PROCESS *status, RPC_BUFFER *buffer, int depth ) -{ - prs_struct *ps=&buffer->prs; - - prs_debug(ps, depth, desc, "svcctl_io_service_status_process"); - depth++; - - if ( !svcctl_io_service_status("status", &status->status, ps, depth) ) - return False; - if(!prs_align(ps)) - return False; - - if(!prs_uint32("process_id", ps, depth, &status->process_id)) - return False; - if(!prs_uint32("service_flags", ps, depth, &status->service_flags)) - return False; - - return True; -} - -/******************************************************************* -********************************************************************/ - uint32 svcctl_sizeof_enum_services_status( ENUM_SERVICES_STATUS *status ) { uint32 size = 0; @@ -363,57 +340,3 @@ bool svcctl_io_r_query_service_config2(const char *desc, SVCCTL_R_QUERY_SERVICE_ return True; } - - -/******************************************************************* -********************************************************************/ - -bool svcctl_io_q_query_service_status_ex(const char *desc, SVCCTL_Q_QUERY_SERVICE_STATUSEX *q_u, prs_struct *ps, int depth) -{ - if (q_u == NULL) - return False; - - prs_debug(ps, depth, desc, "svcctl_io_q_query_service_status_ex"); - depth++; - - if(!prs_align(ps)) - return False; - - if(!smb_io_pol_hnd("service_pol", &q_u->handle, ps, depth)) - return False; - - if(!prs_uint32("level", ps, depth, &q_u->level)) - return False; - - if(!prs_uint32("buffer_size", ps, depth, &q_u->buffer_size)) - return False; - - return True; - -} - -/******************************************************************* -********************************************************************/ - -bool svcctl_io_r_query_service_status_ex(const char *desc, SVCCTL_R_QUERY_SERVICE_STATUSEX *r_u, prs_struct *ps, int depth) -{ - if ( !r_u ) - return False; - - prs_debug(ps, depth, desc, "svcctl_io_r_query_service_status_ex"); - depth++; - - if (!prs_rpcbuffer("", ps, depth, &r_u->buffer)) - return False; - - if(!prs_align(ps)) - return False; - - if(!prs_uint32("needed", ps, depth, &r_u->needed)) - return False; - - if(!prs_werror("status", ps, depth, &r_u->status)) - return False; - - return True; -} diff --git a/source3/rpc_server/srv_svcctl_nt.c b/source3/rpc_server/srv_svcctl_nt.c index 3bbe368a18..cd98a0bfcc 100644 --- a/source3/rpc_server/srv_svcctl_nt.c +++ b/source3/rpc_server/srv_svcctl_nt.c @@ -580,7 +580,7 @@ WERROR _svcctl_QueryServiceStatusEx(pipes_struct *p, switch ( r->in.info_level ) { case SVC_STATUS_PROCESS_INFO: { - SERVICE_STATUS_PROCESS svc_stat_proc; + struct SERVICE_STATUS_PROCESS svc_stat_proc; enum ndr_err_code ndr_err; DATA_BLOB blob; @@ -597,7 +597,7 @@ WERROR _svcctl_QueryServiceStatusEx(pipes_struct *p, } r->out.buffer = blob.data; - buffer_size = sizeof(SERVICE_STATUS_PROCESS); + buffer_size = sizeof(struct SERVICE_STATUS_PROCESS); break; } |