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

2490 Commits

Author SHA1 Message Date
todd stecher
989ad44d32 Memory leaks and other fixes found by Coverity 2009-01-21 17:13:03 -08:00
Volker Lendecke
0dbd396862 Add a macro async_req_setup()
This streamlines setting up a multi-step async request a bit
2009-01-18 16:45:07 +01:00
Derrell Lipman
6d300399b5 Determine case sensitivity based on file system attributes.
- Most of the time, we can determine from the file system we're connecting to
  whether it supports case sensitivity. In those cases, we now set the
  internal case sensitivity flag automatically. For those cases where the
  request to retrieve file system attributes fails, we'll use the
  user-specified option value.

Derrell
2009-01-17 13:33:39 -05:00
Derrell Lipman
c6b4f3526a [Bug 6022] smbc_urlencode and smbc_urldecode were not exported
- Since the revamp of libsmbclient, there has still been an external
  declaration for smbc_urlencode and smbc_urldecode in libsmbclient.h, yet
  those functions were renamed and made private. The two choices were to
  remove the function names from libsmbclient.h or to make them public
  again. The reported requested that they be public. This commit makes it so.

Derrell
2009-01-16 20:26:46 -05:00
Derrell Lipman
1c77c7f3d5 Treat file names in POSIX-like case-sensitive fashion by default
*** THIS COMMIT CAUSES A CHANGE OF DEFAULT BEHAVIOR IN libsmbclient!!! ***

- libsmbclient now calls cli_set_case_sensitive() for a new CLI. By default,
  it requests case-sensitive, but the old behavior of case-insensitive can be
  requested with smbc_setOptionCaseSensitive(context, False);

  The change of behavior is considered a bug fix, as it was previously
  possible to accidentally overwrite a file that had the same case-insensitive
  name but a different case-sensitive name as a previously-existing file,
  while creating a new file.

Derrell
2009-01-16 16:41:36 -05:00
Andreas Schneider
3fe974c4fe Fix a segfault if ? is there but the options are NULL. This is the case if SMBC_parse_path is called by SMBC_stat_ctx. 2009-01-16 12:26:46 -08:00
Michael Adam
0cea990d75 s3: put netsamlogon_cache.tdb into cache_dir instead of lock_dir
Michael
2009-01-16 01:02:24 +01:00
Michael Adam
39ec8791f8 s3: make better use of ccache by not including version.h in every C-file.
version.h changes rather frequently. Since it is included via includes.h,
this means each C file will be a cache miss. This applies to the following
situations:

* When building a new package with a new Samba version

* building in a git branch after calling mkversion.sh
  after a new commit (i.e. virtually always)

This patch improves the situation in the following way:

* remove inlude "version.h" from includes.h

* Use samba_version_string() instead of SAMBA_VERSION_STRING
  in files that use no other macro from version.h instead of
  SAMBA_VERSION_STRING.

* explicitly include "version.h" in those files that use more
  macros from "version.h" than just SAMBA_VERSION_STRING.

Michael
2009-01-15 22:56:01 +01:00
Jeremy Allison
907f085296 Remove smbclient globals that bled into clidfs.c. Now we only have
the connections list and authentication structures to worry about.
Jeremy
2009-01-14 16:08:19 -08:00
Jeremy Allison
2c0a802cf8 Remove another global from clidfs that is only used in client.c.
Jeremy.
2009-01-14 14:26:56 -08:00
Stefan Metzmacher
7d9fd64f38 s3:libsmb: handle the smb signing states the same in the krb5 and ntlmssp cases
SMB signing works the same regardless of the used auth mech.

We need to start with the temp signing ("BSRSPYL ")
and the session setup response with NT_STATUS_OK
is the first signed packet.

Now we set the krb5 session key if we got the NT_STATUS_OK
from the server and then recheck the packet.

