From 49d5f62b42d821bb8a11b595efb53eb88ec3c570 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Fri, 29 Apr 2011 22:32:12 +0200 Subject: s3-proto: move rpc_srv_register protos and structs to town headerfile. Guenther --- source3/include/ntdomain.h | 1 + source3/include/proto.h | 21 ++---------------- source3/printing/spoolssd.c | 1 + source3/rpc_server/epmd.c | 1 + source3/rpc_server/rpc_ep_setup.c | 1 + source3/rpc_server/rpc_ep_setup.h | 2 ++ source3/rpc_server/rpc_ncacn_np.h | 1 + source3/rpc_server/srv_pipe_register.c | 1 + source3/rpc_server/srv_pipe_register.h | 39 ++++++++++++++++++++++++++++++++++ 9 files changed, 49 insertions(+), 19 deletions(-) create mode 100644 source3/rpc_server/srv_pipe_register.h (limited to 'source3') diff --git a/source3/include/ntdomain.h b/source3/include/ntdomain.h index 9cd00da21a..2c5fa2b669 100644 --- a/source3/include/ntdomain.h +++ b/source3/include/ntdomain.h @@ -234,5 +234,6 @@ void *_policy_handle_find(struct pipes_struct *p, (_type *)_policy_handle_find((_p), (_hnd), (_access_required), \ (_access_granted), #_type, __location__, (_pstatus)) +#include "rpc_server/srv_pipe_register.h" #endif /* _NT_DOMAIN_H */ diff --git a/source3/include/proto.h b/source3/include/proto.h index c296487eac..5ff1c056ce 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -2620,27 +2620,10 @@ void set_server_role(void); uint32 get_int_param( const char* param ); char* get_string_param( const char* param ); -/* The following definitions come from rpc_server/srv_rpc_register.c */ - -struct rpc_srv_callbacks { - bool (*init)(void *private_data); - bool (*shutdown)(void *private_data); - void *private_data; -}; - -struct api_struct; -struct ndr_interface_table; -struct pipes_struct; -NTSTATUS rpc_srv_register(int version, const char *clnt, - const char *srv, - const struct ndr_interface_table *iface, - const struct api_struct *cmds, int size, - const struct rpc_srv_callbacks *rpc_srv_cb); - -NTSTATUS rpc_srv_unregister(const struct ndr_interface_table *iface); - /* The following definitions come from rpc_server/srv_pipe.c */ struct ncacn_packet; +struct api_struct; +struct pipes_struct; bool create_next_pdu(struct pipes_struct *p); bool api_pipe_bind_auth3(struct pipes_struct *p, struct ncacn_packet *pkt); bool setup_fault_pdu(struct pipes_struct *p, NTSTATUS status); diff --git a/source3/printing/spoolssd.c b/source3/printing/spoolssd.c index 340bf0a5f1..11d2d25c3b 100644 --- a/source3/printing/spoolssd.c +++ b/source3/printing/spoolssd.c @@ -28,6 +28,7 @@ #include "librpc/gen_ndr/srv_spoolss.h" #include "rpc_server/rpc_server.h" #include "rpc_server/rpc_ep_setup.h" +#include "rpc_server/srv_pipe_register.h" #define SPOOLSS_PIPE_NAME "spoolss" #define DAEMON_NAME "spoolssd" diff --git a/source3/rpc_server/epmd.c b/source3/rpc_server/epmd.c index 5e82b276fd..d11760c29b 100644 --- a/source3/rpc_server/epmd.c +++ b/source3/rpc_server/epmd.c @@ -25,6 +25,7 @@ #include "../librpc/gen_ndr/srv_epmapper.h" #include "rpc_server/rpc_server.h" #include "rpc_server/epmapper/srv_epmapper.h" +#include "rpc_server/srv_pipe_register.h" #include "messages.h" #define DAEMON_NAME "epmd" diff --git a/source3/rpc_server/rpc_ep_setup.c b/source3/rpc_server/rpc_ep_setup.c index d517bb8851..fd1297cc0c 100644 --- a/source3/rpc_server/rpc_ep_setup.c +++ b/source3/rpc_server/rpc_ep_setup.c @@ -46,6 +46,7 @@ #include "rpc_server/rpc_ep_setup.h" #include "rpc_server/rpc_server.h" +#include "rpc_server/srv_pipe_register.h" #include "rpc_server/epmapper/srv_epmapper.h" struct dcesrv_ep_context { diff --git a/source3/rpc_server/rpc_ep_setup.h b/source3/rpc_server/rpc_ep_setup.h index b96de36b16..57b06abb39 100644 --- a/source3/rpc_server/rpc_ep_setup.h +++ b/source3/rpc_server/rpc_ep_setup.h @@ -22,6 +22,8 @@ #ifndef _SMBD_RPC_CALLBACKS_H #define _SMBD_RPC_CALLBACKS_H +struct ndr_interface_table; + /** * @brief Register an endpoint at the endpoint mapper. * diff --git a/source3/rpc_server/rpc_ncacn_np.h b/source3/rpc_server/rpc_ncacn_np.h index 75a9f40087..09feaa9f4a 100644 --- a/source3/rpc_server/rpc_ncacn_np.h +++ b/source3/rpc_server/rpc_ncacn_np.h @@ -21,6 +21,7 @@ #define _RPC_NCACN_NP_H_ struct dcerpc_binding_handle; +struct ndr_interface_table; struct np_proxy_state { uint16_t file_type; diff --git a/source3/rpc_server/srv_pipe_register.c b/source3/rpc_server/srv_pipe_register.c index a6d654277e..69d3ed198a 100644 --- a/source3/rpc_server/srv_pipe_register.c +++ b/source3/rpc_server/srv_pipe_register.c @@ -20,6 +20,7 @@ #include "includes.h" #include "librpc/rpc/dcerpc.h" #include "srv_pipe_internal.h" +#include "rpc_server/srv_pipe_register.h" #undef DBGC_CLASS #define DBGC_CLASS DBGC_RPC_SRV diff --git a/source3/rpc_server/srv_pipe_register.h b/source3/rpc_server/srv_pipe_register.h new file mode 100644 index 0000000000..b1b454e0bd --- /dev/null +++ b/source3/rpc_server/srv_pipe_register.h @@ -0,0 +1,39 @@ +/* + * Unix SMB/CIFS implementation. + * RPC Pipe client / server routines + * Almost completely rewritten by (C) Jeremy Allison 2005 - 2010 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see . + */ + +#ifndef _RPC_SERVER_SRV_PIPE_REGISTER_H_ +#define _RPC_SERVER_SRV_PIPE_REGISTER_H_ + +struct rpc_srv_callbacks { + bool (*init)(void *private_data); + bool (*shutdown)(void *private_data); + void *private_data; +}; + +/* The following definitions come from rpc_server/srv_rpc_register.c */ + +NTSTATUS rpc_srv_register(int version, const char *clnt, + const char *srv, + const struct ndr_interface_table *iface, + const struct api_struct *cmds, int size, + const struct rpc_srv_callbacks *rpc_srv_cb); + +NTSTATUS rpc_srv_unregister(const struct ndr_interface_table *iface); + +#endif /* _RPC_SERVER_SRV_PIPE_REGISTER_H_ */ -- cgit