summaryrefslogtreecommitdiff
path: root/source4/librpc/idl
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2003-12-31 01:32:33 +0000
committerAndrew Tridgell <tridge@samba.org>2003-12-31 01:32:33 +0000
commit2558f81a8d60435b6618f1c7b408117a765d94ff (patch)
treeb7c6a120257a8abbf635aad01c1bb6bb4dfd3a08 /source4/librpc/idl
parentf4307200ac338202bc4680cd25fcbac83620ae95 (diff)
downloadsamba-2558f81a8d60435b6618f1c7b408117a765d94ff.tar.gz
samba-2558f81a8d60435b6618f1c7b408117a765d94ff.tar.bz2
samba-2558f81a8d60435b6618f1c7b408117a765d94ff.zip
the endpoint mapper now works in bigendian mode
(This used to be commit 1f89d89954a3501e08efa97d1276ba9bb2d2305f)
Diffstat (limited to 'source4/librpc/idl')
-rw-r--r--source4/librpc/idl/epmapper.idl2
-rw-r--r--source4/librpc/idl/idl_types.h14
2 files changed, 10 insertions, 6 deletions
diff --git a/source4/librpc/idl/epmapper.idl b/source4/librpc/idl/epmapper.idl
index fff05b9bc3..5db65cd7cf 100644
--- a/source4/librpc/idl/epmapper.idl
+++ b/source4/librpc/idl/epmapper.idl
@@ -70,7 +70,7 @@ interface epmapper
non-aligned. I wonder what sort of wicked substance these
guys were smoking?
*/
- typedef [flag(NDR_NOALIGN)] struct {
+ typedef [flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN)] struct {
uint16 num_floors;
epm_floor floors[num_floors];
} epm_towers;
diff --git a/source4/librpc/idl/idl_types.h b/source4/librpc/idl/idl_types.h
index f684ba7dd7..434dfb8c64 100644
--- a/source4/librpc/idl/idl_types.h
+++ b/source4/librpc/idl/idl_types.h
@@ -45,11 +45,15 @@
#define ascstr3 [flag(STR_ASCII|STR_SIZE2)] string
-#define NDR_NOALIGN LIBNDR_FLAG_NOALIGN
-#define NDR_REMAINING LIBNDR_FLAG_REMAINING
-#define NDR_ALIGN2 LIBNDR_FLAG_ALIGN2
-#define NDR_ALIGN4 LIBNDR_FLAG_ALIGN4
-#define NDR_ALIGN8 LIBNDR_FLAG_ALIGN8
+#define NDR_NOALIGN LIBNDR_FLAG_NOALIGN
+#define NDR_REMAINING LIBNDR_FLAG_REMAINING
+#define NDR_ALIGN2 LIBNDR_FLAG_ALIGN2
+#define NDR_ALIGN4 LIBNDR_FLAG_ALIGN4
+#define NDR_ALIGN8 LIBNDR_FLAG_ALIGN8
+
+/* this flag is used to force a section of IDL as little endian. It is
+ needed for the epmapper IDL, which is defined as always being LE */
+#define NDR_LITTLE_ENDIAN LIBNDR_FLAG_LITTLE_ENDIAN
/*