All this is needed to make the fallback from krb5 to
ntlmssp possible. This commit also resets the cli->vuid
value to 0, if the krb5 auth didn't succeed. Otherwise
the server handles NTLMSSP packets as krb5 packets.

The restructuring of the SMB signing code is needed to
make sure the krb5 code only starts the signing engine
on success. Otherwise the NTLMSSP fallback could not initialize
the signing engine (again).

metze
2009-01-12 13:22:40 +01:00
Volker Lendecke
ce5eded7e0 Move cli_api_pipe() to its only user cli_pipe.c 2009-01-11 22:53:24 +01:00
Jeremy Allison
590c9b7b6d Fix bug #6021 - smbclient du command does not recuse properly
Jeremy.
2009-01-08 15:41:49 -08:00
Jelmer Vernooij
af744e0954 Merge branch 'master' of ssh://git.samba.org/data/git/samba 2009-01-04 22:48:23 +01:00
Volker Lendecke
b4f8996ac7 Simulate the Windows behaviour to fire 445 and after a timeout 139 2009-01-04 16:42:41 +01:00
Volker Lendecke
19b783cce9 Async wrapper for open_socket_out_send/recv 2009-01-04 16:42:40 +01:00
Volker Lendecke
fafb9ecc61 open_socket_out is always used with SOCK_STREAM, remove argument "type" 2009-01-03 19:22:06 +01:00
Volker Lendecke
27abf6731e struct async_req doesn't really need to carry an event_context 2009-01-03 19:07:57 +01:00
Jeremy Allison
3d2d0203e5 Remove cli_cm_set_dest_ss() - removes the global dest_ss
from libsmb/clidfs.c. Keep the '-I<address>' option in
smbclient working. The intent is to remove all globals
from libsmb/clidfs.c.
Jeremy.
2009-01-02 12:49:49 -08:00
Volker Lendecke
707a5a41b5 Remove a global variable 2009-01-01 20:01:32 +01:00
Volker Lendecke
bf34e998f9 fix some nonempty blank lines 2009-01-01 20:01:32 +01:00
Jelmer Vernooij
08259c1c52 Add iconv_convenience argument to size functions. 2009-01-01 04:45:33 +01:00
Jeremy Allison
bb23f5725f Fix more asprintf and "ignoring return code" warnings from gcc 4.3.
Jeremy.
2008-12-31 16:30:11 -08:00
Volker Lendecke
8ae4155f82 Make a CONST_DISCARD unnecessary by applying some const
Derrell, please check!
2008-12-31 19:33:25 +01:00
Volker Lendecke
e4d28dbc04 Attempt to fix bug 5953: Make cli_send_smb_direct_writeX use writev
It seems there are SMB servers around which can't cope with the write header
being sent in a packet of its own. With writev we keep the advantage of direct
writes, giving the kernel the chance to coalesce the write calls.
2008-12-29 13:24:28 +01:00
Volker Lendecke
9f31468bd3 Add async cli_write_andx and cli_pull 2008-12-19 23:16:25 +01:00
Volker Lendecke
ae1d6020f0 Fix setting smb_len for huge write&x calls 2008-12-19 18:15:30 +01:00
Volker Lendecke
fa5f11279b Add the cli_wct_ofs routine to calculate the offset for write&x 2008-12-19 18:12:44 +01:00
Volker Lendecke
13eefa7c43 Add a doxygen comment line I forgot to merge 2008-12-19 17:50:34 +01:00
Volker Lendecke
1f04d07db0 Convert cli_request->outbuf to uint8_t 2008-12-19 17:47:30 +01:00
Volker Lendecke
398ef0fb85 For large smbwrite&x, we need more than 64k bcc 2008-12-19 16:13:27 +01:00
Volker Lendecke
98c4055bcb Add some comments
If it takes more than 10 seconds to understand the code you've written yourself
less than a year ago, it's time for comments or refactoring. I couldn't find a
way to refactor that cleanly, so add comments :-)
2008-12-19 16:13:26 +01:00
Volker Lendecke
45ad3df140 Fix the padding calculation in smb_splice_chain for "bytes_padding!=0" 2008-12-19 14:53:29 +01:00
Volker Lendecke
4abdd3981e Pass "bytes_alignment" up through cli_request_send
This parameter makes smb_spice_chain add padding before the bytes field
2008-12-19 14:53:29 +01:00
Volker Lendecke
2fe7d5936a Prefer network writes over reads
If we really want to keep the pipe busy, we need to write everything we have as
early as possible, giving the kernel the chance to get rid of the buffers
quickly :-)
2008-12-19 13:46:52 +01:00
Volker Lendecke
42e407b300 Factor out cli_write_max_bufsize 2008-12-19 13:34:26 +01:00
Volker Lendecke
7c3497ef5e Remove two write-only variables
If someone wants those stats, please don't use globals :-)
2008-12-19 13:18:57 +01:00
Volker Lendecke
f87da49830 Make cli_negprot async 2008-12-19 10:50:52 +01:00
Volker Lendecke
bb8ca0fdbf Make cli_negprot return NTSTATUS instead of bool 2008-12-19 10:28:30 +01:00
Volker Lendecke
96a3d7be31 cli_negprot_send -> cli_negprot_sendsync 2008-12-19 10:28:20 +01:00
Volker Lendecke
5f079fe158 Fix a valgrind error
Reported by naga_kishore_kommuri@yahoo.com

