obnox/samba/samba-obnox.git
9 years agoserver: remove duplicate snum_is_shared_printer()
David Disseldorp [Tue, 5 Aug 2014 16:45:24 +0000 (18:45 +0200)]
server: remove duplicate snum_is_shared_printer()

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>
9 years agosmbd: only reprocess printer_list.tdb if it changed
David Disseldorp [Wed, 23 Jul 2014 12:42:00 +0000 (14:42 +0200)]
smbd: only reprocess printer_list.tdb if it changed

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>
9 years agoprinting: return last change time with pcap_cache_loaded()
David Disseldorp [Wed, 23 Jul 2014 10:12:34 +0000 (12:12 +0200)]
printing: return last change time with pcap_cache_loaded()

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>
9 years agoprinting: remove pcap_cache_add()
David Disseldorp [Fri, 25 Jul 2014 10:18:54 +0000 (12:18 +0200)]
printing: remove pcap_cache_add()

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>
9 years agoprinting: reload printer_list.tdb from in memory list
David Disseldorp [Tue, 22 Jul 2014 18:17:38 +0000 (20:17 +0200)]
printing: reload printer_list.tdb from in memory list

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>
9 years agoprinting: only reload printer shares on client enum
David Disseldorp [Fri, 11 Jul 2014 15:00:05 +0000 (17:00 +0200)]
printing: only reload printer shares on client enum

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>
9 years agoprinting: traverse_read the printer list for share updates
David Disseldorp [Wed, 9 Jul 2014 22:18:10 +0000 (00:18 +0200)]
printing: traverse_read the printer list for share updates

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>
9 years agolib/krb5_wrap: provide krb5_warnx() replacement.
Günther Deschner [Thu, 8 May 2014 13:06:51 +0000 (15:06 +0200)]
lib/krb5_wrap: provide krb5_warnx() replacement.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Fri Aug  8 08:30:50 CEST 2014 on sn-devel-104

9 years agolib/krb5_wrap: use krb5_copy_data_contents in smb_krb5_principal_set_realm.
Günther Deschner [Tue, 13 May 2014 15:33:07 +0000 (17:33 +0200)]
lib/krb5_wrap: use krb5_copy_data_contents in smb_krb5_principal_set_realm.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agolib/krb5_wrap: provide CKSUMTYPE_HMAC_MD5 type matching MIT.
Günther Deschner [Thu, 8 May 2014 12:54:06 +0000 (14:54 +0200)]
lib/krb5_wrap: provide CKSUMTYPE_HMAC_MD5 type matching MIT.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agolib/krb5_wrap: define KRB5_PW_SALT if it is not already there.
Günther Deschner [Thu, 8 May 2014 12:31:37 +0000 (14:31 +0200)]
lib/krb5_wrap: define KRB5_PW_SALT if it is not already there.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agolib/krb5_wrap: add smb_krb5_principal_get_type().
Günther Deschner [Thu, 8 May 2014 10:13:00 +0000 (12:13 +0200)]
lib/krb5_wrap: add smb_krb5_principal_get_type().

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agoauth/credentials_krb5: silence a build warning.
Günther Deschner [Thu, 8 May 2014 08:12:01 +0000 (10:12 +0200)]
auth/credentials_krb5: silence a build warning.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agolib/krb5_wrap: add smb_krb5_principal_set_realm().
Günther Deschner [Thu, 8 May 2014 07:57:21 +0000 (09:57 +0200)]
lib/krb5_wrap: add smb_krb5_principal_set_realm().

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agolib/krb5_wrap: use const principal in smb_krb5_principal_get_realm().
Günther Deschner [Thu, 8 May 2014 08:06:13 +0000 (10:06 +0200)]
lib/krb5_wrap: use const principal in smb_krb5_principal_get_realm().

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agowscript: add check for krb5_keyblock_init.
Günther Deschner [Thu, 8 May 2014 07:46:25 +0000 (09:46 +0200)]
wscript: add check for krb5_keyblock_init.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agos4-gensec_krb5: fix memleak in gensec_krb5_session_info().
Günther Deschner [Tue, 6 May 2014 11:47:28 +0000 (13:47 +0200)]
s4-gensec_krb5: fix memleak in gensec_krb5_session_info().

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agolib/krb5_wrap: add krb5_copy_data_contents.
Günther Deschner [Thu, 8 May 2014 12:59:00 +0000 (14:59 +0200)]
lib/krb5_wrap: add krb5_copy_data_contents.

