1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-19 21:57:57 +03:00

213 Commits

Author SHA1 Message Date
Simo Sorce
3c0e10d70c s3-dcerpc: Fix build and remove unneeded headers
Sorry, botched a rebase.
2010-07-17 15:44:19 -04:00
Simo Sorce
52f6bfea4b s3-dcerpc: Move mere processing functions from srv_pipe_hnd.c to srv_pipe.c 2010-07-17 15:37:24 -04:00
Simo Sorce
65116adceb s3-dcerpc: Fix ability to receive Big Endian PDUs 2010-07-16 16:02:39 -04:00
Simo Sorce
100d37fc46 s3-dcerpc: Use DATA_BLOB for pipes_struct input data
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:18 +02:00
Simo Sorce
8cd3912afa s3-dcerpc: Convert frag from prs_struct to a simple DATA_BLOB
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:16 +02:00
Simo Sorce
31b59bbf99 s3-dcerpc: Convert rdata from prs_struct to a simple DATA_BLOB
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:16 +02:00
Günther Deschner
e30aa45666 s3-dcerpc: fix crash bug in error path of process_complete_pdu().
Guenther
2010-07-14 12:36:47 +02:00
Simo Sorce
272704e8c2 s3-dceprc: Add debug messages
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:11 +02:00
Simo Sorce
29a3142be8 s3-dcerpc: Remove unused functions
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:11 +02:00
Simo Sorce
8e235df2de s3-dcerpc: Use dcerpc_pull_ncacn_packet() to unmarshall dceprc requests
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:11 +02:00
Simo Sorce
77fb3649ce s3-dceprc: Store opnum in its own variable
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:10 +02:00
Simo Sorce
a138b3d31e s3-dceprc use a DATA_BLOB to hold the curren pdu in pipes_struct
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:10 +02:00
Simo Sorce
aca330a2c5 s3-dcerpc delay rpc header unmarshalling
Use dcerpc_get_frag_length() to get the whole pdu first

Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:10 +02:00
Günther Deschner
690ed0c5e2 s3-rpc: when using rpc_pipe_open_internal, make sure to go through NDR.
Otherwise a lot of information that is usually generated in the ndr_push remains
in an uninitialized state.

Guenther
2010-07-08 16:35:26 +02:00
Volker Lendecke
b4c3f72d44 s3: Fix a segfault in the RPC server
After converting the rpc infratructure to talloc, read_from_internal_pipe freed
the outdata too early. If the last fragment was read in two pieces (as
rpcclient does it), all the outdata was freed during the read of the first
piece of the read of the last fragment. Later read&x calls, trying to read the
rest of the last fragment stepped into p->out_data.frag with non-zero offset
when this was already freed.
2010-07-06 15:11:31 +02:00
Jeremy Allison
f4e7d9d38e Convert the prs_XXX struct and functions to use talloc instead of malloc. Passes valgrind and make tests for client and server. Second version of this patch after splitting up at Simo's request. Patch to follow will delete extraneous prs_mem_free() calls.
Jeremy.

Signed-off-by: Simo Sorce <idra@samba.org>
2010-06-18 07:41:47 -04:00
Simo Sorce
405a0c558c s3:cleaunp reformatting for readability 2010-06-10 14:57:06 -04:00
Simo Sorce
446deb0082 s3:cleanup remove trailing spaces 2010-06-10 14:56:59 -04:00
Andrew Bartlett
0af2dc43ad s3:named pipe proxy Improve error messages when named pipes fail to forward
I hope this helps the next person who needs to debug this.

Andrew Bartlett
2010-06-07 23:34:29 +10:00
Andreas Schneider
15f64af8e3 s3-rpc: Create a file with all functions for a internal named pipe.
This makes it possible to use the samr rpc server in winbind without
linking in smbd.

Reviewed-by: Simo Sorce <idra@samba.org>
2010-06-04 12:12:50 -04:00
Stefan Metzmacher
85a3853249 s3:rpc_server: make use of the npa_tstream code to connect to named pipes
This way we use the newest protocol, which is able to pass
the local and remote address of the SMB connection.

And we correctly support message mode named pipes
without the hack that analyzes the content for DCERPC pdus.

metze
2010-05-27 07:13:59 +02:00
Stefan Metzmacher
9a6636a56e s3:rpc_server: pass down local and remote tsocket_address to np_open()
metze
2010-05-27 07:13:56 +02:00
Stefan Metzmacher
9a77cb247d s3:rpc_server: add np_read_in_progress() function
metze
2010-05-27 07:13:53 +02:00
Stefan Metzmacher
8c0be92044 s3:rpc_server: make sure we don't send uninitialized memory for the named_pipe_auth handshake
metze
2010-05-27 07:13:52 +02:00
Simo Sorce
8aa96566a9 s3-rpc_server: Created a per connection spoolss pipe.
This way all code can reuse the same connection to spoolss
and not have to deal with the creation of a new pipe all over the
code every time we need to ask a service off spoolss.

