1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-13 13:18:06 +03:00
Commit Graph

802 Commits

Author SHA1 Message Date
Stefan Metzmacher
afabf12251 s4:librpc/rpc: return NT_STATUS_CONNECTION_DISCONNECTED
We should return the same in all places.

metze
2011-09-14 18:03:18 +02:00
Andrew Bartlett
8c33036a37 s4-subdomain more work on sub-domain join
we can now create a subdomain of an existing windows domain using:

  samba-tool domain join sub.domain.dns.name subdomain

The ordering of the creation of the key records is quite tricky,
especially for the NTDSDSA object

Pair-Programmed-With: Andrew Tridgell <tridge@samba.org>
2011-09-13 15:38:02 +10:00
Jelmer Vernooij
df1d3dc777 s4-python: Consistently use spaces rather than tabs, fix headers in several places. 2011-09-13 02:24:03 +02:00
Simo Sorce
4a8fdc3958 s4:librpc: use tevent_ fn names instead of legacy event_ ones 2011-08-13 09:54:15 -04:00
Jelmer Vernooij
f8ec7f6cb1 pytalloc: Use consistent prefix for functions, add ABI file. 2011-08-10 15:36:21 +02:00
Andreas Schneider
68e7b9307a s4-librpc: Fix double free.
Autobuild-User: Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date: Thu Aug  4 12:31:18 CEST 2011 on sn-devel-104
2011-08-04 12:31:18 +02:00
Andrew Bartlett
d3fe48ba48 gensec: Remove mem_ctx from calls that do not return memory
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2011-08-03 18:48:01 +10:00
Matthias Dieter Wallnöfer
7ebafb000a s4:librpc/rpc/dcerpc.c - janitorial: use "void" for functions without arguments
Probably a mistake in commit 907cdb5de7.

Reviewed-by: Tridge
2011-06-09 09:35:08 +02:00
Andrew Bartlett
907cdb5de7 s4-modules Remove lp_ctx from init functions that no longer need it
Now that we don't allow the smb.conf to change the modules dir, many
functions that simply load modules or initialise a subsytem that may
load modules no longer need an lp_ctx.

Andrew Bartlett
2011-06-06 17:37:51 +10:00
Andrew Tridgell
66aec3cf67 s4-ipv6: removed the old unused ipv6 code in dcerpc_sock.c
the code is now generic to both V4 and V6
2011-06-06 12:26:11 +10:00
Andrew Tridgell
5d2dbf93b3 s4-ipv6: allow for IPv6 in dcerpc socket calls 2011-06-06 12:26:11 +10:00
Andrew Bartlett
cdd802af83 s4-messaging Rename messaging -> imessaging
This avoid symbol and structure conflicts between Samba3 and Samba4,
and chooses a less generic name.

Andrew Bartlett
2011-05-03 07:37:07 +02:00
Stefan Metzmacher
578cbf1139 s4:libcli/smb2: convert smb2_connect_*() to tevent_req
metze
2011-04-28 20:35:49 +02:00
Günther Deschner
b903c28939 librpc: bring more librpc prototypes in common.
Guenther
2011-03-23 23:59:11 +01: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
c1a2fd1cd1 s4:librpc/rpc: finaly make struct rpc_request and enum rpc_request_state private
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Sun Mar 13 17:46:02 CET 2011 on sn-devel-104
2011-03-13 17:46:02 +01:00
Stefan Metzmacher
81063f9a26 s4:librpc/rpc: remove unused dcerpc_request()
metze
2011-03-13 17:01:00 +01:00
Stefan Metzmacher
f8030ec080 s4:librpc/rpc: make dcerpc_request_recv() static
metze
2011-03-13 17:00:59 +01:00
Stefan Metzmacher
26351bf480 s4:pyrpc: use dcerpc_binding_handle_raw_call() instead of dcerpc_request()
metze
2011-03-13 16:53:16 +01:00
Stefan Metzmacher
fa0f0c2107 s4:pyrpc: fix memory leaks in error pathes
metze
2011-03-13 16:53:06 +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
b0d54da746 s4:librpc/rpc: s/dcerpc_security/dcecli_security
We'll use 'dcerpc_security' for the generic dcerpc
client and server code.

