• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src/router/samba-3.5.8/source4/rpc_server/lsa/
1/*
2   Unix SMB/CIFS implementation.
3
4   endpoint server for the lsarpc pipe
5
6   Copyright (C) Andrew Tridgell 2004
7   Copyright (C) Andrew Bartlett <abartlet@samba.org> 2004-2005
8
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.
13
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.
18
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/>.
21*/
22
23#include "includes.h"
24#include "rpc_server/dcerpc_server.h"
25#include "rpc_server/common/common.h"
26#include "auth/auth.h"
27#include "dsdb/samdb/samdb.h"
28#include "libcli/ldap/ldap_ndr.h"
29#include "lib/ldb/include/ldb_errors.h"
30#include "libcli/security/security.h"
31#include "libcli/auth/libcli_auth.h"
32#include "param/secrets.h"
33#include "../lib/util/util_ldb.h"
34#include "librpc/gen_ndr/ndr_dssetup.h"
35#include "param/param.h"
36
37/*
38  state associated with a lsa_OpenPolicy() operation
39*/
40struct lsa_policy_state {
41	struct dcesrv_handle *handle;
42	struct ldb_context *sam_ldb;
43	uint32_t access_mask;
44	struct ldb_dn *domain_dn;
45	struct ldb_dn *forest_dn;
46	struct ldb_dn *builtin_dn;
47	struct ldb_dn *system_dn;
48	const char *domain_name;
49	const char *domain_dns;
50	const char *forest_dns;
51	struct dom_sid *domain_sid;
52	struct GUID domain_guid;
53	struct dom_sid *builtin_sid;
54	struct dom_sid *nt_authority_sid;
55	struct dom_sid *creator_owner_domain_sid;
56	struct dom_sid *world_domain_sid;
57	int mixed_domain;
58};
59
60enum lsa_handle {
61	LSA_HANDLE_POLICY,
62	LSA_HANDLE_ACCOUNT,
63	LSA_HANDLE_SECRET,
64	LSA_HANDLE_TRUSTED_DOMAIN
65};
66
67#include "rpc_server/lsa/proto.h"
68
69