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

1509 Commits

Author SHA1 Message Date
Simo Sorce
0b24e8e869 s3-dcerpc: Add SPNEGO incapsulation for KRB5 auth 2010-07-30 14:55:27 -04:00
Simo Sorce
7c9c075987 Do not refernece pipe_auth_data directly in dcerpc_gssapi.c 2010-07-28 15:53:56 -04:00
Simo Sorce
d17abc69f6 s3-dcerpc: Avoid ifdef, it is handled within dcerpc_gssapi.c already 2010-07-28 15:35:59 -04:00
Simo Sorce
7eaa15af2c s3-dcerpc: Add sign/seal with gssapi 2010-07-28 12:42:15 -04:00
Simo Sorce
1abcbd70ae s3-dcerpc: Add next authentication step with gssapi 2010-07-28 12:24:44 -04:00
Simo Sorce
135a82e78f s3-decrpc: Introduce gssapi support for dcerpc krb5 auth 2010-07-28 12:24:44 -04:00
Simo Sorce
183e0a0d9f s3-dcerpc: Refactor calculate_data_len_tosend() 2010-07-28 12:23:22 -04:00
Simo Sorce
c08d684f4e s3-dcerpc: Add auth trailer only when appropriate. 2010-07-28 12:23:00 -04:00
Simo Sorce
866f85e319 s3-dcerpc: consolidate unmarshalling of dcerpc_auth 2010-07-28 12:22:31 -04:00
Simo Sorce
146af48d48 s3-dcerpc: revive cli_rpc_pipe_open_krb5() 2010-07-28 12:21:29 -04:00
Simo Sorce
2463a87177 s3-dcerpc: Use dcerpc_AuthType in pipe_auth_data 2010-07-28 12:19:32 -04:00
Simo Sorce
1e915d231d s3-dcerpc: Cleanup and refactor create_rpc_bind_req() 2010-07-28 12:18:45 -04:00
Simo Sorce
7407c979a1 s3-dcerpc: Use dcerpc_check_auth in client code too 2010-07-28 12:17:56 -04:00
Simo Sorce
3139333419 s3-dcerpc: Move dcerpc_add_auth_footer() to the common helpers file 2010-07-28 12:15:13 -04:00
Simo Sorce
6f5cdf9ae9 s3-dcerpc: Introduce generic helper function to add auth trailer 2010-07-28 12:14:59 -04:00
Simo Sorce
1b572493e2 s3-dcerpc: Pass explicit arguments so that this is not client specific 2010-07-28 12:14:36 -04:00
Simo Sorce
e2b0e43da9 s3-dcerpc: Move marshalling of dcerpc_auth_header in the callers 2010-07-28 12:14:19 -04:00
Simo Sorce
636de433ac cleaup: Reformat cli_get_session_key()
merge cli_get_session_key
2010-07-21 19:14:23 -04:00
Simo Sorce
26f1218a36 s3-libsmb: Use data_blob_talloc to get krb5 ticket and session keys 2010-07-20 20:02:09 -04:00
Jeremy Allison
5002b3a90d Add approriate TALLOC_CTX's thoughout the spnego code. No more implicit NULL contexts.
Jeremy.
2010-07-20 16:17:58 -07:00
Jeremy Allison
cce19c5162 Fix one more data_blob -> data_blob_talloc. Move away from implicit NULL context tallocs.
Jeremy.
2010-07-20 14:59:31 -07:00
Simo Sorce
4581902553 s3-dcerpc: Unifiy cli_pipe_auth_data and pipe_auth_data
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-20 15:52:37 +10:00
Jeremy Allison
0bb8d133c9 Remove gen_negTokenInit() - change all callers to spnego_gen_negTokenInit().
We now have one function to do this in all calling code. More rationalization
to follow.

