1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-06 13:18:07 +03:00
Commit Graph

349 Commits

Author SHA1 Message Date
Jeremy Allison
ce02d0dfcb r23554: Fix bug #4711 by makeing cli_connect return an NTSTATUS.
Long overdue fix....
Jeremy.
(This used to be commit 073fdc5a58)
2007-10-10 12:23:28 -05:00
Jeremy Allison
86d628147c r23359: Fix bug #4537, fix from jens.nissen@gmx.net.
Jeremy.
(This used to be commit 6ea7127f8e)
2007-10-10 12:23:10 -05:00
Volker Lendecke
d3ed91d9e1 r23195: Add void *private_data to brl_forall
(This used to be commit c91b2bdc16)
2007-10-10 12:22:53 -05:00
Volker Lendecke
e8156439f2 r23183: Check in a change made by Tridge:
This replaces the internal explicit dev/ino file id representation by a
"struct file_id". This is necessary as cluster file systems and NFS
don't necessarily assign the same device number to the shared file
system. With this structure in place we can now easily add different
schemes to map a file to a unique 64-bit device node.

Jeremy, you might note that I did not change the external interface of
smb_share_modes.c.

Volker
(This used to be commit 9b10dbbd5d)
2007-10-10 12:22:52 -05:00
Volker Lendecke
ac3f08ddbe r23055: Rewrite messages.c to use auto-generated marshalling in the tdb. I'm
doing this because for the clustering the marshalling is needed in more
than one place, so I wanted a decent routine to marshall a message_rec
struct which was not there before.

Tridge, this seems about the same speed as it used to be before, the
librpc/ndr overhead in my tests was under the noise.

Volker
(This used to be commit eaefd00563)
2007-10-10 12:22:17 -05:00
Volker Lendecke
84758bd1f8 r22908: All callers of message_init now also call messaging_init. Unify those.
(This used to be commit 330946ad23)
2007-10-10 12:22:07 -05:00
Volker Lendecke
331041139f r22906: Some more message_send_pid
(This used to be commit 8abf9f3963)
2007-10-10 12:22:06 -05:00
Volker Lendecke
e6383f4762 r22736: Start to merge the low-hanging fruit from the now 7000-line cluster patch.
This changes "struct process_id" to "struct server_id", keeping both is
just too much hassle. No functional change (I hope ;-))

Volker
(This used to be commit 0ad4b1226c)
2007-10-10 12:21:52 -05:00
Stefan Metzmacher
bc2b6436d0 r22009: change TDB_DATA from char * to unsigned char *
and fix all compiler warnings in the users

metze
(This used to be commit 3a28443079)
2007-10-10 12:19:00 -05:00
Stefan Metzmacher
56ba447668 r22001: change prototype of dump_data(), so that it takes unsigned char * now,
which matches what samba4 has.

also fix all the callers to prevent compiler warnings

