From 80b47fcb0a73fb97a1b918173a61c55831239a0a Mon Sep 17 00:00:00 2001 From: =?utf8?q?G=C3=BCnther=20Deschner?= Date: Fri, 2 Jul 2010 00:14:04 +0200 Subject: [PATCH] s3-libnet: better separate headers. Guenther --- source3/lib/netapi/joindomain.c | 3 +- source3/libnet/libnet.h | 30 --------- source3/libnet/libnet_dssync.c | 2 +- source3/libnet/libnet_dssync.h | 7 ++ source3/libnet/libnet_dssync_keytab.c | 5 +- source3/libnet/libnet_join.c | 3 +- source3/libnet/libnet_keytab.c | 4 +- source3/libnet/libnet_keytab.h | 18 ++++++ source3/libnet/libnet_proto.h | 85 ------------------------- source3/libnet/libnet_samsync.c | 2 +- source3/libnet/libnet_samsync.h | 11 ++++ source3/libnet/libnet_samsync_display.c | 2 +- source3/libnet/libnet_samsync_keytab.c | 2 +- source3/libnet/libnet_samsync_passdb.c | 2 +- source3/rpc_server/srv_wkssvc_nt.c | 3 +- source3/utils/net.h | 1 - source3/utils/net_ads.c | 4 ++ source3/utils/net_lookup.c | 1 + source3/utils/net_rpc_samsync.c | 2 + 19 files changed, 61 insertions(+), 126 deletions(-) delete mode 100644 source3/libnet/libnet.h delete mode 100644 source3/libnet/libnet_proto.h diff --git a/source3/lib/netapi/joindomain.c b/source3/lib/netapi/joindomain.c index 4936d772cda..336f9dc7833 100644 --- a/source3/lib/netapi/joindomain.c +++ b/source3/lib/netapi/joindomain.c @@ -23,7 +23,8 @@ #include "lib/netapi/netapi.h" #include "lib/netapi/netapi_private.h" #include "lib/netapi/libnetapi.h" -#include "libnet/libnet.h" +#include "librpc/gen_ndr/libnet_join.h" +#include "libnet/libnet_join.h" #include "libcli/auth/libcli_auth.h" #include "../librpc/gen_ndr/cli_wkssvc.h" diff --git a/source3/libnet/libnet.h b/source3/libnet/libnet.h deleted file mode 100644 index 86eb9d050c4..00000000000 --- a/source3/libnet/libnet.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Unix SMB/CIFS implementation. - * libnet Support - * Copyright (C) Guenther Deschner 2007 - * - * 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 __LIBNET_H__ -#define __LIBNET_H__ - -#include "smb_krb5.h" -#include "libnet/libnet_keytab.h" -#include "libnet/libnet_samsync.h" -#include "libnet/libnet_dssync.h" -#include "librpc/gen_ndr/libnet_join.h" -#include "libnet/libnet_proto.h" - -#endif diff --git a/source3/libnet/libnet_dssync.c b/source3/libnet/libnet_dssync.c index 1a2b1caceae..e9a788b8698 100644 --- a/source3/libnet/libnet_dssync.c +++ b/source3/libnet/libnet_dssync.c @@ -21,7 +21,7 @@ #include "includes.h" -#include "libnet/libnet.h" +#include "libnet/libnet_dssync.h" #include "../libcli/drsuapi/drsuapi.h" #include "../librpc/gen_ndr/cli_drsuapi.h" diff --git a/source3/libnet/libnet_dssync.h b/source3/libnet/libnet_dssync.h index e05aaa374b9..91f48f5e851 100644 --- a/source3/libnet/libnet_dssync.h +++ b/source3/libnet/libnet_dssync.h @@ -58,3 +58,10 @@ struct dssync_context { }; extern const struct dssync_ops libnet_dssync_keytab_ops; + +/* The following definitions come from libnet/libnet_dssync.c */ + +NTSTATUS libnet_dssync_init_context(TALLOC_CTX *mem_ctx, + struct dssync_context **ctx_p); +NTSTATUS libnet_dssync(TALLOC_CTX *mem_ctx, + struct dssync_context *ctx); diff --git a/source3/libnet/libnet_dssync_keytab.c b/source3/libnet/libnet_dssync_keytab.c index f7f706d90cd..b0c745d1107 100644 --- a/source3/libnet/libnet_dssync_keytab.c +++ b/source3/libnet/libnet_dssync_keytab.c @@ -19,7 +19,10 @@ */ #include "includes.h" -#include "libnet/libnet.h" +#include "smb_krb5.h" +#include "ads.h" +#include "libnet/libnet_dssync.h" +#include "libnet/libnet_keytab.h" #include "librpc/gen_ndr/ndr_drsblobs.h" #if defined(HAVE_ADS) && defined(ENCTYPE_ARCFOUR_HMAC) diff --git a/source3/libnet/libnet_join.c b/source3/libnet/libnet_join.c index 7fd7259736b..e2b917966ba 100644 --- a/source3/libnet/libnet_join.c +++ b/source3/libnet/libnet_join.c @@ -19,7 +19,8 @@ */ #include "includes.h" -#include "libnet/libnet.h" +#include "librpc/gen_ndr/ndr_libnet_join.h" +#include "libnet/libnet_join.h" #include "libcli/auth/libcli_auth.h" #include "../librpc/gen_ndr/cli_samr.h" #include "rpc_client/init_samr.h" diff --git a/source3/libnet/libnet_keytab.c b/source3/libnet/libnet_keytab.c index 589d4c25254..f395c975e5c 100644 --- a/source3/libnet/libnet_keytab.c +++ b/source3/libnet/libnet_keytab.c @@ -20,7 +20,9 @@ */ #include "includes.h" -#include "libnet/libnet.h" +#include "smb_krb5.h" +#include "ads.h" +#include "libnet/libnet_keytab.h" #ifdef HAVE_KRB5 diff --git a/source3/libnet/libnet_keytab.h b/source3/libnet/libnet_keytab.h index 4d311a48e0e..b82e5433eb4 100644 --- a/source3/libnet/libnet_keytab.h +++ b/source3/libnet/libnet_keytab.h @@ -39,4 +39,22 @@ struct libnet_keytab_context { bool clean_old_entries; }; +/* The following definitions come from libnet/libnet_keytab.c */ + +krb5_error_code libnet_keytab_init(TALLOC_CTX *mem_ctx, + const char *keytab_name, + struct libnet_keytab_context **ctx); +krb5_error_code libnet_keytab_add(struct libnet_keytab_context *ctx); + +struct libnet_keytab_entry *libnet_keytab_search(struct libnet_keytab_context *ctx, + const char *principal, int kvno, + const krb5_enctype enctype, + TALLOC_CTX *mem_ctx); +NTSTATUS libnet_keytab_add_to_keytab_entries(TALLOC_CTX *mem_ctx, + struct libnet_keytab_context *ctx, + uint32_t kvno, + const char *name, + const char *prefix, + const krb5_enctype enctype, + DATA_BLOB blob); #endif /* HAVE_KRB5 */ diff --git a/source3/libnet/libnet_proto.h b/source3/libnet/libnet_proto.h deleted file mode 100644 index 9a193b724da..00000000000 --- a/source3/libnet/libnet_proto.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Unix SMB/CIFS implementation. - * collected prototypes header - * - * frozen from "make proto" in May 2008 - * - * Copyright (C) Michael Adam 2008 - * - * 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 _LIBNET_PROTO_H_ -#define _LIBNET_PROTO_H_ - - -/* The following definitions come from libnet/libnet_join.c */ - -NTSTATUS libnet_join_ok(const char *netbios_domain_name, - const char *machine_name, - const char *dc_name); -WERROR libnet_init_JoinCtx(TALLOC_CTX *mem_ctx, - struct libnet_JoinCtx **r); -WERROR libnet_init_UnjoinCtx(TALLOC_CTX *mem_ctx, - struct libnet_UnjoinCtx **r); -WERROR libnet_Join(TALLOC_CTX *mem_ctx, - struct libnet_JoinCtx *r); -WERROR libnet_Unjoin(TALLOC_CTX *mem_ctx, - struct libnet_UnjoinCtx *r); - -/* The following definitions come from librpc/gen_ndr/ndr_libnet_join.c */ - -_PUBLIC_ void ndr_print_libnet_JoinCtx(struct ndr_print *ndr, const char *name, int flags, const struct libnet_JoinCtx *r); -_PUBLIC_ void ndr_print_libnet_UnjoinCtx(struct ndr_print *ndr, const char *name, int flags, const struct libnet_UnjoinCtx *r); - -/* The following definitions come from libnet/libnet_keytab.c */ - -#ifdef HAVE_KRB5 -krb5_error_code libnet_keytab_init(TALLOC_CTX *mem_ctx, - const char *keytab_name, - struct libnet_keytab_context **ctx); -krb5_error_code libnet_keytab_add(struct libnet_keytab_context *ctx); - -struct libnet_keytab_entry *libnet_keytab_search(struct libnet_keytab_context *ctx, - const char *principal, int kvno, - const krb5_enctype enctype, - TALLOC_CTX *mem_ctx); -NTSTATUS libnet_keytab_add_to_keytab_entries(TALLOC_CTX *mem_ctx, - struct libnet_keytab_context *ctx, - uint32_t kvno, - const char *name, - const char *prefix, - const krb5_enctype enctype, - DATA_BLOB blob); -#endif - -/* The following definitions come from libnet/libnet_samsync.c */ - -NTSTATUS libnet_samsync_init_context(TALLOC_CTX *mem_ctx, - const struct dom_sid *domain_sid, - struct samsync_context **ctx_p); -NTSTATUS libnet_samsync(enum netr_SamDatabaseID database_id, - struct samsync_context *ctx); -NTSTATUS pull_netr_AcctLockStr(TALLOC_CTX *mem_ctx, - struct lsa_BinaryString *r, - struct netr_AcctLockStr **str_p); - -/* The following definitions come from libnet/libnet_dssync.c */ - -NTSTATUS libnet_dssync_init_context(TALLOC_CTX *mem_ctx, - struct dssync_context **ctx_p); -NTSTATUS libnet_dssync(TALLOC_CTX *mem_ctx, - struct dssync_context *ctx); - -#endif /* _LIBNET_PROTO_H_ */ diff --git a/source3/libnet/libnet_samsync.c b/source3/libnet/libnet_samsync.c index cbe4b80b616..5c42aca0a31 100644 --- a/source3/libnet/libnet_samsync.c +++ b/source3/libnet/libnet_samsync.c @@ -22,7 +22,7 @@ #include "includes.h" -#include "libnet/libnet.h" +#include "libnet/libnet_samsync.h" #include "../lib/crypto/crypto.h" #include "../libcli/samsync/samsync.h" #include "../libcli/auth/libcli_auth.h" diff --git a/source3/libnet/libnet_samsync.h b/source3/libnet/libnet_samsync.h index 3a686a7f455..c9093ef2f10 100644 --- a/source3/libnet/libnet_samsync.h +++ b/source3/libnet/libnet_samsync.h @@ -84,3 +84,14 @@ extern const struct samsync_ops libnet_samsync_ldif_ops; extern const struct samsync_ops libnet_samsync_keytab_ops; extern const struct samsync_ops libnet_samsync_display_ops; extern const struct samsync_ops libnet_samsync_passdb_ops; + +/* The following definitions come from libnet/libnet_samsync.c */ + +NTSTATUS libnet_samsync_init_context(TALLOC_CTX *mem_ctx, + const struct dom_sid *domain_sid, + struct samsync_context **ctx_p); +NTSTATUS libnet_samsync(enum netr_SamDatabaseID database_id, + struct samsync_context *ctx); +NTSTATUS pull_netr_AcctLockStr(TALLOC_CTX *mem_ctx, + struct lsa_BinaryString *r, + struct netr_AcctLockStr **str_p); diff --git a/source3/libnet/libnet_samsync_display.c b/source3/libnet/libnet_samsync_display.c index c8d9ec6f096..eb891cfc1af 100644 --- a/source3/libnet/libnet_samsync_display.c +++ b/source3/libnet/libnet_samsync_display.c @@ -24,7 +24,7 @@ */ #include "includes.h" -#include "libnet/libnet.h" +#include "libnet/libnet_samsync.h" static void display_group_mem_info(uint32_t rid, struct netr_DELTA_GROUP_MEMBER *r) diff --git a/source3/libnet/libnet_samsync_keytab.c b/source3/libnet/libnet_samsync_keytab.c index 768406314aa..246bcad0d37 100644 --- a/source3/libnet/libnet_samsync_keytab.c +++ b/source3/libnet/libnet_samsync_keytab.c @@ -19,7 +19,7 @@ */ #include "includes.h" -#include "libnet/libnet.h" +#include "libnet/libnet_samsync.h" #if defined(HAVE_ADS) && defined(ENCTYPE_ARCFOUR_HMAC) diff --git a/source3/libnet/libnet_samsync_passdb.c b/source3/libnet/libnet_samsync_passdb.c index f90ece5ed9b..224598a480e 100644 --- a/source3/libnet/libnet_samsync_passdb.c +++ b/source3/libnet/libnet_samsync_passdb.c @@ -24,7 +24,7 @@ */ #include "includes.h" -#include "libnet/libnet.h" +#include "libnet/libnet_samsync.h" /* Convert a struct samu_DELTA to a struct samu. */ #define STRING_CHANGED (old_string && !new_string) ||\ diff --git a/source3/rpc_server/srv_wkssvc_nt.c b/source3/rpc_server/srv_wkssvc_nt.c index 4106bc10bc5..d9f788142d9 100644 --- a/source3/rpc_server/srv_wkssvc_nt.c +++ b/source3/rpc_server/srv_wkssvc_nt.c @@ -23,7 +23,8 @@ /* This is the implementation of the wks interface. */ #include "includes.h" -#include "libnet/libnet.h" +#include "librpc/gen_ndr/libnet_join.h" +#include "libnet/libnet_join.h" #include "../libcli/auth/libcli_auth.h" #include "../librpc/gen_ndr/srv_wkssvc.h" diff --git a/source3/utils/net.h b/source3/utils/net.h index 21f393b243c..39a431315e9 100644 --- a/source3/utils/net.h +++ b/source3/utils/net.h @@ -23,7 +23,6 @@ */ #include "lib/netapi/netapi.h" -#include "libnet/libnet.h" #include "localedir.h" #ifdef HAVE_LIBINTL_H diff --git a/source3/utils/net_ads.c b/source3/utils/net_ads.c index 0571fc8d251..ef28fc7008b 100644 --- a/source3/utils/net_ads.c +++ b/source3/utils/net_ads.c @@ -28,6 +28,10 @@ #include "libads/cldap.h" #include "libads/dns.h" #include "../libds/common/flags.h" +#include "ads.h" +#include "librpc/gen_ndr/libnet_join.h" +#include "libnet/libnet_join.h" +#include "smb_krb5.h" #ifdef HAVE_ADS diff --git a/source3/utils/net_lookup.c b/source3/utils/net_lookup.c index 1b31b32ff07..5ff62398f29 100644 --- a/source3/utils/net_lookup.c +++ b/source3/utils/net_lookup.c @@ -21,6 +21,7 @@ #include "libads/sitename_cache.h" #include "libads/dns.h" #include "../librpc/gen_ndr/ndr_netlogon.h" +#include "smb_krb5.h" int net_lookup_usage(struct net_context *c, int argc, const char **argv) { diff --git a/source3/utils/net_rpc_samsync.c b/source3/utils/net_rpc_samsync.c index ae1a71b6895..8b5a90838ed 100644 --- a/source3/utils/net_rpc_samsync.c +++ b/source3/utils/net_rpc_samsync.c @@ -27,6 +27,8 @@ #include "utils/net.h" #include "../librpc/gen_ndr/ndr_netlogon.h" #include "../librpc/gen_ndr/ndr_drsuapi.h" +#include "libnet/libnet_samsync.h" +#include "libnet/libnet_dssync.h" static void parse_samsync_partial_replication_objects(TALLOC_CTX *mem_ctx, int argc, -- 2.34.1