1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-27 14:04:05 +03:00

491 Commits

Author SHA1 Message Date
James Peach
b1ce226af8 r23510: Tidy calls to smb_panic by removing trailing newlines. Print the
failed expression in SMB_ASSERT.
(This used to be commit 171dc060e2a576d724eed1ca65636bdafffd7713)
2007-10-10 12:23:23 -05:00
James Peach
4a3e4db1cd r23502: Restore exit-on-idle. Small refactoring for clarity. Exit if
we are idle and we timed out waiting for something to do.
(This used to be commit b4ab1a0cd992cf9e966b8edb9796d1eae53db744)
2007-10-10 12:23:22 -05:00
Volker Lendecke
de565785f5 r23410: Merge the core of the cluster code.
I'm 100% certain I've forgotten to merge something, but the main code
should be in. It's mainly in dbwrap_ctdb.c, ctdbd_conn.c and
messages_ctdbd.c.

There should be no changes to the non-cluster case, it does survive make
test on my laptop.

It survives some very basic tests with ctdbd enables, I did not do the
full test suite for clusters yet.

Phew...

Volker
(This used to be commit 15553d6327a3aecdd2b0b94a3656d04bf4106323)
2007-10-10 12:23:14 -05:00
Jeremy Allison
1a13bb5112 r23272: Fix main event loop - reviewed by Volker.
Jeremy.
(This used to be commit dfb4cb5d2bd6c50ad2ecfa729d76daccfc43925a)
2007-10-10 12:23:01 -05:00
Volker Lendecke
9f3b3b3bd6 r23241: In preparation for the cluster messaging import the parent smbd needs to
respond to events.c style events.
(This used to be commit 476080df3ff19c3c4742928ff50293935e171f99)
2007-10-10 12:22:57 -05:00
Volker Lendecke
3f5742e20b r23204: Add MSG_SMB_BRL_VALIDATE. Tridge, this is a bit different from your bzr
branch, please check if it fulfils your needs.

Two changes: The validation is not done inside the brlock.c traverse_fn,
it's done as a separate routine.

Secondly, this patch does not call the checker routines in smbcontrol
directly but depends on a running smbd.
(This used to be commit 7e39d77c1f90d9025cab08918385d140e20ca25b)
2007-10-10 12:22:53 -05:00
Volker Lendecke
14e25f10d6 r23168: Move the lp_max_connections() into service.c.
(This used to be commit 4afe37d431b6eb475769a2057025da9aa8d1bb14)
2007-10-10 12:22:51 -05:00
Volker Lendecke
f3c477c631 r23167: Remove an unused parameter
(This used to be commit 3452a870d58cdddf03ddf6ee698bca8416e05cbf)
2007-10-10 12:22:51 -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 eaefd00563173dfabb7716c5695ac0a2f7139bb6)
2007-10-10 12:22:17 -05:00
Volker Lendecke
e95942ed84 r22954: More messaging_register
(This used to be commit 9b8df24107ffe3016031e5257c5680689f061886)
2007-10-10 12:22:11 -05:00
Volker Lendecke
81acb2d805 r22942: Some message_register -> messaging_register conversions
(This used to be commit 65335a420645202fc79c599a1177838ec19a4075)
2007-10-10 12:22:10 -05:00
Volker Lendecke
84758bd1f8 r22908: All callers of message_init now also call messaging_init. Unify those.
(This used to be commit 330946ad2307ca34f0a8d068a0193fcb8a0d6036)
2007-10-10 12:22:07 -05:00
Volker Lendecke
8f9369f2e6 r22900: Convert profile/ to messaging_send_pid/messaging_register
(This used to be commit edbeea520727f51568ccd8ffa802e06bd120794c)
2007-10-10 12:22:05 -05:00
Volker Lendecke
fad7dd8a60 r22868: Replace some message_send_pid calls with messaging_send_pid calls. More
tomorrow.
(This used to be commit 74fa57ca5d7fa8eace72bbe948a08a0bca3cc4ca)
2007-10-10 12:22:04 -05:00
Volker Lendecke
4aa44f7475 r22761: This introduces lib/conn_tdb.c with two main functions: connections_traverse
and connections_forall. This centralizes all the routines that did individual
tdb_open("connections.tdb") and direct tdb_traverse.

