summaryrefslogtreecommitdiff
path: root/source3/smbd/server.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r24809: Consolidate the use of temporary talloc contexts.Volker Lendecke1-3/+0
This adds the two functions talloc_stackframe() and talloc_tos(). * When a new talloc stackframe is allocated with talloc_stackframe(), then * the TALLOC_CTX returned with talloc_tos() is reset to that new * frame. Whenever that stack frame is TALLOC_FREE()'ed, then the reverse * happens: The previous talloc_tos() is restored. * * This API is designed to be robust in the sense that if someone forgets to * TALLOC_FREE() a stackframe, then the next outer one correctly cleans up and * resets the talloc_tos(). The original motivation for this patch was to get rid of the sid_string_static & friends buffers. Explicitly passing talloc context everywhere clutters code too much for my taste, so an implicit talloc_tos() is introduced here. Many of these static buffers are replaced by a single static pointer. The intended use would thus be that low-level functions can rather freely push stuff to talloc_tos, the upper layers clean up by freeing the stackframe. The more of these stackframes are used and correctly freed the more exact the memory cleanup happens. This patch removes the main_loop_talloc_ctx, tmp_talloc_ctx and lp_talloc_ctx (did I forget any?) So, never do a tmp_ctx = talloc_init("foo"); anymore, instead, use tmp_ctx = talloc_stackframe() :-) Volker (This used to be commit 6585ea2cb7f417e14540495b9c7380fe9c8c717b)
2007-10-10r24702: Remove the old API pointersVolker Lendecke1-5/+0
(This used to be commit 17df313db42199e26d7d2044f6a1d845aacd1a90)
2007-10-10r24621: - deferr calling build_options();exit(0);Stefan Metzmacher1-5/+10
- use poptPrintUsage() to give the user more info metze (This used to be commit a95d9d1ef99d6a2f77a289f8d2011cae482821b1)
2007-10-10r24599: patch from Karolin Seeger <ks@sernet.de>:Stefan Metzmacher1-1/+4
smbd, nmbd and winbindd can be started with invalid options currently. The first patch attached would be a possible solution. It contains an exit if an invalid option has been used. The main problem is, that existing setups with wrong options or missing arguments in start scripts will break (which is the right behaviour from my point of view). metze (This used to be commit 8532e3182ab44d4ac84823e9798293f156192aaf)
2007-10-10r24029: merge from http://samba.org/~tridge/samba_3_2_ctdb/:Stefan Metzmacher1-5/+8
the claim_connection() must come after the sockets are open metze (This used to be commit 306846a14f554c55b57e9ce0ad324d5c81776330)
2007-10-10r23784: use the GPLv3 boilerplate as recommended by the FSF and the license textAndrew Tridgell1-2/+1
(This used to be commit b0132e94fc5fef936aa766fb99a306b3628e9f07)
2007-10-10r23783: Processing the UAS change message was causing problems on ppc64 LinuxAndrew Tridgell1-23/+0
systems. Rather than trying to fix this, it's much better just to remove the code, as it serves no purpose at all (the message that is generated is ignored by smbd). This sort of parsing should really be done by PIDL generated code. (This used to be commit 22e8404cef4961f7468a9f24e23024c827233b84)
2007-10-10r23779: Change from v2 or later to v3 or later.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 407e6e695b8366369b7c76af1ff76869b45347b3)
2007-10-10r23510: Tidy calls to smb_panic by removing trailing newlines. Print theJames Peach1-3/+3
failed expression in SMB_ASSERT. (This used to be commit 171dc060e2a576d724eed1ca65636bdafffd7713)
2007-10-10r23502: Restore exit-on-idle. Small refactoring for clarity. Exit ifJames Peach1-17/+26
we are idle and we timed out waiting for something to do. (This used to be commit b4ab1a0cd992cf9e966b8edb9796d1eae53db744)
2007-10-10r23410: Merge the core of the cluster code.Volker Lendecke1-0/+7
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-10r23272: Fix main event loop - reviewed by Volker.Jeremy Allison1-2/+4
Jeremy. (This used to be commit dfb4cb5d2bd6c50ad2ecfa729d76daccfc43925a)
2007-10-10r23241: In preparation for the cluster messaging import the parent smbd needs toVolker Lendecke1-5/+19
respond to events.c style events. (This used to be commit 476080df3ff19c3c4742928ff50293935e171f99)
2007-10-10r23204: Add MSG_SMB_BRL_VALIDATE. Tridge, this is a bit different from your bzrVolker Lendecke1-0/+2
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-10r23168: Move the lp_max_connections() into service.c.Volker Lendecke1-1/+1
(This used to be commit 4afe37d431b6eb475769a2057025da9aa8d1bb14)
2007-10-10r23167: Remove an unused parameterVolker Lendecke1-1/+1
(This used to be commit 3452a870d58cdddf03ddf6ee698bca8416e05cbf)
2007-10-10r23055: Rewrite messages.c to use auto-generated marshalling in the tdb. I'mVolker Lendecke1-1/+1
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-10r22954: More messaging_registerVolker Lendecke1-1/+1
(This used to be commit 9b8df24107ffe3016031e5257c5680689f061886)
2007-10-10r22942: Some message_register -> messaging_register conversionsVolker Lendecke1-34/+59
(This used to be commit 65335a420645202fc79c599a1177838ec19a4075)
2007-10-10r22908: All callers of message_init now also call messaging_init. Unify those.Volker Lendecke1-1/+1
(This used to be commit 330946ad2307ca34f0a8d068a0193fcb8a0d6036)
2007-10-10r22900: Convert profile/ to messaging_send_pid/messaging_registerVolker Lendecke1-1/+1
(This used to be commit edbeea520727f51568ccd8ffa802e06bd120794c)
2007-10-10r22868: Replace some message_send_pid calls with messaging_send_pid calls. MoreVolker Lendecke1-3/+5
tomorrow. (This used to be commit 74fa57ca5d7fa8eace72bbe948a08a0bca3cc4ca)
2007-10-10r22761: This introduces lib/conn_tdb.c with two main functions: ↵Volker Lendecke1-1/+1
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-10r22736: Start to merge the low-hanging fruit from the now 7000-line cluster ↵Volker Lendecke1-7/+7
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-10r22533: Use lib functions where we have themVolker Lendecke1-2/+3
(This used to be commit dc18ab2f3407234dc545d5133660f9f04e8e5b55)
2007-10-10r22495: Create wrapper to hide the details of obtaining a set of socketsJames Peach1-167/+2
to listen on. (This used to be commit 29a16b2acb8da604776d48c6a1e6163c9e868d12)
2007-10-10r22418: Support running under launchd. We abstract the method of obtainingJames Peach1-48/+127
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-10r22417: Refactor the various daemon run-mode options to make the semanticsJames Peach1-40/+49
of the various flags explicit. (This used to be commit 19c929c6330a50f278ac322ac5fcb83d03734ea2)
2007-10-10r22395: allow profiling level to be set on startupHerb Lewis1-0/+10
(This used to be commit f8f51e8648224af6645dbd0c2f2bffc678b83dac)
2007-10-10r21882: The server part of the code has to use an AUTH_NTLMSSP struct,Jeremy Allison1-0/+2
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-10r21871: Move deadtime processing into an idle event. While there, simplifyVolker Lendecke1-11/+29
conn_idle_all() a bit. Volker (This used to be commit 3fc00977a99932b226bdcbc43bbc0ede1bcec26f)
2007-10-10r21869: Move sending keepalives out of the main processing loop into idle event.Volker Lendecke1-0/+26
On the way, make lp_keepalive() a proper parameter. Volker (This used to be commit 9499fd9c803d030ce9827f8379c2e56d91bb786e)
2007-10-10r21784: Replace smb_register_idle_event() with event_add_timed(). This fixes ↵Volker Lendecke1-1/+1
winbind who did not run the idle events to drop ldap connections. Volker (This used to be commit af3308ce5a21220ff4c510de356dbaa6cf9ff997)
2007-10-10r21225: Couple of fixes from Martin Zielinski mz@seh.de,Jeremy Allison1-3/+2
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-10r21093: Remove the hash and dnotify backends. Disabling FAM for this ↵Volker Lendecke1-4/+0
checkin, I'm working on that right now. Volker (This used to be commit 01c9fb17281e99300b339d2cfc0acac7ca94843c)
2007-10-10r21090: Add some helper routinesVolker Lendecke1-0/+11
(This used to be commit 985dde8ed0a7e6da5adf9c55654a4fd362b22acb)
2007-10-10r21064: The core of this patch isVolker Lendecke1-14/+16
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-10r20966: Only attempt to reload the config file atfer the fork point if weJames Peach1-2/+6
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-10r20916: Add in the delete on close final fix - but only enabledJeremy Allison1-0/+13
with -DDEVELOPER. Jeremy. (This used to be commit 7f817067a70930ee3502ea3373173e0c23733253)
2007-10-10r20846: Before this gets out of control...Volker Lendecke1-0/+10
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-10r20131: get rid of a few no previous prototype warningsHerb Lewis1-1/+1
(This used to be commit e710a7d39a662a1a339f3f71c4b051fde1bb5a16)
2007-10-10r19626: Coalesce usage of DUMP_CORE. Fix formatting on chdir error messageJames Peach1-2/+0
in core dump path. (This used to be commit 9a51fba71c5fa7082c331e1a78a98638d9aa06cf)
2007-10-10r17836: Don't create zombies in the children, thanks to Jeremy!Volker Lendecke1-0/+4
Volker (This used to be commit c0767c08d01a429e1abf7205c14acec5e103ca91)
2007-10-10r17569: Make 'max smbd processes' more robust. Counting on the child to ↵Volker Lendecke1-24/+76
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-10r17568: Reformatting -- more than 100 cols is too much :-)Volker Lendecke1-3/+6
(This used to be commit 2a66abca02b5e95b66ab336f0d0e3977676d4540)
2007-10-10r16945: Sync trunk -> 3.0 for 3.0.24 code. Still needJeremy Allison1-6/+0
to do the upper layer directories but this is what everyone is waiting for.... Jeremy. (This used to be commit 9dafb7f48ca3e7af956b0a7d1720c2546fc4cfb8)
2007-10-10r15848: Introduce commandline options to set the remainder of the parameters inJames Peach1-4/+5
dynconfig.c. This is mainly useful for test harness scripts, hence the lack of short options. (This used to be commit bf3b71c84595608d71e0f15a6158adacb295518e)
2007-10-10r15283: Oh yeah. The build farm doesn't do much with head. OK, here is the ↵Paul Green1-0/+2
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-10r15133: in_server is not used anywhereVolker Lendecke1-3/+0
(This used to be commit c981bc7f31483e7821b9654eb30d665283aa07d5)
2007-10-10r15119: Initialize our global sam sid first, quite a lot of the other ↵Volker Lendecke1-11/+22
initialization routines further down depend on it. Fix bug 3696. Volker (This used to be commit 6c65cccc83aa7b726e23684f979f1488bed3f751)