The branch, v3-6-test has been updated via d5fa933 s3-build: finally remove references to ndr and dcerpc headers that were included globally. via d029d11 s3-rpc_client: add and use rpc_client/rpc_client.h. via 99e7b53 s3-netapi: remove two shadowed variables. from f0bfd05 Fix WAF build for sids2xids.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test - Log ----------------------------------------------------------------- commit d5fa93310f07370cb0c4f3b450b8d264b13ebf94 Author: Günther Deschner <g...@samba.org> Date: Wed Apr 13 14:32:55 2011 +0200 s3-build: finally remove references to ndr and dcerpc headers that were included globally. Guenther Autobuild-User: Günther Deschner <g...@samba.org> Autobuild-Date: Wed Apr 13 23:07:05 CEST 2011 on sn-devel-104 (cherry picked from commit c3d89911642a9d6bbcba9e51fa93e5254cd7b2fc) commit d029d1150189a0eacc111d5e4660a205d7a3dd31 Author: Günther Deschner <g...@samba.org> Date: Wed Apr 13 14:32:16 2011 +0200 s3-rpc_client: add and use rpc_client/rpc_client.h. Guenther (cherry picked from commit 9824e2e5ee336aa6c72fb121935f364f3d8fea6e) commit 99e7b53771cc66750f1c1c20c5d591ba7ee2f435 Author: Günther Deschner <g...@samba.org> Date: Wed Apr 13 13:33:30 2011 +0200 s3-netapi: remove two shadowed variables. Guenther (cherry picked from commit d2d976d8351c4bf7557a7bd8509db4a644de913d) ----------------------------------------------------------------------- Summary of changes: source3/include/client.h | 27 --------------- source3/include/includes.h | 1 - source3/include/ntdomain.h | 2 + source3/include/smb.h | 1 - source3/lib/netapi/group.c | 1 + source3/lib/netapi/localgroup.c | 1 + source3/lib/netapi/samr.c | 3 +- source3/libads/ldap_printer.c | 1 + source3/libnet/libnet_samsync.c | 1 + source3/libsmb/libsmb_xattr.c | 1 + source3/printing/nt_printing_migrate.c | 1 + source3/printing/printspoolss.c | 1 + source3/rpc_client/cli_lsarpc.c | 1 + source3/rpc_client/cli_netlogon.c | 1 + source3/rpc_client/cli_pipe.h | 2 + source3/rpc_client/cli_samr.c | 1 + source3/rpc_client/cli_spoolss.c | 1 + source3/rpc_client/rpc_client.h | 55 ++++++++++++++++++++++++++++++++ source3/rpc_server/srv_pipe_register.c | 1 + source3/smbd/lanman.c | 1 + source3/smbd/reply.c | 1 + source3/utils/net_printing.c | 1 + source3/utils/net_rpc_audit.c | 1 + source3/utils/net_rpc_printer.c | 1 + source3/utils/net_rpc_registry.c | 1 + source3/utils/net_rpc_rights.c | 1 + source3/utils/net_rpc_service.c | 1 + source3/utils/net_rpc_sh_acct.c | 1 + source3/winbindd/winbindd_ads.c | 1 + source3/winbindd/winbindd_rpc.c | 1 + source3/winbindd/winbindd_samr.c | 1 + 31 files changed, 84 insertions(+), 31 deletions(-) create mode 100644 source3/rpc_client/rpc_client.h Changeset truncated at 500 lines: diff --git a/source3/include/client.h b/source3/include/client.h index a4c52c3..9e4a61d 100644 --- a/source3/include/client.h +++ b/source3/include/client.h @@ -22,8 +22,6 @@ #ifndef _CLIENT_H #define _CLIENT_H -#include "../librpc/ndr/libndr.h" - /* the client asks for a smaller buffer to save ram and also to get more overlap on the wire. This size gives us a nice read/write size, which will be a multiple of the page size on almost any system */ @@ -48,31 +46,6 @@ struct print_job_info { time_t t; }; -#include "rpc_client/rpc_transport.h" - -struct dcerpc_binding_handle; - -struct rpc_pipe_client { - struct rpc_pipe_client *prev, *next; - - struct rpc_cli_transport *transport; - struct dcerpc_binding_handle *binding_handle; - - struct ndr_syntax_id abstract_syntax; - struct ndr_syntax_id transfer_syntax; - - char *desthost; - char *srv_name_slash; - - uint16 max_xmit_frag; - uint16 max_recv_frag; - - struct pipe_auth_data *auth; - - /* The following is only non-null on a netlogon client pipe. */ - struct netlogon_creds_CredentialState *dc; -}; - struct cli_state_seqnum { struct cli_state_seqnum *prev, *next; uint16_t mid; diff --git a/source3/include/includes.h b/source3/include/includes.h index 07feacc..78a1ec0 100644 --- a/source3/include/includes.h +++ b/source3/include/includes.h @@ -538,7 +538,6 @@ typedef char fstring[FSTRING_LEN]; #include "smb.h" #include "../lib/util/byteorder.h" -#include "librpc/rpc/dcerpc.h" #include "client.h" #include "module.h" diff --git a/source3/include/ntdomain.h b/source3/include/ntdomain.h index 8fb1248..077924d 100644 --- a/source3/include/ntdomain.h +++ b/source3/include/ntdomain.h @@ -23,6 +23,8 @@ #ifndef _NT_DOMAIN_H /* _NT_DOMAIN_H */ #define _NT_DOMAIN_H +#include "librpc/rpc/dcerpc.h" + /* * A bunch of stuff that was put into smb.h * in the NTDOM branch - it didn't belong there. diff --git a/source3/include/smb.h b/source3/include/smb.h index 875c033..1f9f63d 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -151,7 +151,6 @@ typedef union unid_t { #define SID_MAX_SIZE ((size_t)(8+(MAXSUBAUTHS*4))) -#include "librpc/gen_ndr/dcerpc.h" #include "librpc/gen_ndr/security.h" /* diff --git a/source3/lib/netapi/group.c b/source3/lib/netapi/group.c index 5507f71..4295d9f 100644 --- a/source3/lib/netapi/group.c +++ b/source3/lib/netapi/group.c @@ -23,6 +23,7 @@ #include "lib/netapi/netapi.h" #include "lib/netapi/netapi_private.h" #include "lib/netapi/libnetapi.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_samr_c.h" #include "rpc_client/init_lsa.h" #include "../libcli/security/security.h" diff --git a/source3/lib/netapi/localgroup.c b/source3/lib/netapi/localgroup.c index ce9df27..51f4e1d 100644 --- a/source3/lib/netapi/localgroup.c +++ b/source3/lib/netapi/localgroup.c @@ -23,6 +23,7 @@ #include "lib/netapi/netapi.h" #include "lib/netapi/netapi_private.h" #include "lib/netapi/libnetapi.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_samr_c.h" #include "../librpc/gen_ndr/ndr_lsa_c.h" #include "rpc_client/cli_lsarpc.h" diff --git a/source3/lib/netapi/samr.c b/source3/lib/netapi/samr.c index fb30d4d..5446980 100644 --- a/source3/lib/netapi/samr.c +++ b/source3/lib/netapi/samr.c @@ -20,6 +20,7 @@ #include "includes.h" #include "lib/netapi/netapi.h" #include "lib/netapi/netapi_private.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_samr_c.h" #include "rpc_client/cli_samr.h" #include "rpc_client/init_lsa.h" @@ -81,7 +82,6 @@ WERROR libnetapi_samr_open_domain(struct libnetapi_ctx *mem_ctx, } if (!is_valid_policy_hnd(connect_handle)) { - NTSTATUS result; status = dcerpc_try_samr_connects(pipe_cli->binding_handle, mem_ctx, pipe_cli->srv_name_slash, connect_mask, @@ -222,7 +222,6 @@ WERROR libnetapi_samr_open_builtin_domain(struct libnetapi_ctx *mem_ctx, } if (!is_valid_policy_hnd(connect_handle)) { - NTSTATUS result; status = dcerpc_try_samr_connects(pipe_cli->binding_handle, mem_ctx, pipe_cli->srv_name_slash, connect_mask, diff --git a/source3/libads/ldap_printer.c b/source3/libads/ldap_printer.c index 251dfb0..235ef7f 100644 --- a/source3/libads/ldap_printer.c +++ b/source3/libads/ldap_printer.c @@ -19,6 +19,7 @@ #include "includes.h" #include "ads.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_spoolss_c.h" #include "rpc_client/cli_spoolss.h" #include "registry.h" diff --git a/source3/libnet/libnet_samsync.c b/source3/libnet/libnet_samsync.c index 6d371f4..1141bed 100644 --- a/source3/libnet/libnet_samsync.c +++ b/source3/libnet/libnet_samsync.c @@ -26,6 +26,7 @@ #include "../lib/crypto/crypto.h" #include "../libcli/samsync/samsync.h" #include "../libcli/auth/libcli_auth.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_netlogon.h" #include "../librpc/gen_ndr/ndr_netlogon_c.h" #include "../libcli/security/security.h" diff --git a/source3/libsmb/libsmb_xattr.c b/source3/libsmb/libsmb_xattr.c index 155a6b9..af2c56a 100644 --- a/source3/libsmb/libsmb_xattr.c +++ b/source3/libsmb/libsmb_xattr.c @@ -26,6 +26,7 @@ #include "libsmbclient.h" #include "libsmb_internal.h" #include "../librpc/gen_ndr/ndr_lsa.h" +#include "rpc_client/rpc_client.h" #include "rpc_client/cli_lsarpc.h" #include "../libcli/security/security.h" diff --git a/source3/printing/nt_printing_migrate.c b/source3/printing/nt_printing_migrate.c index c62d1c8..55e49c9 100644 --- a/source3/printing/nt_printing_migrate.c +++ b/source3/printing/nt_printing_migrate.c @@ -22,6 +22,7 @@ #include "system/filesys.h" #include "printing/nt_printing_migrate.h" +#include "rpc_client/rpc_client.h" #include "librpc/gen_ndr/ndr_ntprinting.h" #include "librpc/gen_ndr/ndr_spoolss_c.h" #include "rpc_client/cli_spoolss.h" diff --git a/source3/printing/printspoolss.c b/source3/printing/printspoolss.c index 352fcb8..2f6f19c 100644 --- a/source3/printing/printspoolss.c +++ b/source3/printing/printspoolss.c @@ -19,6 +19,7 @@ #include "includes.h" #include "printing.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_spoolss_c.h" #include "rpc_server/rpc_ncacn_np.h" #include "smbd/smbd.h" diff --git a/source3/rpc_client/cli_lsarpc.c b/source3/rpc_client/cli_lsarpc.c index be49923..e599571 100644 --- a/source3/rpc_client/cli_lsarpc.c +++ b/source3/rpc_client/cli_lsarpc.c @@ -23,6 +23,7 @@ */ #include "includes.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_lsa_c.h" #include "rpc_client/cli_lsarpc.h" #include "rpc_client/init_lsa.h" diff --git a/source3/rpc_client/cli_netlogon.c b/source3/rpc_client/cli_netlogon.c index 8dc232f..bd3232d 100644 --- a/source3/rpc_client/cli_netlogon.c +++ b/source3/rpc_client/cli_netlogon.c @@ -21,6 +21,7 @@ */ #include "includes.h" +#include "rpc_client/rpc_client.h" #include "../libcli/auth/libcli_auth.h" #include "../librpc/gen_ndr/ndr_netlogon_c.h" #include "rpc_client/cli_netlogon.h" diff --git a/source3/rpc_client/cli_pipe.h b/source3/rpc_client/cli_pipe.h index 30c1bad..81c382f 100644 --- a/source3/rpc_client/cli_pipe.h +++ b/source3/rpc_client/cli_pipe.h @@ -23,6 +23,8 @@ #ifndef _CLI_PIPE_H #define _CLI_PIPE_H +#include "rpc_client/rpc_client.h" + struct tevent_req *rpc_api_pipe_req_send(TALLOC_CTX *mem_ctx, struct event_context *ev, struct rpc_pipe_client *cli, diff --git a/source3/rpc_client/cli_samr.c b/source3/rpc_client/cli_samr.c index 19dd255..5baf3e6 100644 --- a/source3/rpc_client/cli_samr.c +++ b/source3/rpc_client/cli_samr.c @@ -22,6 +22,7 @@ */ #include "includes.h" +#include "rpc_client/rpc_client.h" #include "../libcli/auth/libcli_auth.h" #include "../librpc/gen_ndr/ndr_samr_c.h" #include "rpc_client/cli_samr.h" diff --git a/source3/rpc_client/cli_spoolss.c b/source3/rpc_client/cli_spoolss.c index f4cea97..831da85 100644 --- a/source3/rpc_client/cli_spoolss.c +++ b/source3/rpc_client/cli_spoolss.c @@ -23,6 +23,7 @@ */ #include "includes.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_spoolss_c.h" #include "rpc_client/cli_spoolss.h" #include "ntdomain.h" diff --git a/source3/rpc_client/rpc_client.h b/source3/rpc_client/rpc_client.h new file mode 100644 index 0000000..6561b28 --- /dev/null +++ b/source3/rpc_client/rpc_client.h @@ -0,0 +1,55 @@ +/* + * Unix SMB/CIFS implementation. + * + * RPC Pipe client routines + * + * Copyright (c) 2005 Jeremy Allison + * Copyright (c) 2010 Simo Sorce + * + * 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 <http://www.gnu.org/licenses/>. + */ + + +#ifndef _RPC_CLIENT_H +#define _RPC_CLIENT_H + +#include "librpc/gen_ndr/dcerpc.h" +#include "librpc/rpc/dcerpc.h" +#include "../librpc/ndr/libndr.h" +#include "rpc_client/rpc_transport.h" + +struct dcerpc_binding_handle; + +struct rpc_pipe_client { + struct rpc_pipe_client *prev, *next; + + struct rpc_cli_transport *transport; + struct dcerpc_binding_handle *binding_handle; + + struct ndr_syntax_id abstract_syntax; + struct ndr_syntax_id transfer_syntax; + + char *desthost; + char *srv_name_slash; + + uint16 max_xmit_frag; + uint16 max_recv_frag; + + struct pipe_auth_data *auth; + + /* The following is only non-null on a netlogon client pipe. */ + struct netlogon_creds_CredentialState *dc; +}; + +#endif /* _RPC_CLIENT_H */ diff --git a/source3/rpc_server/srv_pipe_register.c b/source3/rpc_server/srv_pipe_register.c index 3753596..a6d6542 100644 --- a/source3/rpc_server/srv_pipe_register.c +++ b/source3/rpc_server/srv_pipe_register.c @@ -18,6 +18,7 @@ */ #include "includes.h" +#include "librpc/rpc/dcerpc.h" #include "srv_pipe_internal.h" #undef DBGC_CLASS diff --git a/source3/smbd/lanman.c b/source3/smbd/lanman.c index 8c49b43..7752ed7 100644 --- a/source3/smbd/lanman.c +++ b/source3/smbd/lanman.c @@ -28,6 +28,7 @@ #include "includes.h" #include "smbd/smbd.h" #include "smbd/globals.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_samr_c.h" #include "../librpc/gen_ndr/ndr_spoolss_c.h" #include "rpc_client/cli_spoolss.h" diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index 5697594..cc02ae2 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -30,6 +30,7 @@ #include "smbd/smbd.h" #include "smbd/globals.h" #include "fake_file.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_spoolss_c.h" #include "rpc_client/cli_spoolss.h" #include "rpc_client/init_spoolss.h" diff --git a/source3/utils/net_printing.c b/source3/utils/net_printing.c index 8019d4f..11c87bb 100644 --- a/source3/utils/net_printing.c +++ b/source3/utils/net_printing.c @@ -22,6 +22,7 @@ #include "includes.h" #include "system/filesys.h" #include "utils/net.h" +#include "rpc_client/rpc_client.h" #include "librpc/gen_ndr/ndr_ntprinting.h" #include "librpc/gen_ndr/ndr_spoolss_c.h" #include "rpc_client/cli_spoolss.h" diff --git a/source3/utils/net_rpc_audit.c b/source3/utils/net_rpc_audit.c index cd6d1da..8179b70 100644 --- a/source3/utils/net_rpc_audit.c +++ b/source3/utils/net_rpc_audit.c @@ -18,6 +18,7 @@ #include "includes.h" #include "utils/net.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_lsa_c.h" #include "rpc_client/cli_lsarpc.h" diff --git a/source3/utils/net_rpc_printer.c b/source3/utils/net_rpc_printer.c index 4073e0e..7a22587 100644 --- a/source3/utils/net_rpc_printer.c +++ b/source3/utils/net_rpc_printer.c @@ -19,6 +19,7 @@ #include "includes.h" #include "system/filesys.h" #include "utils/net.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_spoolss_c.h" #include "rpc_client/cli_spoolss.h" #include "rpc_client/init_spoolss.h" diff --git a/source3/utils/net_rpc_registry.c b/source3/utils/net_rpc_registry.c index 190ab05..31f4e3e 100644 --- a/source3/utils/net_rpc_registry.c +++ b/source3/utils/net_rpc_registry.c @@ -19,6 +19,7 @@ #include "includes.h" #include "system/filesys.h" +#include "rpc_client/rpc_client.h" #include "registry.h" #include "utils/net.h" #include "utils/net_registry_util.h" diff --git a/source3/utils/net_rpc_rights.c b/source3/utils/net_rpc_rights.c index 02027f8..a284774 100644 --- a/source3/utils/net_rpc_rights.c +++ b/source3/utils/net_rpc_rights.c @@ -19,6 +19,7 @@ */ #include "includes.h" #include "utils/net.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_lsa_c.h" #include "rpc_client/cli_lsarpc.h" #include "rpc_client/init_lsa.h" diff --git a/source3/utils/net_rpc_service.c b/source3/utils/net_rpc_service.c index f1cd2a6..c5d6954 100644 --- a/source3/utils/net_rpc_service.c +++ b/source3/utils/net_rpc_service.c @@ -18,6 +18,7 @@ #include "includes.h" #include "utils/net.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_svcctl.h" #include "../librpc/gen_ndr/ndr_svcctl_c.h" diff --git a/source3/utils/net_rpc_sh_acct.c b/source3/utils/net_rpc_sh_acct.c index 6f5604e..6f85be4 100644 --- a/source3/utils/net_rpc_sh_acct.c +++ b/source3/utils/net_rpc_sh_acct.c @@ -18,6 +18,7 @@ */ #include "includes.h" #include "utils/net.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_samr_c.h" #include "../libcli/security/security.h" diff --git a/source3/winbindd/winbindd_ads.c b/source3/winbindd/winbindd_ads.c index 4e80457..dde8e3f 100644 --- a/source3/winbindd/winbindd_ads.c +++ b/source3/winbindd/winbindd_ads.c @@ -23,6 +23,7 @@ #include "includes.h" #include "winbindd.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_netlogon_c.h" #include "../libds/common/flags.h" #include "ads.h" diff --git a/source3/winbindd/winbindd_rpc.c b/source3/winbindd/winbindd_rpc.c index 6e4c5a1..82599e7 100644 --- a/source3/winbindd/winbindd_rpc.c +++ b/source3/winbindd/winbindd_rpc.c @@ -27,6 +27,7 @@ #include "winbindd.h" #include "winbindd_rpc.h" +#include "rpc_client/rpc_client.h" #include "librpc/gen_ndr/ndr_samr_c.h" #include "librpc/gen_ndr/srv_samr.h" #include "librpc/gen_ndr/ndr_lsa_c.h" diff --git a/source3/winbindd/winbindd_samr.c b/source3/winbindd/winbindd_samr.c index 43d1f2b..4eb040f 100644 --- a/source3/winbindd/winbindd_samr.c +++ b/source3/winbindd/winbindd_samr.c @@ -27,6 +27,7 @@ #include "winbindd.h" #include "winbindd_rpc.h" +#include "rpc_client/rpc_client.h" #include "../librpc/gen_ndr/ndr_samr_c.h" #include "rpc_client/cli_samr.h" #include "../librpc/gen_ndr/srv_samr.h" -- Samba Shared Repository