summaryrefslogtreecommitdiff
path: root/source3/param/loadparm.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r13915: Fixed a very interesting class of realloc() bugs found by Coverity.Jeremy Allison1-2/+2
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 1d710d06a214f3f1740e80e0bffd6aab44aac2b0)
2007-10-10r13829: From the "It's not pretty but it works" categoryGerald Carter1-0/+3
* Finish prototype of the "add port command" implementation Format is "addportcommand portname deviceURI" * DeviceURI is either - socket://hostname:port/ - lpr://hostname/queue depending on what the client sent in the request (This used to be commit 6d74de7a676b71e83a3c3714743e6380c04e4425)
2007-10-10r13815: "Into the blind world let us now descend,"Gerald Carter1-1/+1
Began the poet, his face as pale as death. "I will go first, and you will follow me." --- Adding XcvDataPort() to the spoolss code for remotely add ports. The design is to allow an intuitive means of creating a new CUPS print queue from the Windows 2000/XP APW without hacks like specifying the deviceURI in the location field of the printer properties dialog. Also set 'default devmode = yes' as the new default since it causes no harm and only is executed when you have a NULL devmode anyways. (This used to be commit 123e478ce5b5f63a61d00197332b847e83722468)
2007-10-10r13794: If you are going to go, go big. That's what I always say.Gerald Carter1-2/+2
* disable winbind enum {users,groups} by default after further conversations with Volker. (This used to be commit d640d815405ce226c51577de5524daf63515d0a7)
2007-10-10r13772: More default changesGerald Carter1-2/+3
* winbind nested groups = yes * host msdfs = ye * msdfs root = yes (This used to be commit b5f01559e1f75c427e59646ee79e18433806213e)
2007-10-10r13736: Don't assume that printf can handle string arguments being NULL. TidyJames Peach1-14/+17
up typing and tighten error checking a little. (This used to be commit 37e12a196b1b1ee57b17a21226ba55d3aa6c69a5)
2007-10-10r13610: Patch from Bjoern JACKE <samba@j3e.de>. Don't default toJeremy Allison1-4/+6
/tmp if there is no path in the share, make it unavailable. All printer shares should have a path and IPC$ is already explicitly set to tmpdir(). Jeremy. (This used to be commit b1915a0591d9842b4c95f527363a807e8a756697)
2007-10-10r13571: Replace all calls to talloc_free() with thye TALLOC_FREE()Gerald Carter1-2/+2
macro which sets the freed pointer to NULL. (This used to be commit b65be8874a2efe5a4b167448960a4fcf6bd995e2)
2007-10-10r13513: Changing defaults:Gerald Carter1-16/+2
* enable privileges = yes * enable asu support = no Remove unused function after the tdbsam rewrite. (This used to be commit 5385a01ee19d9c7e00b4dd7a6ab3ec1d4b03b558)
2007-10-10r13460: by popular demand....Gerald Carter1-6/+5
* remove pdb_context data structure * set default group for DOMAIN_RID_GUEST user as RID 513 (just like Windows) * Allow RID 513 to resolve to always resolve to a name * Remove auto mapping of guest account primary group given the previous 2 changes (This used to be commit 7a2da5f0cc05c1920c664c9a690a23bdf854e285)
2007-10-10r13393: Do not initialize the lp_svcctl_list() value since it is handledGerald Carter1-2/+0
internally in services_db.c now. This prevents internal services from being listed twice (one internal and one external) when no 'svcctl list' parameter is explcitly set in smb.conf (This used to be commit 6c4ede6cee7e1d25a6357e959972e8d390c27fe3)
2007-10-10r13316: Let the carnage begin....Gerald Carter1-18/+697
Sync with trunk as off r13315 (This used to be commit 17e63ac4ed8325c0d44fe62b2442449f3298559f)
2007-10-10r13212: r12414@cabra: derrell | 2006-01-28 17:52:17 -0500Derrell Lipman1-4/+13
lp_load() could not be called multiple times to modify parameter settings based on reading from multiple configuration settings. Each time, it initialized all of the settings back to their defaults before reading the specified configuration file. This patch adds a parameter to lp_load() specifying whether the settings should be initialized. It does, however, still force the settings to be initialized the first time, even if the request was to not initialize them. (Not doing so could wreak havoc due to uninitialized values.) (This used to be commit f2a24de769d1b2266e576597c57a8e3b1e2a2b51)
2007-10-10r13027: Support file change notifications from FAM.James Peach1-0/+4
(This used to be commit 652b511ff24ce41c7745a0e00363e619e5027828)
2007-10-10r12735: After talking to Tridge and Jeremy... This needs to be made more genericVolker Lendecke1-4/+0
before it goes in. Volker (This used to be commit 2c3d5c029a31111e1fe84ddc13c1bfc183d8bfde)
2007-10-10r12721: GPFS 2.4 on Linux will contain some windows semantics, ie share ↵Volker Lendecke1-0/+4
modes and oplocks across the cluster. Adapt Samba to it. The gpfs API is called via libgpfs.so. This code is written with dlopen(), so that you can compile on a system with gpfs installed and later on run on systems without gpfs available. So to actually make Samba call gpfs share mode calls you need to compile with gpfs.h and libgpfs.so around and set 'gpfs share = yes' on the shares you export from GPFS. Volker (This used to be commit 2253b17a1a88555291b59d52c826c81c2b8f7e7f)
2007-10-10r12415: Forgot newlines.Günther Deschner1-1/+1
Guenther (This used to be commit c727a1a330e50b0919ff705d9ebc55c72d8fdee4)
2007-10-10r12414: Remove the unnecessary SMB_STRDUP in server_role_str() + reuse the roleGünther Deschner1-16/+23
translation elsewhere. Guenther (This used to be commit 6c4a6da3dc7cecce09890a0da7d97b9d1bb47827)
2007-10-10r12290: TypoVolker Lendecke1-1/+1
(This used to be commit de839cc1658b6394e153a1f027c29524b301625b)
2007-10-10r11999: Re-add "passdb expand explicit".Volker Lendecke1-0/+4
We came to the conclusion that changing the default is something that has to wait one or two more releases, but it will happen one way or the other. Volker (This used to be commit 30fcdf84d8943e630af78a96320607c42e4d15aa)
2007-10-10r11909: Implement 'reset on zero vc'. This kills other connections when a ↵Volker Lendecke1-0/+4
session setup comes in with the vc (virtual connection) field set to zero. This is done by Windows, probably you can tweak that by some registry key. This boolean option controls whether an incoming session setup should kill other connections coming from the same IP. This matches the default Windows 2003 behaviour. Setting this parameter to yes becomes necessary when you have a flaky network and windows decides to reconnect while the old connection still has files with share modes open. These files become inaccessible over the new connection. The client sends a zero VC on the new connection, and Windows 2003 kills all other connections coming from the same IP. This way the locked files are accessible again. Please be aware that enabling this option will kill connections behind a masquerading router. Volker (This used to be commit 5629ca16235f0aa21fea3afd9e414309e4e1374e)
2007-10-10r11739: As per Jeremy's request, add a panic action for developers. Now ↵Volker Lendecke1-0/+3
configure.in needs something along the lines of if [ $LOGNAME == "jht" ] then CFLAGS="$CFLAGS -DDEVELOPER" fi But that goes a bit far I think.... :-))) Volker (This used to be commit 99d76042e962405fcaeb974a55db563207e0f92a)
2007-10-10r11734: Remove unused variableVolker Lendecke1-1/+0
(This used to be commit 5b882acafbacce6246b8f729eb8e347039ee16bd)
2007-10-10r11579: syncing up perf counter code cfrom trunkGerald Carter1-3/+0
(This used to be commit 59c00924b67aa3d37a933731a56d03963ec7f1b5)
2007-10-10r11494: Finally fix #3192 - remember iDiskfreeCacheTime isJeremy Allison1-1/+1
an *integer*, not a pointer. Doh ! Jeremy. (This used to be commit f1e0c863637f11f5857663d1980ba7f40fce7357)
2007-10-10r11296: removing unused variable and ifdef'd out codeGerald Carter1-14/+0
(This used to be commit 88a33c4cf87ada17637579d9261471c219e88de0)
2007-10-10r11295: new service hashing code has assumign that the serviceGerald Carter1-12/+40
name stored in the array was normalized. This was causing records to not be deleted on a reload. As a result, I was getting the wrong path for various services. Seems to be ok after this change. Also converted canonicalize_servicename() to just use strupper_m() rather than doing the conversion itself. Jeremy, i think this should be ok but please check. also cleaned up some things in the hash service code and added debug messages for sanity purposes. (This used to be commit e0bf0581f0aaf1505f653f2101eed61352d03da8)
2007-10-10r11269: Ensure the new canonicalize_servicename() is mb safe.Jeremy Allison1-1/+1
MB service names may contain embedded ' ' characters. Jeremy. (This used to be commit 83d0cda858de5f40ab652e1f438808a3bfac0f81)
2007-10-10r11266: Speed up loading smb.conf for large numbers of share definitions. ↵Volker Lendecke1-26/+111
The problem was a O(n^2) loop: Whenever a service definition was found, we linearly searched the already loaded share definitions, the patch adds an internal tdb for this. For a smb.conf with 2000 shares this speeds up loading by about a factor of 50. Might be a fix for bug #1117. Thanks to Michael Adam <ma@sernet.de>, Volker (This used to be commit d07343e0c4022d753f381d368fc0f03972a070f3)
2007-10-10r11190: Fix enhancement request #3192.Jeremy Allison1-4/+9
This does 2 things. 1). Makes dfree command a per-share parameter (it should be anyway IMHO). 2). Adds a "dfree cache time" parameter in seconds that specifies how long a dfree command output should be cached for. Default is zero (no caching). Jeremy. (This used to be commit 49ef8b88a3e12883148eb28d8e86fb07dbc3d12d)
2007-10-10r11169: removing duplicate 'map read only' entryGerald Carter1-1/+0
(This used to be commit 0e60813ed0d5c56c44a371d84275d1944bade770)
2007-10-10r10979: After discussions on IRC about profile shares,Jeremy Allison1-2/+19
added new parameter : map readonly = [yes|no|permissions] If yes: map inverse of user "w" bit to mean readonly. If no: never set DOS readonly bit. If permissions: check file permissions for user and set readonly bit if the current user cannot write. If store dos attributes is set to yes then this parameter is ignored. Jeremy. (This used to be commit da4238d18c7a57d1264db8517fb027a10a11baed)
2007-10-10r10911: part of #2861: add rename support for usrmgr.exe when using tdbsamJim McDonough1-0/+3
This gets it working before replacing tdb with the samba4 version. (This used to be commit 8210b0503a050e12ee1b4335fa6e50d10ad06577)
2007-10-10r10781: merging eventlog and svcctl code from trunkGerald Carter1-36/+1
(This used to be commit f10aa9fb84bfac4f1a22b74d63999668700ffaac)
2007-10-10r10656: BIG merge from trunk. Features not copied overGerald Carter1-13/+26
* \PIPE\unixinfo * winbindd's {group,alias}membership new functions * winbindd's lookupsids() functionality * swat (trunk changes to be reverted as per discussion with Deryck) (This used to be commit 939c3cb5d78e3a2236209b296aa8aba8bdce32d3)
2007-10-10r10371: Adding iPrint printing backend written by Joel J. Smith @ Novell.Jeremy Allison1-0/+6
Jeremy. (This used to be commit 155dc2d52a971bfb8d7565c06f3efc637e130b11)
2007-10-10r9780: Clean up a bunch of compiler warnings.James Peach1-3/+3
(This used to be commit 623d2e69319ffead31a780a4d6156dae45f386d7)
2007-10-10r8716: adding 'username map script' which if defined takes precendence overGerald Carter1-0/+3
the username map file. (This used to be commit 46f2897fdc1f9308f2cc15834c8b039c17c34707)
2007-10-10r8615: Added "acl group control". Defaults to off. Docs to follow.Jeremy Allison1-0/+4
Jeremy. (This used to be commit f7b169ed57de81229c3b9089a05f4e73ea39010c)
2007-10-10r8454: Fix Bug #2502Günther Deschner1-5/+0
Removing deprecated lp_min_password_length (the same functionality is provided by the account policy). Note that we now allow to set passwords less then 5 chars (if the admins decides to do so by setting the account policy). Thanks to Daniel Beschorner <db@unit-netz.de> Guenther (This used to be commit fd91378925f7e3541df4f31bd461dabc1da523a9)
2007-10-10r8145: When inventing a new parameter for SFU-support, be aware of Volker'sGünther Deschner1-4/+4
upcoming changes for "unixinfo"-pipe. Therefor (after speaking with Volker) replace "winbind sfu support" with the list-parameter "winbind nss info" which defaults to "template". For SFU-support set it to "winbind nss info = template sfu". Note that nss_info_use() is just a dummy function at the moment. Guenther (This used to be commit 91596330ea3c4ba0fb9ddc52ad9d4a7c8e5b2d3f)
2007-10-10r8144: remove unused parameter leftover.Günther Deschner1-1/+0
Guenther (This used to be commit e79e384eb307c6bbe05e07a87dcc6af42a0c0a32)
2007-10-10r7994: This adds support in Winbindd's "security = ads"-mode to retrieve the ↵Günther Deschner1-0/+4
POSIX homedirectory and the loginshell from Active Directory's "Services for Unix". Enable it with: winbind sfu support = yes User-Accounts without SFU-Unix-Attributes will be assigned template-based Shells and Homedirs as before. Note that it doesn't matter which version of Services for Unix you use (2.0, 2.2, 3.0 or 3.5). Samba should detect the correct attributes (msSFULoginShell, msSFU30LoginShell, etc.) automatically. If you also want to share the same uid/gid-space as SFU then also use PADL's ad-idmap-Plugin: idmap backend = ad When using the idmap-plugin only those accounts will appear in Name Service Switch that have those UNIX-attributes which avoids potential uid/gid-space clashes between SFU-ids and automatically assigned idmap-ids. Guenther (This used to be commit 28b59699425b1c954d191fc0e3bd357e4a4e4cd8)
2007-10-10r7985: Add "acl map full control", true by default, to allow people to changeJeremy Allison1-0/+4
mapping of rwx to full control or not. Requested feature at SambaXP. Jeremy. (This used to be commit c870579f4cd91dc9e030134dd367109aed3e3469)
2007-10-10r7963: Add aio support to 3.0.Jeremy Allison1-0/+12
Jeremy. (This used to be commit 1de27da47051af08790317f5b48b02719d6b9934)
2007-10-10r7882: Looks like a large patch - but what it actually does is make SambaJeremy Allison1-23/+23
safe for using our headers and linking with C++ modules. Stops us from using C++ reserved keywords in our code. Jeremy (This used to be commit 9506b8e145982b1160a2f0aee5c9b7a54980940a)
2007-10-10r7842: With the patch I sent Steve yesterday this gives us complete POSIX ↵Jeremy Allison1-0/+26
pathnames. ie. files containing : and \ can be accessed from Linux. Jeremy. (This used to be commit e9b8d23d6138d909a65ea70b2e801881e8333b38)
2007-10-10r7610: can successfully stop and start the 'spooler' service by setting the ↵Gerald Carter1-1/+27
state for the 'disable spoolss' parameter in memory for an individual smbd (This used to be commit f19c10d0c3e7701066b765c712df0636e914bf7e)
2007-10-10r7529: Apply some const, remove unused variable.Günther Deschner1-4/+3
Guenther (This used to be commit bc419472e295945559cf83f6ed9febff29adcfc1)
2007-10-10r7511: Add three new command line switches to testparm:Lars Müller1-3/+101
--show-all-parameters Enumerates all available parameters, grouped in to sections [local] and [global] by the class of the parameter. Each line is formated name=type[,enum values],flags --parameter-name Display the setting of the named parameter. The global section is assumed if no other is set with --section-name --section-name Limit the view of testparm to the named section. Use 'global' to only view the settings of the global section. This fixes bug #2767. Lars (This used to be commit a1b82624d739b1066c356dd4b689233f3c36814e)