diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-12-31 04:31:02 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:49:10 -0500 |
commit | 767ce19bf8bf75b2ede9bd5c7cd5a6112b6e7acd (patch) | |
tree | 43c1c83c015a4809929473d3859ac1aee2eb4561 | |
parent | ff5c9a127335a35d5625c500d5cd6b5971fd1e13 (diff) | |
download | samba-767ce19bf8bf75b2ede9bd5c7cd5a6112b6e7acd.tar.gz samba-767ce19bf8bf75b2ede9bd5c7cd5a6112b6e7acd.tar.bz2 samba-767ce19bf8bf75b2ede9bd5c7cd5a6112b6e7acd.zip |
r12635: use the new [validate] value() checking to fix the string types for
the LSA pipe. Strangely, windows is not consistent for the LookupSids
call. Sometimes the name is terminated and sometimes not?! It might
depend on the type of rid (alias, group etc) ?
(This used to be commit c0b7e0619a153f1da0fa76f176335d1b2afa340b)
-rw-r--r-- | source4/librpc/idl/lsa.idl | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/source4/librpc/idl/lsa.idl b/source4/librpc/idl/lsa.idl index 8a141bcd54..454f73afeb 100644 --- a/source4/librpc/idl/lsa.idl +++ b/source4/librpc/idl/lsa.idl @@ -23,7 +23,7 @@ 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; + [charset(UTF16),size_is(size/2),length_is(length/2)] uint16 *string; } lsa_StringLarge; typedef [public] struct { @@ -59,7 +59,7 @@ } lsa_LUID; typedef struct { - lsa_String name; + lsa_StringLarge name; lsa_LUID luid; } lsa_PrivEntry; @@ -144,7 +144,7 @@ } lsa_AuditEventsInfo; typedef struct { - lsa_String name; + lsa_StringLarge name; dom_sid2 *sid; } lsa_DomainInfo; @@ -279,7 +279,7 @@ /* Function: 0x0c */ typedef struct { - lsa_String name; + lsa_StringLarge name; dom_sid2 *sid; } lsa_TrustInformation; @@ -298,7 +298,7 @@ const int LSA_ENUM_TRUST_DOMAIN_MULTIPLIER = 60; typedef struct { - lsa_String name; + lsa_StringLarge name; dom_sid2 *sid; } lsa_DomainInformation; @@ -480,7 +480,7 @@ } lsa_TrustDomInfoEnum; typedef struct { - lsa_String netbios_name; + lsa_StringLarge netbios_name; } lsa_TrustDomainInfoName; typedef struct { @@ -498,8 +498,8 @@ } lsa_TrustDomainInfoBasic; typedef struct { - lsa_String domain_name; - lsa_String netbios_name; + lsa_StringLarge domain_name; + lsa_StringLarge netbios_name; dom_sid2 *sid; uint32 trust_direction; uint32 trust_type; @@ -602,7 +602,7 @@ NTSTATUS lsa_LookupPrivName ( [in] policy_handle *handle, [in] lsa_LUID *luid, - [out,unique] lsa_String *name + [out,unique] lsa_StringLarge *name ); @@ -611,7 +611,7 @@ NTSTATUS lsa_LookupPrivDisplayName ( [in] policy_handle *handle, [in] lsa_String *name, - [out,unique] lsa_String *disp_name, + [out,unique] lsa_StringLarge *disp_name, /* see http://www.microsoft.com/globaldev/nlsweb/ for language definitions */ [in,out] uint16 *language_id, @@ -637,7 +637,7 @@ typedef struct { uint32 count; - [size_is(count)] lsa_String *names; + [size_is(count)] lsa_StringLarge *names; } lsa_RightSet; NTSTATUS lsa_EnumAccountRights ( |