1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00
Commit Graph

1133 Commits

Author SHA1 Message Date
Jeremy Allison
db46a9d634 Fix type mixing warnings. 2011-06-01 23:53:07 +02:00
Andrew Bartlett
00577e9a3a librpc/ndr: Use converted_size to determine if NULL termination was sent
This is better than doing a strlen() on the string, as that huristic
only worked for ASCII strings.

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Wed Jun  1 01:42:22 CEST 2011 on sn-devel-104
2011-06-01 01:42:21 +02:00
Sean Finney
08abd1f5e8 librpc/ndr: add new LIBNDR_FLAG_STR_RAW8 for ndr_pull_string
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-06-01 00:30:40 +02:00
Sean Finney
c51795c747 librpc/ndr: consolidate string conversion logic in ndr_pull_string
Reduce the amount of duplicate code in ndr_pull_string by moving the
almost duplicate conversion calls and their corresponding NDR pulls and
checks to a single location.  In the place of the removed calls is logic
allowing the conversion to be generalized, and and any specific
pulls/checks that do not apply to the general case.

This is similar to what has already been done in the switch statement
for ndr_push_string.

Signed-off-by: Sean Finney <seanius@seanius.net>
2011-06-01 00:30:40 +02:00
Andrew Bartlett
41b3c38587 librpc/ndr Merge ndr_print_sockaddr_storage() into common code
There is no longer a reason to leave this source3 specific, and this
brings it into a library (avoiding duplicate symbols).

Andrew Bartlett
2011-05-18 16:12:08 +02:00
Andrew Bartlett
30979f3ea1 build: Expand dcerpc-samba grouping library
This is possible in common now because the generated RPC code does not
rely on a particular dcerpc layer.

Andrew Bartlett
2011-05-18 16:12:07 +02:00
Matthieu Patou
3478e3add3 s4-dfs: fix bugs in idl and adapt code accordingly 2011-05-17 00:31:09 +02:00
Günther Deschner
854467851d s3-printing: Get the location info from cups.
Signed-off-by: Günther Deschner <gd@samba.org>
2011-05-16 12:54:33 +02:00
Günther Deschner
b82caab5c9 s3-rap: add rap_NetRemoteTOD to IDL.
Guenther
2011-05-16 11:43:25 +02:00
Andrew Bartlett
153529636f build: Move NDR_DSSETUP and NDR_SPOOLSS into ndr-standard
This is to address multiple defintion of symbol issues in msrpc3
linked libraries.

Andrew Bartlett
2011-05-13 18:50:23 +02:00
Volker Lendecke
091fd0f0f7 s3: Add wbint_LookupSids
This will be called from wb_lookupsids to query remote DCs via lsa

Signed-off-by: Jeremy Allison <jra@samba.org>
2011-04-13 14:13:24 -07:00
Günther Deschner
26d67846d4 lsa: use lsa_TrustedAccessMask in some more places in the lsa IDL.
Guenther
2011-04-07 14:08:44 +02:00
Andrew Tridgell
a8da13cd5c lib: make asn1_util a private library
this prevents symbol duplication of the asn1 symbols in the service
and ntvfs subsystems

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-04-06 08:12:19 +02:00
Andrew Bartlett
663dc94e63 auth: Move auth_session_info into IDL
This changes auth_session_info_transport to just be a wrapper, rather
than a copy that has to be kept in sync.

As auth_session_info was already wrapped in python, this required
changes to the existing pyauth wrapper and it's users.

Andrew Bartlett
2011-04-05 23:46:04 +02:00
Andrew Bartlett
917b0a23a6 librpc/idl Add [nopython] to krb5pac ndrdump functions
These functions are not real RPC functions, but are used to help
ndrdump operate.  They don't need python bindings.

Andrew Bartlett
2011-04-05 23:46:04 +02:00
Jeremy Allison
c109a70531 Fix convert_string() to take a *converted_size arg. and return a bool.
Makes these interfaces much harder to misuse and easier to ensure error
checking.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Wed Mar 30 23:59:37 CEST 2011 on sn-devel-104
2011-03-30 23:59:37 +02:00
Jeremy Allison
c964744001 This doesn't look like it has anything to do with character set conversion, but it does :-).
Turns out one of the *really* significant differences between
convert_string() in source4 and source3, is that the one in
source3 will return 0 for byte length converted when called
with dest_len = 0 whereas the one in source4 returns (size_t)-1
and sets errno to E2BIG.

Allow the ndr_string code to cope with the (arguably correct)
way that the source4 implementation works. This code only gets
excercised in the print spooler tests, which aren't run in source4,
which is why this bug has lasted for so long.

You don't want to know how long it took me to find this :-).

