r25598: Add missing become_root/unbecome_root around calls of add_aliases.
[Samba/gebeck_regimport.git] / source3 / python / py_samr.h
blob78ee803ed1fce4bbbb82e96200869cfc98fdb865
1 /*
2 Python wrappers for DCERPC/SMB client routines.
4 Copyright (C) Tim Potter, 2002
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
20 #ifndef _PY_SAMR_H
21 #define _PY_SAMR_H
23 #include "python/py_common.h"
25 /* SAMR connect policy handle object */
27 typedef struct {
28 PyObject_HEAD
29 struct rpc_pipe_client *cli;
30 TALLOC_CTX *mem_ctx;
31 POLICY_HND connect_pol;
32 } samr_connect_hnd_object;
34 /* SAMR domain policy handle object */
36 typedef struct {
37 PyObject_HEAD
38 struct rpc_pipe_client *cli;
39 TALLOC_CTX *mem_ctx;
40 POLICY_HND domain_pol;
41 } samr_domain_hnd_object;
43 /* SAMR user policy handle object */
45 typedef struct {
46 PyObject_HEAD
47 struct rpc_pipe_client *cli;
48 TALLOC_CTX *mem_ctx;
49 POLICY_HND user_pol;
50 } samr_user_hnd_object;
52 /* SAMR group policy handle object */
54 typedef struct {
55 PyObject_HEAD
56 struct cli_state *cli;
57 TALLOC_CTX *mem_ctx;
58 POLICY_HND group_pol;
59 } samr_group_hnd_object;
61 /* SAMR alias policy handle object */
63 typedef struct {
64 PyObject_HEAD
65 struct cli_state *cli;
66 TALLOC_CTX *mem_ctx;
67 POLICY_HND alias_pol;
68 } samr_alias_hnd_object;
70 extern PyTypeObject samr_connect_hnd_type, samr_domain_hnd_type,
71 samr_user_hnd_type, samr_group_hnd_type, samr_alias_hnd_type;
73 /* Exceptions raised by this module */
75 extern PyObject *samr_error;
77 /* The following definitions are from py_samr_conv.c */
79 BOOL py_from_acct_info(PyObject **array, struct acct_info *info, int num_accts);
80 BOOL py_from_SAM_USER_INFO_16(PyObject **dict, SAM_USER_INFO_16 *info);
81 BOOL py_to_SAM_USER_INFO_16(SAM_USER_INFO_16 *info, PyObject *dict);
82 BOOL py_from_SAM_USER_INFO_21(PyObject **dict, SAM_USER_INFO_21 *info);
83 BOOL py_to_SAM_USER_INFO_21(SAM_USER_INFO_21 *info, PyObject *dict);
85 #endif /* _PY_SAMR_H */