David Disseldorp [Tue, 29 Jan 2019 00:55:04 +0000 (01:55 +0100)]
printing: check lp_load_printers() prior to pcap cache update
Avoid explicit and housekeeping timer triggered printcap cache updates
if lp_load_printers() is disabled.
Bug: https://bugzilla.samba.org/show_bug.cgi?id=13766
Signed-off-by: David Disseldorp <ddiss@samba.org>
Autobuild-User(master): Noel Power <npower@samba.org>
Autobuild-Date(master): Fri Feb 1 19:25:03 CET 2019 on sn-devel-144
David Disseldorp [Tue, 29 Jan 2019 00:50:15 +0000 (01:50 +0100)]
printing: drop pcap_cache_loaded() guard around load_printers()
Add the pcap_cache_loaded() check to load_printers() and return early
if it returns false. This simplifies callers in preparation for checking
lp_load_printers() in the printcap cache update code-path.
Bug: https://bugzilla.samba.org/show_bug.cgi?id=13766
Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Noel Power <npower@samba.org>
David Disseldorp via samba-technical [Wed, 30 Jan 2019 16:13:47 +0000 (17:13 +0100)]
build: replace SAMBA3_ADD_OPTION with samba_add_onoff_option
The former is just an alias for the latter. samba_add_onoff_option()
better describes what the function actually does, so use that and
remove the alias.
Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Noel Power <npower@samba.org>
Andrew Bartlett [Fri, 1 Feb 2019 02:09:26 +0000 (15:09 +1300)]
ldb: Release ldb 1.6.0
* pyldb: make ldb.connect() url mandatory
* New version number for master (Samba 4.11 eventually)
The 1.5.x series will be maintained in the v4-10-test branch
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Fri Feb 1 07:02:56 CET 2019 on sn-devel-144
Douglas Bagnall [Wed, 18 Apr 2018 02:37:12 +0000 (14:37 +1200)]
pyldb: make ldb.connect() url mandatory
The call fails without it, so we might as well fail sooner
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Douglas Bagnall [Fri, 20 Apr 2018 12:37:15 +0000 (00:37 +1200)]
py_net: fix != None check
Py_None is not false in C, so this branch was always taken.
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Douglas Bagnall [Tue, 24 Apr 2018 00:40:32 +0000 (12:40 +1200)]
s4/param/provision: check samdb argument in provision_bare()
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Douglas Bagnall [Tue, 24 Apr 2018 00:38:22 +0000 (12:38 +1200)]
s4/pyauth: fix memory leak when context_new() has bad arguments
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Douglas Bagnall [Wed, 2 May 2018 22:26:34 +0000 (10:26 +1200)]
s4/pyauth: insist on proper ldb in context_new()
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Douglas Bagnall [Tue, 24 Apr 2018 00:37:02 +0000 (12:37 +1200)]
s4/pyauth: check ldb argument in py_user_session()
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Douglas Bagnall [Wed, 2 May 2018 22:26:26 +0000 (10:26 +1200)]
pygensec: insist on proper AuthContext in start_server
Fixes another segfault.
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Douglas Bagnall [Tue, 24 Apr 2018 00:34:50 +0000 (12:34 +1200)]
pynbt: catch type errors in PyObject_AsNBTName()
This fixes some known segfaults.
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Douglas Bagnall [Fri, 20 Apr 2018 04:28:29 +0000 (16:28 +1200)]
Tests for segfaults in python bindings
These tests run in a child process and are regarded as succeeding if they
don't die by signal.
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Garming Sam [Wed, 23 Jan 2019 03:16:16 +0000 (16:16 +1300)]
cracknames: Change search filter to use the smaller index
In large domains with many users, '(objectClass=User)' may as well not
be specified because it's iterating over the entire database.
Signed-off-by: Garming Sam <garming@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Tue, 29 Jan 2019 00:25:55 +0000 (13:25 +1300)]
netcmd: Improve error handling of gpo aclcheck as non-admin
Reading the nTSecurityDescriptor attribute over LDAP requires admin
creds. However, if you don't specify admin creds, then you get an error
like this:
bin/samba-tool gpo aclcheck
ERROR(<class 'KeyError'>): uncaught exception - 'No such element'
File "bin/python/samba/netcmd/__init__.py", line 184, in _run
return self.run(*args, **kwargs)
File "bin/python/samba/netcmd/gpo.py", line 1536, in run
ds_sd_ndr = m['nTSecurityDescriptor'][0]
This patch adds an explicit check/error message to make the problem
clearer.
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Tue, 29 Jan 2019 21:07:26 +0000 (10:07 +1300)]
selftest: Remove unnecessary tests.py options from proclimit tests
It seems like these extra options were just copy-n-pasted from another
test. The process_limits test doesn't actually try to use these env
variables at all. All the test is doing is creating LDAP connections to
the DC. The SOCKET_WRAPPER_DEFAULT_IFACE may have perhaps been needed,
but we can avoid this by dropping ':local' from the testenv and running
the test as a "client" instead.
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Tue, 29 Jan 2019 21:04:28 +0000 (10:04 +1300)]
selftest: Add comment elaborating on what ENV_DEPS actually does
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Tue, 29 Jan 2019 20:57:29 +0000 (09:57 +1300)]
selftest: Reorder ENV_DEPS so similar testenvs are together
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Tue, 29 Jan 2019 20:51:44 +0000 (09:51 +1300)]
selftest: Fix running proclimit tests locally
The dns_hub changes missed a dependency. Fortunately, during an
autobuild, the dns_hub is always up and running by the time the
proclimitdc tests are run. However, the tests were failing if run
locally just on their own.
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Thu, 31 Jan 2019 00:30:07 +0000 (13:30 +1300)]
man pages: Add note about standard process model
Calling this model the 'standard' model made a lot more sense when it
was the default. Add a small note explaining that it has this name for
historical reasons.
(The term 'standard' may have originally been chosen for some other
reason. However, it's hard to find the rationale behind the term from
back in 2005)
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Wed, 30 Jan 2019 23:45:31 +0000 (12:45 +1300)]
selftest: Convert backup/restore testenvs to use default
These testenvs shouldn't be dependent on the process model at all, so we
should be able to convert them to the new default without any
repercussions.
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Thu, 31 Jan 2019 00:12:43 +0000 (13:12 +1300)]
selftest: Make process_model argument optional in check_or_start()
It's more realistic to *not* always specify a process-model, and rely on
the samba code to use the correct default. This patch changes selftest
so we only use the -M process-model option if a particular process_model
was specified. Otherwise the testenv will use whatever the default is.
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Wed, 30 Jan 2019 23:08:00 +0000 (12:08 +1300)]
samba: Change default process model to prefork
Prefork is the more sensible default option now, as it better
handles a large number of client connections.
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Andrew Bartlett [Fri, 1 Feb 2019 01:41:18 +0000 (14:41 +1300)]
ldb: Release ldb 1.5.3
* Avoid inefficient one-level searches (bug 13762)
* The test api.py should not rely on order of entries in dict (bug 13772)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13762
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13772
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
Andrew Bartlett [Fri, 1 Feb 2019 01:22:17 +0000 (14:22 +1300)]
ldb: Add even more comments on what strict does to the list intersections
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13762
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
Tim Beale [Thu, 10 Jan 2019 01:25:06 +0000 (14:25 +1300)]
ldb: Rename variable
The old name confused me because it's not really related to the
one-level index at all. It's the result from evaluating the indexed
search specified in the ac->tree.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13762
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Thu, 10 Jan 2019 01:19:19 +0000 (14:19 +1300)]
ldb: Elaborate on ldb_kv_search_indexed() comments
Disclaimer: this is based on my limited understanding of what the code
is doing.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13762
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Thu, 10 Jan 2019 00:53:47 +0000 (13:53 +1300)]
ldb: Remove comment that no longer makes sense
This comment was written before the GUID_index_attribute block of code
existed. So we now *do* load the index values and *do* check for a
strict intersect, so the comment is redundant.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13762
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Thu, 10 Jan 2019 00:34:18 +0000 (13:34 +1300)]
ldb: Avoid inefficient one-level searches
Commit
88ae60ed186c9 introduced a problem that made one-level
searches inefficient if there were a lot of child objects in the same
level, and the requested object didn't exist. Basically, it ignored the
case where ldb_kv_index_dn() returned LDB_ERR_NO_SUCH_OBJECT, i.e. the
indexed lookup was successful, but didn't find a match. At which point,
there was no more processing we needed to do.
The behaviour after
88ae60ed186c9 was to fall-through and run the
ldb_kv_index_filter() function over *all* the children. This still
returned the correct result, but could be costly if there were a lot of
children.
The case
88ae60ed186c9 was trying to fix was where we could not do
an indexed search (e.g. trying to match on a 'attribute=*' filter). In
which case we want to ignore the LDB_ERR_OPERATIONS_ERROR and just run
ldb_kv_index_filter() over all the children. This is still more
efficient than the fallback of doing a full database scan.
This patch adds in a short-circuit for the NO_SUCH_OBJECT case, so we
can skip the unnecessary ldb_kv_index_filter() work.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13762
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Wed, 30 Jan 2019 02:10:45 +0000 (15:10 +1300)]
selftest: Add dns_hub to selftest/target/README
Add a description explaining what dns_hub does and why we need it.
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Wed, 30 Jan 2019 00:26:49 +0000 (13:26 +1300)]
selftest: Move dns_hub.py into selftest directory
As dns_hub.py is now integral to the selftest environments, it seems to
make sense for it to live under the selftest/ directory.
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Tim Beale [Wed, 30 Jan 2019 00:24:45 +0000 (13:24 +1300)]
dns_hub: Fix flake8 warnings
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Gary Lockyer [Mon, 28 Jan 2019 22:34:31 +0000 (11:34 +1300)]
man pages: document prefork process model
Document the process model options -M
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13765
Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Autobuild-User(master): Tim Beale <timbeale@samba.org>
Autobuild-Date(master): Thu Jan 31 04:25:14 CET 2019 on sn-devel-144
Jeremy Allison [Wed, 19 Sep 2018 16:17:59 +0000 (09:17 -0700)]
s3: smbd: smb2-posix: Add NFS_SPECFILE_XXX defines.
Sub-types for NFS reparse point.
https://msdn.microsoft.com/en-us/library/dn617178.aspx
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Thu Jan 31 00:50:10 CET 2019 on sn-devel-144
Jeremy Allison [Tue, 18 Sep 2018 22:56:13 +0000 (15:56 -0700)]
s3: smbd: smb2-posix: Add IO_REPARSE_TAG_NFS.
https://msdn.microsoft.com/en-us/library/dn617178.aspx
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Stefan Metzmacher [Thu, 17 Jan 2019 22:50:45 +0000 (23:50 +0100)]
selftest:Samba4: use 'smbcontrol samba shutdown'
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13752
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Björn Baumbach <bbaumbach@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Wed Jan 30 01:51:48 CET 2019 on sn-devel-144
Stefan Metzmacher [Thu, 17 Jan 2019 15:27:10 +0000 (16:27 +0100)]
s4:server: add support for 'smbcontrol samba shutdown'
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13752
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Björn Baumbach <bbaumbach@samba.org>
Stefan Metzmacher [Mon, 28 Jan 2019 15:29:51 +0000 (16:29 +0100)]
s4:server: avoid using pid=0 for the parent 'samba' process
It confuses the 'samba-tool processes' output and log messages.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13752
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Björn Baumbach <bbaumbach@samba.org>
Stefan Metzmacher [Tue, 15 Jan 2019 00:39:06 +0000 (01:39 +0100)]
s4:messaging: add support 'smbcontrol <pid> debug/debuglevel'
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13752
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Björn Baumbach <bbaumbach@samba.org>
Stefan Metzmacher [Thu, 17 Jan 2019 15:29:37 +0000 (16:29 +0100)]
manpages/samba.7.xml: smbcontrol can also work with 'samba'
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13752
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Björn Baumbach <bbaumbach@samba.org>
Lukas Slebodnik [Tue, 22 Jan 2019 09:04:02 +0000 (10:04 +0100)]
ldb: The test api.py should not rely on order of entries in dict
Test failed on s390x but there is a simple reproducer for any
architecture.
The built-in function repr returns the canonical string representation
of the object. We needn't care about order attributes in string
representation. Therefore test should pass for any order.
for i in {1..30}; do
PYTHONHASHSEED=random \
python2 -c 'import ldb; msg = ldb.Message(); msg.dn = ldb.Dn(ldb.Ldb(), "dc=foo29"); msg["dc"] = b"foo"; print(repr(msg)) '
done
======================================================================
FAIL: test_repr (__main__.LdbMsgTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/python/api.py", line 2322, in test_repr
"Message({'dn': Dn('dc=foo29'), 'dc': MessageElement(['foo'])})")
AssertionError: "Message({'dc': MessageElement(['foo']), 'dn': Dn('dc=foo29')})" != "Message({'dn': Dn('dc=foo29'), 'dc': MessageElement(['foo'])})"
----------------------------------------------------------------------
Ran 1025 tests in 29.146s
FAILED (failures=1)
Signed-off-by: Lukas Slebodnik <lslebodn@fedoraproject.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andreas Schneider <asn@samba.org>
Stefan Metzmacher [Wed, 23 Jan 2019 08:32:08 +0000 (09:32 +0100)]
dns.idl: fix DNS_RCODE from 0xF to 0x1F
commit
74206984daa9c707a38675df88d6bbe660d876bc introduced
TSIG related error codes up to DNS_RCODE_BADALG = 0x15
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Stefan Metzmacher [Wed, 23 Jan 2019 08:31:17 +0000 (09:31 +0100)]
python/tests/dns*: make use of dns.DNS_RCODE/dns.DNS_OPCODE
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
David Mulder [Sat, 26 Jan 2019 15:53:18 +0000 (08:53 -0700)]
'articles' variable causes a dependency loop
This 'articles' variable contains
'smbdotconf/parameters.all.xml' and causes a
dependency loop when creating parameters.all.xml
Signed-off-by: David Mulder <dmulder@suse.com>
Reviewed-by: Andrew Bartlet <abartlet@samba.org>
Reviewed-by: Noel Power <noel.power@suse.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Stefan Metzmacher [Fri, 25 Jan 2019 14:12:46 +0000 (15:12 +0100)]
third_party/resolv_wrapper: fix HAVE_RESOLV_IPV6_NSADDRS for struct __res_state
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Stefan Metzmacher [Sun, 27 Jan 2019 19:27:42 +0000 (20:27 +0100)]
wafsamba/replace: move __STDC_WANT_LIB_EXT1__ to CFLAGS
This fixes the build of python bindings, which use memset_s()
(via ZERO_STRUCT).
In python bindings Python.h needs to be the first header, which means
is already includes string.h. Defining __STDC_WANT_LIB_EXT1__ in
replace.h is too late in that case.
This fixes the --check-c-compiler=gcc --picky-developer on FreeBSD 12.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Stefan Metzmacher [Fri, 25 Jan 2019 22:52:34 +0000 (23:52 +0100)]
replace: only include <sys/capability.h> with HAVE_POSIX_CAPABILITIES
On FreeBSD <sys/capability.h> is a legacy wrapper to <sys/capsicum.h>,
which implements something different. With FreeBSD 12 including
<sys/capability.h> generates a compiler warning/error.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Stefan Metzmacher [Thu, 24 Jan 2019 01:31:10 +0000 (02:31 +0100)]
wscript: separate embedded_heimdal from system_heimdal
This allows to default (embedded_heimdal) to build even with a
broken krb5-config file from Heimdal.
In the system_heimdal case we parse the content of krb5-config
instead of just executing it. This fails on FreeBSD 12 as
krb5-config contains iso-8859-1 characters, which can't be parsed
as unicode python buffers when using python3.
Fixing the system_heimdal case is a task for another day,
I guess it will only work once we imported a current heimdal version
and actually tested the system_heimdal case.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Volker Lendecke [Tue, 29 Jan 2019 08:32:43 +0000 (10:32 +0200)]
vfs_gpfs: Fix the 32-bit build
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Christof Schmitt <cs@samba.org>
Autobuild-User(master): Christof Schmitt <cs@samba.org>
Autobuild-Date(master): Tue Jan 29 22:06:59 CET 2019 on sn-devel-144
Douglas Bagnall [Wed, 2 May 2018 21:59:13 +0000 (09:59 +1200)]
s4/param/provision py_dom_sid_FromSid: avoid python memleak
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Noel Power <npower@samba.org>
Autobuild-User(master): Noel Power <npower@samba.org>
Autobuild-Date(master): Tue Jan 29 16:54:48 CET 2019 on sn-devel-144
Douglas Bagnall [Wed, 2 May 2018 21:57:29 +0000 (09:57 +1200)]
s4/pyrpc_util: catch alloc failure in py_dcerpc_interface_init_helper()
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Noel Power <npower@samba.org>
Douglas Bagnall [Wed, 2 May 2018 21:53:56 +0000 (09:53 +1200)]
s4/pyrpc_util: appropriately decrement refcounts on failure
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Noel Power <npower@samba.org>
Douglas Bagnall [Wed, 2 May 2018 21:39:18 +0000 (09:39 +1200)]
s3/py_passdb: maintain correct refcount on allocation failure
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Noel Power <npower@samba.org>
Douglas Bagnall [Wed, 2 May 2018 22:45:39 +0000 (10:45 +1200)]
python/modules: maintain correct refcount for path items
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Noel Power <npower@samba.org>
David Disseldorp [Sun, 27 Jan 2019 12:31:16 +0000 (13:31 +0100)]
tests: don't rely on implicit int return type
Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): David Disseldorp <ddiss@samba.org>
Autobuild-Date(master): Tue Jan 29 03:47:27 CET 2019 on sn-devel-144
David Disseldorp [Sat, 26 Jan 2019 23:41:28 +0000 (00:41 +0100)]
s3/lib: clean up have_syscall() formatting
Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
David Disseldorp [Sat, 26 Jan 2019 23:41:28 +0000 (00:41 +0100)]
s3/lib: don't rely on implicit int return type
C99 removed this behaviour.
Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Justin Stephenson [Tue, 20 Nov 2018 16:25:49 +0000 (11:25 -0500)]
s4:torture: Enforce Printer Class
Ensure that the provided inf defines Class=Printer for driver installation
to succeed.
Some driver packages(HP Universal Print Driver) include inf files with
other device types such as Class=USB. Attempting to install these will fail
when tested against Windows Server 2016 Print server using
iremotewinspool RPC calls.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Autobuild-User(master): Björn Jacke <bjacke@samba.org>
Autobuild-Date(master): Mon Jan 28 19:34:41 CET 2019 on sn-devel-144
Justin Stephenson [Mon, 15 Oct 2018 21:02:03 +0000 (17:02 -0400)]
s4:torture: Uninstall driver and cleanup
Uninstall and remove the print driver packages to cleanup
after the install. Cleanup and remove smb directory created
inside print$.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Mon, 15 Oct 2018 21:01:21 +0000 (17:01 -0400)]
s4:torture: Add test_ValidatePrinterDriverInstalled
Perform checks against the print driver registry information
to ensure the driver was installed as expected.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Fri, 14 Sep 2018 19:51:44 +0000 (15:51 -0400)]
s4:torture: Add test_InstallPrinterDriverFromPackage
Install a previous uploaded driver package.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Tue, 11 Sep 2018 19:57:14 +0000 (15:57 -0400)]
s4:torture: Add test_UploadPrinterDriverPackage
Add test to Upload Print Driver, a prerequisite RPC call before
installing the print driver. The inf driver file to use in this test
will be provided using torture option:inf_file
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Mon, 27 Aug 2018 15:32:29 +0000 (11:32 -0400)]
s4:torture: Add test_CopyDriverFiles
Add test to copy driver files from a torture option provided local driver_path
to the print$ share of //server/.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Mon, 15 Oct 2018 17:55:37 +0000 (13:55 -0400)]
s4:torture: Add test_init_driver_info function
Validate torture options, obtain and retrieve driver information, and
call driver parsing function to retrieve driver info needed for
performing the test.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Mon, 15 Oct 2018 17:28:01 +0000 (13:28 -0400)]
s4:torture: Add driver parsing wrapper
Add wrapper function to parse inf driver file and get
validated driver information.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Tue, 20 Nov 2018 16:24:34 +0000 (11:24 -0500)]
lib:printer_driver: Retrieve Class value
Retrieve the Class value from the inf file [Version] section.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Fri, 16 Nov 2018 21:53:33 +0000 (16:53 -0500)]
lib:printer_driver: Don't overwrite printprocessor
If the printprocessor is parsed from the inf file in the codepath:
setup_driver_name
find_driver_files
process_driver_section_printprocessor
Don't overwrite the value later on in setup_driver_name with the default "winprint"
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Fri, 16 Nov 2018 21:11:02 +0000 (16:11 -0500)]
lib:printer_driver: Parse SourceDisksNames section
This allows a driver inf with a [SourceDisksNames] section
excluding the system architecture to be parsed.
https://docs.microsoft.com/en-us/windows-hardware/drivers/install/inf-sourcedisksnames-section?f=255&MSPPError=-
2147217396
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Fri, 16 Nov 2018 21:03:00 +0000 (16:03 -0500)]
lib:printer_driver: Handle PrintProcessor string
This fixes an issue parsing the section of a certain HP
driver inf file:
PrintProcessor=%PRINT_PROCESSOR%
where %PRINT_PROCESSOR% is a [Strings] substituted value,
gp_inifile_getstring_ext() performs the substitution correctly.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Guenther Deschner [Mon, 8 Oct 2018 15:14:37 +0000 (11:14 -0400)]
lib:printer_driver: Add printer_driver library to parse printer driver inf files
Pair-Programmed-With: Justin Stephenson <jstephen@redhat.com>
Signed-off-by: Guenther Deschner <gd@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Günther Deschner [Fri, 8 Jun 2018 14:13:22 +0000 (16:13 +0200)]
utils:libgpo: re-add libgpo as library, it should not be part of gpext
It was initially removed in
78fd02cf31dfe72d596030f342aebefba1e72263 but
is needed by the inf file parsing.
Guenther
Signed-off-by: Guenther Deschner <gd@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Andreas Schneider [Mon, 10 Sep 2018 13:20:03 +0000 (15:20 +0200)]
util: Add file tree walk interface
Add tftw() utility to emulate nftw() behavior with a userdata pointer.
This is repurposed from the csync project custom file tree walker.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Fri, 21 Sep 2018 13:45:33 +0000 (09:45 -0400)]
s4:torture: Use test client user and machine name defaults
Use "testclient_machine" and "testclient_user" in open printer calls.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Fri, 24 Aug 2018 18:28:05 +0000 (14:28 -0400)]
s4:torture: Add iremotewinspool driver torture template
Add the template with setup and teardown functions
for the iremotewinspool_driver torture suite, and
add this to the list of torture tests
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Mon, 17 Sep 2018 15:19:02 +0000 (11:19 -0400)]
librpc:idl: Fix pszDestInfPath winspool parameter type
The in/out type of pszDestInfPath needs to be a string type for
RPC call UploadPrinterDriverPackage.
Per the Spec:
[in, out, unique, size_is(*pcchDestInfPath)] wchar_t* pszDestInfPath,
pszDestInfPath: A pointer to a buffer that receives a string that
specifies the full path of the directory to which the driver
installation control file was copied.
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Fri, 24 Aug 2018 13:36:55 +0000 (09:36 -0400)]
s4:torture: Seperate out function calls inside params
Minor change to allow for easier debugging
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Justin Stephenson [Thu, 23 Aug 2018 17:16:40 +0000 (13:16 -0400)]
s4:torture: Share test iremotewinspool functions
Create iremotewinspool_common.c and iremotewinspool_common.h to make
test functions available for additional tests
Signed-off-by: Justin Stephenson <jstephen@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Bjoern Jacke <bjacke@samba.org>
Douglas Bagnall [Fri, 18 Jan 2019 00:15:36 +0000 (13:15 +1300)]
s3:nmbd: small improvements in --help strings
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Mon Jan 28 14:28:29 CET 2019 on sn-devel-144
Douglas Bagnall [Thu, 17 Jan 2019 23:09:15 +0000 (12:09 +1300)]
libgpo: remove 404 link in comment
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andreas Schneider <asn@samba.org>
Douglas Bagnall [Thu, 17 Jan 2019 23:07:55 +0000 (12:07 +1300)]
libgpo: remove duplicate entry in value table
previously added a few lines up.
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andreas Schneider <asn@samba.org>
Douglas Bagnall [Thu, 17 Jan 2019 21:57:51 +0000 (10:57 +1300)]
pyrpc: typo in transfer syntax docstring
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andreas Schneider <asn@samba.org>
Andreas Schneider [Tue, 15 Jan 2019 14:42:09 +0000 (15:42 +0100)]
libcli:smb: Use C99 initializer for derivation in smbXcli_base
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Tue, 8 Jan 2019 10:49:28 +0000 (11:49 +0100)]
s4:cifsdd: Use C99 initializers for cifsdd argdef
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Tue, 8 Jan 2019 10:26:16 +0000 (11:26 +0100)]
s4:torture: Fix C99 initializers for vfs fruit tests
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Tue, 8 Jan 2019 10:37:32 +0000 (11:37 +0100)]
s4:torture: Use C99 initializers in gentest
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Mon, 7 Jan 2019 16:19:27 +0000 (17:19 +0100)]
s4:torture: Add missing C99 initializer for torture_rpc_samlogon
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Mon, 7 Jan 2019 16:11:42 +0000 (17:11 +0100)]
s4:torture: Use C99 initializer in test_SecurityDescriptorsSecInfo
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 12:53:45 +0000 (13:53 +0100)]
s4:torture: Use C99 initializer for last element in get_and_set_info
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 11:30:15 +0000 (12:30 +0100)]
s4:torture: Complete C99 initializers for levels in raw qfileinfo test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 12:42:23 +0000 (13:42 +0100)]
s4:torture: Use C99 initializers for file_levels in smb2 getinfo test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 12:40:19 +0000 (13:40 +0100)]
s4:torture: Use C99 initializers for level in smb2 dir test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 12:13:11 +0000 (13:13 +0100)]
s4:torture: Use C99 initializers for hold_sharemode_table in smb2 sharemode test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 12:10:49 +0000 (13:10 +0100)]
s4:torture: Use C99 initializers for dirs in smb2 oplock test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 12:08:42 +0000 (13:08 +0100)]
s4:torture: Use C99 initializers for levels in raw notify test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 12:03:29 +0000 (13:03 +0100)]
s4:torture: Use C99 initializers for levels in raw search test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 11:50:54 +0000 (12:50 +0100)]
s4:torture: Use C99 initializers for dirs in smb2 notify test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 11:43:14 +0000 (12:43 +0100)]
s4:torture: Use C99 initializers for levels in qfsinfo test
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 11:53:39 +0000 (12:53 +0100)]
s4:torture: Use C99 initializers for dirs in oplock test
Yes, this was already valid C99 but the compiler on Ubuntu 14.04 simply
sucks. This doesn't happen with this gcc version on other Linux systems.
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Thu, 13 Dec 2018 10:43:52 +0000 (11:43 +0100)]
s4:samdb: Use C99 initializer for last element of ldb_map_objectclass
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Andreas Schneider [Mon, 14 Jan 2019 12:13:09 +0000 (13:13 +0100)]
s4:dsdb: Use C99 initializer in util
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>