IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
The default timeout for connections to CUPS servers is set
to 5 minutes in the CUPS libraries. The smbd hangs on startup
until the timeout is reached if the CUPS server is unreachable.
This parameter makes the timeout configurable. The default value
is set to 30 seconds.
Karolin
reconnect code to cope with rebooting a DC. This
replaces the code I asked Volker to revert.
The logic is pretty simple. It adds a new parameter,
"winbind reconnect delay", set to 30 seconds by
default, which determines how long to wait between
connection attempts.
To avoid overwhelming the box with DC-probe
forked children, the code now keeps track of
the DC probe child per winbindd_domain struct
and only starts a new one if the existing one
has died.
I also added a little logic to make sure the
dc probe child always sends a message whatever
the reason for exit so we will always reschedule
another connect attempt.
Also added documentation.
Jeremy.
(This used to be commit 8027197635)
Here is a patch to allow many subsystems to be re-initialized. The only
functional change I made was to remove the null context tracking, as the memory
allocated here is designed to be left for the complete lifetime of the program.
Freeing this early (when all smb contexts are destroyed) could crash other
users of talloc.
Jeremy.
(This used to be commit 8c630efd25)
"init logon delays hosts" takes a list of hosts names or addresses
or networks for which the initial SAMLOGON reply should be delayed
(so other DCs get preferred by XP workstations if there are any).
This option takes the same type of list as "hosts allow" does.
"init logon delay" allows one to configure the delay for the hosts
configured for delayed initial samlogon with "init logon delayed hosts".
The value is interpreted as milliseconds. The default value is 100.
This commit only introduces the parameters.
They will be activated in a subsequent commit.
Michael
(This used to be commit f7c1f85438)
It's a bit difficult to explain why
idmap config backend:FOO = rid
should work while
idmap config backend : FOO = rid
should not. And I doubt we will ever see domain names with whitespaces...
(This used to be commit 0207f99d3f)
This is needed as some options are uppercased internally in Samba, such as the idmap config option
Without this change it is not possible to set these options via net conf which lowercases options
(This used to be commit c10aad9f13)
This fixes the case where "include = registry" is set in the smb.conf text file
and *only* shares (no [global] settings) are present in the registry.
Michael, please check!
Thanks,
Volker
(This used to be commit 6c80362e29)
This fixes testparm printing "Error loading services." when there is only
the global section in registry and no other service definition.
Michael
(This used to be commit 28d1972200)
Set the iServiceIndex to "-1" for starup with either config
backend (originally only for text backend). Otherwise,
process_registry_shares() will fail.
Currently, the only user of lp_load_with_registry_shares() is testparm.
Michael
(This used to be commit 5e2b925367)
This is like lp_load(), except that it will load the
registry shares into the services aarray when registry
shares are activated.
Michael
(This used to be commit b387c614ba)
This completes bba04a8fba:
The reverted logic has to be put into the callers
lp_load() and lp_load_initial_only() of lp_load_ex(), too.
Silly bug.
Michael
(This used to be commit c1f300c76e)
This is only to be able to set everything properly for registry
before reading registry includes.
This fixes "make test" as non-root user in a directory, where
root-daemons have already created a messaging.tdb in the compiled
in lockdir...
Michael
(This used to be commit 1bb28bc1d8)
This is passed to the module init routines.
In case of the registry, this is the path of the
basekey in registry, that is to be used, defaulting
to KEY_SMBCONF (HKLM\software\samba\smbconf), when
NULL is given. This is the only case currently used.
In order to support other keys, registry initialization
for smbconf has to be changed to support different keys.
Michael
(This used to be commit 96434d9dc7)
..for consistency. Exception: the open/init function, where the smbconf_ctx
is created from the given talloc context.
Michael
(This used to be commit 304dba6cb2)
The former seqnum is hidden inside a struct smbconf_csn.
And the get_seqnum is united with a changed function that
stores the seqnum inside the given csn.
Michael
(This used to be commit 5b6b90900a)
Up to the globals had only been fully reset when init_globals() was called
for the first time. But a full restart is needed for use with
"config backend = registry". (And should be with "config file = ...", but
in this case the restart is outsourced to the daemons.) This left
some options (like e.g. "realm") set to values that were set in smb.conf
before the occurence of "config backend = registry".
Now this misbehaviour is fixed with this change.
Michael
(This used to be commit f12259d9c4)
This makes each entry in the parm table much more comprehensible
at first glance (to me). On the other hand, roughly 9 lines are
used instead of one for each entry which makes the overall list
less clearly laid out, one might argue. But we have 400+ lines
of parameter descriptions anyways...
Michael
(This used to be commit 869a17f1a9)
If you create a share on a Windows machine called foo$ then this share is
of the type STYPE_DISKTREE. So it is possible to administrate this kind of
share. Tested on Windows NT and 2003.
In samba we assume that if a share with a $ at the end must be of the type
STYPE_DISKTREE_HIDDEN. This is wrong, so we need a variable in the config
to define if the share should be hidden or not.
(This used to be commit a3da677bf0)
This replaces the original hand-written tdb code, now that the
linking dependencies have been significantly reduced.
Michael
(This used to be commit d08a3a1957)
Logging of the ldap libraries appears with a [LDAP] prefix
inside the samba logs. This is controlled by two new parameters:
* "ldap debug level" sets the debug level of the ldap libraries.
It is the bit-field as understood by the openldap server.
* "ldap debug threshold" is the samba debug level at which ldap
logging appears inside the samba logs.
This probably needs some configure tests since it makes
use of the LBER_OPT_LOG_PRINT_FN option to redirect the
debug output of the ldap libraries.
Michael
(This used to be commit 15c25990bd)
This adds a new config parameter "config backend" that can have
values "file" (default) and "registry". When lp_load() encounters
a "config backend = registry", then all config read up to that
point is discarded and globals are read from registry.
This is done in suche a way that as with "config file",
there is no way back to non-registry config during the
lifetime of a process: The file_list_changed mechanism
does not look at files anymore once config backend is
set to registry. This is modelled after the behaviour
of the "config file" option.
Note that only the global section is read by lp_load().
The shares are handled by the registry shares mechanism,
thus allowing for a smaller memory footprint since
share definitions are read on demand.
This new parameter is intended as a substitute of the
previously installed special semantics of "include = registry"
which allows for messed up mixed configurations.
This parameter (which has not yet been released) will
vanish next.
Michael
(This used to be commit 77b33cf34c)
This is a more general API that caches data with a LRU scheme. See
include/cache.h. No comments yet, I'm still working on it. But Jeremy has given
me a hint in one of his checkins that he would like to make use of this now.
The idea is that we get rid of all our silly little caches and merge them all
into one cache that we can then very easily trim, for example even with a
smbcontrol message if someone decides memory is tight. The main user is the
stat cache, this patch also converts the getwd cache. More caches to come.
(This used to be commit 7a911b3571)
Can someone look over this? To me it looks as if bufr was only made static to
save a malloc during an included smb.conf file. I think that's pretty much
pointless.
(This used to be commit 068e8de72c)
one horror (pstring_clean_name()) which will have to
remain until I've removed all pstrings from the client code.
Jeremy.
(This used to be commit 1ea3ac8014)
(128k). Add debug error messages so we can see why
writeX large is denied. Ensure we don't allow recvfile
writes on IPC$.
Jeremy.
(This used to be commit 6bf053a6a1)
The point is doing the following associations:
- non discardable state data (all TDB files that may need to be backed
up) go to statedir
- shared data (codepage stuff) go to codepagedir
The patch *does not change* the default location for these
directories. So, there is no behaviour change when applying it.
The main change is for samba developers who have to think when dealing
with files that previously pertained to libdir whether they:
- go in statedir
- go in codepagedir
- stay in libdir
(This used to be commit d6cdbfd875)
Hi!
Attached find a patch that I've wanted to check in for ages.
The whole area probably needs a major rewrite, but this is a
minimal patch that on a 32-bit box saves 1.5k per smbd per
defined share, twice as much on a 64-bit box.
Volker
From ebb80e664ecc49eb597a45cb57e1067fbae49e62 Mon Sep 17 00:00:00 2001
From: Volker Lendecke <vl@sernet.de>
Date: Wed, 31 Oct 2007 15:04:34 +0100
Subject: [PATCH] Change global->copymap from bool* to a bitmap
We right now have 401 parameters, so with bool being represented as a 64-bit
integer this saves about 3k of memory per smbd per share that is defined in
smb.conf.
(This used to be commit 94f2c35a68)
to zero). If non-zero, writeX calls greater than this
value will be left in the socket buffer for later handling
with recvfile (or userspace equivalent). Definition of
recvfile for your system is left as an exercise for
the reader (I'm working on getting splice working :-).
Jeremy.
(This used to be commit 11c03b75dd)
bugs in various places whilst doing this (places that assumed
BOOL == int). I also need to fix the Samba4 pidl generation
(next checkin).
Jeremy.
(This used to be commit f35a266b3c)
Control this by a new boolean smb.conf option "debug class" which is
by default set to "no" to keep the default debug header unchanged.
Michael
Note: You need to make clean for this patch.
(This used to be commit 066a46ba91)
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 6585ea2cb7)
if parsing of the boolean string was successful.
Also, initialize the local result variable
(although not strictly necessary anymore, now.)
(This used to be commit bf0daa74fa)
contains a correct representation of a boolean value (in the
understanding of loadparm.c).
Make set_boolean() catch passing NULL for the boolean target.
Michael
(This used to be commit d13eaa60f5)
be called with inverse == NULL.
Add a new function lp_parameter_is_canonical() to check whether a
parameter name is the canonical name (as apposed to an alias).
Michael
(This used to be commit 07dc0fecf5)
a parameter and value into the canonical paramter with the value
inverted if it was in invers boolean synonym.
Make net conf use this function when storing parameters.
Michael
(This used to be commit 3b762ab183)
Also simplify lp_canonicalize_parameter by making use of
the new function "is_synonym_of".
Michael
Note: If anything depends on the exact former output format of
show_parameter list, I would trigger the output of synonym information
by a boolean verbose switch (that could be passed to testparm
via the "-v" command line switch).
(This used to be commit fd2dbae825)
and produces the "canonical" (or main) name of the parameter (the one
synonym that does not have the flag FLAG_HIDE). The function also sets
a flag as to whether the synonym is a reverse boolean synonym.
Add some functions for the handling of string representations of boolean
values: return the canonical string representation of a bool, invert
a bool given as a string, canonicalize a bool given as a string.
Michael
(This used to be commit 113ac07199)
Talked to both Tridge and Jeremy about this, Tridge said that there is a
special error message persuading OS/2 to fall back to other methods.
The calls now checked in always return the error message we used to
return when "read bmpx = False" was set (the default): ERRSRV, ERRuseSTD.
If someone has a reproducable test case where this is really needed, we
can always dig it up from version control and convert it to the new API.
But that time without that silly parameter, and with a torture test case
for "make test" please :-)
Volker
(This used to be commit d941aae2df)
add in any cluster addresses. We need to response to these,
but not listen on them. This allows us to run nmbd on every
node in the cluster, and have all of them register with a
WINS server correctly
metze
(This used to be commit 98c57562c4)
not effective for the global section (snum < 0). This checkin
makes it effective for the global section, too.
This does not produce changes in the results of the present calls of
lp_next_parameter: Beside the new use in utils/net_conf.c (which is
hereby fixed), the only calls of lp_next_parameter are in web/swat.c,
where it is effectively always called with allparameters == 1.
Michael
(This used to be commit 56f82485ec)