1
0
mirror of https://github.com/samba-team/samba.git synced 2025-12-10 04:23:50 +03:00
Commit Graph

322 Commits

Author SHA1 Message Date
Volker Lendecke
0baa3fcfa6 r18402: Comment and (hopefully) fix remote command completion for smbclient.
Fix Bug ID 4084.

Volker
2007-10-10 11:51:22 -05:00
Jeremy Allison
425280a1d2 r17800: Start using struct timespec internally for file times
on the wire. This allows us to go to nsec resolution
for systems that support it. It should also now be
easy to add a correct "create time" (birth time)
for systems that support it (*BSD). I'll be watching
the build farm closely after this one for breakage :-).
Jeremy.
2007-10-10 11:38:48 -05:00
Volker Lendecke
94817a8ef5 r17571: Change the return code of cli_session_setup from BOOL to NTSTATUS
Volker
2007-10-10 11:38:39 -05:00
Jeremy Allison
596497ccc2 r16971: Ensure we use the correct separator for pathnames
in POSIX mode (clitar needs fixing too). Add test
posix lock/unlock commands.
Jeremy.
2007-10-10 11:19:16 -05:00
Jeremy Allison
2d8d4bd77b r16962: Add a few utility fns into client. Allow POSIX capabilities
to be selected.
Jeremy.
2007-10-10 11:19:16 -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
Jeremy Allison
16b0617cb0 r16587: Fix Klocwork #1987. Memleak on reusing x_dbf.
Jeremy.
2007-10-10 11:19:01 -05:00
Volker Lendecke
ded2952e00 r16338: Fix Klocwork ID 150 2007-10-10 11:17:36 -05:00
James Peach
848ac756f6 r16274: Fix the smbclient prompting behaviour for both systems that have
libreadline and those that don't. We always use the built-in readline
replacement for non-interactive mode. Interactive prompts are always
emitted to stdout and non-interactive mode never prompts at all.

Introduce x_fdup to avoid spuriously closing stdout when a logfile is
specified on the command line and setup_logging is called a second time.
2007-10-10 11:17:30 -05:00
Volker Lendecke
4974c598c0 r16251: for i in seq 1 1000
do
	echo "I will always compile before commit :-)"
done

Also fix Klokwork ID 806.

Volker
2007-10-10 11:17:28 -05:00
Volker Lendecke
d7a75ee94d r16250: Fix Klokwork IDs 148, 151, 152, 154.
Volker
2007-10-10 11:17:28 -05:00
Jeremy Allison
6c61dc8ed6 r16230: Fix Klocwork #861 and others. localtime and asctime
can return NULL. Ensure we check all returns correctly.
Jeremy.
2007-10-10 11:17:26 -05:00
Volker Lendecke
d3d388180d r15098: Make smbclient -L use RPC to list shares, fall back to RAP. This should list
long share names.

Volker
2007-10-10 11:16:23 -05:00
Jeremy Allison
a3b8bee3ff r14359: Try and fix Coverity #176 by making the pointer
aliasing clearer. This isn't a bug but a code
clarification.
Jeremy.
2007-10-10 11:15:26 -05:00
Jeremy Allison
d793e1550c r14351: Ensure we use the minimum of PATH_MAX and sizeof(pstring).
Fix Coverity #59.
Jeremy.
2007-10-10 11:15:26 -05:00
Jeremy Allison
1d710d06a2 r13915: Fixed a very interesting class of realloc() bugs found by Coverity.
realloc can return NULL in one of two cases - (1) the realloc failed,
(2) realloc succeeded but the new size requested was zero, in which
case this is identical to a free() call.

The error paths dealing with these two cases should be different,
but mostly weren't. Secondly the standard idiom for dealing with
realloc when you know the new size is non-zero is the following :

 tmp = realloc(p, size);
 if (!tmp) {
    SAFE_FREE(p);
    return error;
 } else {
    p = tmp;
 }

However, there were *many* *many* places in Samba where we were
using the old (broken) idiom of :

 p = realloc(p, size)
 if (!p) {
    return error;
 }

which will leak the memory pointed to by p on realloc fail.

This commit (hopefully) fixes all these cases by moving to
a standard idiom of :

 p = SMB_REALLOC(p, size)
 if (!p) {
    return error;
 }

Where if the realloc returns null due to the realloc failing
or size == 0 we *guarentee* that the storage pointed to by p
has been freed. This allows me to remove a lot of code that
was dealing with the standard (more verbose) method that required
a tmp pointer. This is almost always what you want. When a
realloc fails you never usually want the old memory, you
want to free it and get into your error processing asap.

For the 11 remaining cases where we really do need to keep the
old pointer I have invented the new macro SMB_REALLOC_KEEP_OLD_ON_ERROR,
which can be used as follows :

 tmp = SMB_REALLOC_KEEP_OLD_ON_ERROR(p, size);
 if (!tmp) {
    SAFE_FREE(p);
    return error;
 } else {
    p = tmp;
 }