Jeremy.
2010-07-19 17:14:26 -07:00
Simo Sorce
cdcdaaa6dd s3-ntlmssp: Remove ntlmssp_end and let the talloc hierarchy handle it.
All the members are children of ntlmssp_state anyway.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-07-19 14:19:47 +10:00
Andreas Schneider
898fd584a4 s3-rpc_client: Fixed a segfault in rpccli_samr_chng_pswd_auth_crap().
This fixes the WINBIND-WBCLIENT test. The test set
old_lm_hash_enc_blob.length to 0 and we don't check the length here. So
the memcpy segfaulted.
2010-07-18 15:09:24 +02:00
Simo Sorce
628b57ca37 s3-dcerpc: Move common cli/srv functions into a common file 2010-07-17 15:01:11 -04:00
Volker Lendecke
3925411de4 s3: Really fix the 64-bit warnings
Hmm. Forgot to git commit this piece, sorry :-(
2010-07-17 20:21:19 +02:00
Volker Lendecke
32fd6e3c25 s3: Fix some 64-bit warnings 2010-07-17 19:58:21 +02:00
Günther Deschner
c5e85a4987 s3-dcerpc: rename SCHANNEL_SIG_SIZE to NL_AUTH_SIGNATURE_SIZE and move to IDL.
Guenther
2010-07-16 23:09:54 +02:00
Simo Sorce
65116adceb s3-dcerpc: Fix ability to receive Big Endian PDUs 2010-07-16 16:02:39 -04:00
Günther Deschner
7cf4797dd3 s3-dcerpc: fix c++ warning.
Guenther
2010-07-16 01:51:18 +02:00
Simo Sorce
8f2bfa88b5 s3-dcerpc: Use DATA_BLOB instead of prs_struct for req_data
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:18 +02:00
Simo Sorce
8e9cd4144e s3-dcerpc: Use DATA_BLOB instead of prs_struct for rpc_out
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:18 +02:00
Simo Sorce
3b83211cd8 s3-dcerpc: Avoid unnecessary memory allocation for dcerpc_ctx_list
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:18 +02:00
Simo Sorce
ff121c89d3 s3-dcerpc: Use DATA_BLOB instead of prs_struct for reply_pdu
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:17 +02:00
Simo Sorce
b44a91b220 s3-dcerpc: Use DATA_BLOB instead of prs_struct for incoming fragments
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:17 +02:00
Simo Sorce
cc15396c8a s3-dcerpc: Read a pdu in 2 steps, header first the payload
We can't really cope with receiving more data than expected anyway
as there is code that checks if the size of the buffer is consistent with
pkt->frag_length and throws an error if not.

Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:17 +02:00
Simo Sorce
79c207ed62 s3-dceprc: Use IDL defined constants for length calculations
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:17 +02:00
Simo Sorce
84c50a248e Reformat and cleanup
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:17 +02:00
Simo Sorce
bd19c964d5 s3-dcerpc: Move common helpers into a common file
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:17 +02:00
Simo Sorce
cb3725a931 dcerpc: remove ncacn_packet_header and related functions
ncacn_packet_header was an artifact and it is not necessary anymore

Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:17 +02:00
Simo Sorce
f9a15d1d94 s3-dcerpc: Refactor code and stop using ncacn_packet_header
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:17 +02:00
Simo Sorce
2452a7a4c1 s3-dcerpc: consolidate respones packet creation code
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:16 +02:00
Simo Sorce
f0626d14f0 s3-dcerpc: Stop using hand marshalling in rpc_finish_auth3_bind_send()
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:16 +02:00
Simo Sorce
7d9c62c646 s3-dcerpc: Do not parse the packet twice.
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:16 +02:00
Simo Sorce
282db1f5d2 s3-dcerpc: Remove unused function
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:16 +02:00
Simo Sorce
137743fac2 s3-dcerpc: Do not reparse the header
Instead pass back and use the packet we have already parsed.

Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:15 +02:00
Simo Sorce
459c8e32fd s3-dcerpc: Pull the whole packet at once instead of fetching just the header
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:15 +02:00
Simo Sorce
602e10f3fd s3-dcerpc: Delay parsing rpc header in client code
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:15 +02:00
Simo Sorce
87605e2030 s3-dcerpc: fix dcerpc_push_ncacn_packet, pass arg by address
There is no need to copy the whole structure twice by passing it in by value.

Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:11 +02:00
Simo Sorce
77699c777e sr-dcerpc: add dcerpc_push_ncacn_packet_header()
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:10 +02:00
Simo Sorce
cf664b73a4 s3-dcerpc: Use dcerpc_set_frag_length()
Automatically calculate the fragment length where possible.

Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 14:44:09 +02:00
Simo Sorce
25d487bebf s3-dcerpc: Fix ntlmssp sign/seal.
Header calculation was misplaced.

Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 01:35:16 +02:00
Simo Sorce
6555307aa1 s3-dceprc: Fix auth_length in auth3 response
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-13 01:35:05 +02:00
Simo Sorce
1b51ddd370 s3-dcerpc: Fix miscalculation of buffer start address
This was breaking schannel
2010-07-12 15:10:45 -04:00
Simo Sorce
1796767a36 s3-dcerpc: make dcerpc_pull_dcerpc_auth() public 2010-07-08 18:38:56 -04:00
Simo Sorce
a054832f4f s3-dcerpc: make dceprc_push_dcerpc_auth public 2010-07-08 18:38:56 -04:00
Simo Sorce
aca60c29e7 s3-dcerpc: use dcerpc_pull_dcerpc_auth() in rpc_finish_spnego_ntlmssp_bind_send() 2010-07-08 18:38:55 -04:00
Simo Sorce
5591135964 s3-dcerpc: use dcerpc_push_dcerpc_auth in add_schannel_auth_footer() 2010-07-08 18:38:55 -04:00
Simo Sorce
1febe9de6b s3-dcerpc: use dcerpc_push_dcerpc_auth() in add_ntlmssp_auth_footer() 2010-07-08 18:38:55 -04:00
Simo Sorce
c609e84170 s3-dcerpc: use dcerpc_pull_dcerpc_auth() in cli_pipe_verify_schannel() 2010-07-08 18:38:55 -04:00
Simo Sorce
91cb2aed54 s3-dcerpc: use dcerpc_push_ncacn_packet() in create_rpc_bind_auth3() 2010-07-08 18:38:55 -04:00
Jeremy Allison
7e134f179f Change one more use of "struct rpc_hdr_info" -> "struct ncacn_packet_header"
Jeremy
2010-07-08 15:18:30 -07:00
Günther Deschner
d57ecf920c s3-dcerpc: use dcerpc_pull_ncacn_packet() for rpc_pipe_bind_step_one_done().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-08 00:56:16 -04:00
Günther Deschner
5351a8919d s3-dcerpc: use dcerpc_push_ncacn_packet() in push_next_frag().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-08 00:53:10 -04:00
Günther Deschner
e8e2fa586b s3-dcerpc: use dcerpc_pull_ncacn_packet() in cli_pipe_validate_current_pdu().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-08 00:53:01 -04:00
Günther Deschner
dbeaa5efc7 s3-dcerpc: use dcerpc_pull_dcerpc_auth() in cli_pipe_verify_ntlmssp().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-08 00:52:38 -04:00
Günther Deschner
49c5293492 s3-dcerpc: add dcerpc_pull_dcerpc_auth().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-08 00:52:34 -04:00
Günther Deschner
fe9ce4b60c s3-dcerpc: use struct ncacn_packet_header instead of struct rpc_hdr_info.
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-08 00:47:53 -04:00
Günther Deschner
77e3fffd09 s3-dcerpc: add dcerpc_pull_ncacn_packet_header().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-08 00:29:33 -04:00
Günther Deschner
eeb034e72a s3-dcerpc: use dcerpc_push_dcerpc_auth() for all authenticated binds.
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-07 23:45:51 -04:00
Günther Deschner
4b56e6e95b s3-dcerpc: add dcerpc_push_schannel_bind().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-07 23:45:51 -04:00
Günther Deschner
0f02dda915 s3-dcerpc: add dcerpc_push_dcerpc_auth().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-07 23:45:51 -04:00
Günther Deschner
5aabd9af8e s3-dcerpc: use dcerpc_push_ncacn_packet() for create_bind_or_alt_ctx_internal().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-07 23:45:51 -04:00
Günther Deschner
d6de820480 s3-dcerpc: use dcerpc_pull_ncacn_packet() for pulling a RPC fault pdu.
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-07 23:45:50 -04:00
Günther Deschner
cb9eddb312 s3-dcerpc: add dcerpc_pull_ncacn_packet().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-07 23:45:50 -04:00
Günther Deschner
3d9a12dca7 s3-dcerpc: add dcerpc_push_ncacn_packet().
Guenther

Signed-off-by: Simo Sorce <idra@samba.org>
2010-07-07 23:45:50 -04:00
Andreas Schneider
30d25210a9 s3-rpc_client: Use the right memory context for array elements. 2010-07-05 15:59:05 +02:00
Volker Lendecke
dee72d807f s3: Remove an unreachable line of code 2010-06-21 15:03:59 +02:00
Jeremy Allison
2e8c563961 Second part of fix converting prs_XX struct and functions to talloc. Remove unneeded prs_mem_free calls.
Jeremy.

Signed-off-by: Simo Sorce <idra@samba.org>
2010-06-18 07:42:05 -04: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
Günther Deschner
30a9ddccff s3-spoolss: add and use spoolss_printerinfo2_to_setprinterinfo2().
This fixes some invalid typecasts.

Guenther
2010-06-03 16:32:49 +02:00
Günther Deschner
84a8f0451d s3-build: only include generated spoolss headers (not ndr headers).
Guenther
2010-06-03 11:00:27 +02:00
Andrew Bartlett
d6fa371b92 s3:ntlmssp Use a TALLOC_CTX for ntlmssp_sign_packet() and ntlmssp_seal_packet()
This ensures the results can't be easily left to leak.

Andrew Bartlett

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Signed-off-by: Günther Deschner <gd@samba.org>
2010-05-31 15:11:27 +02:00
Andrew Bartlett
ebae21f023 ntlmssp: Make the ntlmssp.h from source3/ a common header
The code is not yet in common, but I hope to fix that soon.

Andrew Bartlett

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Signed-off-by: Günther Deschner <gd@samba.org>
2010-05-31 15:10:56 +02:00
Günther Deschner
30eeb1e3d9 s3-rpc_client: move protos to init_netlogon.h
Guenther
2010-05-28 02:49:36 +02:00
Andrew Bartlett
cba7f8b827 s3:dom_sid Global replace of DOM_SID with struct dom_sid
This matches the structure that new code is being written to,
and removes one more of the old-style named structures, and
the need to know that is is just an alias for struct dom_sid.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-05-21 10:39:59 +02:00
Günther Deschner
8478770c35 s3-rpc_client: move protos to init_samr.h
Guenther
2010-05-18 21:42:57 +02:00
Günther Deschner
5a6f3a0666 s3-rpc_client: move protos to init_spoolss.h
Guenther
2010-05-18 21:42:48 +02:00
Günther Deschner
cc06133b0a s3-rpc_client: move protos to cli_spoolss.h
Guenther
2010-05-18 21:42:45 +02:00
Günther Deschner
230b880d14 s3-rpc_client: move protos to cli_lsarpc.h
Guenther
2010-05-18 21:42:41 +02:00
Günther Deschner
5ed3654112 s3-rpc_client: move protos to cli_netlogon.h
Guenther
2010-05-18 21:42:37 +02:00
Günther Deschner
3f2719c202 s3-rpc_client: move protos to cli_samr.h
Guenther
2010-05-18 21:42:32 +02:00
Jelmer Vernooij
b8268cf7b0 s3: Remove use of iconv_convenience. 2010-05-18 11:45:31 +02:00
Günther Deschner
1d2dd47d31 s3-crypto: only include crypto headers when crypto is done.
Guenther
2010-05-18 00:44:27 +02:00
Simo Sorce
3c1e9a8c33 s3-spoolss: Make spoolss_Time_to_time_t public.
Signed-off-by: Günther Deschner <gd@samba.org>
2010-05-09 23:33:40 +02:00
Günther Deschner
c6ebab846d s3: only include gen_ndr headers where needed.
This shrinks include/includes.h.gch by the size of 7 MB and reduces build time
as follows:

ccache build w/o patch
real    4m21.529s
ccache build with patch
real    3m6.402s

pch build w/o patch
real    4m26.318s
pch build with patch
real    3m6.932s

Guenther
2010-05-06 00:22:59 +02:00
Stefan Metzmacher
cac9981b1a s3:rpc_client: remove more unused code
metze
2010-03-29 18:11:20 +02:00
Stefan Metzmacher
13cf592bb8 s3:rpc_client: remove unused code, we handle transport failures in the transport layer now
metze
2010-03-29 18:11:19 +02:00
Stefan Metzmacher
3e70da3f47 s3:rpc_client: return at least 10 sec as old timeout in rpccli_set_timeout() instead of 0
metze
2010-03-29 18:11:17 +02:00
Stefan Metzmacher
99664ad154 s3:rpc_client: add set_timeout hook to rpc_cli_transport
metze
2010-03-29 18:11:17 +02:00
Stefan Metzmacher
4f41b53487 s3:rpc_client: add rpccli_is_connected()
metze
2010-03-29 18:11:16 +02:00
Stefan Metzmacher
dc09b12681 s3:rpc_client: don't mix layers and keep a reference to cli_state in the caller
We should not rely on the backend to have a reference to the cli_state.
This will make it possible for the backend to set its cli_state reference
to NULL, when the transport is dead.

metze
2010-03-29 18:11:16 +02:00
Stefan Metzmacher
5f8fc63515 s3:rpc_transport_np: add comment about bad usage in a destructor
metze
2010-03-29 18:11:15 +02:00
Stefan Metzmacher
b862351da8 s3:rpc_transport_np: use cli_state_is_connected() helper
metze
2010-03-29 18:11:15 +02:00
Stefan Metzmacher
7d977da925 s3:ntlmssp: pass names and use_ntlmv2 to ntlmssp_client_start() and store them
Inspired by the NTLMSSP merge work by Andrew Bartlett.

metze

Signed-off-by: Günther Deschner <gd@samba.org>
2010-03-24 17:34:55 +01:00
Günther Deschner
7643afa70e s3-rpcclient: fix rpcclient after spoolss_GetPrinterData{Ex} IDL change.
Guenther
2010-03-05 15:18:00 +01:00
Stefan Metzmacher
911287285c s3:rpc_transport_np: handle trans rdata like the output of a normal read
Inspired by bug #7159.

metze
2010-02-24 11:55:36 +01:00
Stefan Metzmacher
1e9df26ef9 s3:cli_netlogon: keep the the correct negotiate_flags on the cli->dc structure
This should fix the rpccli_netlogon_set_trust_password() against DC's
without netr_ServerPasswordSet2 support.

This fixes bug #7160.

metze
2010-02-23 16:19:58 +01:00
Jeremy Allison
0055e33dbe Second part of fix for bug #7159 - client rpc_transport doesn't cope with bad server data returns.
If server returns zero on a NP read. Report pipe broken.
Prevents client from looping if it thinks there should be
more data.

Jeremy.
2010-02-19 14:26:22 -08:00
Jeremy Allison
ad77ae1d58 First part of fix for bug #7159 - client rpc_transport doesn't cope with bad server data returns.
Ensure that subreq is *always* talloc_free'd in the _done
function, as it has an event timeout attached. If the
read requests look longer than the cli->timeout, then
the timeout fn is called with already freed data.

Jeremy.
2010-02-19 14:26:12 -08:00
Jeremy Allison
7b4387f765 Fix bug #7146 - Samba miss-parses authenticated RPC packets.
Parts of the Samba RPC client and server code misinterpret authenticated
packets.

DCE authenticated packets actually look like this :

+--------------------------+
|header                    |
| ... frag_len (packet len)|
| ... auth_len             |
+--------------------------+
|                          |
| Data payload             |
...                     ....
|                          |
+--------------------------+
|                          |
| auth_pad_len bytes       |
+--------------------------+
|                          |
| Auth footer              |
| auth_pad_len value       |
+--------------------------+
|                          |
| Auth payload             |
| (auth_len bytes long)    |
+--------------------------+

That's right. The pad bytes come *before* the footer specifying how many pad
bytes there are. In order to read this you must seek to the end of the packet
and subtract the auth_len (in the packet header) and the auth footer length (a
known value).

The client and server code gets this right (mostly) in 3.0.x -> 3.4.x so long
as the pad alignment is on an 8 byte boundary (there are some special cases in
the code for this).

Tridge discovered there are some (DRS replication) cases where on 64-bit
machines where the pad alignment is on a 16-byte boundary. This breaks the
existing S3 hand-optimized rpc code.

This patch removes all the special cases in client and server code, and allows
the pad alignment for generated packets to be specified by changing a constant
in include/local.h (this doesn't affect received packets, the new code always
handles them correctly whatever pad alignment is used).

This patch also works correctly with rpcclient using sign+seal from
the 3.4.x and 3.3.x builds (testing with 3.0.x and 3.2.x to follow)
so even as a server it should still work with older libsmbclient and
winbindd code.

Jeremy
2010-02-17 15:27:59 -08:00
Volker Lendecke
81a848be6d s3: Remove some unused variables 2010-01-10 22:43:02 +01:00
Bo Yang
36493bf2f6 s3: Fix infinite loop in NCACN_IP_TCP asa there is no timeout. Assume lsa_pipe_tcp is ok but network is down, then send request is ok, but select() on writeable fds loops forever since there is no response.
Signed-off-by: Bo Yang <boyang@samba.org>
2010-01-06 19:19:35 +08:00
Andrew Bartlett
802e9328ed s3:ntlmssp: only include ntlmssp.h where actually needed
Andrew Bartlett
2009-12-22 21:07:53 +01:00
Andrew Bartlett
5b37cd23bf s3:ntlmssp: remove the typedef NTLMSSP_STATE
Andrew Bartlett
2009-12-22 21:07:53 +01:00
Günther Deschner
f20effc437 s3-spoolss: fix enumprinter key client and server.
Guenther
2009-12-10 17:48:50 +01:00
Günther Deschner
5f60855ba2 samba-spoolss: use spoolss_StringArray2 in spoolss_EnumPrinterKey.
This should finally resolve the endian issues we were seeing on sparc and is
much cleaner for spoolss clients and servers.

Guenther
2009-12-02 14:56:17 +01:00
Günther Deschner
04f8c229de s3-kerberos: only use krb5 headers where required.
This seems to be the only way to deal with mixed heimdal/MIT setups during
merged build.

Guenther
2009-11-27 16:36:00 +01:00
Günther Deschner
5d706a2fd4 s3-rpc: running minimal_includes.pl on rpc_client and rpc_server.
Guenther
2009-11-26 20:17:07 +01:00
Günther Deschner
3d679a3b5f s3-rpc: Avoid including every pipe's client and server stubs everywhere in samba.
Guenther
2009-11-26 20:03:17 +01:00
Günther Deschner
846aa18648 s3-spoolss: fixes for _spoolss_EnumPrinterKey client and server.
Thanks Metze for review!

Guenther
2009-11-24 15:49:35 +01:00
Günther Deschner
d464151f3b s3-spoolss: fix spoolss_EnumPrinterKey client and server code.
Guenther
2009-11-23 11:44:43 +01:00
Volker Lendecke
f4cf1c56a2 s3: Add min_setup, min_param and min_data to cli_trans_recv
Every caller that expects to receive something needs to check if enough was
sent. Make this check mandatory for everyone.

Yes, this makes the parameter list for cli_trans a bit silly, but that's just
the way it is: A silly protocol request :-)