Signed-off-by: Günther Deschner <gd@samba.org>
2010-05-26 15:07:57 +02:00
Jelmer Vernooij
b8268cf7b0 s3: Remove use of iconv_convenience. 2010-05-18 11:45:31 +02:00
Volker Lendecke
8e95db9eea s3: Move serverinfo_to_SamInfoX to auth/server_info.c 2010-04-11 22:59:47 +02:00
Andreas Schneider
f405503350 s3-rpc_server: Document rpc_pipe_open_internal.
Signed-off-by: Günther Deschner <gd@samba.org>
2010-03-05 21:25:54 +01:00
Simo Sorce
d14c3756e8 s3:rpc streamline memory handling 2010-02-16 19:15:56 -05:00
Jeremy Allison
d5995eec7e Second part of the fix for bug #7020 - smbd using 2G memory.
There was a second leak in the processing of the out_data.frag
prs_struct. It needs freeing once the current pdu has been returned
asynchronously.

Jeremy.
2010-01-06 13:11:00 -08:00
Volker Lendecke
e181b88978 Revert "s3: Do not reference ndr_table_<pipe> in the cli_ routines directly"
This reverts commit daa964013bc5d036f4da571ce22c0052ef40943a.
2009-11-08 19:43:47 +01:00
Volker Lendecke
27847e8386 Revert "s3: Consolidate getting the name out of a pipes_struct"
This reverts commit 9621306351cdb469ef393a6d8cbeea456bc4bd9f.
2009-11-08 19:43:47 +01:00
Volker Lendecke
47455b4d1a Revert "s3: Do not reference the ndr_tables in the server calls directly"
This reverts commit 98fb71782e05ae72cd6abeb38b6e0b96a50c1761.
2009-11-08 19:43:46 +01:00
Volker Lendecke
98fb71782e s3: Do not reference the ndr_tables in the server calls directly
This involves storing the interface table in the pipes_struct
2009-11-08 13:12:14 +01:00
Volker Lendecke
9621306351 s3: Consolidate getting the name out of a pipes_struct 2009-11-08 13:12:14 +01:00
Volker Lendecke
daa964013b s3: Do not reference ndr_table_<pipe> in the cli_ routines directly 2009-11-08 13:12:13 +01:00
Volker Lendecke
2aa0af9867 s3: get_pipe_name_from_iface -> get_pipe_name_from_syntax 2009-11-07 09:14:15 +01:00
Stefan Metzmacher
9ef39406d8 s3:rpc_server: we need to make a copy of my_name in serverinfo_to_SamInfo_base()
This is important for the case the server_info already contains a logon_server.

metze
2009-09-24 06:41:13 +02:00
Günther Deschner
44e44310d1 s3-netlogon: support validation level 6 in netr_SamLogon calls.
Guenther
2009-09-16 18:00:03 +02:00
Günther Deschner
37bc806453 s3-dcerpc: remove more obsolete or duplicate headers.
Guenther
2009-09-16 08:55:51 +02:00
Günther Deschner
313a2bfa52 s3-netlogon: remove init_netr_SamInfo functions.
Guenther
2009-06-25 12:19:17 +02:00
Günther Deschner
f62d9f5b57 s3-netlogon: fix validation level 2 support in netr_SamLogon and friends.
Guenther
2009-06-25 12:19:10 +02:00
Volker Lendecke
a8e02b591b Add "err_on_readability" to writev_send
A socket where the other side has closed only becomes readable. To catch
errors early when sitting in a pure writev, we need to also test for
readability.
2009-05-24 13:47:29 +02:00
Volker Lendecke
8bc88aae5d Move serverinfo_to_SamInfo3() to rpc_server/
Normally I hate moving around stuff, but this function is only called from the
RPC server side and it pulls in passdb when trying to link in our rpc client
routines. That seems unnecessary to me.
2009-04-22 12:33:46 +02:00
Volker Lendecke
4b88f2c17e Fix external np read after conversion to tevent_req 2009-03-27 21:12:17 +01:00
Volker Lendecke
bce98d8c03 Convert np_read to tevent_req 2009-03-17 17:31:22 +01:00
Volker Lendecke
89543d6c78 Convert np_write to tevent_req 2009-03-17 17:31:22 +01:00
Volker Lendecke
fe486d7b9f Add "queue" to writev_send
Unless higher levels queue themselves somehow, writev will *always* be queued.
So the queueing should be done at the right level.
2009-03-08 11:20:59 +01:00
Simo Sorce
67d41d0fc7 Make struct tevent_req opaque
Move struct tevent_req in tevent_internal, and ad getters and setters
for private data and the callback function.
This patch also renames 'private_state' into 'data'. What is held in this
pointer is in fact data and not a state like enum tevent_req_state.
Calling it 'state' is confusing.

The functions addedd are:
tevent_req_set_callback() - sets req->async.fn and req->async.private_data
tevent_req_set_print_fn() - sets req->private_print
tevent_req_callback_data() - gets req->async.private_data
tevent_req_data() - gets rea->data

This way it is much simpler to keep API/ABI compatibility in the future.
2009-03-02 11:02:09 -05:00
Volker Lendecke
5d653f69de Replace read_pkt by read_packet in np_read 2009-02-24 20:40:47 +01:00