Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//+-----------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (c) Microsoft Corporation 1992 - 1997
//
// File: mitutil.h
//
// Contents: Prototypes & structures for MIT KDC support
//
//
// History: 4-March-1997 Created MikeSw
//
//------------------------------------------------------------------------
#ifndef __MITUTIL_H__
#define __MITUTIL_H__
typedef struct _KERB_MIT_SERVER_LIST { LONG ServerCount; LONG LastServerUsed; PUNICODE_STRING ServerNames; } KERB_MIT_SERVER_LIST, *PKERB_MIT_SERVER_LIST;
typedef struct _KERB_MIT_REALM { KERBEROS_LIST_ENTRY Next; ULONG Flags; ULONG ApReqChecksumType; ULONG PreAuthType; ULONG RealmNameCount; UNICODE_STRING RealmName; PUNICODE_STRING AlternateRealmNames; KERB_MIT_SERVER_LIST KdcNames; KERB_MIT_SERVER_LIST KpasswdNames; TimeStamp LastLookup; } KERB_MIT_REALM, *PKERB_MIT_REALM;
#define KERB_MIT_REALM_SEND_ADDRESS 0x0001
#define KERB_MIT_REALM_TCP_SUPPORTED 0x0002
#define KERB_MIT_REALM_TRUSTED_FOR_DELEGATION 0x0004
#define KERB_MIT_REALM_DOES_CANONICALIZE 0x0008
// DNS lookup flags
#define KERB_MIT_REALM_KDC_LOOKUP 0x00010000
#define KERB_MIT_REALM_KPWD_LOOKUP 0x00020000
#define DNS_LOOKUP_TIMEOUT 120
#define DNS_TCP "_tcp."
#define DNS_UDP "_udp."
#define DNS_KERBEROS "_kerberos."
#define DNS_KPASSWD "_kpasswd."
#define DNS_MSKDC "_kerberos._tcp.dc._msdcs."
#define DNS_MAX_PREFIX 128 // udp + kerberos char count
#define MAX_SRV_RECORDS 50 // maximum server records
#define KERB_DOMAINS_KEY TEXT("System\\CurrentControlSet\\Control\\Lsa\\Kerberos\\Domains")
#define KERB_DOMAIN_KDC_NAMES_VALUE TEXT("KdcNames")
#define KERB_DOMAIN_KPASSWD_NAMES_VALUE TEXT("KpasswdNames")
#define KERB_DOMAIN_ALT_NAMES_VALUE TEXT("AlternateDomainNames")
#define KERB_DOMAIN_FLAGS_VALUE TEXT("RealmFlags")
#define KERB_DOMAIN_AP_REQ_CSUM_VALUE TEXT("ApReqChecksumType")
#define KERB_DOMAIN_PREAUTH_VALUE TEXT("PreAuthType")
BOOLEAN KerbLookupMitRealm( IN PUNICODE_STRING RealmName, OUT OPTIONAL PKERB_MIT_REALM* MitRealm, OUT OPTIONAL PBOOLEAN UsedAlternateName );
NTSTATUS KerbInitializeMitRealmList( VOID );
VOID KerbUninitializeMitRealmList( VOID );
VOID KerbFreeServerNames( PKERB_MIT_SERVER_LIST ServerList );
BOOLEAN KerbLookupMitRealmWithSrvLookup( PUNICODE_STRING RealmName, PKERB_MIT_REALM * MitRealm, BOOLEAN Kpasswd, BOOLEAN UseTcp );
#endif // __MITUTIL_H__
|