#include <stdint.h>
+#include "libcli/util/ntstatus.h"
+
#include "librpc/gen_ndr/misc.h"
#include "librpc/gen_ndr/lsa.h"
#include "librpc/gen_ndr/samr.h"
#ifndef _HEADER_netlogon
#define _HEADER_netlogon
+#define NETLOGON_NEG_128BIT ( NETLOGON_NEG_STRONG_KEYS )
+#define NETLOGON_NEG_SCHANNEL ( NETLOGON_NEG_AUTHENTICATED_RPC )
#define DSGETDC_VALID_FLAGS ( (DS_FORCE_REDISCOVERY|DS_DIRECTORY_SERVICE_REQUIRED|DS_DIRECTORY_SERVICE_PREFERRED|DS_GC_SERVER_REQUIRED|DS_PDC_REQUIRED|DS_BACKGROUND_ONLY|DS_IP_REQUIRED|DS_KDC_REQUIRED|DS_TIMESERV_REQUIRED|DS_WRITABLE_REQUIRED|DS_GOOD_TIMESERV_PREFERRED|DS_AVOID_SELF|DS_ONLY_LDAP_NEEDED|DS_IS_FLAT_NAME|DS_IS_DNS_NAME|DS_RETURN_FLAT_NAME|DS_RETURN_DNS_NAME) )
#define DS_GFTI_UPDATE_TDO ( 0x1 )
struct netr_UasInfo {
#define NETLOGON_NEG_CONCURRENT_RPC ( 0x00000800 )
#define NETLOGON_NEG_AVOID_ACCOUNT_DB_REPL ( 0x00001000 )
#define NETLOGON_NEG_AVOID_SECURITYAUTH_DB_REPL ( 0x00002000 )
-#define NETLOGON_NEG_128BIT ( 0x00004000 )
+#define NETLOGON_NEG_STRONG_KEYS ( 0x00004000 )
#define NETLOGON_NEG_TRANSITIVE_TRUSTS ( 0x00008000 )
#define NETLOGON_NEG_DNS_DOMAIN_TRUSTS ( 0x00010000 )
#define NETLOGON_NEG_PASSWORD_SET2 ( 0x00020000 )
#define NETLOGON_NEG_CROSS_FOREST_TRUSTS ( 0x00080000 )
#define NETLOGON_NEG_NEUTRALIZE_NT4_EMULATION ( 0x00100000 )
#define NETLOGON_NEG_RODC_PASSTHROUGH ( 0x00200000 )
+#define NETLOGON_NEG_SUPPORTS_AES_SHA2 ( 0x00400000 )
#define NETLOGON_NEG_AUTHENTICATED_RPC_LSASS ( 0x20000000 )
-#define NETLOGON_NEG_SCHANNEL ( 0x40000000 )
+#define NETLOGON_NEG_AUTHENTICATED_RPC ( 0x40000000 )
/* bitmap netr_ChangeLogFlags */
#define NETR_CHANGELOG_IMMEDIATE_REPL_REQUIRED ( 0x0001 )
const char *client_site_name;/* [unique,charset(UTF16)] */
}/* [public] */;
+union netr_Capabilities {
+ uint32_t server_capabilities;/* [case] */
+}/* [switch_type(uint32)] */;
+
/* bitmap netr_TrustFlags */
#define NETR_TRUST_FLAG_IN_FOREST ( 0x00000001 )
#define NETR_TRUST_FLAG_OUTBOUND ( 0x00000002 )
};
-struct netr_NETRLOGONDUMMYROUTINE1 {
+struct netr_LogonGetCapabilities {
struct {
- WERROR result;
+ const char *server_name;/* [charset(UTF16)] */
+ const char *computer_name;/* [unique,charset(UTF16)] */
+ struct netr_Authenticator *credential;/* [ref] */
+ uint32_t query_level;
+ struct netr_Authenticator *return_authenticator;/* [ref] */
+ } in;
+
+ struct {
+ union netr_Capabilities *capabilities;/* [ref,switch_is(query_level)] */
+ struct netr_Authenticator *return_authenticator;/* [ref] */
+ NTSTATUS result;
} out;
};