This reuses krb5_data_copy() if available, choosed not to call it
krb5_data_copy as that is easily mixed up with krb5_copy_data (which allocs the
krb5_data pointer). Thanks Simo for proposing the better name.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agos4-heimdal: fix krb5_get_init_creds_opt_set_process_last_req().
Günther Deschner [Wed, 7 May 2014 06:19:56 +0000 (08:19 +0200)]
s4-heimdal: fix krb5_get_init_creds_opt_set_process_last_req().

Most probably just a copy/paste error.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agos4-auth/kerberos: add a note how to implement krb5_get_init_creds_opt_set_win2k(...
Günther Deschner [Wed, 7 May 2014 06:24:15 +0000 (08:24 +0200)]
s4-auth/kerberos: add a note how to implement krb5_get_init_creds_opt_set_win2k() with MIT.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agos4-kerberos: remove duplicate macros.
Günther Deschner [Tue, 6 May 2014 09:30:51 +0000 (11:30 +0200)]
s4-kerberos: remove duplicate macros.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agos4-dsdb/samdb: use smb_krb5_principal_get_comp_string in ldb ACL module.
Günther Deschner [Wed, 30 Apr 2014 08:26:17 +0000 (10:26 +0200)]
s4-dsdb/samdb: use smb_krb5_principal_get_comp_string in ldb ACL module.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agolib/krb5_wrap: add smb_krb5_principal_get_comp_string().
Günther Deschner [Wed, 30 Apr 2014 08:49:14 +0000 (10:49 +0200)]
lib/krb5_wrap: add smb_krb5_principal_get_comp_string().

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agolib/krb5_wrap: move krb5_princ_size replacement code to lib/krb5_wrap/krb5_samba.c.
Günther Deschner [Wed, 30 Apr 2014 08:46:20 +0000 (10:46 +0200)]
lib/krb5_wrap: move krb5_princ_size replacement code to lib/krb5_wrap/krb5_samba.c.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agoauth/credentials-krb5: use get_kerberos_allowed_etypes().
Günther Deschner [Tue, 29 Apr 2014 16:22:55 +0000 (18:22 +0200)]
auth/credentials-krb5: use get_kerberos_allowed_etypes().

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agos4-torture: use smb_krb5_get_allowed_weak_crypto() in remote PAC test.
Günther Deschner [Tue, 29 Apr 2014 16:14:35 +0000 (18:14 +0200)]
s4-torture: use smb_krb5_get_allowed_weak_crypto() in remote PAC test.

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>

9 years agolib/krb5_wrap: add smb_krb5_get_allowed_weak_crypto().
Günther Deschner [Tue, 29 Apr 2014 16:14:05 +0000 (18:14 +0200)]
lib/krb5_wrap: add smb_krb5_get_allowed_weak_crypto().

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>

9 years agolib/krb5_wrap: remove unused create_kerberos_key_from_string_direct().
Günther Deschner [Fri, 25 Apr 2014 12:15:48 +0000 (14:15 +0200)]
lib/krb5_wrap: remove unused create_kerberos_key_from_string_direct().

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>

9 years agosamba: use smb_krb5_create_key_from_string() in some places.
Günther Deschner [Fri, 25 Apr 2014 12:14:20 +0000 (14:14 +0200)]
samba: use smb_krb5_create_key_from_string() in some places.

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>

9 years agolib/krb5_wrap: add smb_krb5_create_key_from_string().
Günther Deschner [Fri, 25 Apr 2014 12:12:05 +0000 (14:12 +0200)]
lib/krb5_wrap: add smb_krb5_create_key_from_string().

This function can take either a calculated salt or a principal and calculate the
salt on its own.

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>

9 years agolib/krb5_wrap: add smb_krb5_get_pw_salt().
Günther Deschner [Fri, 25 Apr 2014 12:03:35 +0000 (14:03 +0200)]
lib/krb5_wrap: add smb_krb5_get_pw_salt().

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>

9 years agos4-dsdb/samdb: use smb_krb5_make_principal for compatibility reasons with MIT.
Günther Deschner [Fri, 25 Apr 2014 11:59:11 +0000 (13:59 +0200)]
s4-dsdb/samdb: use smb_krb5_make_principal for compatibility reasons with MIT.

Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
9 years agodoc: Add new parameters to vfs_full_audit man page
Christof Schmitt [Thu, 7 Aug 2014 19:01:56 +0000 (12:01 -0700)]
doc: Add new parameters to vfs_full_audit man page

Signed-off-by: Christof Schmitt <cs@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Fri Aug  8 00:37:48 CEST 2014 on sn-devel-104

9 years agovfs_full_audit: Optionally log security descriptors in FSET_NT_ACL
Volker Lendecke [Thu, 7 Aug 2014 10:53:33 +0000 (10:53 +0000)]
vfs_full_audit: Optionally log security descriptors in FSET_NT_ACL

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
9 years agovfs_full_audit: Add "full_audit:syslog"
Volker Lendecke [Thu, 7 Aug 2014 10:44:01 +0000 (10:44 +0000)]
vfs_full_audit: Add "full_audit:syslog"

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>
9 years agovfs_full_audit: Save full_audit:priority in private_data
Volker Lendecke [Thu, 7 Aug 2014 10:34:18 +0000 (10:34 +0000)]
vfs_full_audit: Save full_audit:priority in private_data

lp_parm_enum can become expensive

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
9 years agovfs_full_audit: Save full_audit:facility in private_data
Volker Lendecke [Thu, 7 Aug 2014 10:34:18 +0000 (10:34 +0000)]
vfs_full_audit: Save full_audit:facility in private_data

lp_parm_enum can become expensive

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
9 years agovfs_full_audit: Pass "vfs_full_audit_private_data" to log_failure/success()
Volker Lendecke [Thu, 7 Aug 2014 10:23:25 +0000 (10:23 +0000)]
vfs_full_audit: Pass "vfs_full_audit_private_data" to log_failure/success()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
9 years agos4:torture: use torture_assert instead of torture_comment and return in defer_open...
Michael Adam [Thu, 24 Jul 2014 22:24:56 +0000 (00:24 +0200)]
s4:torture: use torture_assert instead of torture_comment and return in defer_open test

Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
9 years agos4:torture: consistently log "pid %u: ..." in the defer_open test
Michael Adam [Thu, 24 Jul 2014 22:22:17 +0000 (00:22 +0200)]
s4:torture: consistently log "pid %u: ..." in the defer_open test

Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
9 years agos4:torture: remove an unused variable and bogus check from the defer_open test
Michael Adam [Thu, 24 Jul 2014 22:20:47 +0000 (00:20 +0200)]
s4:torture: remove an unused variable and bogus check from the defer_open test

Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
9 years agodocs: Fix typos in smb.conf (inherit acls)
Marc Muehlfeld [Wed, 6 Aug 2014 19:36:26 +0000 (21:36 +0200)]
docs: Fix typos in smb.conf (inherit acls)

Bug: https://bugzilla.samba.org/show_bug.cgi?id=10761

Signed-off-by: Marc Muehlfeld <mmuehlfeld@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Autobuild-User(master): David Disseldorp <ddiss@samba.org>
Autobuild-Date(master): Thu Aug  7 00:52:42 CEST 2014 on sn-devel-104

9 years agoRedescribe --userou usage
Marc Muehlfeld [Wed, 6 Aug 2014 17:52:21 +0000 (19:52 +0200)]
Redescribe --userou usage

Signed-off-by: Marc Muehlfeld <mmuehlfeld@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
9 years agoctdbd_conn: Only poll if there's a timeout
Volker Lendecke [Mon, 21 Jul 2014 12:35:39 +0000 (12:35 +0000)]
ctdbd_conn: Only poll if there's a timeout

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

9 years agoctdbd_conn: Remove ctdb_packet
Volker Lendecke [Tue, 27 May 2014 07:50:01 +0000 (07:50 +0000)]
ctdbd_conn: Remove ctdb_packet

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agoctdbd_conn: Remove ctdb_packet dependency
Volker Lendecke [Tue, 6 May 2014 10:21:42 +0000 (12:21 +0200)]
ctdbd_conn: Remove ctdb_packet dependency

This was an early, failed attempt at async socket handling.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agoctdb-locking: Simplify ctdb_find_lock_context()
Volker Lendecke [Mon, 4 Aug 2014 13:57:12 +0000 (13:57 +0000)]
ctdb-locking: Simplify ctdb_find_lock_context()

I like early returns that avoid else branches :-)

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Autobuild-User(master): Amitay Isaacs <amitay@samba.org>
Autobuild-Date(master): Wed Aug  6 14:44:31 CEST 2014 on sn-devel-104

