summaryrefslogtreecommitdiff
path: root/librpc/ndr/libndr.h
AgeCommit message (Collapse)AuthorFilesLines
2012-02-13libndr: Add ndr_map_error2errnoVolker Lendecke1-0/+1
Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Mon Feb 13 15:06:29 CET 2012 on sn-devel-104
2012-01-13ndr: add ndr_pull_charset_to_null()David Disseldorp1-0/+1
The same as ndr_pull_charset(), however only perform character conversion on bytes prior to and including the null terminator. Signed-off-by: Jeremy Allison <jra@samba.org>
2011-12-02librpc: Add support for struct timevalVolker Lendecke1-0/+10
2011-12-02librpc: Add support for struct timespecVolker Lendecke1-0/+10
2011-09-23build: avoid util.h as a public header name due to conflict with MacOSAndrew Bartlett1-1/+1
2011-09-08libndr: moved the NDR_* flags to have less overlapAndrew Tridgell1-8/+36
We have 3 different types of flags values in our NDR layer. We've recently found bugs where these types of flags have been mixed up, especially by people adding hand written ndr code for tricky structures. We previously got away with this because (for example) NDR_SCALARS and NDR_IN had the same value, so mixing up the two concepts sometimes worked. Unfortunately it also led to bugs where we didn't do what was expected, such as in our smbtorture ndr test suite, where passing a ndr_flags value of zero led to only checking that two empty structures were equal. This changes the values of the NDR_IN|NDR_OUT and NDR_SCALARS|NDR_BUFFERS values to be in different bit ranges, and adds macros for checking the validity of passed in flags. A followup patch modifies the ndr calls to use these macros, and pidl to generate them. This should catch misuse of the APIs. Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-07-06librpc/ndr remove _SAMBA_BUILD_ conditionalsAndrew Bartlett1-2/+0
2011-06-01librpc/ndr: add new LIBNDR_FLAG_STR_RAW8 for ndr_pull_stringSean Finney1-0/+1
Introduce a new flag, LIBNDR_FLAG_STR_RAW8, which indicates that libndr should not attempt to convert the corresponding byte sequence, and place the responsibility on the caller to do so later. This is needed in cases where the string is known to be 8-bit and either NULL terminated or of known length, but in an unspecified character set. For example, when pulling PT_STRING8 properties from an exchange server via libmapi + libndr, the codepage is neither known nor in the control of the caller, and is determined by subsequent properties requested from the server. Therefore the client would like to fetch all properties in one large batch, and convert the resulting strings locally. This commit also includes some (basic) tests of each of the flags' respective behaviors with the ndr push/pull string functions, in a new source4 torture test suite ndr.ndr_string. Signed-off-by: Sean Finney <seanius@seanius.net>
2011-05-18librpc/ndr Merge ndr_print_sockaddr_storage() into common codeAndrew Bartlett1-0/+3
There is no longer a reason to leave this source3 specific, and this brings it into a library (avoiding duplicate symbols). Andrew Bartlett
2011-03-10librpc/ndr: add ndr_push_pipe_chunk_trailer() and ndr_check_pipe_chunk_trailer()Stefan Metzmacher1-0/+2
metze
2011-03-10librpc/ndr: add ndr_interface_call_pipeStefan Metzmacher1-0/+16
metze
2011-03-01pidl Add support for uid_t and gid_t typesAndrew Bartlett1-0/+2
These are mapped to uint64_t, which should be big enough. This is proposed to be used for internal Samba representations, where it would be more painful to convert all the callers to an uint64_t calling convention. Andrew Bartlett
2011-02-17libndr: remove prototype for nonexisting function ndr_print_ipv4_addr().Günther Deschner1-1/+0
Guenther
2011-02-08libndr: apply some const and make is_valid_policy_hnd a callback to ↵Günther Deschner1-1/+1
policy_handle_empty. Guenther
2011-02-08libndr: share some uuid helpers.Günther Deschner1-0/+3
Guenther Autobuild-User: Günther Deschner <gd@samba.org> Autobuild-Date: Tue Feb 8 09:52:56 CET 2011 on sn-devel-104
2011-02-08ndr: merge ndr_map_error2string and ndr_errstr.Günther Deschner1-0/+1
Guenther
2011-02-08ndr: move null_ndr_syntax_id to the common libndr location.Günther Deschner1-0/+1
Guenther
2011-01-25libndr: move ndr_print_bool to ndr_basic.cGünther Deschner1-0/+2
Guenther
2010-10-27librpc Make ndrdump use printf() rather than having to mess with DEBUG()Andrew Bartlett1-0/+1
This means it no longer needs to force the debug level etc. (this builds on the fine work by Volker to create dump_data_cb()) Andrew Bartlett
2010-10-23ndr dns: Add simple parserKai Blin1-0/+1
2010-10-05Revert "libndr: fix "excess elements in struct initializer" warning."Günther Deschner1-1/+0
This reverts commit a416ff26d6ada4ee96bf3963866f67d5788162d1.
2010-10-05libndr: fix "excess elements in struct initializer" warning.Günther Deschner1-0/+1
Guenther
2010-10-04ndr: Implement push function for IPv6 addressesKai Blin1-0/+1
Thanks to Julien Kerihuel for providing the patch that pushed me to finish my own IPv6 patches.
2010-10-04ndr: Add support for pulling/printing an ipv6address typeKai Blin1-0/+1
2010-09-28librpc/ndr: remove 'async' from ndr_interface_callStefan Metzmacher1-1/+0
metze
2010-09-16pidl: prevent ndr_print_*() dying on NULL pointersAndrew Tridgell1-0/+1
when using ndrdump you can get uninitialised structures containing pointers. Don't segfault when trying to print them
2010-08-14ndr: allow ndr_print to print DATA_BLOBAndrew Tridgell1-0/+1
this prints DATA_BLOB structures using the ndr->print() calls Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-05-27libndr: add support for relative_rap_convert.Günther Deschner1-0/+1
Will not harm anyone, is only used for rare short (2byte) relative pointers, and relative_rap_convert is always 0 so far (as all init functions using struct ndr_pull will zero the struct). Guenther
2010-05-18Finish removal of iconv_convenience in public API's.Jelmer Vernooij1-15/+10
2010-02-18libndr: implement LIBNDR_RELATIVE_REVERSE handlingStefan Metzmacher1-0/+1
This is based on Guenther's initial code. metze
2010-02-18libndr: store a subcontext buffer size in ndr_push_subcontext_start.Günther Deschner1-0/+1
Guenther
2010-02-18libndr: add LIBNDR_FLAG_NO_RELATIVE_REVERSE so that relative reverse processingGünther Deschner1-0/+3
can be disabled for single structure elements. Guenther
2010-02-18libndr: add LIBNDR_FLAG_RELATIVE_REVERSE flag.Günther Deschner1-0/+2
Guenther
2010-02-18librpc/ndr: make ndr_push_relative_ptr2() staticStefan Metzmacher1-1/+0
metze
2010-02-18libndr: add ndr_push_relative_ptr2_start and ndr_push_relative_ptr2_end.Günther Deschner1-0/+2
Guenther
2009-12-14librpc/ndr: avoid comparison_fn_t to fix the openchange build on solarisBrian Lu1-1/+1
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-12-14librpc/ndr: add missing prototypes for relative_short functionsStefan Metzmacher1-0/+3
metze
2009-12-10libndr: added a GUID_to_ndr_blob() helper functionAndrew Tridgell1-0/+1
This can be used in many places that deal with GUIDs
2009-12-10librpc: split out a separate GUID_from_ndr_blob() functionAndrew Tridgell1-0/+1
This will simplify many of the places that deal with NDR formatted GUIDs
2009-11-20librpc/ndr: remember the highest offset we parsed with relative pointer buffersStefan Metzmacher1-0/+1
ndr_*_pull_blob_all() will now work if relative pointers are used. metze
2009-10-07pidl: get the alignment right for uint1632 enums (NDR64)Andrew Tridgell1-0/+3
The default enum in NDR63 is 32 bits, not 16 bits. We need a uint1632 type to get the alignment right.
2009-10-05libndr: add int3264 ndr prototype.Günther Deschner1-0/+1
Guenther
2009-10-02ndr64: added support for trailing gap alignmentAndrew Tridgell1-0/+2
NDR64 has a 'trailing gap' alignment, which aligns the end of a structure on the overall structure alignment. This explains the discrepancy we had with the RPC-SAMR test and NDR64
2009-09-29pidl: added union padding for NDR64Andrew Tridgell1-0/+2
This fixes the problem with samr UserInfo16 when NDR64 is enabled
2009-09-17ndr: split out ndr enum functionsAndrew Tridgell1-0/+7
This allows for easier implementation of the NDR32/NDR64 split
2009-09-17ndr: added support for NDR64 Andrew Tridgell1-13/+14
This adds NDR64 support for the push functions in libndr
2009-09-16ndr: added --ndr64 flag to ndrdumpAndrew Tridgell1-0/+3
This only does pull, but it is useful for w2k8-r2 <-> w2k8-r2 ndrdump usage, which is always 64bit.
2009-09-12s4-ndr: fixed memory leaks in ndr_pull_*_blob()Andrew Tridgell1-0/+10
We needed to free the ndr structures, both on error and normal return
2009-08-24libndr: add missing protoypes for double type.Günther Deschner1-0/+1
Guenther
2009-08-12when we get an NDR error in the logs, it is useful to know where it happenedAndrew Tridgell1-1/+1