While there, convert some _done functions to tevent_req_simple_finish_ntstatus.
2009-11-14 12:20:12 +01:00
Volker Lendecke
92a16b91e8 fix bogus "out of memory" winbind msg
Signed-off-by: Michael Adam <obnox@samba.org>
2009-11-13 11:36:06 +01:00
Jeremy Allison
0363713031 Remove erroneous 'presult = NULL' changes. Now presult only gets set
if NTSTATUS == OK.
Jeremy.
2009-11-12 13:59:25 -08:00
Jeremy Allison
496d147dc4 Revert "Ensure every return path initializes presult as NULL."
Vl is correct, this is the wrong way to fix this.

This reverts commit 83c2c177a5.
2009-11-12 13:57:13 -08:00
Jeremy Allison
5363d6e62c Ensure all callers to the rpc_client/cli_pipe functions correctly
initialize return variables.
Jeremy.
2009-11-12 13:56:33 -08:00
Jeremy Allison
83c2c177a5 Ensure every return path initializes presult as NULL.
Ensures no crashes in calling code that forgets to
init return as null.
Jeremy.
2009-11-12 11:49:54 -08:00
Günther Deschner
d241b9ae4c s3-rpc_client: make sure cli_rpc_pipe_open_schannel() does not always return NT_STATUS_OK.
Guenther
2009-11-10 13:10:12 +01:00
Volker Lendecke
bb283af16f Revert "s3: Do not directly reference the ndr_table_* in rpcclient"
This reverts commit 70c698fd54.
2009-11-08 19:43:47 +01:00
Volker Lendecke
e181b88978 Revert "s3: Do not reference ndr_table_<pipe> in the cli_ routines directly"
This reverts commit daa964013b.
2009-11-08 19:43:47 +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
70c698fd54 s3: Do not directly reference the ndr_table_* in rpcclient 2009-11-08 00:28:36 +01:00
Volker Lendecke
5cdee7ae05 s3: Do the printing for DEBUGLEVEL>=10 centrally
12 insertions(+), 10651 deletions(-)

