From 90067934cd3195df80f8b1e614629d51fffcb38b Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 1 Nov 2004 10:30:34 +0000 Subject: r3428: switched to using minimal includes for the auto-generated RPC code. The thing that finally convinced me that minimal includes was worth pursuing for rpc was a compiler (tcc) that failed to build Samba due to reaching internal limits of the size of include files. Also the fact that includes.h.gch was 16MB, which really seems excessive. This patch brings it back to 12M, which is still too large, but better. Note that this patch speeds up compile times for both the pch and non-pch case. This change also includes the addition iof a "depends()" option in our IDL files, allowing you to specify that one IDL file depends on another. This capability was needed for the auto-includes generation. (This used to be commit b8f5fa8ac8e8725f3d321004f0aedf4246fc6b49) --- source4/librpc/idl/netlogon.idl | 41 ++++++++++++----------------------------- 1 file changed, 12 insertions(+), 29 deletions(-) (limited to 'source4/librpc/idl/netlogon.idl') diff --git a/source4/librpc/idl/netlogon.idl b/source4/librpc/idl/netlogon.idl index c98fa8f1e6..b880698ffd 100644 --- a/source4/librpc/idl/netlogon.idl +++ b/source4/librpc/idl/netlogon.idl @@ -10,12 +10,18 @@ uuid("12345678-1234-abcd-ef00-01234567cffb"), version(1.0), endpoint("ncacn_np:[\\pipe\\netlogon]","ncacn_ip_tcp:","ncalrpc:"), - pointer_default(unique) + pointer_default(unique), + depends(lsa,samr) ] interface netlogon { - + typedef [public] struct { + [value(strlen_m(r->string)*2)] uint16 size; + [value(r->size)] uint16 length; + unistr_noterm *string; + } netr_String; + /*****************/ /* Function 0x00 */ @@ -65,16 +71,6 @@ interface netlogon /*****************/ /* Function 0x02 */ - typedef [flag(NDR_PAHEX)] struct { - uint8 data[8]; - } netr_Credential; - - typedef struct { - [value(strlen_m(r->string)*2)] uint16 size; - [value(r->size)] uint16 length; - unistr_noterm *string; - } netr_String; - /* in netr_AcctLockStr size seems to be be 24, and rrenard thinks that the structure of the bindata looks like this: @@ -128,25 +124,12 @@ interface netlogon [case(6)] netr_NetworkInfo *network; } netr_LogonLevel; - typedef struct { - netr_Credential cred; - time_t timestamp; - } netr_Authenticator; - - typedef struct { + typedef [public] struct { uint32 rid; uint32 attributes; } netr_GroupMembership; - typedef [flag(NDR_PAHEX)] struct { - uint8 key[16]; - } netr_UserSessionKey; - - typedef [flag(NDR_PAHEX)] struct { - uint8 key[8]; - } netr_LMSessionKey; - - typedef struct { + typedef [public] struct { NTTIME last_logon; NTTIME last_logoff; NTTIME acct_expiry; @@ -175,11 +158,11 @@ interface netlogon uint32 unknown[7]; } netr_SamBaseInfo; - typedef struct { + typedef [public] struct { netr_SamBaseInfo base; } netr_SamInfo2; - typedef struct { + typedef [public] struct { dom_sid2 *sid; uint32 attribute; } netr_SidAttr; -- cgit