diff options
author | Günther Deschner <gd@samba.org> | 2012-09-25 11:09:45 +0200 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2012-10-02 16:22:31 +0200 |
commit | 0eded14f19806e87b2205677064d1413bcb86d38 (patch) | |
tree | ef3304373e24b509472ccdbe419b07f25236e704 /source3/utils/net_ads.c | |
parent | ec23d0a3eeeeb2f3969d4d113d80bd82cb1dbbcd (diff) | |
download | samba-0eded14f19806e87b2205677064d1413bcb86d38.tar.gz samba-0eded14f19806e87b2205677064d1413bcb86d38.tar.bz2 samba-0eded14f19806e87b2205677064d1413bcb86d38.zip |
s3-net: give more control how to update/register DNS entries.
Guenther
Diffstat (limited to 'source3/utils/net_ads.c')
-rw-r--r-- | source3/utils/net_ads.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/source3/utils/net_ads.c b/source3/utils/net_ads.c index ffb79991de..7648dc7797 100644 --- a/source3/utils/net_ads.c +++ b/source3/utils/net_ads.c @@ -1206,6 +1206,17 @@ static NTSTATUS net_update_dns_internal(struct net_context *c, for (i=0; i < ns_count; i++) { + uint32_t flags = DNS_UPDATE_SIGNED | + DNS_UPDATE_UNSIGNED | + DNS_UPDATE_UNSIGNED_SUFFICIENT | + DNS_UPDATE_PROBE | + DNS_UPDATE_PROBE_SUFFICIENT; + + if (c->opt_force) { + flags &= ~DNS_UPDATE_PROBE_SUFFICIENT; + flags &= ~DNS_UPDATE_UNSIGNED_SUFFICIENT; + } + status = NT_STATUS_UNSUCCESSFUL; /* Now perform the dns update - we'll try non-secure and if we fail, @@ -1213,7 +1224,7 @@ static NTSTATUS net_update_dns_internal(struct net_context *c, fstrcpy( dns_server, nameservers[i].hostname ); - dns_err = DoDNSUpdate(dns_server, dnsdomain, machine_name, addrs, num_addrs); + dns_err = DoDNSUpdate(dns_server, dnsdomain, machine_name, addrs, num_addrs, flags); if (ERR_DNS_IS_OK(dns_err)) { status = NT_STATUS_OK; goto done; |