I think that says it all :-)
2009-11-07 11:07:37 +01:00
Volker Lendecke
cd16e38e32 s3: Register the ndr_interfaces dynamically 2009-11-07 09:14:16 +01:00
Volker Lendecke
268df12ab6 s3: Get rid of a NULL terminator 2009-11-07 09:14:16 +01:00
Volker Lendecke
a32c425f91 s3: Get rid of explicit pipe names 2009-11-07 09:14:16 +01:00
Volker Lendecke
2aa0af9867 s3: get_pipe_name_from_iface -> get_pipe_name_from_syntax 2009-11-07 09:14:15 +01:00
Günther Deschner
60bf0eb607 s3-kerberos: modify cli_krb5_get_ticket to take a new impersonate_princ_s arg.
Guenther
2009-11-06 13:31:17 +01:00
Volker Lendecke
b067a5e4e8 s3: Remove debug_ctx()
smbd just crashed on me: In a debug message I called a routine preparing a
string that itself used debug_ctx. The outer routine also used it after the
inner routine had returned. It was still referencing the talloc context
that the outer debug_ctx() had given us, which the inner DEBUG had already
freed.
2009-11-03 11:30:00 +01:00
Günther Deschner
64e8aa1b14 s3-netlogon: fix updating trust accout passwords with downlevel domains.
When choosing the netlogon password set function, make sure to look at the
*negotiated* flags in the cli->dc state, not the ones we start the negotiation
with.

