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

161 Commits

Author SHA1 Message Date
Andrew Bartlett
1d95b0afc3 debug: Set close-on-exec for the main log file FD
This does not change the properties of dup2() of the fd as STDERR, however this is closed
before we start smbd or winbindd as child processes.

This is needed otherwise the logfile remains open in the child process, and
logfile rotation can mean this old log remains on disk indefinatly.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=11100
Pair-programmed-with: Garming Sam <garming@catalyst.net.nz>
Signed-off-by: Garming Sam <garming@catalyst.net.nz>
Signed-off-by: Andrew Bartlett <abartlet@samba.org>

Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Mon Feb 16 11:42:47 CET 2015 on sn-devel-104
2015-02-16 11:42:47 +01:00
Volker Lendecke
8aa67651db lib: Simplify check_log_size
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2014-12-28 01:57:08 +01:00
Stefan Metzmacher
5f4c1542de lib/util: provide a dbgtext_va() function which takes va_list
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
2014-12-17 09:26:07 +01:00
Martin Schwenke
bcf298e7ec lib/util: Add RFC3339 timestamp support to timeval_str_buf()
Note that this can't be done more simply or portably with strftime(3)
since "%z" isn't portable.

Signed-off-by: Martin Schwenke <martin@meltin.net>
Pair-programmed-with: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Volker Lendecke <vl@samba.org>

Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Mon Oct 13 12:27:04 CEST 2014 on sn-devel-104
2014-10-13 12:27:04 +02:00
Martin Schwenke
e0a5c43bd0 debug: Standalone compile without includes.h
Compiling utilities with includes.h is confusing because includes.h
could come from source3, source4 or ctdb.  Utilities should be
independent of such things.

Add a minimal set of fined-grained includes that attempts to avoid the
catch-all samba_util.h.  A comment indicates what is used from
samba_util.h so that future clean-ups are easier.

Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Volker Lendecke <vl@samba.org>
2014-09-19 18:11:11 +02:00
Volker Lendecke
a7c243b62c lib: Make close_low_fd() independently linkable
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2014-08-01 22:11:46 +02:00
Volker Lendecke
4ac12fb2f7 debug: Use close_low_fd in reopen_logs_internal
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2014-08-01 22:11:46 +02:00
Volker Lendecke
e249e794ec debug: Avoid dependency on str_list_make
strtok_r just also does the job and is available in libc

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
0e448f8d35 debug: Fix blank line endings
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
8792de7a16 debug: Increase maximum header length
With function names it can become quite long

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
06a0b1c851 debug: In dbghdrclass, don't call strlen repeatedly
Also properly protect against header_str overflow

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
200d94e563 debug: Fix a typo
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
85c5551618 debug: Simplify debug_parse_levels
Just some minimal refactoring

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
610bb4a108 debug: Simplify Debug1() -- no va_args
All callers just have "%s" as format string now, so we don't need to
vasprintf anymore.

This could speed up DEBUG a bit, we don't do a separate copy and the
printf logic

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
138a65c12a debug: Remove an "else"
No else necessary, we just did a "goto done:"

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
b0221d58f9 debug: Remove two pointless assignments
"goto done:" jumps to that exact assignment :-)

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
1929b1fa20 debug: Only call Debug1 once in dbghdrclass
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
44c77e8032 debug: Move adding timeval and loglevel
The whole routine incrementally creates the hdr_string, do it for the
time string and the debuglevel as well

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
cff585b6e2 debug: slprintf->snprintf
snprintf does not need the -1 in sizeof(buf)-1

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
601b2b0453 debug: Use timeval_str_buf in dbghdrclass
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
15b0f57696 debug: Simplify dbghdrclass with an early return
No code change, visible with "git diff -w"

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
0753c1bec1 lib: Create time_basic.[ch]
Make the two functions that debug.c needs a subsystem of their own. The
goal is to put debug.c on a diet. Anybody who wants to use it should
not be forced to pull in half of Samba :-)

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:47 +02:00
Volker Lendecke
9026820e5c debug: Statically allocate format_bufr
Everybody needs this, so there's no point talloc'ing it. The side effect
is that it removes a dependency on smb_panic()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:46 +02:00
Volker Lendecke
dd4c019d9f debug: Fix debug_parse_params
The additional check this patch removes potentially drops some debuglevel
class settings. While not documented, it is possible to add a debug class
like for example "tdb:10" multiple times with multiple values. Later
settings overwrite earlier ones, but only if the overall number of
settings does not exceed the total number of available debug classes.

This patch changes our behaviour, but I can't imagine a situation where
someone relies on this check.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:46 +02:00
Volker Lendecke
6c9be497a3 debug: Make Debug1 static
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:46 +02:00
Volker Lendecke
3349c566a5 debug: Remove a dependency on charconv
util_str has:

        /* characters below 0x3F are guaranteed to not appear in
           non-initial position in multi-byte charsets */
        if ((c & 0xC0) == 0) {
                return strrchr(s, c);
        }

