summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--librpc/idl/idmap.idl34
-rw-r--r--librpc/idl/wscript_build2
-rw-r--r--source4/librpc/idl/winbind.idl27
-rw-r--r--source4/librpc/wscript_build7
4 files changed, 42 insertions, 28 deletions
diff --git a/librpc/idl/idmap.idl b/librpc/idl/idmap.idl
new file mode 100644
index 0000000000..65e4596adf
--- /dev/null
+++ b/librpc/idl/idmap.idl
@@ -0,0 +1,34 @@
+#include "idl_types.h"
+
+import "security.idl";
+
+[
+ pointer_default(unique)
+]
+interface idmap
+{
+ typedef [public] enum {
+ ID_TYPE_NOT_SPECIFIED,
+ ID_TYPE_UID,
+ ID_TYPE_GID,
+ ID_TYPE_BOTH
+ } id_type;
+
+ typedef [public] struct {
+ uint32 id;
+ id_type type;
+ } unixid;
+
+ typedef[public] enum {
+ ID_UNKNOWN,
+ ID_MAPPED,
+ ID_UNMAPPED,
+ ID_EXPIRED
+ } id_mapping;
+
+ typedef [public] struct {
+ dom_sid *sid;
+ unixid xid;
+ id_mapping status;
+ } id_map;
+}
diff --git a/librpc/idl/wscript_build b/librpc/idl/wscript_build
index b8c650197c..c5be1b7447 100644
--- a/librpc/idl/wscript_build
+++ b/librpc/idl/wscript_build
@@ -20,6 +20,6 @@ bld.SAMBA_PIDL_LIST('PIDL',
output_dir='../gen_ndr')
bld.SAMBA_PIDL_LIST('PIDL',
- 'rap.idl',
+ 'rap.idl idmap.idl',
options='--header --ndr-parser',
output_dir='../gen_ndr')
diff --git a/source4/librpc/idl/winbind.idl b/source4/librpc/idl/winbind.idl
index 73e725bb98..849b8166a7 100644
--- a/source4/librpc/idl/winbind.idl
+++ b/source4/librpc/idl/winbind.idl
@@ -4,7 +4,7 @@
#include "idl_types.h"
-import "netlogon.idl", "lsa.idl", "security.idl";
+import "netlogon.idl", "lsa.idl", "security.idl", "idmap.idl";
[
uuid("245f3e6b-3c5d-6e21-3a2d-2a3d645b7221"),
@@ -16,31 +16,6 @@ interface winbind
typedef [switch_type(uint16)] union netr_LogonLevel netr_LogonLevel;
typedef [switch_type(uint16)] union netr_Validation netr_Validation;
- typedef enum {
- ID_TYPE_NOT_SPECIFIED,
- ID_TYPE_UID,
- ID_TYPE_GID,
- ID_TYPE_BOTH
- } id_type;
-
- typedef struct {
- uint32 id;
- id_type type;
- } unixid;
-
- typedef enum {
- ID_UNKNOWN,
- ID_MAPPED,
- ID_UNMAPPED,
- ID_EXPIRED
- } id_mapping;
-
- typedef struct {
- unixid *unixid;
- dom_sid *sid;
- id_mapping status;
- } id_map;
-
/* a call to get runtime informations */
void winbind_information(/* TODO */);
diff --git a/source4/librpc/wscript_build b/source4/librpc/wscript_build
index ab80c09e66..5e5c5f5b04 100644
--- a/source4/librpc/wscript_build
+++ b/source4/librpc/wscript_build
@@ -319,9 +319,14 @@ bld.SAMBA_SUBSYSTEM('NDR_WINSREPL',
)
+bld.SAMBA_SUBSYSTEM('NDR_IDMAP',
+ source='../../librpc/gen_ndr/ndr_idmap.c',
+ public_deps='LIBNDR NDR_STANDARD'
+ )
+
bld.SAMBA_SUBSYSTEM('NDR_WINBIND',
source='gen_ndr/ndr_winbind.c',
- public_deps='LIBNDR NDR_STANDARD'
+ public_deps='NDR_IDMAP LIBNDR NDR_STANDARD'
)