The branch, v3-2-test has been updated via 733e07a06ce3c903ff5837df6a5119f6d6e3eccb (commit) via ad8f6933322e7175b74cc3de525fda58ae150baa (commit) via f7100156a7df7ac3ae84e45a47153b38d9375215 (commit) via 0230284cfa83477ad5a084a7970db1ea0cfe8563 (commit) via 9097846466a8dea171f4d241661083f896591292 (commit) via b4c1904022cd34c239f163d49d5a13925d238cda (commit) via 5d8e5cbc3b3ddd1c5788d66f252e4801739243bb (commit) via b0e86c5b4d375f21f06208dc063adb9d2659d30b (commit) via 37d976d90c9bd7697010309e5efbc7853aced9e5 (commit) via 9d76153f54aea671d5d1543eaa3e617aad1ba9e9 (commit) via 9afc7d957d1b5362e470c2e87e336fdd74b8be3c (commit) via 8a895a37a0a0d155fddf0a6a124f161e3ace5e0b (commit) via f24dfaa8466b28416a7fdd941990948210a400c7 (commit) from 903223b160eef6ba6ff19a8bfef19e5fe7008631 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test - Log ----------------------------------------------------------------- commit 733e07a06ce3c903ff5837df6a5119f6d6e3eccb Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 10:39:15 2008 +0100 Use new pidl-generated netlogon client calls in NetApi GetDcName(). Guenther commit ad8f6933322e7175b74cc3de525fda58ae150baa Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 10:35:55 2008 +0100 Include auto-generated client headers for netlogon/samr. Guenther commit f7100156a7df7ac3ae84e45a47153b38d9375215 Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 10:24:34 2008 +0100 Finally enable pidl generated SAMR & NETLOGON headers and clients. Guenther commit 0230284cfa83477ad5a084a7970db1ea0cfe8563 Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 10:20:50 2008 +0100 Re-run make idl to regnerated netlogon. Guenther commit 9097846466a8dea171f4d241661083f896591292 Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 10:19:15 2008 +0100 Add NETLOGON_GRACE_LOGON flag to netr_UserFlags. Guenther commit b4c1904022cd34c239f163d49d5a13925d238cda Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 10:15:30 2008 +0100 Re-run make idl to generate SAMR output. Guenther commit 5d8e5cbc3b3ddd1c5788d66f252e4801739243bb Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 10:11:28 2008 +0100 Use pidl generated data from misc.idl. Guenther commit b0e86c5b4d375f21f06208dc063adb9d2659d30b Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 10:00:37 2008 +0100 Re-run make idl to regenerate netlogon output. Guenther commit 37d976d90c9bd7697010309e5efbc7853aced9e5 Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 09:54:35 2008 +0100 Remove dependency for nbt.idl (the NBT_SERVER_* flags) in netlogon.idl. Guenther commit 9d76153f54aea671d5d1543eaa3e617aad1ba9e9 Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 09:52:21 2008 +0100 Remove samba4 specifi struct server_id from misc.idl. Guenther commit 9afc7d957d1b5362e470c2e87e336fdd74b8be3c Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 09:50:45 2008 +0100 Import recent misc.idl from Samba4. Guenther commit 8a895a37a0a0d155fddf0a6a124f161e3ace5e0b Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 09:49:10 2008 +0100 Add samba3 [out,ref] pointer massage to samr&netlogon idl. Guenther commit f24dfaa8466b28416a7fdd941990948210a400c7 Author: Günther Deschner <[EMAIL PROTECTED]> Date: Thu Jan 17 09:41:58 2008 +0100 Import recent netlogon and samr IDL from samba4. Guenther ----------------------------------------------------------------------- Summary of changes: source/Makefile.in | 15 +- source/include/rpc_client.h | 2 + source/include/rpc_dce.h | 5 - source/include/rpc_netlogon.h | 53 +- source/include/rpc_samr.h | 12 - source/include/smb.h | 47 +- source/lib/netapi/examples/getdc/getdc.c | 4 +- source/lib/netapi/getdc.c | 42 +- source/libads/authdata.c | 12 +- source/librpc/gen_ndr/cli_netlogon.c | 211 +- source/librpc/gen_ndr/cli_netlogon.h | 71 +- source/librpc/gen_ndr/cli_samr.c | 3030 ++++++++ source/librpc/gen_ndr/cli_samr.h | 389 + source/librpc/gen_ndr/misc.h | 73 + source/librpc/gen_ndr/ndr_misc.c | 185 + source/librpc/gen_ndr/ndr_misc.h | 30 +- source/librpc/gen_ndr/ndr_netlogon.c | 2105 +++++- source/librpc/gen_ndr/ndr_netlogon.h | 34 +- source/librpc/gen_ndr/ndr_samr.c |12290 ++++++++++++++++++++++++++++++ source/librpc/gen_ndr/ndr_samr.h | 340 + source/librpc/gen_ndr/netlogon.h | 218 +- source/librpc/gen_ndr/samr.h | 1754 +++++ source/librpc/gen_ndr/srv_netlogon.c | 227 +- source/librpc/gen_ndr/srv_netlogon.h | 18 +- source/librpc/gen_ndr/srv_samr.c | 5482 +++++++++++++ source/librpc/gen_ndr/srv_samr.h | 74 + source/librpc/idl/misc.idl | 2 - source/librpc/idl/netlogon.idl | 260 +- source/librpc/idl/samr.idl | 354 +- source/librpc/ndr/libndr.h | 2 +- source/librpc/ndr/misc.h | 42 - source/librpc/ndr/ndr_misc.c | 68 - source/nsswitch/pam_winbind.c | 8 +- source/nsswitch/pam_winbind.h | 23 +- source/nsswitch/wbinfo.c | 4 +- source/rpc_parse/parse_net.c | 32 +- source/rpc_server/srv_netlog_nt.c | 2 +- source/rpcclient/cmd_samr.c | 20 +- source/smbd/chgpasswd.c | 12 +- source/winbindd/winbindd_creds.c | 2 +- source/winbindd/winbindd_pam.c | 6 +- 41 files changed, 26476 insertions(+), 1084 deletions(-) create mode 100644 source/librpc/gen_ndr/cli_samr.c create mode 100644 source/librpc/gen_ndr/cli_samr.h create mode 100644 source/librpc/gen_ndr/misc.h create mode 100644 source/librpc/gen_ndr/ndr_misc.c create mode 100644 source/librpc/gen_ndr/ndr_samr.c create mode 100644 source/librpc/gen_ndr/ndr_samr.h create mode 100644 source/librpc/gen_ndr/samr.h create mode 100644 source/librpc/gen_ndr/srv_samr.c create mode 100644 source/librpc/gen_ndr/srv_samr.h delete mode 100644 source/librpc/ndr/misc.h Changeset truncated at 500 lines: diff --git a/source/Makefile.in b/source/Makefile.in index 265d145..2276500 100644 --- a/source/Makefile.in +++ b/source/Makefile.in @@ -253,8 +253,13 @@ ERRORMAP_OBJ = libsmb/errormap.o PASSCHANGE_OBJ = libsmb/passchange.o -LIBNDR_OBJ = librpc/ndr/ndr_basic.o librpc/ndr/ndr.o librpc/ndr/ndr_misc.o \ - librpc/ndr/ndr_sec_helper.o librpc/ndr/ndr_string.o librpc/ndr/sid.o \ +LIBNDR_OBJ = librpc/ndr/ndr_basic.o \ + librpc/ndr/ndr.o \ + librpc/ndr/ndr_misc.o \ + librpc/gen_ndr/ndr_misc.o \ + librpc/ndr/ndr_sec_helper.o \ + librpc/ndr/ndr_string.o \ + librpc/ndr/sid.o \ librpc/ndr/uuid.o RPCCLIENT_NDR_OBJ = rpc_client/ndr.o @@ -268,6 +273,8 @@ LIBNDR_GEN_OBJ = librpc/gen_ndr/ndr_wkssvc.o \ librpc/gen_ndr/ndr_srvsvc.o \ librpc/gen_ndr/ndr_svcctl.o \ librpc/gen_ndr/ndr_eventlog.o \ + librpc/gen_ndr/ndr_netlogon.o \ + librpc/gen_ndr/ndr_samr.o \ librpc/gen_ndr/ndr_notify.o \ librpc/gen_ndr/ndr_libnet_join.o @@ -398,6 +405,8 @@ LIBMSRPC_GEN_OBJ = librpc/gen_ndr/cli_lsa.o \ librpc/gen_ndr/cli_initshutdown.o \ librpc/gen_ndr/cli_eventlog.o \ librpc/gen_ndr/cli_wkssvc.o \ + librpc/gen_ndr/cli_netlogon.o \ + librpc/gen_ndr/cli_samr.o \ $(LIBNDR_GEN_OBJ) \ $(RPCCLIENT_NDR_OBJ) @@ -1064,7 +1073,7 @@ modules: SHOWFLAGS $(MODULES) ## Perl IDL Compiler IDL_FILES = unixinfo.idl lsa.idl dfs.idl echo.idl winreg.idl initshutdown.idl \ srvsvc.idl svcctl.idl eventlog.idl wkssvc.idl netlogon.idl notify.idl \ - epmapper.idl messaging.idl xattr.idl + epmapper.idl messaging.idl xattr.idl misc.idl samr.idl idl: @IDL_FILES="$(IDL_FILES)" CPP="$(CPP)" PERL="$(PERL)" \ diff --git a/source/include/rpc_client.h b/source/include/rpc_client.h index 66c4f58..01e2a84 100644 --- a/source/include/rpc_client.h +++ b/source/include/rpc_client.h @@ -31,6 +31,8 @@ #include "librpc/gen_ndr/cli_initshutdown.h" #include "librpc/gen_ndr/cli_winreg.h" #include "librpc/gen_ndr/cli_srvsvc.h" +#include "librpc/gen_ndr/cli_samr.h" +#include "librpc/gen_ndr/cli_netlogon.h" /* macro to expand cookie-cutter code in cli_xxx() using rpc_api_pipe_req() */ diff --git a/source/include/rpc_dce.h b/source/include/rpc_dce.h index 7ea3fcb..f162196 100644 --- a/source/include/rpc_dce.h +++ b/source/include/rpc_dce.h @@ -98,11 +98,6 @@ enum RPC_PKT_TYPE { #define RPC_AUTH_SCHANNEL_SIGN_OR_SEAL_CHK_LEN 0x20 #define RPC_AUTH_SCHANNEL_SIGN_ONLY_CHK_LEN 0x18 - -#define NETLOGON_NEG_ARCFOUR 0x00000004 -#define NETLOGON_NEG_128BIT 0x00004000 -#define NETLOGON_NEG_SCHANNEL 0x40000000 - /* The 7 here seems to be required to get Win2k not to downgrade us to NT4. Actually, anything other than 1ff would seem to do... */ #define NETLOGON_NEG_AUTH2_FLAGS 0x000701ff diff --git a/source/include/rpc_netlogon.h b/source/include/rpc_netlogon.h index a82b977..48a2a32 100644 --- a/source/include/rpc_netlogon.h +++ b/source/include/rpc_netlogon.h @@ -45,11 +45,6 @@ #define NET_DSR_GETDCNAMEEX2 0x22 #define NET_SAMLOGON_EX 0x27 -/* Secure Channel types. used in NetrServerAuthenticate negotiation */ -#define SEC_CHAN_WKSTA 2 -#define SEC_CHAN_DOMAIN 4 -#define SEC_CHAN_BDC 6 - /* Returned delta types */ #define SAM_DELTA_DOMAIN_INFO 0x01 #define SAM_DELTA_GROUP_INFO 0x02 @@ -89,32 +84,15 @@ #define NL_CTRL_REPL_IN_PROGRESS 0x0002 #define NL_CTRL_FULL_SYNC 0x0004 -#define LOGON_GUEST 0x00000001 -#define LOGON_NOENCRYPTION 0x00000002 -#define LOGON_CACHED_ACCOUNT 0x00000004 -#define LOGON_USED_LM_PASSWORD 0x00000008 -#define LOGON_EXTRA_SIDS 0x00000020 -#define LOGON_SUBAUTH_SESSION_KEY 0x00000040 -#define LOGON_SERVER_TRUST_ACCOUNT 0x00000080 -#define LOGON_NTLMV2_ENABLED 0x00000100 -#define LOGON_RESOURCE_GROUPS 0x00000200 -#define LOGON_PROFILE_PATH_RETURNED 0x00000400 -#define LOGON_GRACE_LOGON 0x01000000 #define LOGON_KRB5_FAIL_CLOCK_SKEW 0x02000000 -#define SE_GROUP_MANDATORY 0x00000001 -#define SE_GROUP_ENABLED_BY_DEFAULT 0x00000002 -#define SE_GROUP_ENABLED 0x00000004 -#define SE_GROUP_OWNER 0x00000008 -#define SE_GROUP_USE_FOR_DENY_ONLY 0x00000010 -#define SE_GROUP_LOGON_ID 0xC0000000 -#define SE_GROUP_RESOURCE 0x20000000 /* Domain Local Group */ - /* Flags for controlling the behaviour of a particular logon */ -/* sets LOGON_SERVER_TRUST_ACCOUNT user_flag */ +/* sets NETLOGON_SERVER_TRUST_ACCOUNT user_flag */ +#if 0 #define MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT 0x00000020 #define MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT 0x00000800 +#endif /* updates the "logon time" on network logon */ #define MSV1_0_UPDATE_LOGON_STATISTICS 0x00000004 @@ -1054,31 +1032,6 @@ typedef struct net_r_sam_deltas_info { NTSTATUS status; } NET_R_SAM_DELTAS; -#define DS_FORCE_REDISCOVERY 0x00000001 -#define DS_DIRECTORY_SERVICE_REQUIRED 0x00000010 -#define DS_DIRECTORY_SERVICE_PREFERRED 0x00000020 -#define DS_GC_SERVER_REQUIRED 0x00000040 -#define DS_PDC_REQUIRED 0x00000080 -#define DS_BACKGROUND_ONLY 0x00000100 -#define DS_IP_REQUIRED 0x00000200 -#define DS_KDC_REQUIRED 0x00000400 -#define DS_TIMESERV_REQUIRED 0x00000800 -#define DS_WRITABLE_REQUIRED 0x00001000 -#define DS_GOOD_TIMESERV_PREFERRED 0x00002000 -#define DS_AVOID_SELF 0x00004000 -#define DS_ONLY_LDAP_NEEDED 0x00008000 - -#define DS_IS_FLAT_NAME 0x00010000 -#define DS_IS_DNS_NAME 0x00020000 - -#define DS_RETURN_DNS_NAME 0x40000000 -#define DS_RETURN_FLAT_NAME 0x80000000 - -#if 0 /* unknown yet */ -#define DS_IP_VERSION_AGNOSTIC -#define DS_TRY_NEXTCLOSEST_SITE -#endif - #define DSGETDC_VALID_FLAGS ( \ DS_FORCE_REDISCOVERY | \ DS_DIRECTORY_SERVICE_REQUIRED | \ diff --git a/source/include/rpc_samr.h b/source/include/rpc_samr.h index 2273fba..9274e37 100644 --- a/source/include/rpc_samr.h +++ b/source/include/rpc_samr.h @@ -1832,13 +1832,6 @@ typedef struct q_samr_get_dom_pwinfo } SAMR_Q_GET_DOM_PWINFO; -#define DOMAIN_PASSWORD_COMPLEX 0x00000001 -#define DOMAIN_PASSWORD_NO_ANON_CHANGE 0x00000002 -#define DOMAIN_PASSWORD_NO_CLEAR_CHANGE 0x00000004 -#define DOMAIN_LOCKOUT_ADMINS 0x00000008 -#define DOMAIN_PASSWORD_STORE_CLEARTEXT 0x00000010 -#define DOMAIN_REFUSE_PASSWORD_CHANGE 0x00000020 - /* SAMR_R_GET_DOM_PWINFO */ typedef struct r_samr_get_dom_pwinfo { @@ -1915,11 +1908,6 @@ typedef struct q_samr_chgpasswd_user3 } SAMR_Q_CHGPASSWD_USER3; -#define REJECT_REASON_OTHER 0x00000000 -#define REJECT_REASON_TOO_SHORT 0x00000001 -#define REJECT_REASON_IN_HISTORY 0x00000002 -#define REJECT_REASON_NOT_COMPLEX 0x00000005 - /* SAMR_CHANGE_REJECT */ typedef struct samr_change_reject { diff --git a/source/include/smb.h b/source/include/smb.h index 744acd7..d64b8ba 100644 --- a/source/include/smb.h +++ b/source/include/smb.h @@ -211,30 +211,6 @@ typedef uint32 codepoint_t; /* 64 bit time (100usec) since ????? - cifs6.txt, section 3.5, page 30 */ typedef uint64_t NTTIME; - -/* Allowable account control bits */ -#define ACB_DISABLED 0x00000001 /* 1 = User account disabled */ -#define ACB_HOMDIRREQ 0x00000002 /* 1 = Home directory required */ -#define ACB_PWNOTREQ 0x00000004 /* 1 = User password not required */ -#define ACB_TEMPDUP 0x00000008 /* 1 = Temporary duplicate account */ -#define ACB_NORMAL 0x00000010 /* 1 = Normal user account */ -#define ACB_MNS 0x00000020 /* 1 = MNS logon user account */ -#define ACB_DOMTRUST 0x00000040 /* 1 = Interdomain trust account */ -#define ACB_WSTRUST 0x00000080 /* 1 = Workstation trust account */ -#define ACB_SVRTRUST 0x00000100 /* 1 = Server trust account (BDC) */ -#define ACB_PWNOEXP 0x00000200 /* 1 = User password does not expire */ -#define ACB_AUTOLOCK 0x00000400 /* 1 = Account auto locked */ - -/* only valid for > Windows 2000 */ -#define ACB_ENC_TXT_PWD_ALLOWED 0x00000800 /* 1 = Text password encryped */ -#define ACB_SMARTCARD_REQUIRED 0x00001000 /* 1 = Smart Card required */ -#define ACB_TRUSTED_FOR_DELEGATION 0x00002000 /* 1 = Trusted for Delegation */ -#define ACB_NOT_DELEGATED 0x00004000 /* 1 = Not delegated */ -#define ACB_USE_DES_KEY_ONLY 0x00008000 /* 1 = Use DES key only */ -#define ACB_DONT_REQUIRE_PREAUTH 0x00010000 /* 1 = Preauth not required */ -#define ACB_PWEXPIRED 0x00020000 /* 1 = Password is expired */ -#define ACB_NO_AUTH_DATA_REQD 0x00080000 /* 1 = No authorization data required */ - #define MAX_HOURS_LEN 32 #ifndef MAXSUBAUTHS @@ -310,7 +286,16 @@ struct id_map { enum id_mapping status; }; -#include "librpc/ndr/misc.h" +/* used to hold an arbitrary blob of data */ +typedef struct data_blob { + uint8 *data; + size_t length; + void (*free)(struct data_blob *data_blob); +} DATA_BLOB; + +extern const DATA_BLOB data_blob_null; + +#include "librpc/gen_ndr/misc.h" #include "librpc/ndr/security.h" #include "librpc/ndr/libndr.h" #include "librpc/gen_ndr/lsa.h" @@ -322,9 +307,10 @@ struct id_map { #include "librpc/gen_ndr/wkssvc.h" #include "librpc/gen_ndr/echo.h" #include "librpc/gen_ndr/svcctl.h" +#include "librpc/gen_ndr/netlogon.h" +#include "librpc/gen_ndr/samr.h" #include "librpc/gen_ndr/libnet_join.h" - struct lsa_dom_info { bool valid; DOM_SID sid; @@ -532,15 +518,6 @@ typedef struct files_struct { #include "ntquotas.h" #include "sysquotas.h" -/* used to hold an arbitrary blob of data */ -typedef struct data_blob { - uint8 *data; - size_t length; - void (*free)(struct data_blob *data_blob); -} DATA_BLOB; - -extern const DATA_BLOB data_blob_null; - /* * Structure used to keep directory state information around. * Used in NT change-notify code. diff --git a/source/lib/netapi/examples/getdc/getdc.c b/source/lib/netapi/examples/getdc/getdc.c index cdd4d0b..272ba10 100644 --- a/source/lib/netapi/examples/getdc/getdc.c +++ b/source/lib/netapi/examples/getdc/getdc.c @@ -29,7 +29,7 @@ int main(int argc, char **argv) { NET_API_STATUS status; struct libnetapi_ctx *ctx = NULL; - uint8_t *buffer; + uint8_t *buffer = NULL; if (argc < 3) { printf("usage: getdc <hostname> <domain>\n"); @@ -50,7 +50,7 @@ int main(int argc, char **argv) } else { printf("%s\n", (char *)buffer); } - + NetApiBufferFree(buffer); libnetapi_free(ctx); return status; diff --git a/source/lib/netapi/getdc.c b/source/lib/netapi/getdc.c index 85a0ae5..484af04 100644 --- a/source/lib/netapi/getdc.c +++ b/source/lib/netapi/getdc.c @@ -22,22 +22,6 @@ #include "lib/netapi/netapi.h" #include "libnet/libnet.h" -#if 0 -#include "librpc/gen_ndr/cli_netlogon.h" -#endif - -NTSTATUS rpccli_netr_GetDcName(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *logon_server, - const char *domainname, - const char **dcname); -NTSTATUS rpccli_netr_GetAnyDCName(struct rpc_pipe_client *cli, - TALLOC_CTX *mem_ctx, - const char *logon_server, - const char *domainname, - const char **dcname, - WERROR *werror); - static WERROR NetGetDCNameLocal(struct libnetapi_ctx *ctx, const char *server_name, const char *domain_name, @@ -76,17 +60,11 @@ static WERROR NetGetDCNameRemote(struct libnetapi_ctx *ctx, goto done; }; -#if 0 - werr = rpccli_netr_GetDcName(pipe_cli, ctx, - server_name, - domain_name, - (const char **)&buffer); -#else - werr = rpccli_netlogon_getdcname(pipe_cli, ctx, - server_name, - domain_name, - (char **)buffer); -#endif + status = rpccli_netr_GetDcName(pipe_cli, ctx, + server_name, + domain_name, + (const char **)buffer); + werr = ntstatus_to_werror(status); done: if (cli) { cli_shutdown(cli); @@ -175,22 +153,14 @@ static WERROR NetGetAnyDCNameRemote(struct libnetapi_ctx *ctx, goto done; }; -#if 0 status = rpccli_netr_GetAnyDCName(pipe_cli, ctx, server_name, domain_name, - (const char **)&buffer, + (const char **)buffer, &werr); if (!NT_STATUS_IS_OK(status)) { - werr = ntstatus_to_werror(status); goto done; } -#else - werr = rpccli_netlogon_getanydcname(pipe_cli, ctx, - server_name, - domain_name, - (char **)buffer); -#endif done: if (cli) { cli_shutdown(cli); diff --git a/source/libads/authdata.c b/source/libads/authdata.c index 9a6f106..644f851 100644 --- a/source/libads/authdata.c +++ b/source/libads/authdata.c @@ -429,8 +429,8 @@ static bool pac_io_pac_logon_info(const char *desc, PAC_LOGON_INFO *info, if (info->info3.ptr_res_groups) { - if (!(info->info3.user_flgs & LOGON_RESOURCE_GROUPS)) { - DEBUG(0,("user_flgs attribute does not have LOGON_RESOURCE_GROUPS\n")); + if (!(info->info3.user_flgs & NETLOGON_RESOURCE_GROUPS)) { + DEBUG(0,("user_flgs attribute does not have NETLOGON_RESOURCE_GROUPS\n")); /* return False; */ } @@ -738,10 +738,10 @@ void dump_pac_logon_info(int lvl, PAC_LOGON_INFO *logon_info) DEBUG(lvl,("The PAC:\n")); DEBUGADD(lvl,("\tUser Flags: 0x%x (%d)\n", user_flgs, user_flgs)); - if (user_flgs & LOGON_EXTRA_SIDS) - DEBUGADD(lvl,("\tUser Flags: LOGON_EXTRA_SIDS 0x%x (%d)\n", LOGON_EXTRA_SIDS, LOGON_EXTRA_SIDS)); - if (user_flgs & LOGON_RESOURCE_GROUPS) - DEBUGADD(lvl,("\tUser Flags: LOGON_RESOURCE_GROUPS 0x%x (%d)\n", LOGON_RESOURCE_GROUPS, LOGON_RESOURCE_GROUPS)); + if (user_flgs & NETLOGON_EXTRA_SIDS) + DEBUGADD(lvl,("\tUser Flags: NETLOGON_EXTRA_SIDS 0x%x (%d)\n", NETLOGON_EXTRA_SIDS, NETLOGON_EXTRA_SIDS)); + if (user_flgs & NETLOGON_RESOURCE_GROUPS) + DEBUGADD(lvl,("\tUser Flags: NETLOGON_RESOURCE_GROUPS 0x%x (%d)\n", NETLOGON_RESOURCE_GROUPS, NETLOGON_RESOURCE_GROUPS)); DEBUGADD(lvl,("\tUser SID: %s-%d\n", sid_string_dbg(&dom_sid), logon_info->info3.user_rid)); DEBUGADD(lvl,("\tGroup SID: %s-%d\n", sid_string_dbg(&dom_sid), diff --git a/source/librpc/gen_ndr/cli_netlogon.c b/source/librpc/gen_ndr/cli_netlogon.c index efabf2e..414e053 100644 --- a/source/librpc/gen_ndr/cli_netlogon.c +++ b/source/librpc/gen_ndr/cli_netlogon.c @@ -46,9 +46,7 @@ NTSTATUS rpccli_netr_LogonUasLogon(struct rpc_pipe_client *cli, } /* Return variables */ - if (info && r.out.info) { - *info = *r.out.info; - } + *info = *r.out.info; /* Return result */ if (werror) { @@ -410,9 +408,7 @@ NTSTATUS rpccli_netr_DatabaseDeltas(struct rpc_pipe_client *cli, /* Return variables */ *return_authenticator = *r.out.return_authenticator; *sequence_num = *r.out.sequence_num; - if (delta_enum_array && r.out.delta_enum_array) { - *delta_enum_array = *r.out.delta_enum_array; - } + *delta_enum_array = *r.out.delta_enum_array; /* Return result */ return r.out.result; @@ -467,9 +463,7 @@ NTSTATUS rpccli_netr_DatabaseSync(struct rpc_pipe_client *cli, /* Return variables */ *return_authenticator = *r.out.return_authenticator; *sync_context = *r.out.sync_context; - if (delta_enum_array && r.out.delta_enum_array) { - *delta_enum_array = *r.out.delta_enum_array; - } + *delta_enum_array = *r.out.delta_enum_array; /* Return result */ return r.out.result; @@ -895,9 +889,7 @@ NTSTATUS rpccli_netr_DatabaseSync2(struct rpc_pipe_client *cli, /* Return variables */ *return_authenticator = *r.out.return_authenticator; *sync_context = *r.out.sync_context; - if (delta_enum_array && r.out.delta_enum_array) { - *delta_enum_array = *r.out.delta_enum_array; - } + *delta_enum_array = *r.out.delta_enum_array; /* Return result */ return r.out.result; @@ -949,9 +941,7 @@ NTSTATUS rpccli_netr_DatabaseRedo(struct rpc_pipe_client *cli, /* Return variables */ *return_authenticator = *r.out.return_authenticator; - if (delta_enum_array && r.out.delta_enum_array) { - *delta_enum_array = *r.out.delta_enum_array; - } + *delta_enum_array = *r.out.delta_enum_array; /* Return result */ return r.out.result; @@ -1009,17 +999,20 @@ NTSTATUS rpccli_netr_LogonControl2Ex(struct rpc_pipe_client *cli, return werror_to_ntstatus(r.out.result); } -NTSTATUS rpccli_netr_NETRENUMERATETRUSTEDDOMAINS(struct rpc_pipe_client *cli, +NTSTATUS rpccli_netr_NetrEnumerateTrustedDomains(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, + const char *server_name, + struct netr_Blob *trusted_domains_blob, WERROR *werror) { - struct netr_NETRENUMERATETRUSTEDDOMAINS r; + struct netr_NetrEnumerateTrustedDomains r; NTSTATUS status; /* In parameters */ + r.in.server_name = server_name; if (DEBUGLEVEL >= 10) { - NDR_PRINT_IN_DEBUG(netr_NETRENUMERATETRUSTEDDOMAINS, &r); + NDR_PRINT_IN_DEBUG(netr_NetrEnumerateTrustedDomains, &r); } status = cli_do_rpc_ndr(cli, @@ -1034,7 +1027,7 @@ NTSTATUS rpccli_netr_NETRENUMERATETRUSTEDDOMAINS(struct rpc_pipe_client *cli, } if (DEBUGLEVEL >= 10) { - NDR_PRINT_OUT_DEBUG(netr_NETRENUMERATETRUSTEDDOMAINS, &r); + NDR_PRINT_OUT_DEBUG(netr_NetrEnumerateTrustedDomains, &r); } if (NT_STATUS_IS_ERR(status)) { @@ -1042,6 +1035,7 @@ NTSTATUS rpccli_netr_NETRENUMERATETRUSTEDDOMAINS(struct rpc_pipe_client *cli, } /* Return variables */ + *trusted_domains_blob = *r.out.trusted_domains_blob; /* Return result */ if (werror) { @@ -1095,9 +1089,7 @@ NTSTATUS rpccli_netr_DsRGetDCName(struct rpc_pipe_client *cli, } -- Samba Shared Repository