~zulcss/samba/server-dailies-3.4

« back to all changes in this revision

Viewing changes to source4/librpc/idl/winbind.idl

  • Committer: Chuck Short
  • Date: 2010-09-28 20:38:39 UTC
  • Revision ID: zulcss@ubuntu.com-20100928203839-pgjulytsi9ue63x1
Initial version

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
  winbind IRPC interface
 
3
*/
 
4
 
 
5
#include "idl_types.h"
 
6
 
 
7
import "netlogon.idl", "lsa.idl", "security.idl";
 
8
 
 
9
[
 
10
  uuid("245f3e6b-3c5d-6e21-3a2d-2a3d645b7221"),
 
11
  version(1.0),
 
12
  pointer_default(unique)
 
13
]
 
14
interface winbind
 
15
{
 
16
        typedef [switch_type(uint16)] union netr_LogonLevel netr_LogonLevel;
 
17
        typedef [switch_type(uint16)] union netr_Validation netr_Validation;
 
18
 
 
19
        typedef enum {
 
20
                ID_TYPE_NOT_SPECIFIED,
 
21
                ID_TYPE_UID,
 
22
                ID_TYPE_GID,
 
23
                ID_TYPE_BOTH
 
24
        } id_type;
 
25
 
 
26
        typedef struct {
 
27
                uint32 id;
 
28
                id_type type;
 
29
        } unixid;
 
30
 
 
31
        typedef struct {
 
32
                unixid *unixid;
 
33
                dom_sid *sid;
 
34
                NTSTATUS status;
 
35
        } id_mapping;
 
36
 
 
37
        /* a call to get runtime informations */
 
38
        void winbind_information(/* TODO */);
 
39
 
 
40
        /* 
 
41
         * a call to trigger some internal events,
 
42
         * for use in torture tests...
 
43
         */
 
44
        NTSTATUS winbind_remote_control(/* TODO */);
 
45
 
 
46
        /*
 
47
         * do a netr_LogonSamLogon() against the right DC
 
48
         */
 
49
        NTSTATUS winbind_SamLogon(
 
50
                [in]  uint16 logon_level,
 
51
                [in]  [switch_is(logon_level)] netr_LogonLevel logon,
 
52
                [in]  uint16 validation_level,
 
53
                [out] [switch_is(validation_level)] netr_Validation validation,
 
54
                [out] uint8 authoritative
 
55
        );
 
56
 
 
57
        typedef [v1_enum] enum {
 
58
                WINBIND_IDMAP_LEVEL_SIDS_TO_XIDS        = 1,
 
59
                WINBIND_IDMAP_LEVEL_XIDS_TO_SIDS        = 2
 
60
        } winbind_get_idmap_level;
 
61
 
 
62
        NTSTATUS winbind_get_idmap(
 
63
                [in]     winbind_get_idmap_level level,
 
64
                [in]     uint32 count,
 
65
                [in,out] [size_is(count)] id_mapping ids[]
 
66
        );
 
67
 
 
68
}