Derrel, please check!

Thanks,

Volker
(cherry picked from commit 3356b95f72e26ede4ab16a12c334be90b8b1a639)
2008-12-17 18:25:32 +01:00
Kai Blin
3144e45085 (Fixed) Final part of fix for bug #5953 - smbclient crashes: cli_list_new segmentation fault (with NAS-BASIC server). 2008-12-16 13:40:38 -08:00
Jeremy Allison
3edbc14405 Revert "Final part of fix for bug #5953 - smbclient crashes: cli_list_new segmentation fault (with NASBASIC server)."
Error in commit !

This reverts commit bbd5824140992ea457d4270ee77018ebb367abc9.
2008-12-16 13:31:52 -08:00
Kai Blin
bbd5824140 Final part of fix for bug #5953 - smbclient crashes: cli_list_new segmentation fault (with NASBASIC server). 2008-12-16 13:19:15 -08:00
SATOH Fumiyasu
4c3aea3f62 commit b520befe6f51644d20434add9864d7a2fa30aa2e
Author: SATOH Fumiyasu <fumiyas@osstech.co.jp>
Date:   Wed Dec 17 00:42:25 2008 +0900

    libsmbclient: Fix SIGBUS on non-x86 CPUs

    We must align the struct smbc_dirent in the struct
    SMBC_internal_data because the struct smbc_dirent
    has numeric values that require alignment.

Signed-off-by: Derrell Lipman <derrell.lipman@unwireduniverse.com>
2008-12-16 12:20:40 -05:00
Volker Lendecke
daeb3a190d Remove the global "cmdline_auth_info" from source3/lib/util.c
This involves changing all our clients, that's why it's so large.
2008-12-14 14:00:43 +01:00
Volker Lendecke
be3d999063 Remove a pointless static variable
Every sane compiler will only allocate "*SMBSERVER" once
2008-12-13 19:21:48 +01:00
Volker Lendecke
da6be4102e Remove a static variable
Derrell, please check!

Thanks,

Volker
2008-12-13 19:19:46 +01:00
Volker Lendecke
b04d00744e Micro-Optimize cliconnect.c
In this form, the prots array is fully read-only in the text segment and thus
can be shared between processes.

Probably pointless, but I had fun doing it :-)
2008-12-13 19:19:45 +01:00
Stefan Metzmacher
1b7b0e924f s3:dsgetdcname: retry with the clients site
metze
2008-12-13 11:47:13 +01:00