summaryrefslogtreecommitdiffstats
path: root/librpc
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2014-03-27 13:08:22 +0100
committerAndrew Bartlett <abartlet@samba.org>2014-03-28 08:34:25 +0100
commiteabdbc886011028d19f5ef9bf6734f9ae6ffbf7f (patch)
tree448fbf0a8275d8bbea96510010d32edcf11a9bc4 /librpc
parentf73ef3028c4f4583c81b611a9714608eae79360c (diff)
downloadsamba-eabdbc886011028d19f5ef9bf6734f9ae6ffbf7f.tar.gz
samba-eabdbc886011028d19f5ef9bf6734f9ae6ffbf7f.tar.xz
samba-eabdbc886011028d19f5ef9bf6734f9ae6ffbf7f.zip
dcerpc.idl: hide (ndr->flags & LIBNDR_FLAG_OBJECT_PRESENT) logic behind a define
This way we can alter the define depending on the generated code. E.g python bindings won't have an 'ndr' struct available. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'librpc')
-rw-r--r--librpc/idl/dcerpc.idl6
-rw-r--r--librpc/ndr/ndr_dcerpc.h4
2 files changed, 9 insertions, 1 deletions
diff --git a/librpc/idl/dcerpc.idl b/librpc/idl/dcerpc.idl
index 1d25daf0ab3..4dad1261db4 100644
--- a/librpc/idl/dcerpc.idl
+++ b/librpc/idl/dcerpc.idl
@@ -56,7 +56,11 @@ interface dcerpc
uint32 alloc_hint;
uint16 context_id;
uint16 opnum;
- [switch_is(ndr->flags & LIBNDR_FLAG_OBJECT_PRESENT)] dcerpc_object object;
+ /*
+ * NDR_DCERPC_REQUEST_OBJECT_PRESENT
+ * is defined differently for ndr_dcerpc.c and py_dcerpc.c
+ */
+ [switch_is(NDR_DCERPC_REQUEST_OBJECT_PRESENT)] dcerpc_object object;
[flag(NDR_ALIGN8)] DATA_BLOB _pad;
[flag(NDR_REMAINING)] DATA_BLOB stub_and_verifier;
} dcerpc_request;
diff --git a/librpc/ndr/ndr_dcerpc.h b/librpc/ndr/ndr_dcerpc.h
index f544fb185d9..1a7c3bd7c5b 100644
--- a/librpc/ndr/ndr_dcerpc.h
+++ b/librpc/ndr/ndr_dcerpc.h
@@ -23,3 +23,7 @@
enum ndr_err_code ndr_pop_dcerpc_sec_verification_trailer(
struct ndr_pull *ndr, TALLOC_CTX *mem_ctx,
struct dcerpc_sec_verification_trailer **_r);
+
+#ifndef NDR_DCERPC_REQUEST_OBJECT_PRESENT
+#define NDR_DCERPC_REQUEST_OBJECT_PRESENT (ndr->flags & LIBNDR_FLAG_OBJECT_PRESENT)
+#endif /* NDR_DCERPC_REQUEST_OBJECT_PRESENT */