9 years agoctdb-locking: TALLOC_FREE copes with NULL
Volker Lendecke [Mon, 4 Aug 2014 12:41:06 +0000 (12:41 +0000)]
ctdb-locking: TALLOC_FREE copes with NULL

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
9 years agos3:smbd: pass smbXsrv_connection to smbd_[un]lock_socket()
Stefan Metzmacher [Thu, 12 Jun 2014 06:43:26 +0000 (08:43 +0200)]
s3:smbd: pass smbXsrv_connection to smbd_[un]lock_socket()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-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 12:15:57 CEST 2014 on sn-devel-104

9 years agos3:smb2_server: pass smbXsrv_connection to smbd_smb2_send_break()
Stefan Metzmacher [Thu, 12 Jun 2014 06:43:26 +0000 (08:43 +0200)]
s3:smb2_server: pass smbXsrv_connection to smbd_smb2_send_break()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to smb1 encryption functions
Stefan Metzmacher [Thu, 12 Jun 2014 06:43:26 +0000 (08:43 +0200)]
s3:smbd: pass smbXsrv_connection to smb1 encryption functions

These parameters are not really used currently, but may be in future.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: propagate NTSTATUS from smb2_sendfile_send_data() to smbd_smb2_flush_...
Stefan Metzmacher [Fri, 11 Jul 2014 00:25:00 +0000 (02:25 +0200)]
s3:smb2_server: propagate NTSTATUS from smb2_sendfile_send_data() to smbd_smb2_flush_send_queue()

