From 800d3e0134b72135fa359fa5a239f1c68adf4ca1 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sun, 23 Nov 2003 06:28:12 +0000 Subject: ooh, this is fun! I have recoded the core dcerpc packet structures (all the PDUs etc) in terms of IDL, which means we now use pidl to generate all the code for handling the most basic dcerpc packets. This is not normally possible as it isn't completely valid NDR, but pidl has a number of extensions that make it quite easy. This also means we get the server side dcerpc marshalling/unmarshalling code for free. (This used to be commit 92bcad02587c3c1b31b523ee9fa46658a6cef9ff) --- source4/librpc/idl/idl_types.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'source4/librpc/idl/idl_types.h') diff --git a/source4/librpc/idl/idl_types.h b/source4/librpc/idl/idl_types.h index ba4e8ab14d..d2bbe1ab45 100644 --- a/source4/librpc/idl/idl_types.h +++ b/source4/librpc/idl/idl_types.h @@ -1,6 +1,7 @@ #define STR_ASCII LIBNDR_FLAG_STR_ASCII #define STR_LEN4 LIBNDR_FLAG_STR_LEN4 #define STR_SIZE4 LIBNDR_FLAG_STR_SIZE4 +#define STR_SIZE2 LIBNDR_FLAG_STR_SIZE2 #define STR_NOTERM LIBNDR_FLAG_STR_NOTERM #define STR_NULLTERM LIBNDR_FLAG_STR_NULLTERM @@ -37,5 +38,15 @@ */ #define ascstr2 [flag(STR_ASCII|STR_LEN4)] string +/* + an ascii string prefixed with [size], 16 bits + null terminated +*/ +#define ascstr3 [flag(STR_ASCII|STR_SIZE2)] string + -#define NDR_NOALIGN LIBNDR_FLAG_NOALIGN +#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 -- cgit