Volker
(This used to be commit e43e94cda1ad8876b3cb5d1129080b57fa6ec214)
2007-10-10 12:21:55 -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 0ad4b1226c9d91b72136310d3bbb640d2c5d67b8)
2007-10-10 12:21:52 -05:00
Volker Lendecke
322ca3b933 r22533: Use lib functions where we have them
(This used to be commit dc18ab2f3407234dc545d5133660f9f04e8e5b55)
2007-10-10 12:19:43 -05:00
James Peach
c620832983 r22495: Create wrapper to hide the details of obtaining a set of sockets
to listen on.
(This used to be commit 29a16b2acb8da604776d48c6a1e6163c9e868d12)
2007-10-10 12:19:39 -05:00
James Peach
44f5211c17 r22418: Support running under launchd. We abstract the method of obtaining
sockets to listen on a little, because in the launchd case these
are provided for us. We also add an idle timeout so that a daemon
can exit after a period of inactivity.
(This used to be commit fc8589a3371d396197fae508e563f814899c2beb)
2007-10-10 12:19:33 -05:00
James Peach
8a22b1f0ea r22417: Refactor the various daemon run-mode options to make the semantics
of the various flags explicit.
(This used to be commit 19c929c6330a50f278ac322ac5fcb83d03734ea2)
2007-10-10 12:19:33 -05:00
Herb Lewis
80576572cc r22395: allow profiling level to be set on startup
(This used to be commit f8f51e8648224af6645dbd0c2f2bffc678b83dac)
2007-10-10 12:19:32 -05:00
Jeremy Allison
296dcbac58 r21882: The server part of the code has to use an AUTH_NTLMSSP struct,
not just an NTLMSSP - grr. This complicates the re-use of
common client and server code but I think I've got it right.
Not turned on of valgrinded yet, but you can see it start
to take shape !
Jeremy.
(This used to be commit 60fc9c0aedf42dcd9df2ef9f1df07eaf3bca9bce)
2007-10-10 12:18:43 -05:00
Volker Lendecke
fe0b56ead1 r21871: Move deadtime processing into an idle event. While there, simplify
conn_idle_all() a bit.

Volker
(This used to be commit 3fc00977a99932b226bdcbc43bbc0ede1bcec26f)
2007-10-10 12:18:41 -05:00
Volker Lendecke
7c2bc9c070 r21869: Move sending keepalives out of the main processing loop into idle event.
On the way, make lp_keepalive() a proper parameter.

Volker
(This used to be commit 9499fd9c803d030ce9827f8379c2e56d91bb786e)
2007-10-10 12:18:41 -05:00
Volker Lendecke
0d91334fe7 r21784: Replace smb_register_idle_event() with event_add_timed(). This fixes winbind
who did not run the idle events to drop ldap connections.

Volker
(This used to be commit af3308ce5a21220ff4c510de356dbaa6cf9ff997)
2007-10-10 12:18:33 -05:00
Jeremy Allison
4901d7f10b r21225: Couple of fixes from Martin Zielinski mz@seh.de,
one typo, one to make sure that time initialization
is done before modules that depend on it (printer
initialization).
Jeremy.
(This used to be commit 6df32b4a6a9abd40e963c188b4c8769f15a0ab9b)
2007-10-10 12:17:48 -05:00
Volker Lendecke
9974656d3b r21093: Remove the hash and dnotify backends. Disabling FAM for this checkin, I'm
working on that right now.

Volker
(This used to be commit 01c9fb17281e99300b339d2cfc0acac7ca94843c)
2007-10-10 12:17:36 -05:00
Volker Lendecke
3af5838096 r21090: Add some helper routines
(This used to be commit 985dde8ed0a7e6da5adf9c55654a4fd362b22acb)
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 c8ae60ed65dcce9660ee39c75488f2838cf9a28b)
2007-10-10 12:17:32 -05:00
James Peach
23e227ac39 r20966: Only attempt to reload the config file atfer the fork point if we
are in daemon mode. If we are in inetd mode, there's really no point
in rechecking it so soon.
(This used to be commit 029d4bb5e3ea02a8a396adc3ca564a714bcdfdb8)
2007-10-10 12:17:22 -05:00
Jeremy Allison
aacd16e7c4 r20916: Add in the delete on close final fix - but only enabled
with -DDEVELOPER.
Jeremy.
(This used to be commit 7f817067a70930ee3502ea3373173e0c23733253)
2007-10-10 12:17:19 -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 cd07f93a8aecb24c056e33b1ad3447a41959810f)
2007-10-10 12:17:13 -05:00
Herb Lewis
6914b29daa r20131: get rid of a few no previous prototype warnings
(This used to be commit e710a7d39a662a1a339f3f71c4b051fde1bb5a16)
2007-10-10 12:16:26 -05:00
James Peach
9a02736348 r19626: Coalesce usage of DUMP_CORE. Fix formatting on chdir error message
in core dump path.
(This used to be commit 9a51fba71c5fa7082c331e1a78a98638d9aa06cf)
2007-10-10 12:15:42 -05:00
Volker Lendecke
47e29ebe09 r17836: Don't create zombies in the children, thanks to Jeremy!
Volker
(This used to be commit c0767c08d01a429e1abf7205c14acec5e103ca91)
2007-10-10 11:38:53 -05:00
Volker Lendecke
0be131725f r17569: Make 'max smbd processes' more robust. Counting on the child to decrement a
tdb entry is not the most reliable way to count children correctly.