Calling exit_server() from within a destructor is a bit ugly...

This will result in smbd_server_connection_terminate() instead of
directly calling exit_server(), which will be useful for multi-channel in
future.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agosmbd: Use %s/__func__
Volker Lendecke [Wed, 23 Jul 2014 13:26:19 +0000 (13:26 +0000)]
smbd: Use %s/__func__

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection explicitly to sendfile_short_send()
Stefan Metzmacher [Thu, 12 Jun 2014 06:42:16 +0000 (08:42 +0200)]
s3:smbd: pass smbXsrv_connection explicitly to sendfile_short_send()

We now let the caller terminate the connection.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection explicitly to fake_sendfile()
Stefan Metzmacher [Thu, 12 Jun 2014 06:40:25 +0000 (08:40 +0200)]
s3:smbd: pass smbXsrv_connection explicitly to fake_sendfile()

In future (with multi-channel) a fsp can be used from multiple
connections, we need to make it explicit on which we want to reply.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: remember the time of the session setup auth_time
Stefan Metzmacher [Thu, 12 Jun 2014 07:49:28 +0000 (09:49 +0200)]
s3:smbd: remember the time of the session setup auth_time

This is the time of the last reauth.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_sesssetup: make use of smb2req->xconn
Stefan Metzmacher [Thu, 12 Jun 2014 08:47:51 +0000 (10:47 +0200)]
s3:smb2_sesssetup: make use of smb2req->xconn

We should use stuff relative to the current request.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_sesssetup: split out smbd_smb2_session_setup_auth_return()
Stefan Metzmacher [Thu, 12 Jun 2014 07:19:29 +0000 (09:19 +0200)]
s3:smb2_sesssetup: split out smbd_smb2_session_setup_auth_return()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbXsrv_tcon: don't pass smbXsrv_connection to smbXsrv_tcon_create()
Stefan Metzmacher [Thu, 12 Jun 2014 08:40:12 +0000 (10:40 +0200)]
s3:smbXsrv_tcon: don't pass smbXsrv_connection to smbXsrv_tcon_create()