'/' is 0x2f, so there's no point in calling strrchr_m and thus pulling
in a whole lot of stuff

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:46 +02:00
Volker Lendecke
02a06ae617 debug: Factor out debug_parse_param()
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:46 +02:00
Volker Lendecke
9aee4ba478 debug: Move variables where they are used
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:46 +02:00
Volker Lendecke
d8cb678bb6 debug: Fix indentation in debug_parse_params
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2014-07-31 18:49:46 +02:00
Volker Lendecke
85a03c8844 debug: Remove thread-related code from debug.c
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>

Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Thu Jul 31 16:20:53 CEST 2014 on sn-devel-104
2014-07-31 16:20:53 +02:00
Michael Adam
86d68c9459 lib/util: remove outdated comment from debug.c
These variables do not exist any more.

Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
2014-07-30 13:33:56 +02:00
Stefan Metzmacher
baecc863de lib/util: add 'ldb' debug class
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Björn Jacke <bj@sernet.de>
2013-07-09 15:18:53 +02:00
Kai Blin
4b01099748 debug: Add debugclass for DNS server
Signed-off-by: Kai Blin <kai@samba.org>
Reviewed-By: Amitay Isaacs <amitay@gmail.com>
2013-05-16 21:40:08 +10:00
Gregor Beck
1ed22ba4b7 s3:smbd: add a scavenger process for disconnected durable handles
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>

Signed-off-by: Gregor Beck <gbeck@sernet.de>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
2013-04-18 13:15:13 +02:00
Tsukasa Hamano
16d725b4f5 Fix bug #9471 - SEGV when using second vfs module.
Don't use default_classname_table when we obviously shoud be using
classname_table.

Reviewed by: Jeremy Allison <jra@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>

Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Fri Dec  7 17:51:50 CET 2012 on sn-devel-104
2012-12-07 17:51:50 +01:00
Andrew Bartlett
c2094e3131 debug: Do not constantly rename logs when max log size = 0
In Samba4, the max log size parameter is not yet connected, so maxlog is 0

This means that we would, on receipt of a -HUP, have all child
processes attempt a rename.

Now we have the -HUP mean we reopen the logs unconditionally, and then
we see if the log is too large (samba3 mode) or simply proceed assuming
that someone else has renamed the logs for us.

Andrew Bartlett

Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Mon Jun 11 13:34:43 CEST 2012 on sn-devel-104
2012-06-11 13:34:43 +02:00
Jeremy Allison
50d4c96d66 Remove an unused variable.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Jun  1 03:03:12 CEST 2012 on sn-devel-104
2012-06-01 03:03:12 +02:00
Andrew Bartlett
bc66af50ff lib/util: Add a callback facility for debug messages
This will allow dlz_bind9 to put log messages somewhere useful, which
may make it easier to debug.

Andrew Bartlett
2012-03-08 10:14:05 +01:00
Andrew Bartlett
b07d504ca4 change low FDs are handled in Samba
We now only close fds 0, 1, 2 when we are a forked daemon, and take
care not to close a file descriptor that we might need for foreground
stdin monitoring.

This should fix stdout logging in the lsa and epmapper deamons (ie in
make test).

Andrew Bartlett
2012-03-04 10:14:34 +01:00
Stefan Metzmacher
ffb846ba7c lib/util/debug: with log level = 10 we should be more verbose
log level = 10 already impacts performance, so we can turn on
more details and print the pid, [e][u|g]id and class information.

So it implies "debug pid = yes", "debug uid = yes" and "debug class = yes".

This generates a lot more useful log files.

metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed Nov 16 12:25:02 CET 2011 on sn-devel-104
2011-11-16 12:25:01 +01:00
Andrew Bartlett
485898458a debug: log early messages to stdout, and keep it open
The --log-stdout option was compromised by the log file descriptors being
closed once the file process forked.

Andrew Bartlett

Signed-off-by: Andrew Tridgell <tridge@samba.org>
2011-07-20 09:17:09 +10:00
Andrew Bartlett
5db0cd55d4 lib/util/ Fix crash bug caused by gfree_debug()
The issue is that we should reset the debug_num_classes to 0 when we
un-initialise the debug system.

Andrew Bartlett
2011-05-13 18:50:23 +02:00
Andrew Tridgell
4a98d6ce96 debug: default debug to stderr
if setup_logging() hasn't been called then default to sending debug to
stderr

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-04-04 10:30:29 +10:00
Volker Lendecke
644222a1e3 debug: Restore the s3-style check in check_log_size()
This has caused me considerable grief.

Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Thu Mar 31 19:42:38 CEST 2011 on sn-devel-104
2011-03-31 19:42:38 +02:00
Andrew Tridgell
af31bf6bf5 debug: ignore debug_set_logfile() with a blank string
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>

Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Tue Mar 29 07:03:58 CEST 2011 on sn-devel-104
2011-03-29 07:03:58 +02:00
Andrew Tridgell
3560db3da3 debug: fixed a valgrind error
Thanks to Volker for spotting this one!

Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Fri Mar  4 03:09:52 CET 2011 on sn-devel-104
2011-03-04 03:09:52 +01:00
Andrew Bartlett
5f5ca913b7 lib/util: new merged debug system
This is the s3 debug system, with a number of changes to tidy it up
for common use.  The debug class system is simplified by the removal of the
ISSET table, the system no longer attempts to cope with assignment of
DEBUGLEVEL, and the full class table is always available (rather than
just DEBUGLEVEL_CLASS[DBCG_ALL]) from startup.  It is also no longer
confusingly described as a hack, but as the initial table.

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Tue Mar  1 04:32:12 CET 2011 on sn-devel-104
2011-03-01 04:32:12 +01:00
Andrew Bartlett
4acef317a0 lib/util move debug.[ch] out of the way
This will allow a modified version of the s3 debug system to be the
new common debug system.

Andrew Bartlett
2011-03-01 03:46:18 +01:00
Andrew Bartlett
58920aab02 lib/debug Add clarifying comments 2010-11-24 08:37:04 +01:00
Andrew Tridgell
cb9fba1ed3 debug: fixed default debug settings
this fixes -d in our command line tools (eg. samba-tool)

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>

Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Thu Nov  4 01:48:15 UTC 2010 on sn-devel-104
2010-11-04 01:48:15 +00:00