diff options
Diffstat (limited to 'source4')
-rw-r--r-- | source4/librpc/idl/lsa.idl | 18 | ||||
-rw-r--r-- | source4/librpc/idl/netlogon.idl | 10 |
2 files changed, 17 insertions, 11 deletions
diff --git a/source4/librpc/idl/lsa.idl b/source4/librpc/idl/lsa.idl index 0b5d4e959c..63c7bad05c 100644 --- a/source4/librpc/idl/lsa.idl +++ b/source4/librpc/idl/lsa.idl @@ -20,6 +20,12 @@ } lsa_String; typedef [public] struct { + [value(2*strlen_m(string))] uint16 length; + [value(2*(strlen_m(string)+1))] uint16 size; + [flag(STR_SIZE4|STR_LEN4|STR_NOTERM|STR_LARGE_SIZE)] string *string; + } lsa_StringLarge; + + typedef [public] struct { uint32 count; [size_is(count)] lsa_String *names; } lsa_Strings; @@ -180,9 +186,15 @@ } lsa_AuditFullQueryInfo; typedef struct { - lsa_String name; - lsa_String dns_domain; - lsa_String dns_forest; + /* it's important that we use the lsa_StringLarge here, + * because otherwise windows clients result with such dns hostnames + * e.g. w2k3-client.samba4.samba.orgsamba4.samba.org + * where it should be + * w2k3-client.samba4.samba.org + */ + lsa_StringLarge name; + lsa_StringLarge dns_domain; + lsa_StringLarge dns_forest; GUID domain_guid; dom_sid2 *sid; } lsa_DnsDomainInfo; diff --git a/source4/librpc/idl/netlogon.idl b/source4/librpc/idl/netlogon.idl index 1089784ce1..7f7b9c5caa 100644 --- a/source4/librpc/idl/netlogon.idl +++ b/source4/librpc/idl/netlogon.idl @@ -19,12 +19,6 @@ interface netlogon { declare bitmap samr_AcctFlags; - typedef struct { - [value(2*strlen_m(string))] uint16 length; - [value(2*(strlen_m(string)+1))] uint16 size; - [flag(STR_NOTERM|STR_SIZE4|STR_LEN4|STR_LARGE_SIZE)] string *string; - } netr_StringLarge; - /*****************/ /* Function 0x00 */ @@ -164,8 +158,8 @@ interface netlogon samr_RidWithAttributeArray groups; uint32 user_flags; netr_UserSessionKey key; - netr_StringLarge logon_server; - netr_StringLarge domain; + lsa_StringLarge logon_server; + lsa_StringLarge domain; dom_sid2 *domain_sid; netr_LMSessionKey LMSessKey; samr_AcctFlags acct_flags; |