A tcon can be used on multiple connections in future,
so better pass the few needed parameters explicitly
and let the caller figure out where to get them.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to smbd_[un]lock_socket_internal()
Stefan Metzmacher [Thu, 12 Jun 2014 06:48:16 +0000 (08:48 +0200)]
s3:smbd: pass smbXsrv_connection to smbd_[un]lock_socket_internal()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn in smb_request_done()
Stefan Metzmacher [Thu, 12 Jun 2014 06:51:44 +0000 (08:51 +0200)]
s3:smbd: use req->xconn in smb_request_done()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn in message.c
Stefan Metzmacher [Wed, 11 Jun 2014 10:36:14 +0000 (12:36 +0200)]
s3:smbd: use req->xconn in message.c

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn in reply.c
Stefan Metzmacher [Wed, 11 Jun 2014 13:12:32 +0000 (15:12 +0200)]
s3:smbd: use req->xconn in reply.c

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn in sesssetup.c
Stefan Metzmacher [Wed, 11 Jun 2014 13:11:05 +0000 (15:11 +0200)]
s3:smbd: use req->xconn in sesssetup.c

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to reply_readbraw_error()
Stefan Metzmacher [Wed, 11 Jun 2014 12:51:05 +0000 (14:51 +0200)]
s3:smbd: pass smbXsrv_connection to reply_readbraw_error()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to is_valid_writeX_buffer()
Stefan Metzmacher [Wed, 11 Jun 2014 12:35:55 +0000 (14:35 +0200)]
s3:smbd: pass smbXsrv_connection to is_valid_writeX_buffer()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: remove unused 'sconn' from valid_smb_header()
Stefan Metzmacher [Wed, 11 Jun 2014 12:29:52 +0000 (14:29 +0200)]
s3:smbd: remove unused 'sconn' from valid_smb_header()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: remove unused 'sconn' from is_encrypted_packet()
Stefan Metzmacher [Wed, 11 Jun 2014 12:28:13 +0000 (14:28 +0200)]
s3:smbd: remove unused 'sconn' from is_encrypted_packet()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn in nttrans.c
Stefan Metzmacher [Wed, 11 Jun 2014 12:26:57 +0000 (14:26 +0200)]
s3:smbd: use req->xconn in nttrans.c

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn in send_trans_reply()
Stefan Metzmacher [Wed, 11 Jun 2014 12:26:08 +0000 (14:26 +0200)]
s3:smbd: use req->xconn in send_trans_reply()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn in files.c
Stefan Metzmacher [Wed, 11 Jun 2014 12:25:07 +0000 (14:25 +0200)]
s3:smbd: use req->xconn in files.c

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn to send_trans2_replies()
Stefan Metzmacher [Wed, 11 Jun 2014 12:22:13 +0000 (14:22 +0200)]
s3:smbd: use req->xconn to send_trans2_replies()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: remove unused 'sconn' in call_trans2setfsinfo()
Stefan Metzmacher [Wed, 11 Jun 2014 11:57:30 +0000 (13:57 +0200)]
s3:smbd: remove unused 'sconn' in call_trans2setfsinfo()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: use req->xconn in vfs_[p]write_data()
Stefan Metzmacher [Wed, 11 Jun 2014 11:54:43 +0000 (13:54 +0200)]
s3:smbd: use req->xconn in vfs_[p]write_data()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to smbd_do_qfsinfo()
Stefan Metzmacher [Wed, 11 Jun 2014 11:36:34 +0000 (13:36 +0200)]
s3:smbd: pass smbXsrv_connection to smbd_do_qfsinfo()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to netbios_session_retarget()
Stefan Metzmacher [Wed, 11 Jun 2014 10:55:24 +0000 (12:55 +0200)]
s3:smbd: pass smbXsrv_connection to netbios_session_retarget()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to reply_special()
Stefan Metzmacher [Wed, 11 Jun 2014 10:54:47 +0000 (12:54 +0200)]
s3:smbd: pass smbXsrv_connection to reply_special()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to get_challenge()
Stefan Metzmacher [Wed, 11 Jun 2014 10:42:56 +0000 (12:42 +0200)]
s3:smbd: pass smbXsrv_connection to get_challenge()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smbd: pass smbXsrv_connection to negprot_spnego()
Stefan Metzmacher [Wed, 11 Jun 2014 10:41:26 +0000 (12:41 +0200)]
s3:smbd: pass smbXsrv_connection to negprot_spnego()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_negprot: remove NBT_HDR_SIZE from smbd_smb2_first_negprot()
Stefan Metzmacher [Tue, 24 Jun 2014 17:28:51 +0000 (19:28 +0200)]
s3:smb2_negprot: remove NBT_HDR_SIZE from smbd_smb2_first_negprot()

This will simplify future features like multi-channel and rdma.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smbd_server_connection_terminate*()
Stefan Metzmacher [Wed, 11 Jun 2014 10:15:48 +0000 (12:15 +0200)]
s3:smb2_server: pass smbXsrv_connection to smbd_server_connection_terminate*()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_*: make use of smb2req->xconn where possible
Stefan Metzmacher [Thu, 12 Jun 2014 06:38:48 +0000 (08:38 +0200)]
s3:smb2_*: make use of smb2req->xconn where possible

