diff options
-rw-r--r-- | libgpo/config.mk | 3 | ||||
-rw-r--r-- | libgpo/gpext/gpext.c (renamed from source3/libgpo/gpext/gpext.c) | 19 | ||||
-rw-r--r-- | libgpo/gpext/gpext.h (renamed from source3/libgpo/gpext/gpext.h) | 7 | ||||
-rw-r--r-- | libgpo/gpo.h (renamed from source3/include/gpo.h) | 9 | ||||
-rw-r--r-- | libgpo/gpo_util.c (renamed from source3/libgpo/gpo_util.c) | 10 | ||||
-rw-r--r-- | source3/Makefile.in | 4 | ||||
-rw-r--r-- | source3/include/includes.h | 2 |
7 files changed, 37 insertions, 17 deletions
diff --git a/libgpo/config.mk b/libgpo/config.mk new file mode 100644 index 0000000000..ebfcafd024 --- /dev/null +++ b/libgpo/config.mk @@ -0,0 +1,3 @@ +[SUBSYSTEM::LIBGPO] + +LIBGPO_OBJ_FILES = ../libgpo/gpo_util.o diff --git a/source3/libgpo/gpext/gpext.c b/libgpo/gpext/gpext.c index ee4ce87c4e..82c0459e45 100644 --- a/source3/libgpo/gpext/gpext.c +++ b/libgpo/gpext/gpext.c @@ -18,6 +18,9 @@ */ #include "includes.h" +#include "../libgpo/gpext/gpext.h" +#include "librpc/gen_ndr/ndr_misc.h" +#include "lib/util/dlinklist.h" static struct gp_extension *extensions = NULL; @@ -103,7 +106,7 @@ NTSTATUS unregister_gp_extension(const char *name) } DLIST_REMOVE(extensions, ext); - TALLOC_FREE(ext); + talloc_free(ext); DEBUG(2,("Successfully removed GP extension '%s'\n", name)); @@ -150,13 +153,13 @@ NTSTATUS register_gp_extension(TALLOC_CTX *gpext_ctx, return NT_STATUS_OBJECT_NAME_COLLISION; } - entry = TALLOC_ZERO_P(gpext_ctx, struct gp_extension); + entry = talloc_zero(gpext_ctx, struct gp_extension); NT_STATUS_HAVE_NO_MEMORY(entry); entry->name = talloc_strdup(gpext_ctx, name); NT_STATUS_HAVE_NO_MEMORY(entry->name); - entry->guid = TALLOC_ZERO_P(gpext_ctx, struct GUID); + entry->guid = talloc_zero(gpext_ctx, struct GUID); NT_STATUS_HAVE_NO_MEMORY(entry->guid); status = GUID_from_string(guid, entry->guid); NT_STATUS_NOT_OK_RETURN(status); @@ -180,7 +183,7 @@ static NTSTATUS gp_extension_init_module(TALLOC_CTX *mem_ctx, NTSTATUS status; struct gp_extension *ext = NULL; - ext = TALLOC_ZERO_P(mem_ctx, struct gp_extension); + ext = talloc_zero(mem_ctx, struct gp_extension); NT_STATUS_HAVE_NO_MEMORY(gpext); ext->methods = get_methods_by_name(extensions, name); @@ -211,7 +214,7 @@ static bool add_gp_extension_reg_entry_to_array(TALLOC_CTX *mem_ctx, struct gp_extension_reg_entry **entries, size_t *num) { - *entries = TALLOC_REALLOC_ARRAY(mem_ctx, *entries, + *entries = talloc_realloc(mem_ctx, *entries, struct gp_extension_reg_entry, (*num)+1); if (*entries == NULL) { @@ -234,7 +237,7 @@ static bool add_gp_extension_reg_info_entry_to_array(TALLOC_CTX *mem_ctx, struct gp_extension_reg_info_entry **entries, size_t *num) { - *entries = TALLOC_REALLOC_ARRAY(mem_ctx, *entries, + *entries = talloc_realloc(mem_ctx, *entries, struct gp_extension_reg_info_entry, (*num)+1); if (*entries == NULL) { @@ -262,10 +265,10 @@ static NTSTATUS gp_ext_info_add_reg(TALLOC_CTX *mem_ctx, struct gp_extension_reg_entry *reg_entry = NULL; struct registry_value *data = NULL; - reg_entry = TALLOC_ZERO_P(mem_ctx, struct gp_extension_reg_entry); + reg_entry = talloc_zero(mem_ctx, struct gp_extension_reg_entry); NT_STATUS_HAVE_NO_MEMORY(reg_entry); - data = TALLOC_ZERO_P(mem_ctx, struct registry_value); + data = talloc_zero(mem_ctx, struct registry_value); NT_STATUS_HAVE_NO_MEMORY(data); data->type = type; diff --git a/source3/libgpo/gpext/gpext.h b/libgpo/gpext/gpext.h index 0f0445701d..a3f9368f69 100644 --- a/source3/libgpo/gpext/gpext.h +++ b/libgpo/gpext/gpext.h @@ -17,6 +17,11 @@ * along with this program; if not, see <http://www.gnu.org/licenses/>. */ +#ifndef __GPEXT_H__ +#define __GPEXT_H__ + +#include "librpc/gen_ndr/winreg.h" + #define KEY_WINLOGON_GPEXT_PATH "HKLM\\Software\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\GPExtensions" #define SAMBA_SUBSYSTEM_GPEXT "gpext" @@ -77,3 +82,5 @@ struct gp_extension_methods { NTSTATUS (*shutdown)(void); }; + +#endif /* __GPEXT_H__ */ diff --git a/source3/include/gpo.h b/libgpo/gpo.h index bf5ff6a598..9abf526e14 100644 --- a/source3/include/gpo.h +++ b/libgpo/gpo.h @@ -17,6 +17,9 @@ * along with this program; if not, see <http://www.gnu.org/licenses/>. */ +#ifndef __GPO_H__ +#define __GPO_H__ + enum GPO_LINK_TYPE { GP_LINK_UNKOWN = 0, GP_LINK_MACHINE = 1, @@ -59,7 +62,7 @@ struct GROUP_POLICY_OBJECT { enum GPO_LINK_TYPE link_type; const char *user_extensions; const char *machine_extensions; - SEC_DESC *security_descriptor; + struct security_descriptor *security_descriptor; struct GROUP_POLICY_OBJECT *next, *prev; }; @@ -155,4 +158,6 @@ struct gp_registry_context { #define GP_EXT_GUID_REGISTRY "35378EAC-683F-11D2-A89A-00C04FBBCFA2" #define GP_EXT_GUID_SCRIPTS "42B5FAAE-6536-11D2-AE5A-0000F87571E3" -#include "libgpo/gpext/gpext.h" +#include "../libgpo/gpext/gpext.h" + +#endif diff --git a/source3/libgpo/gpo_util.c b/libgpo/gpo_util.c index 04597b3b57..505400be8c 100644 --- a/source3/libgpo/gpo_util.c +++ b/libgpo/gpo_util.c @@ -18,6 +18,8 @@ */ #include "includes.h" +#include "../libgpo/gpo.h" +#undef strdup #define DEFAULT_DOMAIN_POLICY "Default Domain Policy" #define DEFAULT_DOMAIN_CONTROLLERS_POLICY "Default Domain Controllers Policy" @@ -471,7 +473,7 @@ ADS_STATUS gpo_process_a_gpo(ADS_STRUCT *ads, if (extension_guid_filter && !strequal(extension_guid_filter, - gp_ext->extensions_guid[i])) { + gp_ext->extensions_guid[i])) { continue; } @@ -794,7 +796,7 @@ char *gpo_flag_str(uint32_t flags) if (flags & GPO_INFO_FLAG_BACKGROUND) fstrcat(str, "GPO_INFO_FLAG_BACKGROUND "); - return SMB_STRDUP(str); + return strdup(str); } /**************************************************************** @@ -807,7 +809,7 @@ NTSTATUS gp_find_file(TALLOC_CTX *mem_ctx, const char **filename_out) { const char *tmp = NULL; - SMB_STRUCT_STAT sbuf; + struct stat sbuf; const char *path = NULL; if (flags & GPO_LIST_FLAG_MACHINE) { @@ -820,7 +822,7 @@ NTSTATUS gp_find_file(TALLOC_CTX *mem_ctx, path, suffix); NT_STATUS_HAVE_NO_MEMORY(tmp); - if (sys_stat(tmp, &sbuf) == 0) { + if (stat(tmp, &sbuf) == 0) { *filename_out = tmp; return NT_STATUS_OK; } diff --git a/source3/Makefile.in b/source3/Makefile.in index b47c6e91b2..425d5f1c3b 100644 --- a/source3/Makefile.in +++ b/source3/Makefile.in @@ -409,9 +409,9 @@ LIBADDNS_OBJ0 = libaddns/dnsrecord.o libaddns/dnsutils.o libaddns/dnssock.o \ libaddns/dnsgss.o libaddns/dnsmarshall.o LIBADDNS_OBJ = $(LIBADDNS_OBJ0) $(SOCKET_WRAPPER_OBJ) -GPEXT_OBJ = libgpo/gpext/gpext.o @GPEXT_STATIC@ +GPEXT_OBJ = ../libgpo/gpext/gpext.o @GPEXT_STATIC@ -LIBGPO_OBJ0 = libgpo/gpo_ldap.o libgpo/gpo_ini.o libgpo/gpo_util.o \ +LIBGPO_OBJ0 = libgpo/gpo_ldap.o libgpo/gpo_ini.o ../libgpo/gpo_util.o \ libgpo/gpo_fetch.o libgpo/gpo_filesync.o libgpo/gpo_sec.o \ libgpo/gpo_reg.o \ $(GPEXT_OBJ) diff --git a/source3/include/includes.h b/source3/include/includes.h index 10319b7429..943de8db7b 100644 --- a/source3/include/includes.h +++ b/source3/include/includes.h @@ -609,7 +609,7 @@ struct smb_iconv_convenience *lp_iconv_convenience(void *lp_ctx); #include "mapping.h" #include "passdb.h" #include "rpc_secdes.h" -#include "gpo.h" +#include "../libgpo/gpo.h" #include "authdata.h" #include "msdfs.h" #include "rap.h" |