diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2005-06-14 22:47:14 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:18:12 -0500 |
commit | 74a3621089d4d1e9ba4c1a02e44247d1cff29200 (patch) | |
tree | df1c8ef4d3a14afa7993bda018854dcaf984c1aa /source4/build/pidl/TODO | |
parent | 21fd11ff71c3f3a3a673ea4db482ccef52634031 (diff) | |
download | samba-74a3621089d4d1e9ba4c1a02e44247d1cff29200.tar.gz samba-74a3621089d4d1e9ba4c1a02e44247d1cff29200.tar.bz2 samba-74a3621089d4d1e9ba4c1a02e44247d1cff29200.zip |
r7590: Cleanups, add more notes on new string code.
(This used to be commit 66a418a532f30a14353d923317dd6d766f62d926)
Diffstat (limited to 'source4/build/pidl/TODO')
-rw-r--r-- | source4/build/pidl/TODO | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/source4/build/pidl/TODO b/source4/build/pidl/TODO index d63fb4af7e..4969bf78b4 100644 --- a/source4/build/pidl/TODO +++ b/source4/build/pidl/TODO @@ -5,16 +5,23 @@ compilers. Proposed extensions for pidl (to arrays): [convert(t)] attribute for forcing conversions from CH_UCS2, etc to UTF8 - [noterm] attribute -> Indicating there is no terminating character - [nullterm] attribute -> Indicating the string is null terminated + [noheader] attribute -> Indicating the string is not preceded + +Implement: + ndr.pm: + - represent a string as an array with length set to "STRING" + - [string] implies is_varying unless noheader is specified. + ndr_parser.pm: + - if [charset()] specified, use instead of the for loops (call ndr_pu{ll,sh}_charset() + - calculate length using helper function if [string] is specified The various flags for strings would change as follows: LIBNDR_FLAG_STR_ASCII -> [convert(CH_ASCII)] -LIBNDR_FLAG_STR_LEN4 -> optionally [length_is()] +LIBNDR_FLAG_STR_LEN4 -> [string] LIBNDR_FLAG_STR_SIZE4 -> [size_is()] or if needed [conformant] -LIBNDR_FLAG_STR_NOTERM -> [noterm] -LIBNDR_FLAG_STR_NULLTERM -> [nullterm] +LIBNDR_FLAG_STR_NOTERM -> array +LIBNDR_FLAG_STR_NULLTERM -> [noheader] LIBNDR_FLAG_STR_SIZE2 -> uint16 length; [string] char data[length] LIBNDR_FLAG_STR_BYTESIZE -> uint16 length; [string] char data[length] LIBNDR_FLAG_STR_FIXLEN32 -> [32] @@ -25,3 +32,7 @@ LIBNDR_FLAG_STR_FIXLEN15 -> [15] - True multiple dimension array / strings in arrays support (closely related to things specified above) + +- compatibility mode for generating MIDL-readable data: + - strip out pidl-specific properties + - convert subcontext() to an array of chars. |