Guenther
2009-10-16 18:03:32 +02:00
Günther Deschner
ebe0e64ba9 s3: use enum netr_SchannelType all over the place.
Guenther
2009-10-13 10:21:46 +02:00
Günther Deschner
4a1b50afd5 s3-netlogon: pass down account name to remote password set functions.
Guenther
2009-10-13 00:07:45 +02:00
Matthias Dieter Wallnöfer
607ceff234 s3/s4 - Adapt the IDL changes on various locations 2009-10-08 09:50:19 +02:00
Günther Deschner
0c2fc9eedf s3-netlogon: setup NETLOGON credential chain in rpccli_netlogon_set_trust_password() only when needed.
Guenther
2009-10-06 16:50:23 +02:00
Volker Lendecke
872f9c4f91 Revert "s3: Attempt to fix machine password change"
This reverts commit 20a8ea91e1.

Ooops, this should not have been committed.
2009-10-05 22:14:06 +02:00
Volker Lendecke
20a8ea91e1 s3: Attempt to fix machine password change 2009-10-05 22:12:20 +02:00
Volker Lendecke
84de81b478 s3: Remove a scary error message -- talloc_move can not fail :-)
Signed-off-by: Günther Deschner <gd@samba.org>
2009-10-05 12:14:08 +02:00
Günther Deschner
c6a7ecf28b s3-registry: move rpccli_winreg_Connect to the only file it belongs.
Guenther
2009-10-01 11:40:31 +02:00
Stefan Metzmacher
68b8149d1f s3:rpc_client: don't randomly fragment rpc pdu's in developer mode
This is really confusing and also breaks against windows,
as it doesn't accept fragmented bind requests.

