summaryrefslogtreecommitdiff
path: root/source4/build/pidl/TODO
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2005-06-07 22:09:18 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:17:48 -0500
commit7c9d76d30c0f89f926744941ba3e0e6dbb24975c (patch)
treef904199fd09b036ece965345c1231961556bce48 /source4/build/pidl/TODO
parentc6a3ee8baba002d7568d17fb0bc73908eb4da2e7 (diff)
downloadsamba-7c9d76d30c0f89f926744941ba3e0e6dbb24975c.tar.gz
samba-7c9d76d30c0f89f926744941ba3e0e6dbb24975c.tar.bz2
samba-7c9d76d30c0f89f926744941ba3e0e6dbb24975c.zip
r7377: Integrate browse service stuff more nicely
Add notes on mailslots Add TODO list for pidl, including some plans on switching over to using [string] attributes for pidl. (This used to be commit fca195ce072bacb0543625aec7f4bce814e278eb)
Diffstat (limited to 'source4/build/pidl/TODO')
-rw-r--r--source4/build/pidl/TODO27
1 files changed, 27 insertions, 0 deletions
diff --git a/source4/build/pidl/TODO b/source4/build/pidl/TODO
new file mode 100644
index 0000000000..2f45c2d11a
--- /dev/null
+++ b/source4/build/pidl/TODO
@@ -0,0 +1,27 @@
+- Fix string support.
+ This would make strings a special kind of arrays flagged by the
+ [string] attribute. Pidl itself would support a couple of extra
+ attributes for it's own use while being compatible with other IDL
+ compilers.
+ Proposed extensions for pidl:
+ [convert(t)] attribute for forcing conversions from CH_UCS2, etc to UTF8
+ [noterm] attribute
+ [nullterm] attribute
+
+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_SIZE4 -> [size_is()] or if needed [conformant]
+LIBNDR_FLAG_STR_NOTERM -> [noterm]
+LIBNDR_FLAG_STR_NULLTERM -> [nullterm]
+LIBNDR_FLAG_STR_SIZE2 -> uint16 length; [string] char data[length]
+LIBNDR_FLAG_STR_BYTESIZE -> ???
+LIBNDR_FLAG_STR_FIXLEN32 -> [32]
+LIBNDR_FLAG_STR_CONFORMANT -> no longer needed
+LIBNDR_FLAG_STR_CHARLEN -> ???
+LIBNDR_FLAG_STR_UTF8 -> Nothing (but UCS2 has [convert(CH_UCS2)]
+LIBNDR_FLAG_STR_FIXLEN15 -> [15]
+
+- True multiple dimension array / strings in arrays support (closely related to
+ things specified above)