From: Michael Adam Date: Mon, 30 Jan 2012 12:56:45 +0000 (+0100) Subject: s3:net ads join: reduce indentation and improve logging in the dns update code block X-Git-Tag: tevent-0.9.15~133 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=63d9b5d75a435bbbc06aa8d00371a1c61b69acfb;p=thirdparty%2Fsamba.git s3:net ads join: reduce indentation and improve logging in the dns update code block by doing an early goto done upon error condition --- diff --git a/source3/utils/net_ads.c b/source3/utils/net_ads.c index 9c3a0473c22..2a4b2ecec59 100644 --- a/source3/utils/net_ads.c +++ b/source3/utils/net_ads.c @@ -1467,22 +1467,26 @@ int net_ads_join(struct net_context *c, int argc, const char **argv) ADS_STRUCT *ads_dns = NULL; ads_dns = ads_init(lp_realm(), NULL, r->in.dc_name); - if (ads_dns != NULL) { - /* kinit with the machine password */ - use_in_memory_ccache(); - if (asprintf( &ads_dns->auth.user_name, "%s$", lp_netbios_name()) == -1) { - goto fail; - } - ads_dns->auth.password = secrets_fetch_machine_password( - r->out.netbios_domain_name, NULL, NULL ); - ads_dns->auth.realm = SMB_STRDUP( r->out.dns_domain_name ); - strupper_m(ads_dns->auth.realm ); - ads_kinit_password( ads_dns ); + if (ads_dns == NULL) { + d_fprintf(stderr, _("DNS update failed: out of memory!\n")); + goto done; } - if ( !ads_dns || !NT_STATUS_IS_OK(net_update_dns( ctx, ads_dns, NULL)) ) { - d_fprintf( stderr, _("DNS update failed!\n") ); + /* kinit with the machine password */ + + use_in_memory_ccache(); + if (asprintf( &ads_dns->auth.user_name, "%s$", lp_netbios_name()) == -1) { + goto fail; + } + ads_dns->auth.password = secrets_fetch_machine_password( + r->out.netbios_domain_name, NULL, NULL); + ads_dns->auth.realm = SMB_STRDUP(r->out.dns_domain_name); + strupper_m(ads_dns->auth.realm); + ads_kinit_password(ads_dns); + + if (!NT_STATUS_IS_OK(net_update_dns( ctx, ads_dns, NULL))) { + d_fprintf( stderr, _("DNS update failed!\n")); } /* exit from this block using machine creds */