diff options
38 files changed, 60 insertions, 27 deletions
diff --git a/source4/build/smb_build/TODO b/source4/build/smb_build/TODO index 1c2e6c2f61..6c45e6e6b2 100644 --- a/source4/build/smb_build/TODO +++ b/source4/build/smb_build/TODO @@ -11,3 +11,4 @@ - utility function for 'init mutex' - install shared modules - improve (un)install scripts (rewrite in perl?) +- proper #include dependencies diff --git a/source4/include/includes.h b/source4/include/includes.h index 2222b4ff43..a8aecc3610 100644 --- a/source4/include/includes.h +++ b/source4/include/includes.h @@ -101,7 +101,6 @@ struct ipv4_addr { #include "smb_macros.h" #include "smb.h" #include "byteorder.h" -#include "lib/tdr/tdr.h" #include "librpc/ndr/libndr.h" #include "librpc/gen_ndr/misc.h" #include "librpc/gen_ndr/dcerpc.h" @@ -109,13 +108,13 @@ struct ipv4_addr { #include "librpc/gen_ndr/orpc.h" #include "librpc/rpc/dcerpc.h" #include "smb_interfaces.h" -#include "ntvfs/ntvfs.h" #include "cli_context.h" #include "auth/credentials/credentials.h" /***** automatically generated prototypes *****/ #define _PRINTF_ATTRIBUTE(a1, a2) PRINTF_ATTRIBUTE(a1, a2) #include "include/proto.h" +#include "basic.h" #undef _PRINTF_ATTRIBUTE #define _PRINTF_ATTRIBUTE(a1, a2) diff --git a/source4/include/structs.h b/source4/include/structs.h index 153902d13a..2187fcd8ba 100644 --- a/source4/include/structs.h +++ b/source4/include/structs.h @@ -157,7 +157,6 @@ struct request_buffer; struct smb2srv_request; struct smb2_request_buffer; -struct ntvfs_context; struct ntvfs_module_context; struct pvfs_dir; @@ -267,14 +266,10 @@ struct task_server; struct model_ops; struct stream_server_ops; -struct nbtd_server; -struct nbtd_interface; -struct nbtd_iface_name; struct wins_server; struct nbtd_proxy_wins_challenge; struct nbtd_proxy_wins_release_demand; -struct nbt_iface_name; struct nbt_dc_name; struct wb_sid_object; struct wb_dom_info; @@ -373,3 +368,6 @@ struct IUnknown_vtable; struct MprVar; struct registry_context; +struct nbtd_interface; +struct nbtd_iface_name; +struct nbtd_server; diff --git a/source4/lib/basic.mk b/source4/lib/basic.mk index 4d2d1b08fd..b4bde76d3f 100644 --- a/source4/lib/basic.mk +++ b/source4/lib/basic.mk @@ -32,6 +32,7 @@ MAJOR_VERSION = 0 MINOR_VERSION = 0 RELEASE_VERSION = 1 DESCRIPTION = Simple marshall/unmarshall library +PRIVATE_PROTO_HEADER = tdr/tdr_proto.h OBJ_FILES = tdr/tdr.o ############################## @@ -62,6 +63,7 @@ OBJ_FILES = \ ############################## # Start SUBSYSTEM LIBBASIC [SUBSYSTEM::LIBBASIC] +PRIVATE_PROTO_HEADER = basic.h OBJ_FILES = version.o \ xfile.o \ debug.o \ diff --git a/source4/lib/registry/common/reg_interface.c b/source4/lib/registry/common/reg_interface.c index b0540c1ba4..00fa42d342 100644 --- a/source4/lib/registry/common/reg_interface.c +++ b/source4/lib/registry/common/reg_interface.c @@ -29,7 +29,7 @@ static struct reg_init_function_entry *backends = NULL; static struct reg_init_function_entry *reg_find_backend_entry(const char *name); /* Register new backend */ -NTSTATUS registry_register(const void *_hive_ops) +_PUBLIC_ NTSTATUS registry_register(const void *_hive_ops) { const struct hive_operations *hive_ops = _hive_ops; struct reg_init_function_entry *entry = backends; @@ -65,7 +65,7 @@ static struct reg_init_function_entry *reg_find_backend_entry(const char *name) return NULL; } -NTSTATUS registry_init(void) +_PUBLIC_ NTSTATUS registry_init(void) { init_module_fn static_init[] = STATIC_REGISTRY_MODULES; init_module_fn *shared_init = load_samba_modules(NULL, "registry"); @@ -101,7 +101,7 @@ static struct { { 0, NULL } }; -int reg_list_predefs(TALLOC_CTX *mem_ctx, char ***predefs, uint32_t **hkeys) +_PUBLIC_ int reg_list_predefs(TALLOC_CTX *mem_ctx, char ***predefs, uint32_t **hkeys) { int i; *predefs = talloc_array(mem_ctx, char *, ARRAY_SIZE(predef_names)); @@ -151,7 +151,7 @@ WERROR reg_get_predefined_key(struct registry_context *ctx, uint32_t hkey, struc } /* Open a registry file/host/etc */ -WERROR reg_open_hive(TALLOC_CTX *parent_ctx, const char *backend, const char *location, const char *credentials, struct registry_key **root) +_PUBLIC_ WERROR reg_open_hive(TALLOC_CTX *parent_ctx, const char *backend, const char *location, const char *credentials, struct registry_key **root) { struct registry_hive *rethive; struct registry_key *retkey = NULL; @@ -200,7 +200,7 @@ WERROR reg_open_hive(TALLOC_CTX *parent_ctx, const char *backend, const char *lo * First tries to use the open_key function from the backend * then falls back to get_subkey_by_name and later get_subkey_by_index */ -WERROR reg_open_key(TALLOC_CTX *mem_ctx, struct registry_key *parent, const char *name, struct registry_key **result) +_PUBLIC_ WERROR reg_open_key(TALLOC_CTX *mem_ctx, struct registry_key *parent, const char *name, struct registry_key **result) { WERROR error; @@ -251,7 +251,7 @@ WERROR reg_open_key(TALLOC_CTX *mem_ctx, struct registry_key *parent, const char return WERR_OK; } -WERROR reg_key_get_value_by_index(TALLOC_CTX *mem_ctx, const struct registry_key *key, int idx, struct registry_value **val) +_PUBLIC_ WERROR reg_key_get_value_by_index(TALLOC_CTX *mem_ctx, const struct registry_key *key, int idx, struct registry_value **val) { if(!key) return WERR_INVALID_PARAM; @@ -434,7 +434,7 @@ WERROR reg_key_add_name(TALLOC_CTX *mem_ctx, const struct registry_key *parent, return WERR_OK; } -WERROR reg_val_set(struct registry_key *key, const char *value, uint32_t type, DATA_BLOB data) +_PUBLIC_ WERROR reg_val_set(struct registry_key *key, const char *value, uint32_t type, DATA_BLOB data) { /* A 'real' set function has preference */ if (key->hive->functions->set_value) @@ -455,7 +455,7 @@ WERROR reg_get_sec_desc(TALLOC_CTX *ctx, const struct registry_key *key, struct return WERR_NOT_SUPPORTED; } -WERROR reg_del_value(const struct registry_key *key, const char *valname) +_PUBLIC_ WERROR reg_del_value(const struct registry_key *key, const char *valname) { WERROR ret = WERR_OK; if(!key->hive->functions->del_value) diff --git a/source4/lib/registry/patchfile.c b/source4/lib/registry/patchfile.c index dd118c780f..21c9c26b21 100644 --- a/source4/lib/registry/patchfile.c +++ b/source4/lib/registry/patchfile.c @@ -173,7 +173,7 @@ static WERROR reg_generate_diff_key(struct reg_diff *diff, struct registry_key * /* * Generate diff between two registry contexts */ -struct reg_diff *reg_generate_diff(TALLOC_CTX *mem_ctx, struct registry_context *ctx1, struct registry_context *ctx2) +_PUBLIC_ struct reg_diff *reg_generate_diff(TALLOC_CTX *mem_ctx, struct registry_context *ctx1, struct registry_context *ctx2) { struct reg_diff *diff = talloc_zero(mem_ctx, struct reg_diff); int i; @@ -202,7 +202,7 @@ struct reg_diff *reg_generate_diff(TALLOC_CTX *mem_ctx, struct registry_context /* * Save registry diff */ -WERROR reg_diff_save(const struct reg_diff *diff, const char *filename) +_PUBLIC_ WERROR reg_diff_save(const struct reg_diff *diff, const char *filename) { int xf, i, j; @@ -363,7 +363,7 @@ struct reg_diff *reg_diff_load(TALLOC_CTX *ctx, const char *fn) /* * Apply diff to a registry context */ -BOOL reg_diff_apply (const struct reg_diff *diff, struct registry_context *ctx) +_PUBLIC_ BOOL reg_diff_apply (const struct reg_diff *diff, struct registry_context *ctx) { TALLOC_CTX *mem_ctx = talloc_init("apply_cmd_file"); struct registry_key *tmp = NULL; diff --git a/source4/lib/tdr/tdr.c b/source4/lib/tdr/tdr.c index 4a8d05a8ab..5ebe3f0852 100644 --- a/source4/lib/tdr/tdr.c +++ b/source4/lib/tdr/tdr.c @@ -24,6 +24,7 @@ #include "includes.h" #include "system/network.h" #include "system/filesys.h" +#include "tdr/tdr.h" #define TDR_BASE_MARSHALL_SIZE 1024 diff --git a/source4/lib/tdr/tdr.h b/source4/lib/tdr/tdr.h index f882a63275..8ca6717cee 100644 --- a/source4/lib/tdr/tdr.h +++ b/source4/lib/tdr/tdr.h @@ -54,3 +54,5 @@ struct tdr_print { typedef NTSTATUS (*tdr_push_fn_t) (struct tdr_push *, const void *); typedef NTSTATUS (*tdr_pull_fn_t) (struct tdr_pull *, TALLOC_CTX *, void *); + +#include "tdr/tdr_proto.h" diff --git a/source4/main.mk b/source4/main.mk index b185ec97e4..d21d57b790 100644 --- a/source4/main.mk +++ b/source4/main.mk @@ -215,9 +215,9 @@ clean_pch: basics: include/config.h \ include/proto.h \ + $(PROTO_HEADERS) \ idl \ - heimdal_basics \ - $(PROTO_HEADERS) + heimdal_basics clean: heimdal_clean @echo Removing headers diff --git a/source4/nbt_server/config.mk b/source4/nbt_server/config.mk index 24e69eb52e..61d2a7a3d6 100644 --- a/source4/nbt_server/config.mk +++ b/source4/nbt_server/config.mk @@ -47,6 +47,7 @@ OBJ_FILES = \ defense.o \ packet.o \ irpc.o +PRIVATE_PROTO_HEADER = nbt_server_proto.h REQUIRED_SUBSYSTEMS = \ LIBCLI_NBT NBTD_WINS NBTD_DGRAM # End SUBSYSTEM NBTD diff --git a/source4/nbt_server/nbt_server.h b/source4/nbt_server/nbt_server.h index 71e384bd2c..9203f20fd9 100644 --- a/source4/nbt_server/nbt_server.h +++ b/source4/nbt_server/nbt_server.h @@ -86,3 +86,5 @@ struct nbtd_server { return; \ } \ } while (0) + +#include "nbt_server/nbt_server_proto.h" diff --git a/source4/ntvfs/cifs/vfs_cifs.c b/source4/ntvfs/cifs/vfs_cifs.c index b0d0d06552..16a472104b 100644 --- a/source4/ntvfs/cifs/vfs_cifs.c +++ b/source4/ntvfs/cifs/vfs_cifs.c @@ -33,6 +33,7 @@ #include "smb_server/smb_server.h" #include "smbd/service_stream.h" #include "auth/auth.h" +#include "ntvfs/ntvfs.h" /* this is stored in ntvfs_private */ struct cvfs_private { diff --git a/source4/ntvfs/config.mk b/source4/ntvfs/config.mk index bc39d82156..74b62809f7 100644 --- a/source4/ntvfs/config.mk +++ b/source4/ntvfs/config.mk @@ -77,6 +77,7 @@ PUBLIC_HEADERS = ntvfs.h MAJOR_VERSION = 0 MINOR_VERSION = 0 DESCRIPTION = Virtual File System with NTFS semantics +PRIVATE_PROTO_HEADER = ntvfs_proto.h RELEASE_VERSION = 1 OBJ_FILES = \ ntvfs_base.o \ diff --git a/source4/ntvfs/ipc/vfs_ipc.c b/source4/ntvfs/ipc/vfs_ipc.c index 3f91323fe5..3a643d7145 100644 --- a/source4/ntvfs/ipc/vfs_ipc.c +++ b/source4/ntvfs/ipc/vfs_ipc.c @@ -29,6 +29,7 @@ #include "system/filesys.h" #include "dlinklist.h" #include "smb_server/smb_server.h" +#include "ntvfs/ntvfs.h" #define IPC_BASE_FNUM 0x400 diff --git a/source4/ntvfs/nbench/vfs_nbench.c b/source4/ntvfs/nbench/vfs_nbench.c index acfa6313d3..3c95621694 100644 --- a/source4/ntvfs/nbench/vfs_nbench.c +++ b/source4/ntvfs/nbench/vfs_nbench.c @@ -27,6 +27,7 @@ #include "includes.h" #include "system/filesys.h" #include "smb_server/smb_server.h" +#include "ntvfs/ntvfs.h" /* this is stored in ntvfs_private */ struct nbench_private { diff --git a/source4/ntvfs/ntvfs.h b/source4/ntvfs/ntvfs.h index 3a6a78c032..4ec8926ebc 100644 --- a/source4/ntvfs/ntvfs.h +++ b/source4/ntvfs/ntvfs.h @@ -180,3 +180,5 @@ struct ntvfs_critical_sizes { int sizeof_smbsrv_tcon; int sizeof_smbsrv_request; }; + +#include "ntvfs/ntvfs_proto.h" diff --git a/source4/ntvfs/ntvfs_base.c b/source4/ntvfs/ntvfs_base.c index 1b021527de..d20904737f 100644 --- a/source4/ntvfs/ntvfs_base.c +++ b/source4/ntvfs/ntvfs_base.c @@ -27,6 +27,7 @@ #include "dlinklist.h" #include "smb_server/smb_server.h" #include "smb_build.h" +#include "ntvfs/ntvfs.h" /* the list of currently registered NTVFS backends, note that there * can be more than one backend with the same name, as long as they diff --git a/source4/ntvfs/ntvfs_generic.c b/source4/ntvfs/ntvfs_generic.c index 8d2809cf6b..dc638ade5f 100644 --- a/source4/ntvfs/ntvfs_generic.c +++ b/source4/ntvfs/ntvfs_generic.c @@ -34,6 +34,7 @@ #include "includes.h" #include "smb_server/smb_server.h" #include "librpc/gen_ndr/ndr_security.h" +#include "ntvfs/ntvfs.h" /* a second stage function converts from the out parameters of the generic call onto the out parameters of the specific call made */ diff --git a/source4/ntvfs/ntvfs_interface.c b/source4/ntvfs/ntvfs_interface.c index 6a711bc3bd..788dcafaca 100644 --- a/source4/ntvfs/ntvfs_interface.c +++ b/source4/ntvfs/ntvfs_interface.c @@ -21,7 +21,7 @@ #include "includes.h" #include "smb_server/smb_server.h" - +#include "ntvfs/ntvfs.h" /* connect/disconnect */ NTSTATUS ntvfs_connect(struct smbsrv_request *req, const char *sharename) diff --git a/source4/ntvfs/ntvfs_util.c b/source4/ntvfs/ntvfs_util.c index e360321882..ad31865425 100644 --- a/source4/ntvfs/ntvfs_util.c +++ b/source4/ntvfs/ntvfs_util.c @@ -24,6 +24,7 @@ #include "includes.h" #include "dlinklist.h" #include "smb_server/smb_server.h" +#include "ntvfs/ntvfs.h" NTSTATUS ntvfs_async_state_push(struct smbsrv_request *req, diff --git a/source4/ntvfs/posix/vfs_posix.h b/source4/ntvfs/posix/vfs_posix.h index 9eec368157..dd2bf74543 100644 --- a/source4/ntvfs/posix/vfs_posix.h +++ b/source4/ntvfs/posix/vfs_posix.h @@ -25,6 +25,7 @@ #include "system/filesys.h" #include "smb_server/smb_server.h" +#include "ntvfs/ntvfs.h" /* this is the private structure for the posix vfs backend. It is used to hold per-connection (per tree connect) state information */ diff --git a/source4/ntvfs/print/vfs_print.c b/source4/ntvfs/print/vfs_print.c index c04cf76f33..e933f5502b 100644 --- a/source4/ntvfs/print/vfs_print.c +++ b/source4/ntvfs/print/vfs_print.c @@ -25,6 +25,7 @@ #include "includes.h" #include "ioctl.h" #include "smb_server/smb_server.h" +#include "ntvfs/ntvfs.h" /* connect to a share - used when a tree_connect operation comes diff --git a/source4/ntvfs/simple/svfs_util.c b/source4/ntvfs/simple/svfs_util.c index ac5cf69e9a..d332abb091 100644 --- a/source4/ntvfs/simple/svfs_util.c +++ b/source4/ntvfs/simple/svfs_util.c @@ -28,6 +28,7 @@ #include "svfs.h" #include "system/time.h" #include "system/dir.h" +#include "ntvfs/ntvfs.h" /* convert a windows path to a unix path - don't do any manging or case sensitive handling diff --git a/source4/ntvfs/simple/vfs_simple.c b/source4/ntvfs/simple/vfs_simple.c index e9063c38c5..1198cafbe9 100644 --- a/source4/ntvfs/simple/vfs_simple.c +++ b/source4/ntvfs/simple/vfs_simple.c @@ -33,6 +33,7 @@ #include "system/time.h" #include "dlinklist.h" #include "smb_server/smb_server.h" +#include "ntvfs/ntvfs.h" #ifndef O_DIRECTORY #define O_DIRECTORY 0 diff --git a/source4/ntvfs/unixuid/vfs_unixuid.c b/source4/ntvfs/unixuid/vfs_unixuid.c index 928ff8241b..8bdf732735 100644 --- a/source4/ntvfs/unixuid/vfs_unixuid.c +++ b/source4/ntvfs/unixuid/vfs_unixuid.c @@ -27,6 +27,7 @@ #include "auth/auth.h" #include "librpc/gen_ndr/ndr_security.h" #include "smb_server/smb_server.h" +#include "ntvfs/ntvfs.h" struct unixuid_private { struct sidmap_context *sidmap; diff --git a/source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm b/source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm index 789fb7adbe..3bdb701526 100644 --- a/source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm +++ b/source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm @@ -242,6 +242,7 @@ sub Parser($$$) pidl ""; pidl_hdr "/* autogenerated by pidl */"; pidl_hdr "#include \"$baseheader\""; + pidl_hdr "#include \"tdr/tdr.h\""; pidl_hdr ""; foreach (@$idl) { ParserInterface($_) if ($_->{TYPE} eq "INTERFACE"); } diff --git a/source4/script/mkproto.pl b/source4/script/mkproto.pl index 479d53da32..1b2a9d355a 100755 --- a/source4/script/mkproto.pl +++ b/source4/script/mkproto.pl @@ -56,14 +56,14 @@ if (not defined($private_define) and defined($private_file)) { } if (defined($public_file)) { - open PUBLIC, ">$public_file"; + open PUBLIC, ">$public_file" or die("Can't open `$public_file': $!"); $public_fd = \*PUBLIC; } if ($private_file eq $public_file) { $private_fd = $public_fd; } elsif (defined($private_file)) { - open PRIVATE, ">$private_file"; + open PRIVATE, ">$private_file" or die("Can't open `$private_file': $!"); ; $private_fd = \*PRIVATE; } @@ -128,6 +128,10 @@ sub process_file($$$) next if ($line =~ /^\/|[;]/); + if ($line =~ s/^_PUBLIC_[\t ]//) { + $target = $public_file; + } + next unless ( $line =~ / ^void|^BOOL|^int|^struct|^char|^const|^\w+_[tT]\s|^uint|^unsigned|^long| ^NTSTATUS|^ADS_STATUS|^enum\s.*\(|^DATA_BLOB|^WERROR|^XFILE|^FILE|^DIR| @@ -142,10 +146,6 @@ sub process_file($$$) next; } - if ($line =~ s/_PUBLIC_//xo) { - $target = $public_file; - } - if ( $line =~ /\(.*\)\s*$/o ) { chomp $line; print $target "$line;\n"; diff --git a/source4/smb_server/config.mk b/source4/smb_server/config.mk index 0810c29998..d41ec24aca 100644 --- a/source4/smb_server/config.mk +++ b/source4/smb_server/config.mk @@ -8,6 +8,7 @@ OBJ_FILES = \ tcon.o \ session.o \ management.o +PRIVATE_PROTO_HEADER = smb_server_proto.h REQUIRED_SUBSYSTEMS = \ LIBPACKET \ SMB_PROTOCOL \ diff --git a/source4/smb_server/smb/nttrans.c b/source4/smb_server/smb/nttrans.c index 215b378283..7d5398671d 100644 --- a/source4/smb_server/smb/nttrans.c +++ b/source4/smb_server/smb/nttrans.c @@ -25,6 +25,7 @@ #include "includes.h" #include "smb_server/smb_server.h" #include "librpc/gen_ndr/ndr_security.h" +#include "ntvfs/ntvfs.h" diff --git a/source4/smb_server/smb/receive.c b/source4/smb_server/smb/receive.c index 806244ee12..a7dde2163f 100644 --- a/source4/smb_server/smb/receive.c +++ b/source4/smb_server/smb/receive.c @@ -25,6 +25,7 @@ #include "smbd/service_stream.h" #include "smb_server/smb_server.h" #include "lib/stream/packet.h" +#include "ntvfs/ntvfs.h" /* diff --git a/source4/smb_server/smb/reply.c b/source4/smb_server/smb/reply.c index d780cb1a75..644a5dd1a4 100644 --- a/source4/smb_server/smb/reply.c +++ b/source4/smb_server/smb/reply.c @@ -26,6 +26,7 @@ #include "includes.h" #include "smb_server/smb_server.h" #include "libcli/nbt/libnbt.h" +#include "ntvfs/ntvfs.h" /* useful way of catching wct errors with file and line number */ diff --git a/source4/smb_server/smb/request.c b/source4/smb_server/smb/request.c index 5491089c8e..08e3eb74a5 100644 --- a/source4/smb_server/smb/request.c +++ b/source4/smb_server/smb/request.c @@ -28,6 +28,7 @@ #include "smb_server/smb_server.h" #include "smbd/service_stream.h" #include "lib/stream/packet.h" +#include "ntvfs/ntvfs.h" /* we over allocate the data buffer to prevent too many realloc calls */ diff --git a/source4/smb_server/smb/search.c b/source4/smb_server/smb/search.c index 3ec66a0f33..e214d23e18 100644 --- a/source4/smb_server/smb/search.c +++ b/source4/smb_server/smb/search.c @@ -24,6 +24,7 @@ #include "includes.h" #include "smb_server/smb_server.h" +#include "ntvfs/ntvfs.h" /* check req->async.status and if not OK then send an error reply */ diff --git a/source4/smb_server/smb/service.c b/source4/smb_server/smb/service.c index 6032e5a20d..f5ba1254d8 100644 --- a/source4/smb_server/smb/service.c +++ b/source4/smb_server/smb/service.c @@ -21,6 +21,7 @@ #include "includes.h" #include "smb_server/smb_server.h" #include "smbd/service_stream.h" +#include "ntvfs/ntvfs.h" /** diff --git a/source4/smb_server/smb/trans2.c b/source4/smb_server/smb/trans2.c index 6e4322d7b3..ef7fa40b20 100644 --- a/source4/smb_server/smb/trans2.c +++ b/source4/smb_server/smb/trans2.c @@ -25,6 +25,7 @@ #include "dlinklist.h" #include "smb_server/smb_server.h" #include "librpc/gen_ndr/ndr_misc.h" +#include "ntvfs/ntvfs.h" #define CHECK_MIN_BLOB_SIZE(blob, size) do { \ if ((blob)->length < (size)) { \ diff --git a/source4/smb_server/smb_server.h b/source4/smb_server/smb_server.h index 7f38119f2b..d0df15e022 100644 --- a/source4/smb_server/smb_server.h +++ b/source4/smb_server/smb_server.h @@ -301,3 +301,5 @@ struct smbsrv_connection { BOOL nt_status_support; } config; }; + +#include "smb_server/smb_server_proto.h" diff --git a/source4/smb_server/tcon.c b/source4/smb_server/tcon.c index 0cb6738d31..01194d1ea1 100644 --- a/source4/smb_server/tcon.c +++ b/source4/smb_server/tcon.c @@ -24,6 +24,7 @@ #include "dlinklist.h" #include "smb_server/smb_server.h" #include "smbd/service_stream.h" +#include "ntvfs/ntvfs.h" /**************************************************************************** diff --git a/source4/smbd/server.c b/source4/smbd/server.c index a753a1668b..7174084f13 100644 --- a/source4/smbd/server.c +++ b/source4/smbd/server.c @@ -32,6 +32,7 @@ #include "system/kerberos.h" #include "smb_build.h" #include "registry/registry.h" +#include "ntvfs/ntvfs.h" /* recursively delete a directory tree |