1
0
mirror of https://github.com/samba-team/samba.git synced 2025-11-15 16:23:49 +03:00
Commit Graph

280 Commits

Author SHA1 Message Date
Jeremy Allison
23b825e9d2 Security fix for CVE-2008-1105: Boundary failure when parsing SMB responses
can result in a buffer overrun.
Jeremy.
2008-05-28 09:31:42 -07:00
Volker Lendecke
99fc3283c4 Replace cli_rpc_pipe_close by a talloc destructor on rpc_pipe_struct 2008-04-20 14:08:16 +02:00
Volker Lendecke
783afab9c8 Add "desthost" to rpc_pipe_client
This reduces the dependency on cli_state
2008-04-20 00:13:09 +02:00
Volker Lendecke
a6d74a5a56 Refactoring: Make struct rpc_pipe_client its own talloc parent 2008-04-20 00:12:52 +02:00
Volker Lendecke
f64b46dc27 Add cli_setup_packet_buf
This is == cli_setup_packet but takes an explicit buffer argument
2008-02-28 14:20:17 +01:00
Volker Lendecke
e69244a5c8 Make cli_struct a talloc parent 2008-02-28 14:20:17 +01:00
Volker Lendecke
ffc1c8cc03 Add explicit buf arg to cli_check_sign_mac 2008-02-28 13:12:34 +01:00
Volker Lendecke
db6ae9ed23 Add explicit buf arg to cli_encrypt_message and cli_calculate_sign_mac 2008-02-28 13:12:34 +01:00
Volker Lendecke
ba771bd858 Convert receive_smb_raw to NTSTATUS 2008-02-02 11:03:23 +01:00
Volker Lendecke
90554799af read_socket_with_timeout_ntstatus->read_socket_with_timeout 2008-02-02 11:03:22 +01:00
Volker Lendecke
f9c8ac83ff Get rid of read_socket_with_timeout 2008-02-02 11:03:22 +01:00
Volker Lendecke
7101026061 read_socket_with_timeout has timeout=0 handling 2008-01-23 17:09:10 +01:00
Jeremy Allison
d67b263406 Encryption works better when you add the client decrypt code :-).
Jeremy.
2007-12-26 17:17:36 -08:00
Jeremy Allison
d78045601a Add SMB encryption. Still fixing client decrypt but
negotiation works.
Jeremy.
2007-12-26 17:12:36 -08:00
Volker Lendecke
5ab82d4f57 Some C++ warnings 2007-12-21 09:58:20 +01:00
Jeremy Allison
ba9e2be2b5 Remove the explicit TALLOC_CTX * from cli_struct.
Make us very explicit about how long a talloc ctx
should last.
Jeremy.
2007-11-29 13:24:54 -08:00
Jeremy Allison
255c2adf7b Remove the horror that was the global smb_rw_error.
Each cli struct has it's own local copy of this variable,
so use that in client code. In the smbd server, add one
static to smbd/proccess.c and use that inside smbd. Fix
a bunch of places where smb_rw_error could be set by
calling read_data() in places where we weren't reading
from the SMB client socket (ie. winbindd).
Jeremy.
2007-11-05 11:12:56 -08:00
Jeremy Allison
d50d14c300 Remove the smb_read_error global variable and replace
it with accessor functions. "One global or pstring a day...." :-).
Jeremy.
2007-11-03 15:12:42 -07:00
Jeremy Allison
81ca5853b2 Change the client library to write directly out of
the incoming buffer in the non-signed case. Speeds
up writes by over 10% or so. Complete the server
recvfile implementation.
Jeremy.
2007-11-02 12:21:34 -07:00
Jeremy Allison
f35a266b3c RIP BOOL. Convert BOOL -> bool. I found a few interesting
bugs in various places whilst doing this (places that assumed
BOOL == int). I also need to fix the Samba4 pidl generation
(next checkin).
Jeremy.
2007-10-18 17:40:25 -07:00
Gerald (Jerry) Carter
5c6c8e1fe9 [GLUE] Rsync SAMBA_3_2_0 SVN r25598 in order to create the v3-2-test branch. 2007-10-10 15:34:30 -05:00
Volker Lendecke
4863ff2899 r24223: Convert reply_echo to the new API 2007-10-10 12:29:17 -05:00
Andrew Tridgell
b0132e94fc r23784: use the GPLv3 boilerplate as recommended by the FSF and the license text 2007-10-10 12:28:22 -05:00
Jeremy Allison
407e6e695b r23779: Change from v2 or later to v3 or later.
Jeremy.
2007-10-10 12:28:20 -05:00
Jeremy Allison
a398bdf08d r22950: Fix the issue Volker reported here :
"Attempt to fix some build farm failures: On port 139 the first
successful packet gives len==0 from the server, so the = in

        if (len <= 0) {

in line 136 of clientgen.c throws a failure."

The irritating thing is that I already had it correct in
SAMBA_3_0_26 and forgot to merge the change across.

len == 0 is a valid return - I messed that up when
converting client_receive_smb() to return a length
rather than a BOOL.

Doh !

Jeremy.
2007-10-10 12:22:11 -05:00
Volker Lendecke
0bdf4f1a59 r22930: Next attempt to get the build farm in line.
Jeremy, please check this and merge if appropriate.
2007-10-10 12:22:10 -05:00
Volker Lendecke
9c5111d8c5 r22929: Attempt to fix some build farm failures: On port 139 the first
successful packet gives len==0 from the server, so the = in

        if (len <= 0) {

in line 136 of clientgen.c throws a failure.

Jeremy, please fix this properly, I'm not merging this to 3_0_26 so that
you can filter it when you merge.

Volker
2007-10-10 12:22:10 -05:00
Jeremy Allison
6fe2ee3bd7 r22924: Fix the build by correctly processing readX
errors in the direct read case.
Jeremy.
2007-10-10 12:22:08 -05:00
Jeremy Allison
a53268fb20 r22920: Add in the UNIX capability for 24-bit readX, as discussed
with the Apple guys and Linux kernel guys. Still looking
at how to do writeX as there's no recvfile().
Jeremy.
2007-10-10 12:22:08 -05:00
Jeremy Allison
2d80a96120 r22391: Looks bigger than it is. Make "inbuf" available
to all callers of smb_setlen (via set_message()
calls). This will allow the server to reflect back
the correct encryption context.
Jeremy.
2007-10-10 12:19:30 -05:00
Jeremy Allison
6cf0b93b1d r22212: Cope with signature errors on sessionsetupX logins
where the server just reflects our signature back
to us. Allow the upper layer to see the real error.
Jeremy.
2007-10-10 12:19:20 -05:00
Jeremy Allison
9785528ddf r21994: Ignore keepalives in the correct buffer (out not in :-).
Jeremy.
2007-10-10 12:18:58 -05:00
Jeremy Allison
3e901389fe r21993: Don't let keepalives interferece with sign or seal
in the client code.
Jeremy.
2007-10-10 12:18:58 -05:00
Jeremy Allison
8f113ad191 r21992: Fix keepalive processing when encryption turned on.
Jeremy.
2007-10-10 12:18:58 -05:00
Jeremy Allison
ae8f3649f7 r21991: I hate Steve French :-). Add support for encryption
contexts....
Jeremy.
2007-10-10 12:18:58 -05:00
Jeremy Allison
ffa3a5c508 r21990: Stop messing with the signing engine just because
we're encrypted. This will make further changes and
spec much more clear.
Jeremy.
2007-10-10 12:18:57 -05:00
Jeremy Allison
bb3623be3f r21939: Fix missing initialization that
broke the build farm. Thanks to
Metze for the heads up.
Jeremy.
2007-10-10 12:18:50 -05:00
Jeremy Allison
1b828f051d r21922: Fixed the build by rather horrid means. I really need
to restructure libsmb/smb_signing.c so it isn't in
the base libs path but lives in libsmb instead (like
smb_seal.c does).
Jeremy.
2007-10-10 12:18:49 -05:00
Jeremy Allison
d3f3ced6c8 r21880: Make client and server calls into encryption code symetrical,
depending on encryption context pointer.
Jeremy.
2007-10-10 12:18:43 -05:00
Jeremy Allison
5bfe638f21 r21865: Add in the stubs for SMB transport encryption. Will flesh
these out as I implement. Don't add to SAMBA_3_0_25, this
is experimental code.
NFSv4 you're now officially on notice... :-).
Jeremy.
2007-10-10 12:18:40 -05:00
Herb Lewis
ac3eb7813e r20124: clean up nested extern declaration warnings 2007-10-10 12:16:26 -05:00
Derrell Lipman
9c93abf25e r18014: revert a possibly unnecessary change 2007-10-10 11:39:48 -05:00
Derrell Lipman
fa664b24b8 r18011: Should fix bug 3835.
Jeremy: requires your eyes...

If the remote connection timed out while cli_list() was retrieving its list of
files, the error was not returned to the user, e.g. via smbc_opendir(), so the
user didn't have a way to know to set the timeout longer and try again.  This
problem would occur when a very large directory is being read with a too-small
timeout on the cli.

Jeremy, although there were a couple of areas that needed to be handled, I
needed to make one change that you should bless, in libsmb/clientgen.c.  It
was setting

  cli->smb_rw_error = smb_read_error;

but smb_read_error is zero, so this had no effect.  I'm now doing

  cli->smb_rw_error = READ_TIMEOUT;

instead, and according to the OP, these (cumulative) changes (in a slightly
different form) solve the problem.

Please confirm this smb_rw_error change will have no other adverse effects
that you can see.

Derrell
2007-10-10 11:39:48 -05:00
Jeremy Allison
9dafb7f48c r16945: Sync trunk -> 3.0 for 3.0.24 code. Still need
to do the upper layer directories but this is what
everyone is waiting for....

Jeremy.
2007-10-10 11:19:14 -05:00
Günther Deschner
840ac23ec0 r16458: Increase debuglevel of cli_rpc_pipe_close().
Guenther
2007-10-10 11:18:55 -05:00
Jeremy Allison
6193f11708 r16356: Helping derrell out. Jeremy.
Only set the DFS capability flag if the share is a DFS root.  Fixes bug 3814.
2007-10-10 11:18:48 -05:00
Gerald Carter
70e7c9de9d r13676: have to return a value from a non-void function 2007-10-10 11:10:22 -05:00
Gerald Carter
249dba0386 r13671: fix return value in (void)fn() 2007-10-10 11:10:22 -05:00
Jeremy Allison
7de1ee1861 r13614: First part of the bugfix for #3510 - net join fails
against server with schannel disabled. Second part
will come tomorrow (fixing net_rpc_join_ok()).
Jeremy.
2007-10-10 11:10:19 -05:00
Gerald Carter
17e63ac4ed r13316: Let the carnage begin....
Sync with trunk as off r13315
2007-10-10 11:06:23 -05:00