diff options
author | Andreas Schneider <asn@samba.org> | 2016-06-15 16:05:58 +0200 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2016-06-15 16:31:17 +0200 |
commit | 169e8aeda5e9d851ec818b5c2543ec59c8bc0c31 (patch) | |
tree | d2d240a43280a41fc7b00c50dfcbc6ee0c743bd0 /source3/lib/netapi | |
parent | 4c408f6de5c32a41fbb44971419118e5425d13e7 (diff) | |
download | samba-169e8aeda5e9d851ec818b5c2543ec59c8bc0c31.tar.gz |
s3-libnetapi: Correctly check for lp_realm.
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
Diffstat (limited to 'source3/lib/netapi')
-rw-r--r-- | source3/lib/netapi/joindomain.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/source3/lib/netapi/joindomain.c b/source3/lib/netapi/joindomain.c index 632c8c6638f..dc224b61916 100644 --- a/source3/lib/netapi/joindomain.c +++ b/source3/lib/netapi/joindomain.c @@ -175,6 +175,7 @@ WERROR NetUnjoinDomain_l(struct libnetapi_ctx *mem_ctx, const char *domain = NULL; WERROR werr; struct libnetapi_private_ctx *priv; + const char *realm = lp_realm(); priv = talloc_get_type_abort(mem_ctx->private_data, struct libnetapi_private_ctx); @@ -186,8 +187,8 @@ WERROR NetUnjoinDomain_l(struct libnetapi_ctx *mem_ctx, werr = libnet_init_UnjoinCtx(mem_ctx, &u); W_ERROR_NOT_OK_RETURN(werr); - if (lp_realm()) { - domain = lp_realm(); + if (realm[0] != '\0') { + domain = realm; } else { domain = lp_workgroup(); } @@ -352,8 +353,10 @@ WERROR NetGetJoinInformation_r(struct libnetapi_ctx *ctx, WERROR NetGetJoinInformation_l(struct libnetapi_ctx *ctx, struct NetGetJoinInformation *r) { - if ((lp_security() == SEC_ADS) && lp_realm()) { - *r->out.name_buffer = talloc_strdup(ctx, lp_realm()); + const char *realm = lp_realm(); + + if ((lp_security() == SEC_ADS) && realm[0] != '\0') { + *r->out.name_buffer = talloc_strdup(ctx, realm); } else { *r->out.name_buffer = talloc_strdup(ctx, lp_workgroup()); } |