metze
(This used to be commit fa322f0cc9)
2007-10-10 12:18:59 -05:00
Stefan Metzmacher
f091c04392 r21965: fix compiler warning
metze
(This used to be commit cde58ee97f)
2007-10-10 12:18:53 -05:00
Jeremy Allison
679aeec546 r21963: Fix another uninitialized buffer used in test write - valgrind
fix.
Jeremy.
(This used to be commit 0119d2c183)
2007-10-10 12:18:53 -05:00
Jeremy Allison
16a029f7f3 r21948: Fix valgrind error in build farm samba3 smbtorture. We were
using an uninitialized buffer for read/write tests.
Jeremy.
(This used to be commit e27d094620)
2007-10-10 12:18:51 -05:00
Jeremy Allison
aab1dd4ddb r21755: Memory leak fixes from Zack Kirsch <zack.kirsch@isilon.com>.
Jeremy.
(This used to be commit 02d08ca0be)
2007-10-10 12:18:28 -05:00
Jeremy Allison
f41de9314b r21715: Fix torture utime code.
Jeremy.
(This used to be commit 10430bf75a)
2007-10-10 12:18:24 -05:00
Jeremy Allison
8e00e9d7a6 r21609: Fix memory leaks in error code paths (and one in winbindd_group.c).
Patch from Zack Kirsch <zack.kirsch@isilon.com>.
Jeremy.
(This used to be commit df07a662e3)
2007-10-10 12:18:16 -05:00
Volker Lendecke
29569b9146 r21116: Fix the build -- sorry!
(This used to be commit f4b073d8c8)
2007-10-10 12:17:39 -05:00
Volker Lendecke
3af5838096 r21090: Add some helper routines
(This used to be commit 985dde8ed0)
2007-10-10 12:17:35 -05:00
Volker Lendecke
caf8c6a76b r21064: The core of this patch is
void message_register(int msg_type,
                      void (*fn)(int msg_type, struct process_id pid,
-                                void *buf, size_t len))
+                                void *buf, size_t len,
+                                void *private_data),
+                     void *private_data)
 {
        struct dispatch_fns *dfn;

So this adds a (so far unused) private pointer that is passed from
message_register to the message handler. A prerequisite to implement a tiny
samba4-API compatible wrapper around our messaging system. That itself is
necessary for the Samba4 notify system.

Yes, I know, I could import the whole Samba4 messaging system, but I want to
do it step by step and I think getting notify in is more important in this
step.

Volker
(This used to be commit c8ae60ed65)
2007-10-10 12:17:32 -05:00
Volker Lendecke
bf219447a3 r20846: Before this gets out of control...
This add a struct event_context and infrastructure for fd events to smbd. This
is step zero to import lib/events.

Jeremy, I rely on you to watch the change in receive_message_or_smb()
closely. For the normal code path this should be the only relevant change. The
rest is either not yet used or is cosmetic.

Volker
(This used to be commit cd07f93a8a)
2007-10-10 12:17:13 -05:00
Günther Deschner
7f88a7c948 r20630: Fix some trivial memleaks.
Guenther
(This used to be commit 3bb94a0818)
2007-10-10 12:17:00 -05:00
Herb Lewis
55ed1d5945 r20261: merge 20260 from samba_3_0_24
clean up a bunch of no previous prototype warnings
(This used to be commit c60687db11)
2007-10-10 12:16:37 -05:00
Herb Lewis
ef4c2088c5 r20245: merge 20244 from samba_3_0_24
get rid of more nested extern declarations warnings
(This used to be commit e9df051f52)
2007-10-10 12:16:36 -05:00
Jeremy Allison
3645d6f1b2 r18796: Fix the build. Sorry.
Jeremy.
(This used to be commit 8b9e5f28c2)
2007-10-10 12:00:58 -05:00
Volker Lendecke
96c72e2f81 r18310: Add a little test for some gencache routines
Remove unused gencache_set_only
Use CONST_DISCARD instead of SMB_STRDUP

Volker
(This used to be commit 651e7e44e2)
2007-10-10 11:51:19 -05:00
Jelmer Vernooij
995205fc60 r18188: merge 3.0-libndr branch
(This used to be commit 1115745cae)
2007-10-10 11:43:56 -05:00
Stefan Metzmacher
eb536690e2 r18070: be more verbose when errors happen
metze
(This used to be commit 9d71a037b1)
2007-10-10 11:43:25 -05:00
Volker Lendecke
5d4a189d4e r17853: Fix an uninitialized variable (m_time2). Jeremy, please check.
Thanks,

Volker
(This used to be commit 389910b2d3)
2007-10-10 11:38:54 -05:00
Jeremy Allison
a64925ddff 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.
(This used to be commit 425280a1d2)
2007-10-10 11:38:48 -05:00
Jeremy Allison
aee6b5942a r17761: Handle times consistently across all client utils.
Fixes bugs reported in libsmbclient.
Jeremy.
(This used to be commit 42a417fb75)
2007-10-10 11:38:47 -05:00
Volker Lendecke
b29915d611 r17571: Change the return code of cli_session_setup from BOOL to NTSTATUS
Volker
(This used to be commit 94817a8ef5)
2007-10-10 11:38:39 -05:00
Volker Lendecke
ec56f62bd8 r17555: Cleanup
(This used to be commit 4199b5d226)
2007-10-10 11:38:39 -05:00
Volker Lendecke
03e3cd1d5a r17554: Cleanup
(This used to be commit 761cbd52f0)
2007-10-10 11:38:38 -05:00
Volker Lendecke
108009f268 r17470: This is the group mapping rewrite announced a few days ago. I'm afraid it's
more than 1000 lines of patch, but doing it in smaller pieces is hardly
possible.

Anybody interested please look over this. The patch is not really interesting,
just look at the new groupdb/mapping.c file.

Jerry, one entry for the 3.0.24 release notes: smbd will refuse to start if we
have overlapping mappings in group_mapping.tdb. With the old db a unix gid can
be mapped to two different SIDs. This will be refused with the new code.

Volker
(This used to be commit f0f0e893ca)
2007-10-10 11:38:36 -05:00
Volker Lendecke
76362d0d33 r17468: To minimize the diff later on, pre-commit some changes independently: Change
internal mapping.c functions to return NTSTATUS instead of BOOL.

Volker
(This used to be commit 4ebfc30a28)
2007-10-10 11:38:36 -05:00
Volker Lendecke
e1e62d8999 r17463: A bit of cleanup work:
Remove some unused code: pdb_find_alias is not used anymore, and nobody I
think has ever used the pdb_nop operations for group mapping. smbpasswd and
tdb use the default ones and ldap has its own.

Make the functions pdb_getgr* return NTSTATUS instead of BOOL. Nobody right
now really makes use of it, but it feels wrong to throw away information so
early.

Volker
(This used to be commit f9856f6490)
2007-10-10 11:38:36 -05:00
Volker Lendecke
21da07ba1f r17457: Add a test to do some operations on group mapping.
Volker
(This used to be commit 68db058fdf)
2007-10-10 11:38:35 -05:00
Volker Lendecke
ac9628de48 r17425: Add the multi-key wrapper. If it's necessary to add general blobs as keys,
this can trivially be added later.

Volker
(This used to be commit 6915adb978)
2007-10-10 11:38:33 -05:00
Volker Lendecke
467ec2a32b r17363: Some C++ warnings
(This used to be commit fd82f185a2)
2007-10-10 11:38:28 -05:00
Volker Lendecke
e7952e9c14 r17347: Some C++ warnings -- 271 left
(This used to be commit 641dac4f85)
2007-10-10 11:38:27 -05:00
Alexander Bokovoy
5fbe298b5a r17338: Add support for multiple shares test inspired by Samba 4 torture's --unclist option. Triggered by -b sharelist_file option.
Based on Peter Samogyi's work. I'm not sure what concept for fstring replacement is currently in place though (talloc-ed strings? or it was for pstring only?)
(This used to be commit c9f8fafad6)
2007-10-10 11:38:26 -05:00
Volker Lendecke
3785912b7d r17190: Remove a warning from "opi", a 64-bit machine
(This used to be commit 844c98eab4)
2007-10-10 11:38:18 -05:00
Volker Lendecke
6dfccad564 r16960: Some warnings from host "opi"
(This used to be commit 083ef11cc9)
2007-10-10 11:19:15 -05:00
Jeremy Allison
fbdcf2663b 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.
(This used to be commit 9dafb7f48c)
2007-10-10 11:19:14 -05:00
Jeremy Allison
799f8c75b9 r15729: Second part of Aleksey Fedoseev <fedoseev@ru.ibm.com> patch.
Jeremy.
(This used to be commit 5137006233)
2007-10-10 11:17:09 -05:00
Jeremy Allison
4aead7efa3 r15727: Fix msgtest - noticed by Aleksey Fedoseev <fedoseev@ru.ibm.com>.
Jeremy.
(This used to be commit 9f5c95c418)
2007-10-10 11:17:09 -05:00
Volker Lendecke
211d415d19 r15034: Attempt to make the build farm happy
(This used to be commit 8b3e87184a)
2007-10-10 11:15:58 -05:00
James Peach
4fa5559800 r14898: This change is an attempt to improve the quality of the information that
is produced when a process exits abnormally.

First, we coalesce the core dumping code so that we greatly improve our
odds of being able to produce a core file, even in the case of a memory
fault. I've removed duplicates of dump_core() and split it in two to
reduce the amount of work needed to actually do the dump.

Second, we refactor the exit_server code path to always log an explanation
and a stack trace. My goal is to always produce enough log information
for us to be able to explain any server exit, though there is a risk
that this could produce too much log information on a flaky network.

Finally, smbcontrol has gained a smbd fault injection operation to test
the changes above. This is only enabled for developer builds.
(This used to be commit 56bc02d644)
2007-10-10 11:15:53 -05:00
Jeremy Allison
894358a8f3 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.
(This used to be commit 1d710d06a2)
2007-10-10 11:10:59 -05:00
Jeremy Allison
c44de10a2b r13799: Make locktest debug a little easier to read.
Jeremy.
(This used to be commit 13de4d000e)
2007-10-10 11:10:54 -05:00