summaryrefslogtreecommitdiff
path: root/source3/utils
AgeCommit message (Collapse)AuthorFilesLines
2010-03-10s3: Fix a long-standing problem with recycled PIDsVolker Lendecke3-0/+164
When a samba server process dies hard, it has no chance to clean up its entries in locking.tdb, brlock.tdb, connections.tdb and sessionid.tdb. For locking.tdb and brlock.tdb Samba is robust by checking every time we read an entry from the database if the corresponding process still exists. If it does not exist anymore, the entry is deleted. This is not 100% failsafe though: On systems with a limited PID space there is a non-zero chance that between the smbd's death and the fresh access, the PID is recycled by another long-running process. This renders all files that had been locked by the killed smbd potentially unusable until the new process also dies. This patch is supposed to fix the problem the following way: Every process ID in every database is augmented by a random 64-bit number that is stored in a serverid.tdb. Whenever we need to check if a process still exists we know its PID and the 64-bit number. We look up the PID in serverid.tdb and compare the 64-bit number. If it's the same, the process still is a valid smbd holding the lock. If it is different, a new smbd has taken over. I believe this is safe against an smbd that has died hard and the PID has been taken over by a non-samba process. This process would not have registered itself with a fresh 64-bit number in serverid.tdb, so the old one still exists in serverid.tdb. We protect against this case by the parent smbd taking care of deregistering PIDs from serverid.tdb and the fact that serverid.tdb is CLEAR_IF_FIRST. CLEAR_IF_FIRST does not work in a cluster, so the automatic cleanup does not work when all smbds are restarted. For this, "net serverid wipe" has to be run before smbd starts up. As a convenience, "net serverid wipedbs" also cleans up sessionid.tdb and connections.tdb. While there, this also cleans up overloading connections.tdb with all the process entries just for messaging_send_all(). Volker
2010-03-06s3: Fix the build of net_afs.c with --fake-kaserver=yes, bug 7216Volker Lendecke1-1/+1
Thanks to Geza Gemes <geza@kzsdabas.hu> for filing this bug
2010-03-05s3: Make "smbcontrol xx debuglevel" print the correct cluster pidVolker Lendecke1-2/+6
2010-03-05s3-net: fix net after spoolss_EnumPrinterDataEx IDL change.Günther Deschner1-9/+2
Guenther
2010-03-05s3-net: fix net after spoolss_SetPrinterData{Ex} IDL change.Günther Deschner1-24/+6
Guenther
2010-03-03Fix typo in comments.Karolin Seeger1-1/+1
2010-03-03s3:net: add a command "net registry setsd_sdd"Michael Adam1-0/+88
This permits to set the security descriptor of a registry key from the unix command line. Michael
2010-03-03s3:net: fix some i18n messages in net_registry_getsd_internal().Michael Adam1-2/+3
Michael
2010-03-03s3:net: add i18n macro _() to one messageMichael Adam1-1/+1
Michael
2010-03-03s3:net: add new subcommand "net registry getsd_sddl" to print secdesc in ↵Michael Adam1-0/+40
sddl format Michael
2010-03-03s3:net: refactor getting of secdesc out of net_registry_getsd()Michael Adam1-14/+42
New net_registry_getsd_internal does the work(), net_registry_getsd() just prints the result. This in preparation to add support for other output formats than the currently used display_sec_desc(). Michael
2010-03-03s3:smbcacls: add switch "--sddl" to output acls as sddl encoded stringsMichael Adam1-1/+9
2010-03-02s3: net_share.c: fix argc handlingHolger Hetterich1-6/+3
The "net share" command was no longer possible because it enters the net_share function with argc == 0.
2010-03-01s3: Abstract access to sessionid.tdb, similar to conn_tdb.cVolker Lendecke2-77/+36
2010-03-01s3: Add connections_forall_read()Volker Lendecke3-9/+6
In a cluster, this makes a large difference: For r/w traverse, we have to do a fetch_locked on every record which for most users of connections_forall is just overkill.
2010-02-23s3 move the sitename cache in its own fileSimo Sorce1-0/+1
2010-02-23s3: Consolidate some pid_to_procid() calls to procid_self()Volker Lendecke1-5/+5
2010-02-23s3: Consolidate server_id_self into the equivalent procid_self()Volker Lendecke4-4/+4
2010-02-15s3: eventlogadm.c: add -s option to use alternative config file.Holger Hetterich1-4/+15
Update the manpage accordingly.
2010-02-14s3: last part of TYPESAFE_QSORT() conversionAndrew Tridgell2-2/+2
convert smbcacls, sharesec and web/
2010-02-13s3: Fix Coverity ID 629: DEADCODEVolker Lendecke1-3/+0
We have already returned if (argc < 1) above
2010-02-12s3:make "net conf addshare" atomic by wrapping all writes in one transactionMichael Adam1-6/+36
Michael
2010-02-12s3:dbwrap: If "-n" is given to dbwrap_torture, open db with CLEAR_IF_FIRSTVolker Lendecke1-0/+4
2010-02-12s3: Implement global locks in a g_lock tdbVolker Lendecke3-0/+223
This is the basis to implement global locks in ctdb without depending on a shared file system. The initial goal is to make ctdb persistent transactions deterministic without too many timeouts.
2010-02-08s3-net: fix net ads dns usage calls.Günther Deschner1-3/+8
Bjoern, please check. Guenther
2010-01-28Fix bug #7069 - smbget does not return an error status after some errorsJeremy Allison1-38/+45
A combination patch from Johannes Poehlmann <johannes@lst.de> and Jeremy. Fix the return codes from smb_download_file() and smb_download_dir(). Jeremy.
2010-01-24s3: Add --use-ccache to netVolker Lendecke4-0/+9
2010-01-24s3: Fix a bug in net's use of poptVolker Lendecke1-1/+1
In order to add --use-ccache to net, I added another "bool opt_ccache;" to struct net_context. popt did not like this, it took a while to figure out why. Popt has the lines /* XXX Check alignment, may fail on funky platforms. */ if (arg == NULL || (((unsigned long)arg) & (sizeof(*arg)-1))) return POPT_ERROR_NULLARG; The "bool opt_ccache;" was not aligned anymore...
2010-01-23s3: Use global_sid_Builtin in net_groupmap_membershipsVolker Lendecke1-4/+3
2010-01-19s3 net: Fix compile warningsKai Blin24-380/+676
2010-01-19s3 net/i18n: Use only one spelling for "Usage:"Kai Blin11-57/+57
2010-01-19s3 net: Fix compile error with WITH_DNS_UPDATESKai Blin1-2/+2
bd3c922e2bc1a163efc1d8c9cb59578bebb79616 introduced a compile-time error when building with WITH_DNS_UPDATES.
2010-01-18s3/net: split up some printable stings to ease i18nBjörn Jacke25-344/+347
If we put strings like "Usage:" into separate _() macros and not the whole "Usage:..." string we can cover much more messages by only one single translation. The drawback is that the message in the sources looks less pretty.
2010-01-17s3: Fix the format string for smbcontrol pool-usageVolker Lendecke1-1/+1
With the dot I have seen printf to not print anything
2010-01-14Fix bug #7036 - net rpc getsid fails in hardened windows environments.Jeremy Allison1-1/+7
Fix suggested by Dave.Daugherty@Centrify.com.
2010-01-10s3: Fix some nonempty blank linesVolker Lendecke1-36/+36
2010-01-10s3: Replace most calls to sid_append_rid() by sid_compose()Volker Lendecke3-12/+7
2010-01-05s3 net: Add a few missing gettext calls.Kai Blin2-6/+6
Many many thanks to Adi Roiban from #ubuntu-translators for helping me find and fix my problems with the translations.
2010-01-03s3: Convert cli_tdis to the async APIVolker Lendecke1-2/+8
2009-12-23s3-net: use generated krb5.conf in 'net ads testjoin'Günther Deschner1-0/+4
Guenther
2009-12-22s3:ntlmssp: only include ntlmssp.h where actually neededAndrew Bartlett1-0/+1
Andrew Bartlett
2009-12-22s3:ntlmssp: remove the typedef NTLMSSP_STATEAndrew Bartlett1-4/+4
Andrew Bartlett
2009-12-16s3-pdbedit: allow to call "pdbedit -N description -u user" without ↵Günther Deschner1-2/+4
specifiyng "-r". Guenther
2009-12-07s3: fix net and rpcclient after setprinterdataex changes.Günther Deschner1-2/+11
Guenther
2009-12-01s3:add split_tokens, a cmdline tool to test next_token_talloc()Michael Adam1-0/+78
Michael
2009-11-30Fix bug 6546: Avoid accessing buf[-1] if NUL byte comes from fgetsVolker Lendecke3-3/+9
2009-11-29s3: Move directory_exist_stat to testparm.c, it only looks at the modeVolker Lendecke1-0/+21
2009-11-29s3: "net_conf_addshare" only looks at the modeVolker Lendecke1-1/+1
2009-11-29s3: "net_usershare_add" only looks at the mode, device and inodeVolker Lendecke1-1/+1
2009-11-29s3: "net_usershare_add" only looks at the device and inodeVolker Lendecke1-2/+1