metze
2009-09-25 05:20:16 +02:00
Günther Deschner
a4b5c792c5 s3-rpc_client: fix non initialized structure in rpccli_lsa_lookup_sids_noalloc.
Guenther
2009-09-18 21:32:45 +02:00
Günther Deschner
503d035814 spnego: share spnego_parse.
Guenther
2009-09-17 01:12:20 +02:00
Stefan Metzmacher
033ced60ac libcli/auth: rewrite schannel sign/seal code to be more generic
This prepares support for HMAC-SHA256/AES.

metze
2009-09-16 12:29:06 +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
c5c04fcf90 s3-schannel: add dump_NL_AUTH_SIGNATURE.
Guenther
2009-09-16 07:54:02 +02:00
Günther Deschner
799f8d7e13 schannel: fully share schannel sign/seal between s3 and 4.
Guenther
2009-09-16 01:55:06 +02:00
Günther Deschner
f8014d30e7 s3-schannel: fix blob length when pulling off a NL_AUTH_SIGNATURE in
cli_pipe_verify_schannel().

Guenther
2009-09-16 00:11:23 +02:00
Günther Deschner
c2d7c7a9dd s3-dcerpc: fix remaining old auth level constants.
Guenther
2009-09-15 18:30:44 +02:00
Günther Deschner
fdf3bd6203 s3-dcerpc: remove unsed auth type defines as seen on the wire.
Guenther
2009-09-15 17:50:00 +02:00
Günther Deschner
d3af0346c8 s3-dcerpc: use dcerpc_AuthLevel and remove duplicate set of flags.
Guenther
2009-09-15 17:49:34 +02:00
Günther Deschner
2f9adf04e4 s3-rpc_client: add rpccli_lsa_lookup_sids3 wrapper.
Guenther
2009-09-14 06:49:58 +02:00
Günther Deschner
ff968712ba s3-rpc_client: add rpccli_lsa_lookup_names4 wrapper.
Guenther
2009-09-14 06:49:58 +02:00
Günther Deschner
bea8e5fa60 s3-rpc_client: add dcerpc_transport_t to cli_rpc_pipe_open_schannel().
Guenther
2009-09-11 09:59:04 +02:00
Günther Deschner
032e01e7c1 s3-rpc_client: add dcerpc_transport_t to cli_rpc_pipe_open_spnego_ntlmssp and cli_rpc_pipe_open_ntlmssp.
Guenther
2009-09-11 09:59:04 +02:00
Günther Deschner
87f61a144b s3-rpc_client: add cli_rpc_pipe_open_noauth_transport.
Guenther
2009-09-11 09:59:03 +02:00
Günther Deschner
d258fb4d0d s3-schannel: use NL_AUTH_SIGNATURE for schannel sign & seal (client & server).
Guenther
2009-09-11 03:00:35 +02:00
Günther Deschner
393a1f594d s3-rpc_client: add enum dcerpc_transport_t to rpc_cli_transport struct.
Guenther
2009-09-11 00:26:24 +02:00
Günther Deschner
de0bf36493 s3-rpc_client: use NL_AUTH_MESSAGE in create_schannel_auth_rpc_bind_req().
Guenther
2009-09-08 17:07:02 +02:00
Günther Deschner
5b2b5abf4f s3-schannel: Fix Bug #6697. Interdomain trusts with Windows 2008 R2 DCs.
The Schannel verifier (aka NL_AUTH_SIGNATURE) structure (32 byte) sent from a
W2k8r2 DC is passed in a buffer with the size of a NL_AUTH_SHA2_SIGNATURE (56
byte). We should just ignore the remaining 12 zeroed bytes and proceed.

Guenther
2009-09-08 12:34:10 +02:00
Stefan Metzmacher
dcdefc17b9 s3:rpc_client: add dispatch_send/recv() to struct rpc_pipe_client
metze
2009-07-31 12:49:45 +02:00
Jeremy Allison
5d05d22999 Added prefer_ipv4 bool parameter to resolve_name().
W2K3 DC's can have IPv6 addresses but won't serve
krb5/ldap or cldap on those addresses. Make sure when
we're asking for DC's we prefer IPv4.
If you have an IPv6-only network this prioritizing code
will be a no-op. And if you have a mixed network then you
need to prioritize IPv4 due to W2K3 DC's.
Jeremy.
2009-07-28 11:51:58 -07:00
Volker Lendecke
3532882d02 Lift the event loop in rpc_api_pipe_req() one level into cli_do_rpc_ndr 2009-07-27 16:15:54 +02:00
Volker Lendecke
58fbf7420c Remove "typedef struct ndr_syntax_id RPC_IFACE;" 2009-07-05 23:50:12 +02:00
Günther Deschner
1225d57abe s3-spoolss: add rpccli_spoolss_getprinterdriver convenience wrapper.
Guenther
2009-07-03 22:05:46 +02:00
Günther Deschner
7450f3ad99 s3-netlogon: remove remaining netlogon init functions.
Guenther
2009-06-25 16:46:31 +02:00
Günther Deschner
313a2bfa52 s3-netlogon: remove init_netr_SamInfo functions.
Guenther
2009-06-25 12:19:17 +02:00
Volker Lendecke
f140bf2e65 Fix broken pipe handling
Metze is right: If we have *any* error at the socket level, we just can
not continue.

