summaryrefslogtreecommitdiff
path: root/source3/lib/smbconf
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2009-03-05 11:11:19 +1100
committerAndrew Bartlett <abartlet@samba.org>2009-03-05 11:11:19 +1100
commitebe5b2835331ab259dd32bf6dc574ae999e2d36d (patch)
treeb7ce49ef619de869dd03bfd48b65f0fa175b0f33 /source3/lib/smbconf
parent5a10d804919af205b027ee519b9fa05519913ebe (diff)
parentf85aa66ca22f29734bdacaa559737990fbe28d8a (diff)
downloadsamba-ebe5b2835331ab259dd32bf6dc574ae999e2d36d.tar.gz
samba-ebe5b2835331ab259dd32bf6dc574ae999e2d36d.tar.bz2
samba-ebe5b2835331ab259dd32bf6dc574ae999e2d36d.zip
Merge branch 'master' of ssh://git.samba.org/data/git/samba into master-devel
Diffstat (limited to 'source3/lib/smbconf')
-rw-r--r--source3/lib/smbconf/smbconf_reg.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/source3/lib/smbconf/smbconf_reg.c b/source3/lib/smbconf/smbconf_reg.c
index 5a5c0ead65..ae6a41151d 100644
--- a/source3/lib/smbconf/smbconf_reg.c
+++ b/source3/lib/smbconf/smbconf_reg.c
@@ -80,12 +80,20 @@ static WERROR smbconf_reg_open_service_key(TALLOC_CTX *mem_ctx,
uint32 desired_access,
struct registry_key **key)
{
+ WERROR werr;
+
if (servicename == NULL) {
*key = rpd(ctx)->base_key;
return WERR_OK;
}
- return reg_openkey(mem_ctx, rpd(ctx)->base_key, servicename,
+ werr = reg_openkey(mem_ctx, rpd(ctx)->base_key, servicename,
desired_access, key);
+
+ if (W_ERROR_EQUAL(werr, WERR_BADFILE)) {
+ werr = WERR_NO_SUCH_SERVICE;
+ }
+
+ return werr;
}
/**
@@ -828,9 +836,6 @@ static WERROR smbconf_reg_get_share(struct smbconf_ctx *ctx,
werr = smbconf_reg_open_service_key(tmp_ctx, ctx, servicename,
REG_KEY_READ, &key);
if (!W_ERROR_IS_OK(werr)) {
- if (W_ERROR_EQUAL(werr, WERR_BADFILE)) {
- werr = WERR_NO_SUCH_SERVICE;
- }
goto done;
}