metze
2011-03-13 16:33:06 +01:00
Stefan Metzmacher
4d4c6315fa s4:librpc/rpc: remove unused dcerpc_ndr_request* code
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Sun Mar 13 11:19:59 CET 2011 on sn-devel-104
2011-03-13 11:19:59 +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
c774a50aaf s4:librpc/rpc: s/struct dcerpc_connection/struct dcecli_connection/g
The name 'struct dcerpc_connection' will be used in the new generic
dcerpc code. It will be used for client and server.

metze
2011-03-11 11:02:23 +01:00
Andrew Tridgell
5ec284d152 build: moved librpc/rpc/*.c into a rpccommon library
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>

Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Thu Feb 24 02:42:37 CET 2011 on sn-devel-104
2011-02-24 02:42:37 +01:00
Matthias Dieter Wallnöfer
0932c91186 s4:librpc/rpc/dcerpc_connect.c - fix uninitialised variable 2011-01-12 19:52:19 +01:00
Jelmer Vernooij
5792fa90ac s4-python: Only set BASETYPE flag if subclassing is supported.
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Sat Jan  1 03:39:58 CET 2011 on sn-devel-104
2011-01-01 03:39:58 +01:00
Jelmer Vernooij
09a2f14c84 pyrpc: Add prototype for init function.
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Sat Dec 18 03:04:23 CET 2010 on sn-devel-104
2010-12-18 03:04:23 +01:00
Stefan Metzmacher
5fcbb16760 s4:pyrpc_util: s/typename/type_name to avoid c++ warnings
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu Dec  9 17:55:57 CET 2010 on sn-devel-104
2010-12-09 17:55:57 +01:00
Stefan Metzmacher
63574fda0e s4:python: add PyString_FromStringOrNULL() to pyrpc_util
metze
2010-12-08 19:06:52 +01:00
Arnaud Faucher
2ac5cedb71 Avoid the use of PyAPI_DATA, which is for internal Python API's.
Signed-off-by: Jelmer Vernooij <jelmer@samba.org>

Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Mon Nov 22 00:52:56 CET 2010 on sn-devel-104
2010-11-22 00:52:56 +01:00
Andrew Tridgell
808edd0293 s4-rpc: make rpc connect less verbose 2010-11-21 23:10:14 +11:00
Andrew Tridgell
9bae4cd3d9 s4-rpc: added target_principal binding handle option
this allows you to specify a target SPN for a connection

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-01 22:31:57 -07:00
Andrew Tridgell
8efd1074c2 s4-pyrpc: fixed build on python 2.4
Pair-Programmed-With: Jelmer Vernooij <jelmer@samba.org>
2010-09-20 15:27:45 -07:00
Kamen Mazdrashki
c79861a14e s4-pyrpc: Print location and type name we got when checking for types 2010-09-17 13:53:03 +03:00
Andrew Tridgell
fb81cc080d s4-pyrpc: allow python to access irpc interfaces
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-09-17 19:02:19 +10:00
Andrew Tridgell
e5ac820b9e s4-pyrpc: added py_return_ndr_struct()
This can be used to return structures from other python interfaces as
python objects

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-09-16 07:24:01 +10:00
Andrew Tridgell
67ac8555b1 s4-auth: set the RODC bit for RODC schannel
When we are using SEC_CHAN_RODC we need to set the
NETLOGON_NEG_RODC_PASSTHROUGH bit in the negotiated flags in
ServerAuthenticate2

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-09-15 15:39:34 +10:00
Andrew Tridgell
52445e1583 s4-schannel: fixed reference to context after free
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-09-15 15:39:34 +10:00
Julien Kerihuel
e5e5a1110f Add unique IP address binding for client connections (EPM and ncacn_ip_tcp levels)
This allows for binding strings like this:

  ncacn_ip_tcp:host[localaddress=192.168.2.1,seal]

which will force the connection to be locally bound to the specified
IP address

Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-09-07 09:55:14 +10:00
Stefan Metzmacher
54d2dce7b1 librpc/rpc: add dcerpc_binding_handle_set_timeout()
metze
2010-09-04 09:01:19 +02:00
Stefan Metzmacher
99a26edcb3 s4:librpc/rpc: implement dcerpc_bh_set_timeout()
metze
2010-09-04 09:01:12 +02:00
Stefan Metzmacher
27918981de librpc/rpc: add set_timeout() to dcerpc_binding_handle_ops
metze
2010-09-04 09:01:11 +02:00
Jelmer Vernooij
0bc53f7d9f pidl: Keep only a single copy of samba.dcerpc.base.ClientConnection. 2010-09-03 02:39:38 +02:00
Jelmer Vernooij
64552e11dd pyrpc: Add py_check_dcerpc_type().
This function checks whether the type of a PyObject matches a
DCE/RPC Python type.

Pair-Programmed-With: Andrew Tridgell <tridge@samba.org>
2010-08-27 04:41:40 +02:00
Andrew Tridgell
f0803de830 s4-pyrpc: use s4_event_context_init()
This fixes a crash when using kerberos and the python dcercpc
interface, which requires event nesting

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-08-23 15:55:39 +10:00
Andrew Tridgell
24159a59a3 pidl: give the varible name for bad type in python calls
This makes it much clearer which argument to a function had the wrong
type
2010-08-22 14:57:34 +10:00
Stefan Metzmacher
fe7819ae6f librpc/rpc: move dcerpc_read_ncacn_packet_send/recv() to dcerpc_util.c
metze
2010-08-20 18:09:25 +02:00
Stefan Metzmacher
b34209006f s4:librpc/rpc: make struct dcerpc_binding_handle private
metze
2010-08-12 14:31:21 +02:00
Stefan Metzmacher
7eef08cc63 s4:librpc/rpc: add dcerpc_binding_handle dcerpc_pipe backend
metze
2010-08-12 14:31:17 +02:00
Stefan Metzmacher
4030bc9b2d librpc/rpc: add dcerpc_binding_handle abstration
metze
2010-08-12 14:31:17 +02:00
Stefan Metzmacher
2828318743 s4:librpc/rpc: fix dcerpc_log_packet() prototype
metze
2010-08-12 14:31:17 +02:00
Stefan Metzmacher
af89b460f7 s4:librpc/rpc: autodetect the need of async call logic
metze
2010-08-12 14:31:16 +02:00
Stefan Metzmacher
31782e5295 s4:librpc/rpc: avoid using DCERPC_NDR_REF_ALLOC for epm_Map()
metze
2010-08-02 17:42:50 +02:00
Stefan Metzmacher
1675619656 s4:librpc/rpc: use the correct ndr flags in dcerpc_ndr_validate_in()
metze
2010-07-31 09:07:45 +02:00
Andrew Tridgell
6b266b85cf s4-loadparm: 2nd half of lp_ to lpcfg_ conversion
this converts all callers that use the Samba4 loadparm lp_ calling
convention to use the lpcfg_ prefix.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-16 18:24:27 +10:00
Simo Sorce
e340aa40d1 dcerpc: move dcerpc_pull_auth_trailer into a the common dcerpc_util.c file
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:10 +02:00
Günther Deschner
716f9d6847 s4-dcerpc: move some util functions up to main librpc directory.
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:09 +02:00
Andrew Tridgell
4cb423f527 s4-python: python is not always in /usr/bin
Using "#!/usr/bin/env python" is more portable. It still isn't ideal
though, as we should really use the python path found at configure
time. We do that in many places already, but some don't.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-06-24 18:46:57 +10:00
Jelmer Vernooij
5060367bf9 pyrpc: Fix reference counting when using secondary connections. 2010-06-19 22:46:44 +02:00
Jelmer Vernooij
f9ca9e46ad Finish removal of iconv_convenience in public API's. 2010-05-18 11:45:30 +02:00
Stefan Metzmacher
61e53c0782 s4:librpc/rpc/pyrpc.c: map NT_STATUS_NET_WRITE_FAULT to the matching NT_STATUS_RPC_* code
metze
2010-04-15 09:34:04 +02:00
Stefan Metzmacher
fed16f4015 librpc/rpc: add dcerpc_fault_to_nt_status()
For now this only handles fault codes with we've seen yet
and for which we have explicit torture checks.

metze
2010-04-15 09:34:03 +02:00
Stefan Metzmacher
a68eb378a5 s4:librpc/rpc: the python bindings should use !NT_STATUS_IS_OK instead of NT_STATUS_IS_ERR
Everything but NT_STATUS_OK is an error here.

metze
2010-04-13 16:01:40 +02:00
Stefan Metzmacher
59b1078ec5 s4:librpc/rpc: make PyErr_SetDCERPCStatus() static
metze
2010-04-13 16:01:40 +02:00
Stefan Metzmacher
e95e2e8262 s4:librpc/rpc: correctly initialize last_fault_code for bind and alter_context requests
metze
2010-04-09 16:28:30 +02:00
Jelmer Vernooij
814e20e7da pynet: Create a net class. 2010-04-08 23:22:55 +02:00
Andrew Tridgell
7d692f970a s4-rpc: fixed a talloc loop in continue_ntlmssp_connection()
We were creating a memory loop which caused havoc when the connection
was torn down.
2010-04-02 19:44:02 +11:00
Andrew Tridgell
a8d213c151 pyrpc: do the pipe connect on a real memory context 2010-04-02 18:52:29 +11:00
Stefan Metzmacher
ec30022233 s4:librpc/rpc/pyrpc.h: librpc/rpc/dcerpc.h isn't needed anymore
metze
2010-03-23 18:44:34 +01:00
Stefan Metzmacher
f4700296b3 s4:librpc/rpc: add NCACN_INTERNAL from s3
metze
2010-03-19 17:38:32 +01:00
Stefan Metzmacher
5e9ce495ee s4:librpc/rpc: let pyrpc make use of dcerpc_binding_handle stubs
metze
2010-03-18 13:34:04 +01:00
Stefan Metzmacher
04221518da s4:librpc/rpc: initialize p->binding_handle in dcerpc_secondary_context()
metze
2010-03-17 18:26:15 +01:00
Stefan Metzmacher
7b76c118ad s4:librpc/rpc/dcerpc_util.c: make use of use tevent_req based dcerpc_binding_handle stubs
metze
2010-03-12 15:25:48 +01:00
Stefan Metzmacher
398f477941 s4:librpc/rpc/dcerpc_schannel.c: make use of use tevent_req based dcerpc_binding_handle stubs
metze
2010-03-12 15:25:48 +01:00
Stefan Metzmacher
6677a5431c s4:librpc/rpc: add very basic dcerpc_binding_handle infrastructure
metze
2010-03-12 15:25:41 +01:00
Andrew Tridgell
f01f124969 s4-rpc: don't use s->credentials after it is freed 2010-03-05 16:12:05 +11:00
Stefan Metzmacher
8ba2128e1e s4:librpc/rpc: make use of explicit dcerpc_*_recv functions
metze
2010-03-01 16:11:55 +01:00
Jeremy Allison
9abce9f7c9 Revert "Got back to 16-byte padding on auth RPC. S3 clients and servers now cope with this. Jeremy"
This reverts commit 38c50c7027.

As tridge requested, we need this to work with older S3
servers, not just for smbtorture4.

Jeremy.
2010-02-17 19:42:49 -08:00
Jeremy Allison
38c50c7027 Got back to 16-byte padding on auth RPC. S3 clients and servers now cope with this. Jeremy 2010-02-17 16:43:11 -08:00
Andrew Tridgell
eb8800e611 s4-rpc: paranoid check for auth_length
This is not strictly needed as the ndr_pull_advance() checks it a few
lines further down, but I want to save Jeremy getting more grey hairs :-)
2010-02-17 10:54:05 +11:00
Andrew Tridgell
e3a272c3f2 s4-rpc: don't use auth padding in rpc bind requests as it breaks s3
The s3 RPC server returns a bind_nak if it gets a rpc bind with auth
padding. This change forces a padding length of zero to maximimise
compatibility with s3 servers. 

I've left the padding code in as a #if 0 to make it easier for us to
test/fix the s3 server code, which should be changed to correctly
handle arbitrary auth padding in all rpc requests with auth trailers.
2010-02-16 22:42:59 +11:00
Andrew Tridgell
1e13d3fb07 s4-dcerpc: fixed auth padding to be relative to the stub, not packet
The recent dcerpc padding changes made our padding relative to the
packet header, instead of the start of the stub. Surprisingly, this
broke w2k8r2 doing a dcpromo join to a s4 server. It seems that w2k8r2
is very fussy about the padding it gets in some circumstances.
2010-02-16 21:10:52 +11:00
Andrew Tridgell
259129e8f4 a4-dcerpc: another attempt at dcerpc auth padding
The last change broke net vampire against w2k8r2
2010-02-14 18:44:21 +11:00
Andrew Tridgell
da86f08605 s4-rpc: be more careful about DCERPC auth padding
Cope with a wider range of auth padding in dcerpc bind_ack and
alter_context packets. We now use a helper function that calculates
the right auth padding.
2010-02-13 23:12:29 +11:00
Matthias Dieter Wallnöfer
e34637b2a6 s4:Remove "Py_RETURN_NONE" compatibility code
This was needed only by Python 2.3 which we no longer support.
2010-02-09 17:53:09 +01:00
Matt Kraai
d8071e7ed7 Change uint_t to unsigned int in source4
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-02-02 07:18:18 +01:00
Matthias Dieter Wallnöfer
e60388cf6d s4:dcerpc - fix DEBUG output warning 2009-11-06 22:04:59 +01:00
Andrew Tridgell
3050f83288 s4-python: we need to include Python.h first
If we don't include Python.h first then we get a pile of warnings due
to broken redefines of XOPEN_SOURCE in the Python includes.
2009-10-23 16:23:01 +11:00
Andrew Tridgell
3c028ff88b s4-smb: declare root_fid as a file handle
In order to implement root_fid in the s4 SMB server we need to declare
it as a handle type, just as for other fnum values in SMB. This
required some extensive (but simple) changes in many bits of code.
2009-10-15 20:03:00 +11:00
Matthias Dieter Wallnöfer
44df2488e3 s4: fix various warnings (not "const" related ones) 2009-10-02 15:33:48 +02:00
Andrew Tridgell
92786aebf1 s4-resolve: fixed a crash bug on timeout
We were creating the name resolution context as a child of lp_ctx,
which meant when we gave up on a connection the timer on name
resolution kept running, and when it timed out the callback crashed as
the socket was already removed.
2009-09-19 08:23:03 -07:00
Andrew Tridgell
c9b0b89cc0 s4-rpc: added NDR64 support
This adds support for the nd464 binding string option
2009-09-17 15:19:27 -07:00
Stefan Metzmacher
87737f8946 s4:librpc/rpc: fix DEBUG() message
metze
2009-08-18 11:58:18 +02:00
Andrew Tridgell
e2d4ae1510 fixed several places that unnecessarily take a reference to the event context
These references were triggering the ambiguous talloc_free errors from
the recent talloc changes when the server is run using the 'standard'
process model instead of the 'single' process model. I am aiming to
move the build farm to use the 'standard' process model soon, as part
of an effort to make our test environment better match the real
deployment of Samba4.

The references are not needed as the way that the event context is
used is as the 'top parent', so when the event context is freed then
all of the structures that were taking a reference to the event
context were actually freed as well, thus making the references
redundent.
2009-08-07 17:24:48 +10:00
Andrew Tridgell
386211a81c A rather strange varient of talloc_unlink
A dcerpc request may have a reference from a still completing async
callback, but we now consider the request to be complete. We want to
lose the main parent, leaving just the reference, if any.
2009-07-01 15:15:37 +10:00
Andrew Tridgell
9faa0745e9 fixed rpc smb code to not reply on talloc_free being a function pointer
The upcoming talloc_free/talloc_reference changes change talloc_free
to be a macro. These two bits of code relied on it being a function
pointer
2009-07-01 15:15:36 +10:00
Andrew Bartlett
58e8db912d s4:libnet Allow 'net password change' to work on expired passwords
We need to pass down flags to the DCE/RPC layer to allow fallback to
anonymous connections, as we can't log in with an expired password.

The anonymous connection can then change the password with SAMR.

Andrew Bartlett
2009-06-18 13:49:30 +10:00