Also, apply some defensive programming: With this async stuff someone else
might already have closed the socket.
2009-05-18 07:13:04 +02:00
Volker Lendecke
795b896ab0 Fix a type-punned warning 2009-05-18 07:13:04 +02:00
Bo Yang
aa70e44cd0 s3: tevent_req_poll() loops forever when pipe is broken
Signed-off-by: Bo Yang <boyang@samba.org>
2009-05-19 01:13:36 +08:00
Jeremy Allison
f3af298e5b Cause cli_close to return an NTSTATUS.
Jeremy.
2009-04-30 16:57:42 -07:00
Bo Yang
f8cc0e88fb s3: fix crash in winbindd 2009-04-29 09:50:41 +08:00
Volker Lendecke
6af92c0228 Do not panic unnecessarily 2009-04-28 05:31:48 +02:00
Günther Deschner
8d3e61e5ce s3-netlogon: Start fixing rpccli_netlogon_setup_creds after auth merge.
Guenther
2009-04-24 09:52:00 +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
Andrew Bartlett
53765c81f7 Remove use of talloc_reference in cli_rpc_pipe_open_schannel_with_key() 2009-04-20 16:50:49 +02:00
Andrew Bartlett
baf7274fed Make Samba3 use the new common libcli/auth code
This is particuarly in the netlogon client (but not server at this
stage)
2009-04-14 16:23:44 +10:00
Andrew Bartlett
f28f113d8e Rework Samba3 to use new libcli/auth code (partial)
This commit is mostly to cope with the removal of SamOemHash (replaced
by arcfour_crypt()) and other collisions (such as changed function
arguments compared to Samba3).

We still provide creds_hash3 until Samba3 uses the credentials code in
netlogon server

