wb-ndr: add idl for WINBIND_LOOKUP_LEVEL_SID2USERINFO
authorStefan Metzmacher <metze@sernet.de>
Mon, 10 Mar 2008 15:42:10 +0000 (16:42 +0100)
committerStefan Metzmacher <metze@sernet.de>
Fri, 2 May 2008 14:13:28 +0000 (16:13 +0200)
metze

source/librpc/idl/winbind_protocol.idl

index 2f7e7267931377e36a586344eb695a06df2271dc..2ca677e944ad512967420216ae017b13f92c7d62 100644 (file)
@@ -142,9 +142,10 @@ import "security.idl",  "lsa.idl";
         */
 
        typedef [v1_enum] enum {
-               WINBIND_LOOKUP_LEVEL_SID2NAME   = 1,
-               WINBIND_LOOKUP_LEVEL_NAME2SID   = 2,
-               WINBIND_LOOKUP_LEVEL_RIDS2NAMES = 3
+               WINBIND_LOOKUP_LEVEL_SID2NAME           = 1,
+               WINBIND_LOOKUP_LEVEL_NAME2SID           = 2,
+               WINBIND_LOOKUP_LEVEL_RIDS2NAMES         = 3,
+               WINBIND_LOOKUP_LEVEL_SID2USERINFO       = 4
        } winbind_lookup_level;
 
        struct winbind_lookup_req_rids {
@@ -160,6 +161,8 @@ import "security.idl",  "lsa.idl";
                [string,charset(UTF8)] uint8 name[];
        [case(WINBIND_LOOKUP_LEVEL_RIDS2NAMES)]
                struct winbind_lookup_req_rids rids;
+       [case(WINBIND_LOOKUP_LEVEL_SID2USERINFO)]
+/*TODO         [ref]*/ dom_sid *sid;
        [default];
        } winbind_lookup_req;
 
@@ -179,6 +182,15 @@ import "security.idl",  "lsa.idl";
                struct winbind_lookup_name_info names[num_names];
        };
 
+       struct winbind_lookup_user_info {
+               [string,charset(UTF8)] uint8 account[];
+               [string,charset(UTF8)] uint8 gecos[];
+               [string,charset(UTF8)] uint8 homedir[];
+               [string,charset(UTF8)] uint8 shell[];
+               hyper primary_gid;
+               uint32 primary_rid;
+       };
+
        typedef [switch_type(winbind_lookup_level)] union {
        [case(WINBIND_LOOKUP_LEVEL_SID2NAME)]
                struct winbind_lookup_name_info name_info;
@@ -186,6 +198,8 @@ import "security.idl",  "lsa.idl";
                struct winbind_lookup_sid_info sid_info;
        [case(WINBIND_LOOKUP_LEVEL_RIDS2NAMES)]
                struct winbind_lookup_name_info_array name_array;
+       [case(WINBIND_LOOKUP_LEVEL_SID2USERINFO)]
+               struct winbind_lookup_user_info user_info;
        [default];
        } winbind_lookup_rep;