Move DRSUAPI per-attribute decryption into a common file
[jra/samba/.git] / libcli / auth / credentials.h
1 /* 
2    Unix SMB/CIFS implementation.
3
4    code to manipulate domain credentials
5
6    Copyright (C) Andrew Tridgell 2004
7    
8    This program is free software; you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation; either version 3 of the License, or
11    (at your option) any later version.
12    
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17    
18    You should have received a copy of the GNU General Public License
19    along with this program.  If not, see <http://www.gnu.org/licenses/>.
20 */
21
22 #include "librpc/gen_ndr/netlogon.h"
23
24 struct creds_CredentialState {
25         uint32_t negotiate_flags;
26         uint8_t session_key[16];
27         uint32_t sequence;
28         struct netr_Credential seed;
29         struct netr_Credential client;
30         struct netr_Credential server;
31         uint16_t secure_channel_type;
32         const char *domain;
33         const char *computer_name;
34         const char *account_name;
35         struct dom_sid *sid;
36 };
37
38 /* for the timebeing, use the same neg flags as Samba3. */
39 /* The 7 here seems to be required to get Win2k not to downgrade us
40    to NT4.  Actually, anything other than 1ff would seem to do... */
41 #define NETLOGON_NEG_AUTH2_FLAGS     0x000701ff
42
43 /* these are the flags that ADS clients use */
44 #define NETLOGON_NEG_AUTH2_ADS_FLAGS (0x200fbffb | NETLOGON_NEG_ARCFOUR | NETLOGON_NEG_128BIT | NETLOGON_NEG_SCHANNEL)
45
46