diff options
author | Volker Lendecke <vl@samba.org> | 2009-02-21 17:01:58 +0100 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2009-03-27 14:15:38 +0100 |
commit | 1b2b26204ab7edddd73a97047f37e36e616c773c (patch) | |
tree | 1929a8d4b77347af28d54f532bbb8df38e189159 /source/lib | |
parent | 633c1de12c9abf845dc4295dac1718d6ff380fcd (diff) | |
download | samba-1b2b26204ab7edddd73a97047f37e36e616c773c.tar.gz samba-1b2b26204ab7edddd73a97047f37e36e616c773c.tar.xz samba-1b2b26204ab7edddd73a97047f37e36e616c773c.zip |
Speed up "net conf list"
With 1000 shares in the registry, this changed the time of "net conf list" from
1.1 seconds to .6 seconds.
Signed-off-by: Michael Adam <obnox@samba.org>
(cherry picked from commit c4a1fc734b70efa932df4d4f8d9c66ea4f83ad0b)
Diffstat (limited to 'source/lib')
-rw-r--r-- | source/lib/smbconf/smbconf.c | 4 | ||||
-rw-r--r-- | source/lib/smbconf/smbconf_reg.c | 3 |
2 files changed, 3 insertions, 4 deletions
diff --git a/source/lib/smbconf/smbconf.c b/source/lib/smbconf/smbconf.c index 2d4f635f854..f57ca905206 100644 --- a/source/lib/smbconf/smbconf.c +++ b/source/lib/smbconf/smbconf.c @@ -203,10 +203,6 @@ WERROR smbconf_get_share(struct smbconf_ctx *ctx, const char *servicename, struct smbconf_service **service) { - if (!smbconf_share_exists(ctx, servicename)) { - return WERR_NO_SUCH_SERVICE; - } - return ctx->ops->get_share(ctx, mem_ctx, servicename, service); } diff --git a/source/lib/smbconf/smbconf_reg.c b/source/lib/smbconf/smbconf_reg.c index 0b5e45de8be..0a64e9a8bc8 100644 --- a/source/lib/smbconf/smbconf_reg.c +++ b/source/lib/smbconf/smbconf_reg.c @@ -896,6 +896,9 @@ 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; } |