2 Unix SMB/CIFS implementation.
3 SMB parameters and setup
4 Copyright (C) Andrew Tridgell 1992-1997
5 Copyright (C) Luke Kenneth Casson Leighton 1996-1997
6 Copyright (C) Paul Ashton 1997
7 Copyright (C) Jean François Micouleau 2002
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 3 of the License, or
12 (at your option) any later version.
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
19 You should have received a copy of the GNU General Public License
20 along with this program. If not, see <http://www.gnu.org/licenses/>.
23 #ifndef _RPC_NETLOGON_H /* _RPC_NETLOGON_H */
24 #define _RPC_NETLOGON_H
26 /* Some flag values reverse engineered from NLTEST.EXE */
27 /* used in the NETLOGON_CONTROL[2] reply */
29 #define NL_CTRL_IN_SYNC 0x0000
30 #define NL_CTRL_REPL_NEEDED 0x0001
31 #define NL_CTRL_REPL_IN_PROGRESS 0x0002
32 #define NL_CTRL_FULL_SYNC 0x0004
34 #define LOGON_KRB5_FAIL_CLOCK_SKEW 0x02000000
36 /* Flags for controlling the behaviour of a particular logon */
38 /* sets NETLOGON_SERVER_TRUST_ACCOUNT user_flag */
40 #define MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT 0x00000020
41 #define MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT 0x00000800
43 /* updates the "logon time" on network logon */
44 #define MSV1_0_UPDATE_LOGON_STATISTICS 0x00000004
46 /* returns the user parameters in the driveletter */
47 #define MSV1_0_RETURN_USER_PARAMETERS 0x00000008
49 /* returns the profilepath in the driveletter and
50 * sets LOGON_PROFILE_PATH_RETURNED user_flag */
51 #define MSV1_0_RETURN_PROFILE_PATH 0x00000200
54 #define INTERACTIVE_LOGON_TYPE 1
55 #define NET_LOGON_TYPE 2
58 typedef struct account_lockout_string
{
62 /* uint16 *bindata; */
63 uint64 lockout_duration
;
65 uint32 bad_attempt_lockout
;
69 /* HDR_LOCKOUT_STRING */
70 typedef struct hdr_account_lockout_string
{
76 #define DSGETDC_VALID_FLAGS ( \
77 DS_FORCE_REDISCOVERY | \
78 DS_DIRECTORY_SERVICE_REQUIRED | \
79 DS_DIRECTORY_SERVICE_PREFERRED | \
80 DS_GC_SERVER_REQUIRED | \
82 DS_BACKGROUND_ONLY | \
85 DS_TIMESERV_REQUIRED | \
86 DS_WRITABLE_REQUIRED | \
87 DS_GOOD_TIMESERV_PREFERRED | \
89 DS_ONLY_LDAP_NEEDED | \
92 DS_RETURN_FLAT_NAME | \
95 struct DS_DOMAIN_CONTROLLER_INFO
{
96 const char *domain_controller_name
;
97 const char *domain_controller_address
;
98 int32 domain_controller_address_type
;
99 struct GUID
*domain_guid
;
100 const char *domain_name
;
101 const char *dns_forest_name
;
103 const char *dc_site_name
;
104 const char *client_site_name
;
107 #endif /* _RPC_NETLOGON_H */