2 Unix SMB/CIFS implementation.
4 session_info utility functions
6 Copyright (C) Andrew Bartlett 2008-2010
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.
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.
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/>.
22 #ifndef _LIBCLI_SECURITY_SESSION_H_
23 #define _LIBCLI_SECURITY_SESSION_H_
25 enum security_user_level
{
26 SECURITY_ANONYMOUS
= 0,
28 SECURITY_RO_DOMAIN_CONTROLLER
= 20,
29 SECURITY_DOMAIN_CONTROLLER
= 30,
30 SECURITY_ADMINISTRATOR
= 40,
34 struct cli_credentials
;
35 struct security_token
;
36 struct auth_user_info
;
37 struct auth_user_info_torture
;
39 struct auth_session_info
{
40 struct security_token
*security_token
;
41 struct security_unix_token
*unix_token
;
42 struct auth_user_info
*info
;
43 struct auth_user_info_unix
*unix_info
;
44 struct auth_user_info_torture
*torture
;
45 DATA_BLOB session_key
;
46 struct cli_credentials
*credentials
;
49 enum security_user_level
security_session_user_level(struct auth_session_info
*session_info
,
50 const struct dom_sid
*domain_sid
);