We need to use the connection that is used by the current request.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: use req->xconn in is_smb2_recvfile_write()
Stefan Metzmacher [Wed, 11 Jun 2014 09:41:27 +0000 (11:41 +0200)]
s3:smb2_server: use req->xconn in is_smb2_recvfile_write()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: remove unused 'sconn' from smbd_smb2_send_break_state
Stefan Metzmacher [Wed, 11 Jun 2014 09:40:36 +0000 (11:40 +0200)]
s3:smb2_server: remove unused 'sconn' from smbd_smb2_send_break_state

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: use req->xconn in smbd_smb2_request_error_ex()
Stefan Metzmacher [Wed, 11 Jun 2014 09:40:04 +0000 (11:40 +0200)]
s3:smb2_server: use req->xconn in smbd_smb2_request_error_ex()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: use req->xconn in smbd_smb2_request_dispatch()
Stefan Metzmacher [Wed, 11 Jun 2014 09:31:37 +0000 (11:31 +0200)]
s3:smb2_server: use req->xconn in smbd_smb2_request_dispatch()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: use req->xconn in smbd_smb2_request_verify_creditcharge()
Stefan Metzmacher [Wed, 11 Jun 2014 09:31:04 +0000 (11:31 +0200)]
s3:smb2_server: use req->xconn in smbd_smb2_request_verify_creditcharge()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: use req->xconn in smbd_smb2_request_check_session()
Stefan Metzmacher [Wed, 11 Jun 2014 09:30:23 +0000 (11:30 +0200)]
s3:smb2_server: use req->xconn in smbd_smb2_request_check_session()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: use req->xconn in smbd_smb2_request_process_cancel()
Stefan Metzmacher [Wed, 11 Jun 2014 09:29:01 +0000 (11:29 +0200)]
s3:smb2_server: use req->xconn in smbd_smb2_request_process_cancel()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: remove unused 'sconn' from smbd_smb2_request_pending_state
Stefan Metzmacher [Wed, 11 Jun 2014 09:22:16 +0000 (11:22 +0200)]
s3:smb2_server: remove unused 'sconn' from smbd_smb2_request_pending_state

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: talloc smbd_smb2_request_pending_state on smbXsrv_connection
Stefan Metzmacher [Wed, 11 Jun 2014 09:22:16 +0000 (11:22 +0200)]
s3:smb2_server: talloc smbd_smb2_request_pending_state on smbXsrv_connection

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: use req->xconn in smbd_smb2_request_setup_out()
Stefan Metzmacher [Wed, 11 Jun 2014 09:19:24 +0000 (11:19 +0200)]
s3:smb2_server: use req->xconn in smbd_smb2_request_setup_out()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smbd_smb2_request_next_incoming()
Stefan Metzmacher [Wed, 11 Jun 2014 08:59:00 +0000 (10:59 +0200)]
s3:smb2_server: pass smbXsrv_connection to smbd_smb2_request_next_incoming()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smbd_smb2_request_create()
Stefan Metzmacher [Wed, 11 Jun 2014 08:51:04 +0000 (10:51 +0200)]
s3:smb2_server: pass smbXsrv_connection to smbd_smb2_request_create()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smbd_initialize_smb2()
Stefan Metzmacher [Wed, 11 Jun 2014 08:45:56 +0000 (10:45 +0200)]
s3:smb2_server: pass smbXsrv_connection to smbd_initialize_smb2()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smbd_smb2_first_negprot()
Stefan Metzmacher [Wed, 11 Jun 2014 08:42:01 +0000 (10:42 +0200)]
s3:smb2_server: pass smbXsrv_connection to smbd_smb2_first_negprot()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smb2_set_operation_credit()
Stefan Metzmacher [Wed, 11 Jun 2014 08:08:26 +0000 (10:08 +0200)]
s3:smb2_server: pass smbXsrv_connection to smb2_set_operation_credit()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smb2_validate_message_id()
Stefan Metzmacher [Wed, 11 Jun 2014 08:05:43 +0000 (10:05 +0200)]
s3:smb2_server: pass smbXsrv_connection to smb2_validate_message_id()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smb2_validate_sequence_number()
Stefan Metzmacher [Wed, 11 Jun 2014 08:03:27 +0000 (10:03 +0200)]
s3:smb2_server: pass smbXsrv_connection to smb2_validate_sequence_number()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
9 years agos3:smb2_server: pass smbXsrv_connection to smbd_smb2_flush_send_queue()
Stefan Metzmacher [Wed, 11 Jun 2014 08:00:09 +0000 (10:00 +0200)]
s3:smb2_server: pass smbXsrv_connection to smbd_smb2_flush_send_queue()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>