summaryrefslogtreecommitdiffstats
path: root/source3
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove popt/iniparser from .clang_completeJeremy Allison2014-08-141-2/+0
| | | | | Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
* Replace all uses of iniparser with tiniparser.Jeremy Allison2014-08-142-6/+6
| | | | | Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
* Fixed a memory leak in cli_set_mntpoint().Har Gagan Sahai2014-08-131-2/+4
| | | | | | | | | | | | | | Fixes bug #10759 - Memory leak in libsmbclient in cli_set_mntpoint function https://bugzilla.samba.org/show_bug.cgi?id=10759 Signed-off-by: Har Gagan Sahai <SHarGagan@novell.com> Reviewed-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Wed Aug 13 04:36:50 CEST 2014 on sn-devel-104
* messaging3: Include messages_dgm.h only in messages.cVolker Lendecke2014-08-122-1/+1
| | | | | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Tue Aug 12 02:21:32 CEST 2014 on sn-devel-104
* messaging3: Move messaging_hdr handling to messages.c.Volker Lendecke2014-08-113-68/+51
| | | | | | | | This makes messages_dgm a simple byte-transport across processes that knows almost nothing about server_id etc. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Only store the pid in messaging_dgm_contextVolker Lendecke2014-08-111-6/+4
| | | | | | | That's all we need here Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Save 48 bytes .textVolker Lendecke2014-08-111-5/+5
|
* messaging3: Remove one-context protection from messages.cVolker Lendecke2014-08-111-22/+0
| | | | | | | messages_dgm.c takes care of it. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Protect messaging_dgm against multiple contextsVolker Lendecke2014-08-111-0/+14
| | | | | | | We can't rely on posix locking within a process Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Add messages_dgm.hVolker Lendecke2014-08-113-24/+48
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Pass on msg_type unmaskedVolker Lendecke2014-08-111-1/+1
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: I don't see 2 versions running concurrently...Volker Lendecke2014-08-111-2/+0
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Avoid "enum messaging_type" in messages_dgmVolker Lendecke2014-08-111-2/+1
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Pass dir_owner to messaging_dgm_init()Volker Lendecke2014-08-113-7/+9
|
* messaging3: Pass cache_dir to messaging_dgm_init()Volker Lendecke2014-08-113-8/+6
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Move [un]become_root() calls out of messaging_dgm_send()Volker Lendecke2014-08-112-2/+3
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Move sec_init() call out of messaging_dgm_init()Volker Lendecke2014-08-112-2/+2
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Directly refer to messaging_dgm in messages.cVolker Lendecke2014-08-113-64/+36
| | | | | | | | | | | | | This removes the messaging_backend abstraction layer from messages_dgm.c. That layer was introduced for ctdb and is still used there. But as the messaging_dgm interface is very slim anyway, I don't think directly calling it is too bad. Why this commit? It is another step towards making messages_dgm independent of messages.[ch], thus it might become usable in other contexts like ctdb and source4 Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* smbd: Use messaging_cleanup()Volker Lendecke2014-08-111-2/+2
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Add messaging_cleanupVolker Lendecke2014-08-113-7/+18
| | | | | | | | Rename smbcontrol's dgm-cleanup to msg-cleanup. We haven't published this UI yet :-) Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging_dgm: Remove unused "messaging_context"Volker Lendecke2014-08-113-8/+4
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Explicitly pass server_id to messaging_dgm_initVolker Lendecke2014-08-113-5/+8
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Explicitly pass tevent_context to messaging_dgm_initVolker Lendecke2014-08-113-4/+6
| | | | | | | One dependency less on messaging_context() Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging_dgm: Receive through a cb functionVolker Lendecke2014-08-113-15/+55
| | | | | | | This avoids calling messaging_dispatch_rec directly from messaging_dgm.c Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* smbd: Add debugs to smbXsrv_open.cVolker Lendecke2014-08-111-0/+7
| | | | | | | | | | | At one point it was pretty difficult to track a failure. Add more DEBUG to avoid gdb Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Mon Aug 11 23:32:45 CEST 2014 on sn-devel-104
* smbd: Pass down "lease" to open_file_ntcreateVolker Lendecke2014-08-111-0/+2
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* smbd: Pass down "lease" to create_file_unixpathVolker Lendecke2014-08-111-2/+3
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* vfs3: Pass "lease" through SMB_VFS_CREATE_FILEVolker Lendecke2014-08-1117-8/+54
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* messaging3: Fix an error path memleakVolker Lendecke2014-08-111-0/+1
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* param: avoid dereferencing null lp_ctxDavid Disseldorp2014-08-111-1/+3
| | | | | | | | | | | | | process_smbconf_service() calls lp_do_section() with a NULL userdata (struct loadparm_context *) argument. Since 0864d4945, lp_do_section() unconditionally attempts to set the lp_ctx->bInGlobalSection variable, resulting in a segfault. Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Michael Adam <obnox@samba.org> Autobuild-User(master): David Disseldorp <ddiss@samba.org> Autobuild-Date(master): Mon Aug 11 21:00:15 CEST 2014 on sn-devel-104
* param: remove unimplemented find_service() checkDavid Disseldorp2014-08-111-4/+0
| | | | | | | | Check for "default VFS service" is empty, and we don't currently provide such a feature. Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
* passdb: add missing newline to debug message in get_primary_group_sid()Justin Maggard2014-08-091-1/+1
| | | | | | | | | Signed-off-by: Justin Maggard <jmaggard@netgear.com> 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): Sat Aug 9 00:44:06 CEST 2014 on sn-devel-104
* s3-libads/krb5_setpw: free realm from smb_krb5_principal_get_realm().Günther Deschner2014-08-081-3/+5
| | | | | | | Guenther Signed-off-by: Günther Deschner <gd@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* printing: reload printer shares on OpenPrinterDavid Disseldorp2014-08-081-1/+11
| | | | | | | | | | | | | | The printer share inventory should be reloaded on open _and_ enumeration, as there are some clients, such as cupsaddsmb, that do not perform an enumeration prior to access. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Fri Aug 8 16:33:50 CEST 2014 on sn-devel-104
* smbd: split printer reload processingDavid Disseldorp2014-08-082-47/+104
| | | | | | | | | | | | | | | | | | | | All printer inventory updates are currently done via delete_and_reload_printers(), which handles registry.tdb updates for added or removed printers, AD printer unpublishing on removal, as well as share service creation and deletion. This change splits this functionality into two functions such that per-client smbd processes do not perform registry.tdb updates or printer unpublishing. This is now only performed by the process that performs the printcap cache update. This change is similar to ac6604868d1325dd4c872dc0f6ab056d10ebaecf from the 3.6 branch. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
* server: remove duplicate snum_is_shared_printer()David Disseldorp2014-08-083-10/+2
| | | | | | | | | Only keep a single definition in server_reload.c Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
* smbd: only reprocess printer_list.tdb if it changedDavid Disseldorp2014-08-081-0/+21
| | | | | | | | | | | | | | | | | The per-client smbd printer share inventory is currently updated from printer_list.tdb when a client enumerates printers, via EnumPrinters or NetShareEnum. printer_list.tdb is populated by the background print process, based on the latest printcap values retrieved from the printing backend (e.g. CUPS) at regular intervals. This change ensures that per-client smbd processes don't reparse printer_list.tdb if it hasn't been updated since the last enumeration. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Suggested-by: Volker Lendecke <vl@samba.org> Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
* printing: return last change time with pcap_cache_loaded()David Disseldorp2014-08-085-7/+13
| | | | | | | Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
* printing: remove pcap_cache_add()David Disseldorp2014-08-082-11/+6
| | | | | | | | | | All print list updates are now done via pcap_cache_replace(), which can call into the print_list code directly. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
* printing: reload printer_list.tdb from in memory listDavid Disseldorp2014-08-086-34/+52
| | | | | | | | | This will allow in future for a single atomic printer_list.tdb update. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
* printing: only reload printer shares on client enumDavid Disseldorp2014-08-085-50/+17
| | | | | | | | | | | | | | | | | | | | | | | | | Currently, automatic printer share updates are handled in the following way: - Background printer process (BPP) forked on startup - Parent smbd and per-client children await MSG_PRINTER_PCAP messages - BPP periodically polls the printing backend for printcap data - printcap data written to printer_list.tdb - MSG_PRINTER_PCAP sent to all smbd processes following update - smbd processes all read the latest printer_list.tdb data, and update their share listings This procedure is not scalable, as all smbd processes hit printer_list.tdb in parallel, resulting in a large spike in CPU usage. This change sees smbd processes only update their printer share lists only when a client asks for this information, e.g. via NetShareEnum or EnumPrinters. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Suggested-by: Volker Lendecke <vl@samba.org> Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
* printing: traverse_read the printer list for share updatesDavid Disseldorp2014-08-085-12/+17
| | | | | | | | | | | | | | | | | | | | | | | The printcap update procedure involves the background printer process obtaining the printcap information from the printing backend, writing this to printer_list.tdb, and then notifying all smbd processes of the new list. The processes then all attempt to simultaneously traverse printer_list.tdb, in order to update their local share lists. With a large number of printers, and a large number of per-client smbd processes, this traversal results in significant lock contention, mostly due to the fact that the traversal is unnecessarily done with an exclusive (write) lock on the printer_list.tdb database. This commit changes the share update code path to perform a read-only traversal. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10652 Reported-by: Alex K <korobkin+samba@gmail.com> Reported-by: Franz Pförtsch <franz.pfoertsch@brose.com> Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
* samba: use smb_krb5_create_key_from_string() in some places.Günther Deschner2014-08-081-1/+6
| | | | | | | | Guenther Signed-off-by: Günther Deschner <gd@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Pair-Programmed-With: Andreas Schneider <asn@samba.org>
* vfs_full_audit: Optionally log security descriptors in FSET_NT_ACLVolker Lendecke2014-08-071-2/+20
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* vfs_full_audit: Add "full_audit:syslog"Volker Lendecke2014-08-071-11/+24
| | | | | | | | | | | Defaults to true (for compatibility) With full_audit:syslog=false we DEBUG the messages with level 1. You can explicitly [en|dis]able this with debug class full_audit:0/1 Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* vfs_full_audit: Save full_audit:priority in private_dataVolker Lendecke2014-08-071-1/+4
| | | | | | | lp_parm_enum can become expensive Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* vfs_full_audit: Save full_audit:facility in private_dataVolker Lendecke2014-08-071-3/+13
| | | | | | | lp_parm_enum can become expensive Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* vfs_full_audit: Pass "vfs_full_audit_private_data" to log_failure/success()Volker Lendecke2014-08-071-16/+9
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* ctdbd_conn: Only poll if there's a timeoutVolker Lendecke2014-08-061-9/+11
| | | | | | | | | | | At this point the ctdb socket is blocking, so we can save a syscall when we wait indefinitely anyway. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Michael Adam <obnox@samba.org> Autobuild-User(master): Michael Adam <obnox@samba.org> Autobuild-Date(master): Wed Aug 6 18:01:54 CEST 2014 on sn-devel-104
* ctdbd_conn: Remove ctdb_packetVolker Lendecke2014-08-063-359/+0
| | | | | Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>