Andrew Bartlett
2009-04-14 16:23:35 +10:00
Volker Lendecke
a3f24d91c5 Convert rpc_transport_smbd_init to tevent_req 2009-04-08 22:17:04 +02:00
Volker Lendecke
8a2112c942 Convert rpc_cli_smbd_conn_init to tevent_req 2009-04-08 22:17:04 +02:00
Volker Lendecke
bfacecc17b Convert get_anon_ipc to tevent_req 2009-04-08 22:17:04 +02:00
Volker Lendecke
f3d33cd81d Convert rpc_transport_np_init to tevent_req 2009-04-08 22:17:03 +02:00
Volker Lendecke
1c4027678e Correct sync wrappers in cli_pipe.c 2009-04-06 21:32:08 +02:00
Volker Lendecke
097db28c5d Convert cli_write_andx to tevent_req 2009-04-06 21:32:07 +02:00
Volker Lendecke
c23ccff13a Convert cli_read_andx to tevent_req 2009-04-06 21:32:07 +02:00
Volker Lendecke
ca7cd350a6 Convert cli_ntcreate to tevent_req 2009-04-06 21:32:07 +02:00
Volker Lendecke
807328ce6d Convert cli_tcon_andx to tevent_req 2009-04-06 21:32:07 +02:00
Volker Lendecke
03becb5066 Convert cli_negprot to tevent_req 2009-04-06 21:32:06 +02:00
Volker Lendecke
95c792b6af Convert cli_session_setup_guest to tevent_req 2009-04-06 21:32:06 +02:00
Volker Lendecke
7ef78bd7b5 Convert cli_trans to tevent_req 2009-04-06 21:32:06 +02:00
Volker Lendecke
0421fa90ce Keep the forked-smbd stdout reader around longer 2009-04-05 13:52:46 +02:00
Volker Lendecke
6d760a4a9f Ensure 0-termination for the forked-smbd debug output 2009-04-05 13:52:46 +02:00
Volker Lendecke
ac4c319ed7 Pass the current debuglevel down to the forked smbd 2009-04-05 13:52:46 +02:00
Volker Lendecke
5f753e22f1 Convert rpc_pipe_bind to tevent_req 2009-03-24 13:23:41 +01:00
Volker Lendecke
fa62836839 Convert rpc_cli_transport->trans to tevent_req 2009-03-24 13:23:41 +01:00
Volker Lendecke
8e0d9d002a Convert rpc_cli_transport->write to tevent_req 2009-03-24 13:23:41 +01:00
Volker Lendecke
22badee4bf Convert rpc_cli_transport->read to tevent_req 2009-03-24 13:23:40 +01:00
Volker Lendecke
1724f2ff31 Convert rpc_api_pipe_req to tevent_req 2009-03-24 13:23:40 +01:00
Volker Lendecke
f88990ec7e Convert rpc_api_pipe to tevent_req 2009-03-24 13:23:40 +01:00
Volker Lendecke
545ed5b52e Convert cli_api_pipe to tevent_req 2009-03-24 13:23:40 +01:00
Volker Lendecke
7a429fb369 Convert get_complete_frag to tevent_req 2009-03-24 13:23:40 +01:00
Volker Lendecke
7573bb758e Convert rpc_write to tevent_req 2009-03-24 13:23:40 +01:00
Volker Lendecke
1dd0883458 Convert rpc_read to tevent_req 2009-03-24 13:23:40 +01:00
Günther Deschner
531af136f9 s3: remove POLICY_HND.
Guenther
2009-03-18 23:22:29 +01:00
Günther Deschner
9fdeb7f7b3 s3-spoolss: remove custom syntax_spoolss and use the syntax defined in IDL.
Guenther
2009-03-18 14:18:42 +01:00
Günther Deschner
9d024d1715 s3-spoolss: remove old rpccli_spoolss_enumprinterdataex.
Guenther
2009-03-18 01:30:41 +01:00
Günther Deschner
ab85fc78bd s3-spoolss: add rpccli_spoolss_enumprinterdataex convenience wrapper.
Guenther
2009-03-18 01:30:18 +01:00
Günther Deschner
846b93f54f s3-spoolss: remove old rpccli_spoolss_enumprinterkey wrapper.
Guenther
2009-03-17 12:18:50 +01:00
Günther Deschner
86c25b3533 s3-spoolss: add rpccli_spoolss_enumprinterkey convenience wrapper.
Guenther
2009-03-17 12:18:28 +01:00
Günther Deschner
57077f43a7 s3-spoolss: remove rpccli_spoolss_enumprinterdata.
Guenther
2009-03-17 12:07:50 +01:00
Günther Deschner
4234969df7 s3-spoolss: remove old rpccli_spoolss_setprinterdata wrapper.
Guenther
2009-03-17 11:57:17 +01:00
Günther Deschner
d77cc43784 s3-spoolss: remove old rpccli_spoolss_getprinterdata.
Guenther
2009-03-17 11:49:23 +01:00
Günther Deschner
08d170abc1 s3-spoolss: add rpccli_spoolss_getprinterdata convenience wrapper.
Guenther
2009-03-17 11:49:08 +01:00
Günther Deschner
6df9e1f7aa s3-spoolss: add push_spoolss_PrinterData().
Guenther
2009-03-17 10:53:43 +01:00
Günther Deschner
9a8f19672d s3-spoolss: add pull_spoolss_PrinterData().
Guenther
2009-03-17 10:53:24 +01:00
Jeremy Allison
f48a345e4a Remove pwd_cache.c, it was doing nothing. Make user_name, domain, and
password talloc'ed strings within the cli_struct.
Jeremy.
2009-03-13 17:49:24 -07:00
Günther Deschner
16438e3a93 s3-spoolss: remove old enumprinters wrapper.
Guenther
2009-03-13 09:25:24 +01:00
Günther Deschner
9397ae5114 s3-spoolss: add rpccli_spoolss_enumprinters convenience wrapper.
Guenther
2009-03-13 09:25:23 +01:00
Günther Deschner
6928c5ce47 s3-spoolss: remove old rpccli_spoolss_enumprinterdrivers wrapper.
Guenther
2009-03-13 09:25:22 +01:00
Günther Deschner
5f46554228 s3-spoolss: add rpccli_spoolss_enumprinterdrivers convenience wrapper.
Guenther
2009-03-13 09:25:22 +01:00
Günther Deschner
3bd1aabcfe s3-spoolss: remove old rpccli_spoolss_enumjobs wrapper.
Guenther
2009-03-13 09:25:21 +01:00
Günther Deschner
80284124ba s3-spoolss: add rpccli_spoolss_enumjobs convenience wrapper.
Guenther
2009-03-13 09:25:20 +01:00
Günther Deschner
33a441b0c2 s3-spoolss: add rpccli_spoolss_enummonitors convenience wrapper.
Guenther
2009-03-07 00:55:39 +01:00
Günther Deschner
c7e19c2627 s3-spoolss: add rpccli_spoolss_enumports convenience wrapper.
Guenther
2009-03-07 00:55:37 +01:00
Günther Deschner
631f277d1c s3-spoolss: remove old spoolss_EnumPorts.
Guenther
2009-03-07 00:55:36 +01:00
Günther Deschner
2d24d3a380 s3-spoolss: add rpccli_spoolss_enumprintprocessordatatypes convenience wrapper.
Guenther
2009-03-07 00:55:00 +01:00
Günther Deschner
b73411d650 s3-spoolss: add rpccli_spoolss_enumprintprocessors convenience wrapper.
Guenther
2009-03-07 00:43:13 +01:00
Günther Deschner
9bdca59fc5 s3-spoolss: remove old rpccli_spoolss_enumforms.
Guenther
2009-03-06 14:30:26 +01:00
Günther Deschner
c14a589a46 s3-spoolss: add convencience wrapper around rpccli_spoolss_EnumForms.
Guenther
2009-03-06 14:30:02 +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
Günther Deschner
f343ed7319 s3-spoolss: remove old rpccli_spoolss_getjob.
Guenther
2009-02-26 22:02:19 +01:00
Günther Deschner
0445c554d1 s3-spoolss: add rpccli_spoolss_getjob convenience wrapper.
Guenther
2009-02-26 22:02:18 +01:00
Günther Deschner
b6457c78d6 s3-spoolss: remove unused decode_printer_info_7.
Guenther
2009-02-25 15:10:46 +01:00
Volker Lendecke
be4913fbe6 Convert rpc_sock_write to use tevent_req base async_send 2009-02-25 13:04:18 +01:00
Volker Lendecke
d1c7bbd893 Convert rpc_sock_read to use tevent_req base async_read 2009-02-25 13:04:18 +01:00
Günther Deschner
59e90d3715 s3-spoolss: remove rpccli_spoolss_getprinter.
Guenther
2009-02-25 11:16:30 +01:00
Günther Deschner
c03f207276 s3-spoolss: remove rpccli_spoolss_setprinter.
Guenther
2009-02-25 11:16:29 +01:00
Günther Deschner
c7ba20b465 s3-spoolss: remove rpccli_spoolss_addprinterex.
Guenther
2009-02-25 11:16:29 +01:00
Günther Deschner
6366084c4a s3-spoolss: add rpccli_spoolss_getprinter convenience wrapper.
Guenther
2009-02-25 11:16:28 +01:00
Günther Deschner
9d165fa5c6 s3-spoolss: add rpccli_spoolss_addprinterex convenience wrapper.
Guenther
2009-02-25 10:32:09 +01:00