diff options
author | Matthieu Patou <mat@matws.net> | 2009-09-11 19:57:04 +0400 |
---|---|---|
committer | Matthias Dieter Wallnöfer <mwallnoefer@yahoo.de> | 2009-09-11 19:16:58 +0200 |
commit | c6dd2c9552b79c0cf68b91cfa6aed3c399323850 (patch) | |
tree | 635646c935acf2d789a16cc14b389b80b21d3779 /librpc | |
parent | a1cf12e1f69a9c1f062ca12e2981a45f9ea27d37 (diff) | |
download | samba-c6dd2c9552b79c0cf68b91cfa6aed3c399323850.tar.gz samba-c6dd2c9552b79c0cf68b91cfa6aed3c399323850.tar.bz2 samba-c6dd2c9552b79c0cf68b91cfa6aed3c399323850.zip |
s4: Fix parsing of CSDVersion: treat this field as an string null terminated.
CDSVersion field contains one utf16 string and then garbage which pertubated the parsing.
We use subcontext to clearly define the size of the whole blob and then let the parser to find
the real length of the string.
This is a fix for bug 6706, many thanks to Gunter for the PIDL guidelines.
Diffstat (limited to 'librpc')
-rw-r--r-- | librpc/idl/netlogon.idl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/librpc/idl/netlogon.idl b/librpc/idl/netlogon.idl index 7ffc9f2e08..1cc0f2bc20 100644 --- a/librpc/idl/netlogon.idl +++ b/librpc/idl/netlogon.idl @@ -1287,7 +1287,7 @@ interface netlogon uint32 MinorVersion; uint32 BuildNumber; uint32 PlatformId; - [charset(UTF16)] uint16 CSDVersion[128]; + [subcontext(0),subcontext_size(256)] nstring CSDVersion; uint16 ServicePackMajor; uint16 ServicePackMinor; netr_SuiteMask SuiteMask; |