SMB_REALLOC_KEEP_OLD_ON_ERROR guarentees never to free the
pointer p, even on size == 0 or realloc fail. All this is
done by a hidden extra argument to Realloc(), BOOL free_old_on_error
which is set appropriately by the SMB_REALLOC and SMB_REALLOC_KEEP_OLD_ON_ERROR
macros (and their array counterparts).

It remains to be seen what this will do to our Coverity bug count :-).

Jeremy.
2007-10-10 11:10:59 -05:00
Derrell Lipman
f2a24de769 r13212: r12414@cabra: derrell | 2006-01-28 17:52:17 -0500
lp_load() could not be called multiple times to modify parameter settings based
 on reading from multiple configuration settings.  Each time, it initialized all
 of the settings back to their defaults before reading the specified
 configuration file.

 This patch adds a parameter to lp_load() specifying whether the settings should
 be initialized.  It does, however, still force the settings to be initialized
 the first time, even if the request was to not initialize them.  (Not doing so
 could wreak havoc due to uninitialized values.)
2007-10-10 11:06:18 -05:00
Jeremy Allison
c970d7d0a5 r12555: Fix more load_case_table swegfaults. Arggg.
What I'd give for a global constructor...
Jeremy.
2007-10-10 11:05:59 -05:00
Jeremy Allison
9b8602e055 r11978: Volker's fix for #3292 (smbclient spins if server terminates
connection).
Jeremy.
2007-10-10 11:05:41 -05:00
Jeremy Allison
f1c88de7a2 r11976: (Slightly modified) Volker fix for #3293. Use SMBecho instead of
chkpath to keep a connection alive.
Jeremy.
2007-10-10 11:05:40 -05:00
Jeremy Allison
e4b3b70ef1 r11839: Info level 0x101 is really a protocol NT level.
Fix bug #3274 from Guenter Kukkukk <guenter.kukkukk@kukkukk.com>
Jeremy.
2007-10-10 11:05:29 -05:00
Gerald Carter
be31c2a105 r11770: BUG 2718: don't use qpathinfo_basic() call when remote server is Win9x or the do_cd() call will fail 2007-10-10 11:05:28 -05:00
Jeremy Allison
414303bc02 r11511: A classic "friday night check-in" :-). This moves much
of the Samba4 timezone handling code back into Samba3.
Gets rid of "kludge-gmt" and removes the effectiveness
of the parameter "time offset" (I can add this back
in very easily if needed) - it's no longer being
looked at. I'm hoping this will fix the problems people
have been having with DST transitions. I'll start comprehensive
testing tomorrow, but for now all modifications are done.
Splits time get/set functions into srv_XXX and cli_XXX
as they need to look at different timezone offsets.
Get rid of much of the "efficiency" cruft that was
added to Samba back in the day when the C library
timezone handling functions were slow.
Jeremy.
2007-10-10 11:05:19 -05:00
Gerald Carter
49b8d7d7f5 r10964: BUG 1051: store the directory path so we can send the full name in the unlink call (del tmp\foo) 2007-10-10 11:04:58 -05:00
Jeremy Allison
b242f27860 r9545: (Hopefully the last) fixes for DIR -> SMB_STRUCT_DIR.
Jeremy.
2007-10-10 11:01:12 -05:00
Tim Potter
985dbb47d9 r8572: Remove crufty #define NO_SYSLOG as it's not used at all anymore. 2007-10-10 11:00:11 -05:00
Gerald Carter
aa5de7d0b3 r8478: remove unused printmode command from smbclient (noticed by kalim@samba.org) 2007-10-10 11:00:06 -05:00
Gerald Carter
9e3e473632 r6685: smbclient fixes
* BUG 2680: copy files from an MSDFS win2k root share
* BUG 2688: re-implement support for the -P (--port) option
* support connecting to an 'msdfs proxy' share on a Samba server
2007-10-10 10:56:51 -05:00
Gerald Carter
97c68ec1e8 r6388: BUG 2626: ensure that the calling_name is set to something after parsing smb.conf (if not set via -n) 2007-10-10 10:56:39 -05:00
Jeremy Allison
644608ea7d r6348: Fix for bug #2605 reported by Daniel Patterson <Daniel_Patterson@national.com.au>.
Ensure smbclient doesn't perform commands if the "chdir" fails in a scripted set.
Jeremy.
2007-10-10 10:56:37 -05:00
Gerald Carter
40f573e202 r6291: BUG 2588: force smbclient messages to port 139 unless someone set the -p option 2007-10-10 10:56:35 -05:00
Herb Lewis
efea76ac71 r6225: get rid of warnings from my compiler about nested externs 2007-10-10 10:56:30 -05:00
Jeremy Allison
c69623072e r6120: Added "volume" command to smbclient that prints out the volume name and
serial number.
Jeremy.
2007-10-10 10:56:23 -05:00
Jeremy Allison
9d5ef800b6 r5979: Don't crash when talking to a Win98 server (bugid #2530 - not a fix
buy just prevent the crash).
Jeremy.
2007-10-10 10:56:14 -05:00
Gerald Carter
85be4c5df3 r5968: derrell's large file fix for libsmbclient (BUG 2505) 2007-10-10 10:56:13 -05:00
Jeremy Allison
7cb9618e5d r5835: Make smbclient obey the max protocol argument again.
Jeremy.
2007-10-10 10:56:04 -05:00
Gerald Carter
52c82b51ba r5578: get 'recurse; dir' working across multiple levels of dfs referrals
note that this does not handle the situation where the same \\server\share
is mounted mutliple times in the dfs tree since I store a single mount
path per struct cli_state *
2007-10-10 10:55:48 -05:00
Gerald Carter
d4443807bc r5577: get recurse; dir working across single level dfs referrals 2007-10-10 10:55:48 -05:00
Gerald Carter
d6a05ffd66 r5545: move cli_cm_XXX() connection handling code to clidfs and out of client.c; client.c still maintains a pointer to the first connection so the change is fairly reansparent to other smbclient functions such as -L and -M 2007-10-10 10:55:46 -05:00
Gerald Carter
5d2624c453 r5542: fix a few more msdfs bugs in smbclient against both smbd and 2k dfs root
shares.
2007-10-10 10:55:46 -05:00
Günther Deschner
3660b7e64d r5527: Allow own netbios name to be set in smbclient's session setup.
Guenther
2007-10-10 10:55:45 -05:00
Gerald Carter
53d6a5f9d1 r5520: fix last remaining dfs issues with smbclient.
* all the unix extension commands should work
* send the correct TRANS2_FINDFIRST format to 2k to
  get a listing from a msdfs root share (tested against
  smbd as well).
