r6907: Unixinfo for samba4, not activated by default.
[samba.git] / source / librpc / idl / unixinfo.idl
1 #include "idl_types.h"
2
3 /*
4   Unixinfo interface definition
5 */
6
7 [ uuid("9c54e310-a955-4885-bd31-78787147dfa6"),
8   version(0.0),
9   endpoint("ncacn_np:[\\pipe\\unixinfo]", "ncacn_ip_tcp:", "ncalrpc:"),
10   pointer_default(unique),
11   helpstring("Unixinfo specific stuff"),
12   depends(security)
13 ] interface unixinfo
14 {
15         /******************/
16         /* Function: 0x00 */
17         NTSTATUS unixinfo_SidToUid (
18             [in]        dom_sid sid,
19             [out]       hyper uid
20             );
21
22         /******************/
23         /* Function: 0x01 */
24         NTSTATUS unixinfo_UidToSid (
25             [in]        hyper uid,
26             [out]       dom_sid *sid
27             );
28
29         /******************/
30         /* Function: 0x02 */
31         NTSTATUS unixinfo_SidToGid (
32             [in]        dom_sid sid,
33             [out]       hyper gid
34             );
35
36         /******************/
37         /* Function: 0x03 */
38         NTSTATUS unixinfo_GidToSid (
39             [in]        hyper gid,
40             [out]       dom_sid *sid
41             );
42
43         typedef struct {
44                 NTSTATUS status;
45                 utf8string homedir;
46                 utf8string shell;
47         } unixinfo_GetPWUidInfo;
48
49         /******************/
50         /* Function: 0x04 */
51         NTSTATUS unixinfo_GetPWUid (
52                 [in,out,range(0,1023)] uint32 count,
53                 [in,size_is(count)] hyper uids[],
54                 [out,size_is(count)] unixinfo_GetPWUidInfo infos[]
55         );
56 }