summaryrefslogtreecommitdiff
path: root/source3/rpc_server/srv_srvsvc.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/rpc_server/srv_srvsvc.c')
-rw-r--r--source3/rpc_server/srv_srvsvc.c87
1 files changed, 6 insertions, 81 deletions
diff --git a/source3/rpc_server/srv_srvsvc.c b/source3/rpc_server/srv_srvsvc.c
index 25e652c1fd..41fc39baf7 100644
--- a/source3/rpc_server/srv_srvsvc.c
+++ b/source3/rpc_server/srv_srvsvc.c
@@ -34,13 +34,13 @@ static bool proxy_srvsvc_call(pipes_struct *p, uint8 opnum)
struct api_struct *fns;
int n_fns;
- lsarpc_get_pipe_fns(&fns, &n_fns);
+ srvsvc_get_pipe_fns(&fns, &n_fns);
if (opnum >= n_fns)
return False;
if (fns[opnum].opnum != opnum) {
- smb_panic("LSA function table not sorted\n");
+ smb_panic("SRVSVC function table not sorted\n");
}
return fns[opnum].fn(p);
@@ -52,25 +52,7 @@ static bool proxy_srvsvc_call(pipes_struct *p, uint8 opnum)
static bool api_srv_net_srv_get_info(pipes_struct *p)
{
- SRV_Q_NET_SRV_GET_INFO q_u;
- SRV_R_NET_SRV_GET_INFO r_u;
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- /* grab the net server get info */
- if (!srv_io_q_net_srv_get_info("", &q_u, data, 0))
- return False;
-
- r_u.status = _srv_net_srv_get_info(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if (!srv_io_r_net_srv_get_info("", &r_u, rdata, 0))
- return False;
-
- return True;
+ return proxy_srvsvc_call(p, NDR_SRVSVC_NETSRVGETINFO);
}
/*******************************************************************
@@ -79,25 +61,7 @@ static bool api_srv_net_srv_get_info(pipes_struct *p)
static bool api_srv_net_srv_set_info(pipes_struct *p)
{
- SRV_Q_NET_SRV_SET_INFO q_u;
- SRV_R_NET_SRV_SET_INFO r_u;
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- /* grab the net server set info */
- if (!srv_io_q_net_srv_set_info("", &q_u, data, 0))
- return False;
-
- r_u.status = _srv_net_srv_set_info(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if (!srv_io_r_net_srv_set_info("", &r_u, rdata, 0))
- return False;
-
- return True;
+ return proxy_srvsvc_call(p, NDR_SRVSVC_NETSRVSETINFO);
}
/*******************************************************************
@@ -306,28 +270,7 @@ static bool api_srv_net_share_get_info(pipes_struct *p)
static bool api_srv_net_share_set_info(pipes_struct *p)
{
- SRV_Q_NET_SHARE_SET_INFO q_u;
- SRV_R_NET_SHARE_SET_INFO r_u;
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- /* Unmarshall the net server set info. */
- if(!srv_io_q_net_share_set_info("", &q_u, data, 0)) {
- DEBUG(0,("api_srv_net_share_set_info: Failed to unmarshall SRV_Q_NET_SHARE_SET_INFO.\n"));
- return False;
- }
-
- r_u.status = _srv_net_share_set_info(p, &q_u, &r_u);
-
- if(!srv_io_r_net_share_set_info("", &r_u, rdata, 0)) {
- DEBUG(0,("api_srv_net_share_set_info: Failed to marshall SRV_R_NET_SHARE_SET_INFO.\n"));
- return False;
- }
-
- return True;
+ return proxy_srvsvc_call(p, NDR_SRVSVC_NETSHARESETINFO);
}
/*******************************************************************
@@ -426,25 +369,7 @@ static bool api_srv_net_share_del_sticky(pipes_struct *p)
static bool api_srv_net_remote_tod(pipes_struct *p)
{
- SRV_Q_NET_REMOTE_TOD q_u;
- SRV_R_NET_REMOTE_TOD r_u;
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- /* grab the net server get enum */
- if(!srv_io_q_net_remote_tod("", &q_u, data, 0))
- return False;
-
- r_u.status = _srv_net_remote_tod(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if(!srv_io_r_net_remote_tod("", &r_u, rdata, 0))
- return False;
-
- return True;
+ return proxy_srvsvc_call(p, NDR_SRVSVC_NETREMOTETOD);
}
/*******************************************************************