[SCM] Samba Shared Repository - branch master updated
Andrew Bartlett
abartlet at samba.org
Sun Mar 15 22:36:02 MDT 2015
The branch, master has been updated
via 65379ef param: Use IDL-based constants for NBT and NBT dgram ports
via c253f95 smb.conf.5: Mark "dgram port" and "nbt port" as deprecated
via 67c041a samba-tool drs: Ensure we do not replicate all secrets to an RODC, even with --local
via 023055e torture3: Rename LOCAL-WBCLIENT to WBCLIENT-MULTI-PING
via dbc4320 selftest: Run LOCAL-WBCLIENT against a test environment, not none
via 2881175 dsdb-repl: Always set DRSUAPI_DRS_SPECIAL_SECRET_PROCESSING when we are an RODC
via b5be45c s4-process_model: Remove prefork and onefork
via 98d2d8d selftest: Fix comments in provision_promoted_dc
via 91629ae pygensec: Add bindings for gensec_set_target_service and gensec_set_target_hostname
via 3c0e3af Transition to waf 1.8: wrapped conf.check_cfg
via 5771276 Transition to waf 1.8: replaced on_results by update_outputs
via 2ab6c10 Update the copy of waf to current 1.5
via 782e8d6 lib/param: Add hook that allows modification of default settings.
via a549b45 Require at least Python 2.6.
via 44113a4 selftest: use server_maxtime = 9000 by default
via 9198246 s4.2/fsmo.py: fixed fsmo transfer exception
via 09b3e42 s4:auth/gensec_gssapi: let gensec_gssapi_update() return NT_STATUS_LOGON_FAILURE for unknown errors
from dd43b70 librpc: use the correct "MSServerClusterMgmtAPI" auth service for clusapi.
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 65379ef3a44972698fd64905edfbb8865b338df8
Author: Andrew Bartlett <abartlet at samba.org>
Date: Sun Mar 1 20:04:00 2015 +1300
param: Use IDL-based constants for NBT and NBT dgram ports
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet at samba.org>
Autobuild-Date(master): Mon Mar 16 05:35:56 CET 2015 on sn-devel-104
commit c253f956ef0b40a8d1d877acfd5da9d27ec0d0b4
Author: Andrew Bartlett <abartlet at samba.org>
Date: Sun Mar 1 20:00:05 2015 +1300
smb.conf.5: Mark "dgram port" and "nbt port" as deprecated
These are not honored in the source3 codebase, so keeping them is confusing.
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
BUG: https://bugzilla.samba.org/show_bug.cgi?id=11126
commit 67c041ab7693106b44a098d82d7422ea5aa48445
Author: Andrew Bartlett <abartlet at samba.org>
Date: Fri Feb 20 17:54:32 2015 +1300
samba-tool drs: Ensure we do not replicate all secrets to an RODC, even with --local
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
commit 023055ec80ef0bb82e68a7e1677dac2eff061cf2
Author: Andrew Bartlett <abartlet at samba.org>
Date: Mon Feb 23 11:52:58 2015 +1300
torture3: Rename LOCAL-WBCLIENT to WBCLIENT-MULTI-PING
This is not a local test, it should not be named LOCAL-*
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
commit dbc43200968a4a54fc1b820bd74737beb63a2343
Author: Andrew Bartlett <abartlet at samba.org>
Date: Mon Feb 23 11:49:29 2015 +1300
selftest: Run LOCAL-WBCLIENT against a test environment, not none
The issue with this test was that it ran against whatever was
listening (or not) at the build prefix, not what was running under
make test
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
commit 288117507f6ba0faa25bc83df532cdd254738e00
Author: Andrew Bartlett <abartlet at samba.org>
Date: Fri Feb 20 17:55:49 2015 +1300
dsdb-repl: Always set DRSUAPI_DRS_SPECIAL_SECRET_PROCESSING when we are an RODC
Unless we are using DRSUAPI_EXOP_REPL_SECRET, always remove
DRSUAPI_DRS_WRIT_REP and always set
DRSUAPI_DRS_SPECIAL_SECRET_PROCESSING
Otherwise, we will not work as an RODC, because replication will fail
with access denied errors.
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
commit b5be45c453bd51373bade26c29828b500ba586ec
Author: Andrew Bartlett <abartlet at samba.org>
Date: Thu Feb 19 14:44:00 2015 +1300
s4-process_model: Remove prefork and onefork
While it is possible to run Samba in these modes, it isn't tested and
isn't required.
Each of these modes requires that SIGCHLD be set to SIGIGN, and that
breaks samba_runcmd_*().
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
commit 98d2d8d6cd53a5cff6b9ec17ddc3ee9cb8a75b3e
Author: Andrew Bartlett <abartlet at samba.org>
Date: Tue Feb 17 15:47:47 2015 +1300
selftest: Fix comments in provision_promoted_dc
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
commit 91629aeb48b1a6b748b3d391a39deb156ff2b25b
Author: Andrew Bartlett <abartlet at samba.org>
Date: Mon Mar 2 13:58:21 2015 +1300
pygensec: Add bindings for gensec_set_target_service and gensec_set_target_hostname
Signed-off-by: Andrew Bartlett <abartlet at samba.org>
Reviewed-by: Jelmer Vernooij <jelmer at samba.org>
commit 3c0e3af39541f15eef0f9017cb1622706e73e46a
Author: Thomas Nagy <tnagy2pow10 at gmail.com>
Date: Sat Mar 7 15:31:19 2015 +0100
Transition to waf 1.8: wrapped conf.check_cfg
Reviewed-By: Jelmer Vernooij <jelmer at samba.org>
(forward ported to current master by abartlet)
Reviewed-by: Andrew Bartlett <abartlet at samba.org>
commit 5771276be91ec3aad6a7d8cf396ee4721a171feb
Author: Thomas Nagy <tnagy2pow10 at gmail.com>
Date: Sat Mar 7 15:31:18 2015 +0100
Transition to waf 1.8: replaced on_results by update_outputs
Reviewed-By: Jelmer Vernooij <jelmer at samba.org>
Reviewed-by: Andrew Bartlett <abartlet at samba.org>
commit 2ab6c10f843c2bd703528bf5b753d8a74e97cf3a
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Sat Mar 7 15:31:17 2015 +0100
Update the copy of waf to current 1.5
After making the update, this commit reverts the upstream addition of
LDVERSION support in Python.py, which is necessary for Python 3
support in waf. This change conflicts with the last remaining
Samba-specific change in waf to help with cross-compilation.
Change-Id: Iedfdc0199e9d10dfbd910c4eab50c23f984b6e2d
Signed-Off-By: Jelmer Vernooij <jelmer at samba.org>
Reviewed-by: Andrew Bartlett <abartlet at samba.org>
commit 782e8d6aabd6535448992f1ee69f25c71e8f2b6c
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Mon Mar 16 12:30:27 2015 +1300
lib/param: Add hook that allows modification of default settings.
This is useful for reducing the amount of configuration necessary for
OpenChange.
The hook is ideally registered from a plugin initialization function,
so that it automatically gets used whenever the plugin is installed.
This makes it possible for plugins to e.g. extend the default value for
the list of enabled dcerpc endpoint services.
Like all our interfaces, callers are expected to use this API
responsibly. For example, OpenChange should only enable its DCE/RPC
interface if it has been provisioned.
Change-Id: Ic8bacdd8b4c92a2a4b97cfa1a50dc41365b78071
Signed-Off-By: Jelmer Vernooij <jelmer at samba.org>
Reviewed-by: Andrew Bartlett <abartlet at samba.org>
commit a549b45ed7747e8817ff07e8e755ef04edb35574
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Sun Mar 8 15:54:07 2015 +0100
Require at least Python 2.6.
Per discussion on the list earlier this year.
Change-Id: I085c6e8253b2b8183749c2b0962714c350b2d440
Signed-off-by: Jelmer Vernooij <jelmer at samba.org>
Reviewed-by: Andrew Bartlett <abartlet at samba.org>
commit 44113a45dcf139f7ac95f217dcc9aab45a203975
Author: Stefan Metzmacher <metze at samba.org>
Date: Sun Mar 15 23:06:47 2015 +0100
selftest: use server_maxtime = 9000 by default
With something like this:
samba.stdout:
[1730(16549)/1735 at 2h9m58s] samba4.blackbox.dbcheck(dc)
ERROR: Testsuite[samba4.blackbox.dbcheck(dc)]
REASON: unable to set up environment dc:local - exiting
samba.stderr:
samba: maximum runtime exceeded - terminating at 1426447450, current ts:
1426447450
samba child process 653 exited with value 0
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Andrew Bartlett <abartlet at samba.org>
commit 9198246f91c02e33ed7a3580588557d0fb9f8811
Author: Steve Howells <steve.howells at moscowfirst.com>
Date: Sat Jan 31 16:09:17 2015 +0000
s4.2/fsmo.py: fixed fsmo transfer exception
In transfer_role() there is an duplicate call to samdb.modify() inside the if statement
where the type of role is being determined (specifically for the naming fsmo). This
call is unnecessary as after the if statement their is a correct call, with a try/catch
block, used by all fsmo transfers that will handle errors - such as the DC with the
fsmo role being offline.
The call to samdb.modify() inside the if statement for naming fsmo has been removed.
Bug: https://bugzilla.samba.org/show_bug.cgi?id=10924
Signed-off-by: Steve Howells <steve.howells at moscowfirst.com>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Marc Muehlfeld <mmuehlfeld at samba.org>
Reviewed-by: Andrew Bartlett <abartlet at samba.org>
commit 09b3e42e70b35bfa1985e70780a67085644b9914
Author: Stefan Metzmacher <metze at samba.org>
Date: Fri Mar 13 14:39:10 2015 +0100
s4:auth/gensec_gssapi: let gensec_gssapi_update() return NT_STATUS_LOGON_FAILURE for unknown errors
The 'nt_status' variable is set to NT_STATUS_OK before.
Bug: https://bugzilla.samba.org/show_bug.cgi?id=11164
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Andrew Bartlett <abartlet at samba.org>
-----------------------------------------------------------------------
Summary of changes:
buildtools/wafadmin/3rdparty/build_file_tracker.py | 54 ++++
buildtools/wafadmin/3rdparty/prefork.py | 276 +++++++++++++++++++++
buildtools/wafadmin/Node.py | 2 +-
buildtools/wafadmin/TaskGen.py | 2 +-
buildtools/wafadmin/Tools/tex.py | 2 +-
buildtools/wafadmin/Utils.py | 12 +-
buildtools/wafsamba/samba_autoconf.py | 4 +
buildtools/wafsamba/samba_autoproto.py | 2 +-
buildtools/wafsamba/samba_pidl.py | 4 +-
buildtools/wafsamba/wafsamba.py | 2 +-
buildtools/wafsamba/wscript | 2 +-
docs-xml/smbdotconf/protocol/dgramport.xml | 3 +-
docs-xml/smbdotconf/protocol/nbtport.xml | 2 +
lib/param/loadparm.c | 38 ++-
lib/param/param.h | 15 ++
lib/param/param_table.c | 6 +-
python/samba/netcmd/drs.py | 5 +-
python/samba/netcmd/fsmo.py | 1 -
selftest/selftest.pl | 2 +-
selftest/target/Samba4.pm | 4 +-
source3/param/loadparm.c | 5 +-
source3/selftest/tests.py | 4 +-
source3/torture/torture.c | 4 +-
source3/wscript | 6 +-
source3/wscript_configure_system_ncurses | 2 +-
source4/auth/gensec/gensec_gssapi.c | 4 +-
source4/auth/gensec/pygensec.c | 40 +++
source4/dsdb/repl/drepl_out_helpers.c | 3 +
source4/heimdal_build/wscript_build | 14 +-
source4/lib/tls/wscript | 4 +-
source4/smbd/process_onefork.c | 149 -----------
source4/smbd/process_prefork.c | 207 ----------------
source4/smbd/wscript_build | 17 --
wscript | 4 +-
wscript_configure_system_mitkrb5 | 6 +-
35 files changed, 484 insertions(+), 423 deletions(-)
create mode 100644 buildtools/wafadmin/3rdparty/build_file_tracker.py
create mode 100755 buildtools/wafadmin/3rdparty/prefork.py
delete mode 100644 source4/smbd/process_onefork.c
delete mode 100644 source4/smbd/process_prefork.c
Changeset truncated at 500 lines:
diff --git a/buildtools/wafadmin/3rdparty/build_file_tracker.py b/buildtools/wafadmin/3rdparty/build_file_tracker.py
new file mode 100644
index 0000000..9c48928
--- /dev/null
+++ b/buildtools/wafadmin/3rdparty/build_file_tracker.py
@@ -0,0 +1,54 @@
+#! /usr/bin/env python
+# encoding: utf-8
+# Thomas Nagy, 2015
+
+"""
+Force tasks to use file timestamps to force partial rebuilds when touch-ing build files
+
+touch out/libfoo.a
+... rebuild what depends on libfoo.a
+
+to use::
+ def options(opt):
+ opt.tool_options('build_file_tracker')
+"""
+
+import os
+import Task, Utils
+
+def signature(self):
+ try: return self.cache_sig[0]
+ except AttributeError: pass
+
+ self.m = Utils.md5()
+
+ # explicit deps
+ exp_sig = self.sig_explicit_deps()
+
+ # env vars
+ var_sig = self.sig_vars()
+
+ # implicit deps
+ imp_sig = Task.SIG_NIL
+ if self.scan:
+ try:
+ imp_sig = self.sig_implicit_deps()
+ except ValueError:
+ return self.signature()
+
+ # timestamp dependency on build files only (source files are hashed)
+ buf = []
+ for k in self.inputs + getattr(self, 'dep_nodes', []) + self.generator.bld.node_deps.get(self.unique_id(), []):
+ if k.id & 3 == 3:
+ t = os.stat(k.abspath(self.env)).st_mtime
+ buf.append(t)
+ self.m.update(str(buf))
+
+ # we now have the signature (first element) and the details (for debugging)
+ ret = self.m.digest()
+ self.cache_sig = (ret, exp_sig, imp_sig, var_sig)
+ return ret
+
+Task.Task.signature_bak = Task.Task.signature # unused, kept just in case
+Task.Task.signature = signature # overridden
+
diff --git a/buildtools/wafadmin/3rdparty/prefork.py b/buildtools/wafadmin/3rdparty/prefork.py
new file mode 100755
index 0000000..1c760c2
--- /dev/null
+++ b/buildtools/wafadmin/3rdparty/prefork.py
@@ -0,0 +1,276 @@
+#! /usr/bin/env python
+# encoding: utf-8
+# Thomas Nagy, 2015 (ita)
+#
+# prefer the waf 1.8 version
+
+"""
+The full samba build can be faster by ~10%, but there are a few limitations:
+* only one build process should be run at a time as the servers would use the same ports
+* only one build command is going to be called ("waf build configure build" would not work)
+
+def build(bld):
+
+ mod = Utils.load_tool('prefork')
+ mod.build(bld)
+ ...
+ (build declarations after)
+"""
+
+import os, re, socket, threading, sys, subprocess, time, atexit, traceback
+try:
+ import SocketServer
+except ImportError:
+ import socketserver as SocketServer
+try:
+ from queue import Queue
+except ImportError:
+ from Queue import Queue
+try:
+ import cPickle
+except ImportError:
+ import pickle as cPickle
+
+DEFAULT_PORT = 51200
+
+HEADER_SIZE = 128
+
+REQ = 'REQ'
+RES = 'RES'
+BYE = 'BYE'
+
+def make_header(params):
+ header = ','.join(params)
+ if sys.hexversion > 0x3000000:
+ header = header.encode('iso8859-1')
+ header = header.ljust(HEADER_SIZE)
+ assert(len(header) == HEADER_SIZE)
+ return header
+
+
+re_valid_query = re.compile('^[a-zA-Z0-9_, ]+$')
+class req(SocketServer.StreamRequestHandler):
+ def handle(self):
+ while 1:
+ try:
+ self.process_command()
+ except Exception as e:
+ print(e)
+ break
+
+ def process_command(self):
+ query = self.rfile.read(HEADER_SIZE)
+ if not query:
+ return
+ #print(len(query))
+ assert(len(query) == HEADER_SIZE)
+ if sys.hexversion > 0x3000000:
+ query = query.decode('iso8859-1')
+ #print "%r" % query
+ if not re_valid_query.match(query):
+ raise ValueError('Invalid query %r' % query)
+
+ query = query.strip().split(',')
+
+ if query[0] == REQ:
+ self.run_command(query[1:])
+ elif query[0] == BYE:
+ raise ValueError('Exit')
+ else:
+ raise ValueError('Invalid query %r' % query)
+
+ def run_command(self, query):
+
+ size = int(query[0])
+ data = self.rfile.read(size)
+ assert(len(data) == size)
+ kw = cPickle.loads(data)
+
+ # run command
+ ret = out = err = exc = None
+ cmd = kw['cmd']
+ del kw['cmd']
+ #print(cmd)
+
+ try:
+ if kw['stdout'] or kw['stderr']:
+ p = subprocess.Popen(cmd, **kw)
+ (out, err) = p.communicate()
+ ret = p.returncode
+ else:
+ ret = subprocess.Popen(cmd, **kw).wait()
+ except Exception as e:
+ ret = -1
+ exc = str(e) + traceback.format_exc()
+
+ # write the results
+ if out or err or exc:
+ data = (out, err, exc)
+ data = cPickle.dumps(data, -1)
+ else:
+ data = ''
+
+ params = [RES, str(ret), str(len(data))]
+
+ self.wfile.write(make_header(params))
+
+ if data:
+ self.wfile.write(data)
+
+def create_server(conn, cls):
+ #SocketServer.ThreadingTCPServer.allow_reuse_address = True
+ #server = SocketServer.ThreadingTCPServer(conn, req)
+
+ SocketServer.TCPServer.allow_reuse_address = True
+ server = SocketServer.TCPServer(conn, req)
+ #server.timeout = 6000 # seconds
+ server.serve_forever(poll_interval=0.001)
+
+if __name__ == '__main__':
+ if len(sys.argv) > 1:
+ port = int(sys.argv[1])
+ else:
+ port = DEFAULT_PORT
+ #conn = (socket.gethostname(), port)
+ conn = ("127.0.0.1", port)
+ #print("listening - %r %r\n" % conn)
+ create_server(conn, req)
+else:
+
+ import Runner, Utils
+
+ def init_task_pool(self):
+ # lazy creation, and set a common pool for all task consumers
+ pool = self.pool = []
+ for i in range(self.numjobs):
+ consumer = Runner.get_pool()
+ pool.append(consumer)
+ consumer.idx = i
+ self.ready = Queue(0)
+ def setq(consumer):
+ consumer.ready = self.ready
+ try:
+ threading.current_thread().idx = consumer.idx
+ except Exception as e:
+ print(e)
+ for x in pool:
+ x.ready.put(setq)
+ return pool
+ Runner.Parallel.init_task_pool = init_task_pool
+
+ PORT = 51200
+
+ def make_server(idx):
+ port = PORT + idx
+ cmd = [sys.executable, os.path.abspath(__file__), str(port)]
+ proc = subprocess.Popen(cmd)
+ proc.port = port
+ return proc
+
+ def make_conn(srv):
+ #port = PORT + idx
+ port = srv.port
+ conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+ conn.connect(('127.0.0.1', port))
+ return conn
+
+ SERVERS = []
+ CONNS = []
+ def close_all():
+ while CONNS:
+ conn = CONNS.pop()
+ try:
+ conn.close()
+ except:
+ pass
+ while SERVERS:
+ srv = SERVERS.pop()
+ try:
+ srv.kill()
+ except:
+ pass
+ atexit.register(close_all)
+
+ def put_data(conn, data):
+ conn.send(data)
+
+ def read_data(conn, siz):
+ ret = conn.recv(siz)
+ if not ret:
+ print("closed connection?")
+
+ assert(len(ret) == siz)
+ return ret
+
+ def exec_command(cmd, **kw):
+ if 'log' in kw:
+ log = kw['log']
+ kw['stdout'] = kw['stderr'] = subprocess.PIPE
+ del(kw['log'])
+ else:
+ kw['stdout'] = kw['stderr'] = None
+ kw['shell'] = isinstance(cmd, str)
+
+ idx = threading.current_thread().idx
+ kw['cmd'] = cmd
+
+ data = cPickle.dumps(kw, -1)
+ params = [REQ, str(len(data))]
+ header = make_header(params)
+
+ conn = CONNS[idx]
+
+ put_data(conn, header)
+ put_data(conn, data)
+
+ data = read_data(conn, HEADER_SIZE)
+ if sys.hexversion > 0x3000000:
+ data = data.decode('iso8859-1')
+
+ lst = data.split(',')
+ ret = int(lst[1])
+ dlen = int(lst[2])
+
+ out = err = None
+ if dlen:
+ data = read_data(conn, dlen)
+ (out, err, exc) = cPickle.loads(data)
+ if exc:
+ raise Utils.WafError('Execution failure: %s' % exc)
+
+ if out:
+ log.write(out)
+ if err:
+ log.write(err)
+
+ return ret
+
+ def __init__(self):
+ threading.Thread.__init__(self)
+
+ # identifier of the current thread
+ self.idx = len(SERVERS)
+
+ # create a server and wait for the connection
+ srv = make_server(self.idx)
+ SERVERS.append(srv)
+
+ conn = None
+ for x in range(30):
+ try:
+ conn = make_conn(srv)
+ break
+ except socket.error:
+ time.sleep(0.01)
+ if not conn:
+ raise ValueError('Could not start the server!')
+ CONNS.append(conn)
+
+ self.setDaemon(1)
+ self.start()
+ Runner.TaskConsumer.__init__ = __init__
+
+ def build(bld):
+ # dangerous, there is no other command hopefully
+ Utils.exec_command = exec_command
+
diff --git a/buildtools/wafadmin/Node.py b/buildtools/wafadmin/Node.py
index 236dd0d..4fa205c 100644
--- a/buildtools/wafadmin/Node.py
+++ b/buildtools/wafadmin/Node.py
@@ -663,7 +663,7 @@ class Node(object):
def update_build_dir(self, env=None):
if not env:
- for env in bld.all_envs:
+ for env in self.bld.all_envs:
self.update_build_dir(env)
return
diff --git a/buildtools/wafadmin/TaskGen.py b/buildtools/wafadmin/TaskGen.py
index ae1834a..52d0236 100644
--- a/buildtools/wafadmin/TaskGen.py
+++ b/buildtools/wafadmin/TaskGen.py
@@ -567,7 +567,7 @@ def exec_rule(self):
if getattr(self, 'cwd', None):
tsk.cwd = self.cwd
- if getattr(self, 'on_results', None):
+ if getattr(self, 'on_results', None) or getattr(self, 'update_outputs', None):
Task.update_outputs(cls)
if getattr(self, 'always', None):
diff --git a/buildtools/wafadmin/Tools/tex.py b/buildtools/wafadmin/Tools/tex.py
index 2dd748b..700c54f 100644
--- a/buildtools/wafadmin/Tools/tex.py
+++ b/buildtools/wafadmin/Tools/tex.py
@@ -154,7 +154,7 @@ def tex_build(task, command='LATEX'):
task.env.SRCFILE = srcfile
ret = fun(task)
if ret:
- error('error when calling %s %s' % (command, latex_compile_cmd))
+ error('error when calling %s %s' % (command, latex_fun))
return ret
return None # ok
diff --git a/buildtools/wafadmin/Utils.py b/buildtools/wafadmin/Utils.py
index 91ded93..cff6719 100644
--- a/buildtools/wafadmin/Utils.py
+++ b/buildtools/wafadmin/Utils.py
@@ -416,15 +416,15 @@ def pprint(col, str, label='', sep='\n'):
"print messages in color"
sys.stderr.write("%s%s%s %s%s" % (Logs.colors(col), str, Logs.colors.NORMAL, label, sep))
-def check_dir(dir):
+def check_dir(path):
"""If a folder doesn't exists, create it."""
- try:
- os.lstat(dir)
- except OSError:
+ if not os.path.isdir(path):
try:
- os.makedirs(dir)
+ os.makedirs(path)
except OSError, e:
- raise WafError("Cannot create folder '%s' (original error: %s)" % (dir, e))
+ if not os.path.isdir(path):
+ raise Errors.WafError('Cannot create the folder %r' % path, ex=e)
+
def cmd_output(cmd, **kw):
diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py
index 905adc7..4f646fd 100644
--- a/buildtools/wafsamba/samba_autoconf.py
+++ b/buildtools/wafsamba/samba_autoconf.py
@@ -846,3 +846,7 @@ def SAMBA_CHECK_UNDEFINED_SYMBOL_FLAGS(conf):
if not sys.platform.startswith("openbsd") and conf.env.undefined_ignore_ldflags == []:
if conf.CHECK_LDFLAGS(['-undefined', 'dynamic_lookup']):
conf.env.undefined_ignore_ldflags = ['-undefined', 'dynamic_lookup']
+
+ at conf
+def CHECK_CFG(self, *k, **kw):
+ return self.check_cfg(*k, **kw)
diff --git a/buildtools/wafsamba/samba_autoproto.py b/buildtools/wafsamba/samba_autoproto.py
index 2d8ea54..bad627a 100644
--- a/buildtools/wafsamba/samba_autoproto.py
+++ b/buildtools/wafsamba/samba_autoproto.py
@@ -13,7 +13,7 @@ def SAMBA_AUTOPROTO(bld, header, source):
name = name,
source = source,
target = header,
- on_results=True,
+ update_outputs=True,
ext_out='.c',
before ='cc',
rule = '${PERL} "${SCRIPT}/mkproto.pl" --srcdir=.. --builddir=. --public=/dev/null --private="${TGT}" ${SRC}'
diff --git a/buildtools/wafsamba/samba_pidl.py b/buildtools/wafsamba/samba_pidl.py
index 2393c72..110b15e 100644
--- a/buildtools/wafsamba/samba_pidl.py
+++ b/buildtools/wafsamba/samba_pidl.py
@@ -78,7 +78,7 @@ def SAMBA_PIDL(bld, pname, source,
t = bld(rule='cd .. && %s %s ${PERL} "${PIDL}" --quiet ${OPTIONS} --outputdir ${OUTPUTDIR} -- "${SRC[0].abspath(env)}"' % (cpp, cc),
ext_out = '.c',
before = 'cc',
- on_results = True,
+ update_outputs = True,
shell = True,
source = source,
target = out_files,
@@ -135,7 +135,7 @@ def SAMBA_PIDL_TABLES(bld, name, target):
rule = '${PERL} ${SRC} --output ${TGT} | sed "s|default/||" > ${TGT}',
ext_out = '.c',
before = 'cc',
- on_results = True,
+ update_outputs = True,
shell = True,
source = '../../librpc/tables.pl',
target = target,
diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
index c054315..c423e60 100644
--- a/buildtools/wafsamba/wafsamba.py
+++ b/buildtools/wafsamba/wafsamba.py
@@ -638,7 +638,7 @@ def SAMBA_GENERATOR(bld, name, rule, source='', target='',
source=bld.EXPAND_VARIABLES(source, vars=vars),
target=target,
shell=isinstance(rule, str),
- on_results=True,
+ update_outputs=True,
before='cc',
ext_out='.c',
samba_type='GENERATOR',
diff --git a/buildtools/wafsamba/wscript b/buildtools/wafsamba/wscript
index 8027c00..3180543 100755
--- a/buildtools/wafsamba/wscript
+++ b/buildtools/wafsamba/wscript
@@ -383,7 +383,7 @@ def configure(conf):
conf.CHECK_INLINE()
# check for pkgconfig
- conf.check_cfg(atleast_pkgconfig_version='0.0.0')
+ conf.CHECK_CFG(atleast_pkgconfig_version='0.0.0')
conf.DEFINE('_GNU_SOURCE', 1, add_to_cflags=True)
conf.DEFINE('_XOPEN_SOURCE_EXTENDED', 1, add_to_cflags=True)
diff --git a/docs-xml/smbdotconf/protocol/dgramport.xml b/docs-xml/smbdotconf/protocol/dgramport.xml
index ee10e9c..a90310d 100644
--- a/docs-xml/smbdotconf/protocol/dgramport.xml
+++ b/docs-xml/smbdotconf/protocol/dgramport.xml
@@ -6,6 +6,7 @@
<description>
<para>Specifies which ports the server should listen on for NetBIOS datagram traffic.</para>
</description>
-
+<para>This parameter is deprecated, as it is not honoured in the
+majority of the code base.</para>
<value type="default">138</value>
</samba:parameter>
diff --git a/docs-xml/smbdotconf/protocol/nbtport.xml b/docs-xml/smbdotconf/protocol/nbtport.xml
index 1d99270..f7ec1e7 100644
--- a/docs-xml/smbdotconf/protocol/nbtport.xml
+++ b/docs-xml/smbdotconf/protocol/nbtport.xml
@@ -8,5 +8,7 @@
services traffic.</para>
</description>
--
Samba Shared Repository
More information about the samba-cvs
mailing list