summaryrefslogtreecommitdiff
path: root/source4/librpc/idl
diff options
context:
space:
mode:
Diffstat (limited to 'source4/librpc/idl')
-rw-r--r--source4/librpc/idl/dcerpc.idl9
-rw-r--r--source4/librpc/idl/epmapper.idl10
2 files changed, 18 insertions, 1 deletions
diff --git a/source4/librpc/idl/dcerpc.idl b/source4/librpc/idl/dcerpc.idl
index 978bc5640c..c23553c444 100644
--- a/source4/librpc/idl/dcerpc.idl
+++ b/source4/librpc/idl/dcerpc.idl
@@ -31,6 +31,9 @@ interface dcerpc
[flag(NDR_REMAINING)] DATA_BLOB auth_info;
} dcerpc_bind;
+
+ const uint8 DCERPC_REQUEST_LENGTH = 24;
+
typedef struct {
uint32 alloc_hint;
uint16 context_id;
@@ -62,6 +65,8 @@ interface dcerpc
uint32 versions[num_versions];
} dcerpc_bind_nak;
+ const uint8 DCERPC_RESPONSE_LENGTH = 24;
+
typedef struct {
uint32 alloc_hint;
uint16 context_id;
@@ -140,6 +145,10 @@ interface dcerpc
const uint8 DCERPC_PFC_FLAG_LAST = 0x02;
const uint8 DCERPC_PFC_FLAG_NOCALL = 0x20;
+ /* these offsets are needed by the signing code */
+ const uint8 DCERPC_FRAG_LEN_OFFSET = 8;
+ const uint8 DCERPC_AUTH_LEN_OFFSET = 10;
+
typedef [public] struct {
uint8 rpc_vers; /* RPC version */
uint8 rpc_vers_minor; /* Minor version */
diff --git a/source4/librpc/idl/epmapper.idl b/source4/librpc/idl/epmapper.idl
index 172c83149b..6fa9a7bd60 100644
--- a/source4/librpc/idl/epmapper.idl
+++ b/source4/librpc/idl/epmapper.idl
@@ -22,12 +22,20 @@ interface epmapper
/* this guid indicates NDR encoding in a protocol tower */
const string NDR_GUID = "8a885d04-1ceb-11c9-9fe8-08002b104860";
+ const string NDR_GUID_VERSION = 1;
typedef struct {
GUID uuid;
uint16 version;
} epm_prot_uuid;
+ typedef enum {
+ EPM_PROTOCOL_TCP = 0x07,
+ EPM_PROTOCOL_IP = 0x09,
+ EPM_PROTOCOL_RPC_C = 0x0b,
+ EPM_PROTOCOL_UUID = 0x0d
+ } epm_protocols;
+
typedef [nodiscriminant] union {
[case(13)] epm_prot_uuid uuid;
[default] [flag(NDR_REMAINING)] DATA_BLOB lhs_data;
@@ -58,7 +66,7 @@ interface epmapper
} epm_towers;
typedef struct {
- uint32 tower_length;
+ [value(ndr_size_epm_towers(&r->towers))] uint32 tower_length;
[subcontext(4)] epm_towers towers;
} epm_twr_t;