Age | Commit message (Collapse) | Author | Files | Lines |
|
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Mon Feb 13 15:06:29 CET 2012 on sn-devel-104
|
|
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>
|
|
|
|
|
|
|
|
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>
|
|
|
|
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>
|
|
There is no longer a reason to leave this source3 specific, and this
brings it into a library (avoiding duplicate symbols).
Andrew Bartlett
|
|
metze
|
|
metze
|
|
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
|
|
Guenther
|
|
policy_handle_empty.
Guenther
|
|
Guenther
Autobuild-User: Günther Deschner <gd@samba.org>
Autobuild-Date: Tue Feb 8 09:52:56 CET 2011 on sn-devel-104
|
|
Guenther
|
|
Guenther
|
|
Guenther
|
|
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
|
|
|
|
This reverts commit a416ff26d6ada4ee96bf3963866f67d5788162d1.
|
|
Guenther
|
|
Thanks to Julien Kerihuel for providing the patch that pushed me to
finish my own IPv6 patches.
|
|
|
|
metze
|
|
when using ndrdump you can get uninitialised structures containing
pointers. Don't segfault when trying to print them
|
|
this prints DATA_BLOB structures using the ndr->print() calls
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
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
|
|
|
|
This is based on Guenther's initial code.
metze
|
|
Guenther
|
|
can be disabled for single structure elements.
Guenther
|
|
Guenther
|
|
metze
|
|
Guenther
|
|
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
metze
|
|
This can be used in many places that deal with GUIDs
|
|
This will simplify many of the places that deal with NDR formatted
GUIDs
|
|
ndr_*_pull_blob_all() will now work if relative pointers are used.
metze
|
|
The default enum in NDR63 is 32 bits, not 16 bits. We need a uint1632
type to get the alignment right.
|
|
Guenther
|
|
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
|
|
This fixes the problem with samr UserInfo16 when NDR64 is enabled
|
|
This allows for easier implementation of the NDR32/NDR64 split
|
|
This adds NDR64 support for the push functions in libndr
|
|
This only does pull, but it is useful for w2k8-r2 <-> w2k8-r2 ndrdump
usage, which is always 64bit.
|
|
We needed to free the ndr structures, both on error and normal return
|
|
Guenther
|
|
|