This increments the number of children after a fork and decrements it upon
SIGCLD. I'm keeping a list of children just for consistency checks, so that we
at least get a debug level 0 message if something goes wrong.

Volker
(This used to be commit eb45de167d24d07a218307ec5a48c0029ec097c6)
2007-10-10 11:38:39 -05:00
Volker Lendecke
5615d53459 r17568: Reformatting -- more than 100 cols is too much :-)
(This used to be commit 2a66abca02b5e95b66ab336f0d0e3977676d4540)
2007-10-10 11:38:39 -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 9dafb7f48ca3e7af956b0a7d1720c2546fc4cfb8)
2007-10-10 11:19:14 -05:00
James Peach
90a6873b05 r15848: Introduce commandline options to set the remainder of the parameters in
dynconfig.c. This is mainly useful for test harness scripts, hence the
lack of short options.
(This used to be commit bf3b71c84595608d71e0f15a6158adacb295518e)
2007-10-10 11:17:11 -05:00
Paul Green
31693197be r15283: Oh yeah. The build farm doesn't do much with head. OK, here is the patch to SAMBA_3_0 to declare prototypes for the initialization functions. These are the same changes I just made to head. --paulg
(This used to be commit 17774387ad879b6a72dd1cf406326318add31b04)
2007-10-10 11:16:31 -05:00
Volker Lendecke
335637b2eb r15133: in_server is not used anywhere
(This used to be commit c981bc7f31483e7821b9654eb30d665283aa07d5)
2007-10-10 11:16:25 -05:00
Volker Lendecke
bdbd173e8c r15119: Initialize our global sam sid first, quite a lot of the other initialization
routines further down depend on it.

Fix bug 3696.

Volker
(This used to be commit 6c65cccc83aa7b726e23684f979f1488bed3f751)
2007-10-10 11:16:24 -05:00
Jeremy Allison
eecdc6c956 r15022: Fix core dumps on normal server exit.
Jeremy.
(This used to be commit 13c3abf03187f84874b5754b54de5d3fe2dea188)
2007-10-10 11:15:57 -05:00
Jeremy Allison
22dbd67708 r15018: Merge Volker's ipc/trans2/nttrans changes over
into 3.0. Also merge the new POSIX lock code - this
is not enabled unless -DDEVELOPER is defined.
This doesn't yet map onto underlying system POSIX
locks. Updates vfs to allow lock queries.
Jeremy.
(This used to be commit 08e52ead03304ff04229e1bfe544ff40e2564fc7)
2007-10-10 11:15:57 -05:00
Jeremy Allison
4ee43dbd47 r14954: Fix #3569 based on William Jojo's work. AIX also
has the linear posix locking issue which causes
CLEAR_IF_FIRST to cause performance problems.
As we know we're in a daemon architecture with
long-lived parent we can avoid this in the Samba
case. Add a comment explaining this.
Jeremy.
(This used to be commit 3cd5c3df0d1b98dfa90663973ab13b5d3dbf737e)
2007-10-10 11:15:55 -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 56bc02d64498eb3faf89f0c5452b9299daea8e95)
2007-10-10 11:15:53 -05:00
Jeremy Allison
ecc0c18889 r14847: Tell static checkers that exit_server() doesn't
return.
Jeremy.
(This used to be commit 9c5e26a56aaaf1143b43e61d208ddaeb96f2ffcb)
2007-10-10 11:15:50 -05:00
James Peach
40d0707827 r14668: Set the FILE_STATUS_OFFLINE bit by observing the events a DMAPI-based
HSM is interested in. Tested on both IRIX and SLES9.
(This used to be commit 514a767c57f8194547e5b708ad2573ab9a0719c6)
2007-10-10 11:15:42 -05:00
Stefan Metzmacher
250c02554e r14618: add --no-process-group to all server programms
to make the following possible:

timelimit 20000 bin/nmbd -F -S --no-process-group
timelimit 20000 bin/smbd -F -S --no-process-group

this is needed to 'make test' working without losing child processes

metze
(This used to be commit c3a9f30e2a12cc852c9fa3a7d161f5c6ee0694ce)
2007-10-10 11:15:39 -05:00
Gerald Carter
fb5362c069 r13571: Replace all calls to talloc_free() with thye TALLOC_FREE()
macro which sets the freed pointer to NULL.
(This used to be commit b65be8874a2efe5a4b167448960a4fcf6bd995e2)
2007-10-10 11:10:14 -05:00