Jeremy.
2011-03-30 09:58:22 -07:00
Jeremy Allison
0c5214e2eb Ensure convert_string_XXX is always called with a valid converted_size pointer.
Preparation for cleaning up this API.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Tue Mar 29 21:01:49 CEST 2011 on sn-devel-104
2011-03-29 21:01:49 +02:00
Volker Lendecke
8d9cbc7c22 librpc: Add some error checking to dcerpc_floor_pack_rhs_if_version_data 2011-03-27 22:22:12 +02:00
Volker Lendecke
9370c28425 librpc: Fix Coverity ID 2198: NULL_RETURNS 2011-03-27 22:22:12 +02:00
Andreas Schneider
edc26007bf librpc: Return an error if we a broken floor.
Pair-Programmed-With: Simo Sorce <idra@samba.org>
2011-03-24 14:57:13 -04:00
Simo Sorce
95daebe1c3 cleanup: fix some trailing spaces 2011-03-24 14:57:12 -04:00
Andreas Schneider
f534dcdca3 librpc: Added a dcerpc_binding_dup() function. 2011-03-24 14:57:12 -04:00
Andrew Tridgell
15e84a9a09 charcnv: removed the allow_badcharcnv and allow_bad_conv options to convert_string*()
we shouldn't accept bad multi-byte strings, it just hides problems

Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Thu Mar 24 01:47:26 CET 2011 on sn-devel-104
2011-03-24 01:47:26 +01:00
Günther Deschner
b903c28939 librpc: bring more librpc prototypes in common.
Guenther
2011-03-23 23:59:11 +01:00
Matthias Dieter Wallnöfer
9e7de42765 ndrdump - make "in_pipes" and "out_pipes" const
In order to suppress a build warning.
2011-03-23 08:37:24 +01:00
Volker Lendecke
60280babeb idmap.idl: Fix whitespace
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Mon Mar 21 13:36:48 CET 2011 on sn-devel-104
2011-03-21 13:36:48 +01:00
Günther Deschner
f87a072b95 rap: add rap_NetSessionGetInfo to IDL.
Guenther
2011-03-18 01:24:07 +01:00
Günther Deschner
9b1f2df3b1 rap: add rap_NetUserDelete IDL.
Guenther
2011-03-18 01:24:07 +01:00
Günther Deschner
dd5460c2e5 rap: add rap_NetUserAdd IDL.
Guenther
2011-03-18 01:24:06 +01:00
David Disseldorp
9ea6027419 idl: define printcap IPC message format
Signed-off-by: Andreas Schneider <asn@samba.org>
2011-03-16 15:52:21 +01:00
Andrew Tridgell
7dc049e5a2 rpc: make ndr/ndr_svcctl.h public
this is used by public header gen_ndr/ndr_svcctl.h
2011-03-15 12:22:19 +11:00
Stefan Metzmacher
72c1fe0081 librpc/rpc: move DCERPC_ flags to rpc_common.h
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Sun Mar 13 20:45:53 CET 2011 on sn-devel-104
2011-03-13 20:45:53 +01:00
Stefan Metzmacher
6539eba880 librpc/rpc: add dcerpc_binding_handle_raw_call()
metze
2011-03-13 16:53:05 +01:00
Stefan Metzmacher
08dca92499 librpc/rpc: move struct dcerpc_binding to rpc_common.h
metze
2011-03-13 16:53:05 +01:00
Stefan Metzmacher
83c55ac67e librpc/rpc: move enum dcerpc_transport_t to rpc_common.h
metze
2011-03-13 16:33:06 +01:00
Stefan Metzmacher
b738e092a2 librpc/rpc: move dcerpc_binding_handle stuff to rpc_common.h
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Fri Mar 11 12:28:08 CET 2011 on sn-devel-104
2011-03-11 12:28:08 +01:00
Stefan Metzmacher
969c7bd77b frstrans.idl: add idl for RawGetFileDataAsync() and RdcGetFileDataAsync()
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu Mar 10 15:18:22 CET 2011 on sn-devel-104
2011-03-10 15:18:22 +01:00
Stefan Metzmacher
7d451838b9 librpc/tools/ndrdump: add support for dcerpc 'pipe' elements in functions
metze
2011-03-10 14:31:15 +01:00
Stefan Metzmacher
2a47ed8106 librpc/ndr: add ndr_push_pipe_chunk_trailer() and ndr_check_pipe_chunk_trailer()
metze
2011-03-10 14:31:15 +01:00
Stefan Metzmacher
eceea8641e librpc/ndr: add ndr_interface_call_pipe
metze
2011-03-10 14:31:14 +01:00
Andrew Bartlett
9728b5a0d5 librpc/ndr use hyper for uid_t/gid_t rather than udlong
This has 8 byte alignment, which is what was specified in pidl for
these types.

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Wed Mar  9 09:03:09 CET 2011 on sn-devel-104
2011-03-09 09:03:09 +01:00
Andreas Schneider
d343409d6b s3-rpc_client: Added DCERPC_AUTH_TYPE_NCALRPC bind.
Signed-off-by: Günther Deschner <gd@samba.org>
2011-03-08 11:41:29 +01:00
Stefan Metzmacher
7101f5a8f2 librpc/idl: remove unused string defines from idl_types.h
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed Mar  2 14:09:44 CET 2011 on sn-devel-104
2011-03-02 14:09:44 +01:00
Stefan Metzmacher
56df34a6aa librpc/rpc: let ndr_pull_spoolss_EnumPrinterDataEx() use a subcontext
This is not strictly needed, but it's good to have the logic
in common with the other Enum* calls.

This also allows us to play with the NDR_RELATIVE_REVERSE flag.

metze
2011-03-02 13:13:02 +01:00
Günther Deschner
8df12d4052 rap: add rap_NetSessionEnum to IDL.
Guenther
2011-03-02 12:12:31 +01:00
Stefan Metzmacher
ef224aa004 librpc/ndr: handle NOALIGN flag for relative pointers and alignment DATA_BLOBs
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Mar  1 17:11:03 CET 2011 on sn-devel-104
2011-03-01 17:11:03 +01:00
Andrew Bartlett
2a5ac56742 librpc/idl Add helper structures for use by samba3 in auth_session_info
The unix info and in particular unix token needs to be preserved into
the struct auth_session_info.

Andrew Bartlett
2011-03-01 06:29:03 +01:00
Andrew Bartlett
646aefd998 pidl Add support for uid_t and gid_t types
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-03-01 06:29:03 +01:00
Stefan Metzmacher
db11e6505e spoolss.idl: align spoolss_DriverFileInfo relative pointer to 4 byte
metze

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Tue Mar  1 02:12:37 CET 2011 on sn-devel-104
2011-03-01 02:12:37 +01:00