summaryrefslogtreecommitdiff
path: root/source3/lib/netapi
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2016-06-15 16:05:58 +0200
committerGünther Deschner <gd@samba.org>2016-06-15 16:31:17 +0200
commit169e8aeda5e9d851ec818b5c2543ec59c8bc0c31 (patch)
treed2d240a43280a41fc7b00c50dfcbc6ee0c743bd0 /source3/lib/netapi
parent4c408f6de5c32a41fbb44971419118e5425d13e7 (diff)
downloadsamba-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.c11
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());
}