summaryrefslogtreecommitdiff
path: root/source4/libcli/security
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2011-02-10 20:21:11 +1100
committerAndrew Bartlett <abartlet@samba.org>2011-02-22 16:20:11 +1100
commite3821f2c40691cc747d887bac14d4e3d37f0763b (patch)
tree8cfef9090749a0b93f0f6e24ee7b20b18aa7d2fa /source4/libcli/security
parentd7fa34905223ebbf02dadcea0720062a30c3bbab (diff)
downloadsamba-e3821f2c40691cc747d887bac14d4e3d37f0763b.tar.gz
samba-e3821f2c40691cc747d887bac14d4e3d37f0763b.tar.bz2
samba-e3821f2c40691cc747d887bac14d4e3d37f0763b.zip
s4-auth Move libcli/security/session.c to the top level
This code is now useful in common, as the elements of the auth_session_info structure have now been defined in common IDL. Andrew Bartlett
Diffstat (limited to 'source4/libcli/security')
-rw-r--r--source4/libcli/security/session.c65
-rw-r--r--source4/libcli/security/session.h33
-rw-r--r--source4/libcli/security/wscript_build9
3 files changed, 0 insertions, 107 deletions
diff --git a/source4/libcli/security/session.c b/source4/libcli/security/session.c
deleted file mode 100644
index 401e11c489..0000000000
--- a/source4/libcli/security/session.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- Unix SMB/CIFS implementation.
-
- session_info utility functions
-
- Copyright (C) Andrew Bartlett 2008-2010
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "includes.h"
-#include "auth/session.h"
-#include "libcli/security/session.h"
-#include "libcli/security/security.h"
-
-enum security_user_level security_session_user_level(struct auth_session_info *session_info,
- const struct dom_sid *domain_sid)
-{
- if (!session_info) {
- return SECURITY_ANONYMOUS;
- }
-
- if (security_token_is_system(session_info->security_token)) {
- return SECURITY_SYSTEM;
- }
-
- if (security_token_is_anonymous(session_info->security_token)) {
- return SECURITY_ANONYMOUS;
- }
-
- if (security_token_has_builtin_administrators(session_info->security_token)) {
- return SECURITY_ADMINISTRATOR;
- }
-
- if (domain_sid) {
- struct dom_sid *rodc_dcs;
- rodc_dcs = dom_sid_add_rid(session_info, domain_sid, DOMAIN_RID_READONLY_DCS);
- if (security_token_has_sid(session_info->security_token, rodc_dcs)) {
- talloc_free(rodc_dcs);
- return SECURITY_RO_DOMAIN_CONTROLLER;
- }
- talloc_free(rodc_dcs);
- }
-
- if (security_token_has_enterprise_dcs(session_info->security_token)) {
- return SECURITY_DOMAIN_CONTROLLER;
- }
-
- if (security_token_has_nt_authenticated_users(session_info->security_token)) {
- return SECURITY_USER;
- }
-
- return SECURITY_ANONYMOUS;
-}
diff --git a/source4/libcli/security/session.h b/source4/libcli/security/session.h
deleted file mode 100644
index cf69665497..0000000000
--- a/source4/libcli/security/session.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- Unix SMB/CIFS implementation.
-
- session_info utility functions
-
- Copyright (C) Andrew Bartlett 2008-2010
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-enum security_user_level {
- SECURITY_ANONYMOUS = 0,
- SECURITY_USER = 10,
- SECURITY_RO_DOMAIN_CONTROLLER = 20,
- SECURITY_DOMAIN_CONTROLLER = 30,
- SECURITY_ADMINISTRATOR = 40,
- SECURITY_SYSTEM = 50
-};
-
-#include "libcli/security/session_proto.h"
-
-struct auth_session_info;
diff --git a/source4/libcli/security/wscript_build b/source4/libcli/security/wscript_build
deleted file mode 100644
index 9c277236c4..0000000000
--- a/source4/libcli/security/wscript_build
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env python
-
-bld.SAMBA_LIBRARY('security-session',
- source='session.c',
- autoproto='session_proto.h',
- public_deps='security',
- private_library=True
- )
-