* mkdir, rmdir, etc... all seem ok.

I'm sure bugs will pop up so keep testing.

Last thing I plan on doing is to clean up the horrible
mess with connection management in smbclient and global
variables (so i can move the cli_cm_xx() routines to a
separate file).
2007-10-10 10:55:44 -05:00
Gerald Carter
6a9e4d6af1 r5519: fix msdfs support for [m]get and [m]put 2007-10-10 10:55:44 -05:00
Gerald Carter
e57fd2c5f0 r5518: Add initial msdfs support to smbclient. Currently I can only
cd up and down the tree and get directory listings.

Still have to figure out how to get a directory listing on a
2k dfs root.  Also have to work out some issues with relative paths
that cross dfs mount points.

We're protected from the new code paths when connecting to
a non-dfs root share ( the flag from the tcon&X is stored
in the struct cli_state* )
2007-10-10 10:55:44 -05:00
Gerald Carter
0449756309 r5495: * add in some code from Mike Nix <mnix@wanm.com.au> for the SMBsplopen
and SMBsplclose commands (BUG 2010)
* clarify some debug messages in smbspool (also from Mike)

my changes:

* start adding msdfs client routines
* enable smbclient to maintain multiple connections
* set the CAP_DFS flag for our internal clienht routines.

I actualy have a dfs referral working in do_cd() but that code
is too ugly to live so I'm not checking it in just yet.
Further work is to merge with vl's changes in trunk to support multiple
TIDs per cli_state *.
2007-10-10 10:55:43 -05:00
Jeremy Allison
88a89b3105 r4697: Fix for bug #2231 inspired by brad.ellis@its.monash.edu.au.
Remove double "\\" from findfirst.
Jeremy.
2007-10-10 10:53:51 -05:00
Jeremy Allison
620f2e608f r4088: Get medieval on our ass about malloc.... :-). Take control of all our allocation
functions so we can funnel through some well known functions. Should help greatly with
malloc checking.
HEAD patch to follow.
Jeremy.
2007-10-10 10:53:32 -05:00
Jeremy Allison
8e979772a6 r3931: Fix all "may be used uninitialized" and "shadow" warnings.
Jeremy.
2007-10-10 10:53:25 -05:00
Jeremy Allison
4d52bf7c8b r3714: Getfacl now seems to work on files and directories. Next do setfacl
and port to Samba4.
Jeremy.
2007-10-10 10:53:16 -05:00
Jeremy Allison
1bd3f13344 r3713: Implementation of get posix acls in UNIX extensions. Passes valgrind.
Need to add printout functions in client and set posix acl in server.
SteveF - take a look at this for the cifsfs client !
Once this is working and tested the next step is to write this up for
the UNIX extensions spec. documents.
Jeremy.
2007-10-10 10:53:16 -05:00