The branch, master has been updated via 10b6cce samba-tool dns: Don't use "localhost" to connect to local host via d5de797 utils: Remove unused samba-dig tool via 945bc84 dsdb: Make secrets_tdb_sync cope with -H secrets.ldb from d7cab97 s3:param: make init_locals() static.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 10b6cceb1f0f09c7a8f5fc8882fdc3852d11951f Author: Kai Blin <k...@samba.org> Date: Wed Nov 14 11:32:06 2012 +0100 samba-tool dns: Don't use "localhost" to connect to local host Calling "samba-tool dns <cmd> localhost" provokes a stacktrace. This just makes 'samba-tool dns <cmd> localhost' work and doesn't fix the underlying issue, but I don't see it causing any harm (unless you don't have an ipv4 localhost, I guess). Signed-off-by: Kai Blin <k...@samba.org> Reviewed-by: Michael Adam <ob...@samba.org> Autobuild-User(master): Michael Adam <ob...@samba.org> Autobuild-Date(master): Fri Nov 16 13:18:14 CET 2012 on sn-devel-104 commit d5de797af2aeb3697022e33ea51c516621b25e2f Author: Kai Blin <k...@samba.org> Date: Fri Nov 16 09:59:53 2012 +0100 utils: Remove unused samba-dig tool Signed-off-by: Kai Blin <k...@samba.org> Reviewed-by: Michael Adam <ob...@samba.org> commit 945bc84818039b79f4d9b7982e24c1e0e7dd8a45 Author: Andrew Bartlett <abart...@samba.org> Date: Wed Sep 12 15:34:29 2012 +0200 dsdb: Make secrets_tdb_sync cope with -H secrets.ldb The issue was, without a / in the path, we did not cope. Andrew Bartlett Reviewed-by: Michael Adam <ob...@samba.org> ----------------------------------------------------------------------- Summary of changes: source4/dsdb/samdb/ldb_modules/secrets_tdb_sync.c | 5 +- source4/scripting/python/samba/netcmd/dns.py | 2 + utils/samba-dig.c | 160 --------------------- utils/wscript_build | 7 - wscript_build | 1 - 5 files changed, 5 insertions(+), 170 deletions(-) delete mode 100644 utils/samba-dig.c delete mode 100644 utils/wscript_build Changeset truncated at 500 lines: diff --git a/source4/dsdb/samdb/ldb_modules/secrets_tdb_sync.c b/source4/dsdb/samdb/ldb_modules/secrets_tdb_sync.c index c742d86..e90fc77 100644 --- a/source4/dsdb/samdb/ldb_modules/secrets_tdb_sync.c +++ b/source4/dsdb/samdb/ldb_modules/secrets_tdb_sync.c @@ -498,11 +498,12 @@ static int secrets_tdb_sync_init(struct ldb_module *module) p = strrchr(private_dir, '/'); if (p) { *p = '\0'; + secrets_init_path(private_dir); } else { - return ldb_operr(ldb); + secrets_init_path("."); } - secrets_init_path(private_dir); + TALLOC_FREE(private_dir); data->secrets_tdb = secrets_db_ctx(); diff --git a/source4/scripting/python/samba/netcmd/dns.py b/source4/scripting/python/samba/netcmd/dns.py index 8bd3249..c00d17a 100644 --- a/source4/scripting/python/samba/netcmd/dns.py +++ b/source4/scripting/python/samba/netcmd/dns.py @@ -31,6 +31,8 @@ from samba.dcerpc import dnsp, dnsserver def dns_connect(server, lp, creds): + if server.lower() == 'localhost': + server = '127.0.0.1' binding_str = "ncacn_ip_tcp:%s[sign]" % server dns_conn = dnsserver.dnsserver(binding_str, lp, creds) return dns_conn diff --git a/utils/samba-dig.c b/utils/samba-dig.c deleted file mode 100644 index ec0677a..0000000 --- a/utils/samba-dig.c +++ /dev/null @@ -1,160 +0,0 @@ -/* - Unix SMB/CIFS implementation. - - DNS query too for Samba with socketwrapper support - - Copyright (C) 2012 Kai Blin <k...@samba.org> - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include "includes.h" -#include <talloc.h> -#include <tevent.h> -#include "lib/util/samba_util.h" -#include "librpc/ndr/libndr.h" -#include "librpc/gen_ndr/ndr_dns.h" -#include "libcli/dns/libdns.h" - -static void usage(void) -{ - printf("Usage: samba-dig <dns-server-ip> <data> <record-type>\n\n"); -} - -static struct dns_name_packet *make_name_packet(TALLOC_CTX *mem_ctx, - uint16_t operation) -{ - struct dns_name_packet *packet = talloc_zero(mem_ctx, - struct dns_name_packet); - if (packet == NULL) { - return NULL; - } - - packet->id = random(); - packet->operation |= operation | DNS_FLAG_RECURSION_DESIRED; - - return packet; -} - -#define QTYPE_MAP(type) if (strncmp(type_string, #type , strlen( #type )) == 0) \ - return DNS_QTYPE_ ## type ; - -static enum dns_qtype parse_qtype(const char *type_string) -{ - QTYPE_MAP(AAAA); - QTYPE_MAP(A); - QTYPE_MAP(SOA); - QTYPE_MAP(PTR); - return -1; -} -#undef QTYPE_MAP - -static struct dns_name_question *make_question(TALLOC_CTX *mem_ctx, - const char *name, - enum dns_qtype type) -{ - struct dns_name_question *question = talloc(mem_ctx, - struct dns_name_question); - if (question == NULL) { - return NULL; - } - - question->name = talloc_strdup(question, name); - question->question_type = type; - question->question_class = DNS_QCLASS_IN; - - return question; -} - -int main(int argc, char **argv) -{ - TALLOC_CTX *mem_ctx = talloc_init("samba-dig"); - struct tevent_context *ev; - struct dns_name_packet *dns_packet, *in_packet; - struct dns_name_question *question; - enum dns_qtype type; - enum ndr_err_code ndr_err; - struct tevent_req *req; - WERROR w_err; - DATA_BLOB out, in; - int ret = 0; - - if (argc < 4) { - usage(); - exit(1); - } - - ev = tevent_context_init(mem_ctx); - setup_logging("samba-dig", DEBUG_STDERR); - debug_parse_levels("1"); - - DEBUG(1,("Querying %s for %s %s\n", argv[1], argv[2], argv[3])); - - dns_packet = make_name_packet(mem_ctx, DNS_OPCODE_QUERY); - - type = parse_qtype(argv[3]); - if (type == -1) { - DEBUG(0, ("Invalid DNS_QTYPE %s\n", argv[3])); - ret = 1; - goto error; - } - - question = make_question(dns_packet, argv[2], type); - - dns_packet->qdcount = 1; - dns_packet->questions = question; - NDR_PRINT_DEBUG(dns_name_packet, dns_packet); - - ndr_err = ndr_push_struct_blob(&out, mem_ctx, dns_packet, - (ndr_push_flags_fn_t)ndr_push_dns_name_packet); - if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) { - DEBUG(0, ("Failed to marshall dns_name_packet: %d\n", ndr_err)); - ret = 1; - goto error; - } - - req = dns_udp_request_send(mem_ctx, ev, argv[1], out.data, out.length); - if (req == NULL) { - DEBUG(0, ("Failed to allocate memory for tevent_req\n")); - ret = 1; - goto error; - } - if (!tevent_req_poll(req, ev)) { - DEBUG(0, ("Error sending dns request\n")); - ret = 1; - goto error; - } - w_err = dns_udp_request_recv(req, mem_ctx, &in.data, &in.length); - if (!W_ERROR_IS_OK(w_err)) { - DEBUG(0, ("Error receiving dns request: %s\n", win_errstr(w_err))); - ret = 1; - goto error; - } - - in_packet = talloc(mem_ctx, struct dns_name_packet); - - ndr_err = ndr_pull_struct_blob(&in, in_packet, in_packet, - (ndr_pull_flags_fn_t)ndr_pull_dns_name_packet); - if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) { - DEBUG(0, ("Failed to unmarshall dns_name_packet: %d\n", ndr_err)); - ret = 1; - goto error; - } - - NDR_PRINT_DEBUG(dns_name_packet, in_packet); - -error: - talloc_free(mem_ctx); - return ret; -} diff --git a/utils/wscript_build b/utils/wscript_build deleted file mode 100644 index bb13bc7..0000000 --- a/utils/wscript_build +++ /dev/null @@ -1,7 +0,0 @@ -#!/usr/bin/env python - -bld.SAMBA_BINARY('samba-dig', - source='samba-dig.c', - deps='samba-util NDR_DNS tevent clidns' - ) - diff --git a/wscript_build b/wscript_build index 0098036..ec673ce 100644 --- a/wscript_build +++ b/wscript_build @@ -136,7 +136,6 @@ bld.RECURSE('libds/common') bld.RECURSE('source3') bld.RECURSE('dfs_server') bld.RECURSE('file_server') -bld.RECURSE('utils') bld.RECURSE('lib/krb5_wrap') bld.RECURSE('testsuite/headers') -- Samba Shared Repository