Michael Adam
4a9e0e6034
libsmbconf: fix segfault in listing share names / config.
...
Discovered by Günther while giving a talk. - Sorry Günther!
Michael
(This used to be commit 518f4d4e6662138a2e71acc2296acedefc7c739a)
2008-04-16 22:44:04 +02:00
Michael Adam
bcaac7fa36
libmsbconf: add handling of NULL share parameters to registry backend.
...
Michael
(This used to be commit 6c1181fda2f040d9555917b10a65bc0dfc1f0593)
2008-04-15 17:40:28 +02:00
Michael Adam
be504b9d32
libsmbconf: don't complain with WERR_ALREADY_EXISTS for NULL share in smbconf_create_share().
...
These are values stored inside the base key for registry.
This is not getting deleted.
Michael
(This used to be commit aa167de8252bb615bd21fb3fd9468383b8357d32)
2008-04-15 17:40:28 +02:00
Michael Adam
747d4a8f04
libsmbconf: make sure to always list the NULL section first in text backend.
...
Michael
(This used to be commit b50fdf321dc8056caa2b057cbd7f83792dfbcd4d)
2008-04-15 17:40:27 +02:00
Michael Adam
34e8ec54ce
libsmbconf: default to the NULL section when a parameter is encountered w/o section
...
Michael
(This used to be commit e1b98f1cbce72d12085d86da834f0949ecbfbf67)
2008-04-15 17:40:27 +02:00
Michael Adam
e700800720
libsmbconf: allow NULL sharename in smbconf_share_exists().
...
Michael
(This used to be commit cb23052b2055d77924b2a593ec14f0c1de9a3b51)
2008-04-15 17:40:27 +02:00
Michael Adam
0e7497936c
libsmbconf: add handling of NULL strings to smbconf_find_in_array().
...
Michael
(This used to be commit a5923bafe9b543d50dca06d251186948baeac8cc)
2008-04-15 17:40:27 +02:00
Michael Adam
b396ad07d1
libsmbconf: add handling of "NULL" strings to smbconf_add_string_to_array()
...
Michael
(This used to be commit aba261a9143bc7ab681b1c57ccfc08da0cffcfe7)
2008-04-15 17:40:27 +02:00
Michael Adam
4eab3d3cf0
libsmbconf: add a smbconf init dispatcher smbconf_init().
...
The dispatcher takes a config source argument in the form
of "backend:path" where backend can (currently) be one of
"txt" (aka "file") or "reg" (aka "registry").
When the path is omitted, it is up to the backend to provide
a default path.
When there is no separator ":" and the string is not a recognized
backend, then file backend is assumed and the string is passed
in as the path argument.
Michael
(This used to be commit cc613a60eb0f6b92cae98e8669e5e569a1eb9324)
2008-04-13 20:04:44 +02:00
Michael Adam
09c6c38deb
libsmbconf: move setting of verbatim variable into a more internal function.
...
Michael
(This used to be commit 9efd7b515183fa28f400fe88af63e0b0126e3e00)
2008-04-13 20:04:44 +02:00
Michael Adam
935b99c84c
libsmbconf: add a check for talloc failure to smbconf_txt_init().
...
Michael
(This used to be commit f76ec7d87e206426c795374397ba725ecdeec784)
2008-04-13 20:04:44 +02:00
Michael Adam
35d6068f25
libsmbconf: remove the bool verbatim parameter from txt backend init function.
...
Always be verbatim for now. Backend config options may be added later
via some private data pointer.
Michael
(This used to be commit e8bafcfbf4a7ab1dc1ce4f2acd24b0eb74933256)
2008-04-13 20:04:43 +02:00
Michael Adam
611b6bfa3b
libsmbconf: rename smbconf_init() to smbconf_init_internal().
...
smbconf_init should be the name of the dispatcher (to be written)
Michael
(This used to be commit 3fb95ab757650712716472ebaccb7119feb27596)
2008-04-13 20:04:43 +02:00
Michael Adam
6c66d5d019
registry: change registry_init_smbconf() to return WERROR instead of bool
...
Michael
(This used to be commit 7c343c60574cda091f59861fbcb2893aefb564e9)
2008-04-13 15:33:48 +02:00
Michael Adam
bcb19766d6
registry: make registry_init_smbconf() hook the registry ops onto given key.
...
This still defaults to HKLM\Software\Samba\smbconf, but is interchangeable now.
This allows us to open the libsmbconf registry backend on different registry keys.
Michael
(This used to be commit 8fe1a2f567afbecbe487f08825cb43b038065e99)
2008-04-13 15:33:47 +02:00
Michael Adam
a3f1b5f150
libsmbconf: don't mark the API as "subject to change" any longer.
...
At least I hope it won't need many changes anymore...
Michael
(This used to be commit c4e1439eded7bb4df60b9d4b457e5b7898928c9e)
2008-04-11 15:40:02 +02:00
Michael Adam
3201155e00
libsmbconf: testsuite: add test for delete_includes
...
Michael
(This used to be commit 757601ec830f4a08c5fdcbe2d9bfac86fdc6602c)
2008-04-10 01:29:01 +02:00
Michael Adam
30fedf2855
libsmbconf: return success and count 0 from get_includes when no includes present.
...
Michael
(This used to be commit 182433be5bae753d264491a3ec97433e2e316d10)
2008-04-10 01:29:01 +02:00
Michael Adam
87ca447231
libsmbconf: add delete_includes mehtod to the api (and backend implementations)
...
Michael
(This used to be commit daef50e54d58a6684b6a890ebf523ca6245f0290)
2008-04-10 01:29:01 +02:00
Michael Adam
1321dda51b
libsmbconf: let set_includes delete the includes paramter when given an empty list
...
instead of complaining
Michael
(This used to be commit 0dc1fd68598529891429fb29ab1f561fb434bf38)
2008-04-10 01:29:01 +02:00
Michael Adam
9a3fe1943e
libsmbconf: fix crashbug - correctly check for existence of file.
...
Michael
(This used to be commit dd543cd30c3eca9621681ba4b6e9a6683ef2bd07)
2008-04-10 01:29:01 +02:00
Michael Adam
bb91ab6116
libsmbconf: prevent getting/deleting value "includes".
...
This has to be handled differently (by using get_includes / set_includes)
Michael
(This used to be commit 5a880c6a2f2415220557a76a9b4ce9a17c766819)
2008-04-10 01:29:01 +02:00
Michael Adam
d26daa0234
libsmbconf: consider "include" a forbidden parameter in regisry config again.
...
It is now taken care of by the special includes handling.
Michael
(This used to be commit 2c8c65d6900086e92c838333b31abf9efdb61343)
2008-04-10 01:29:00 +02:00
Michael Adam
7bf407c711
libsmbconf: add includes at the end of parameter list in reg_get_share().
...
Michael
(This used to be commit 9bd06d5737aff2bb27c07575285e079fd561a566)
2008-04-10 01:29:00 +02:00
Michael Adam
bb39d5c14b
libsmbconf: add function smbconf_reg_valname_valid() and use it in get_values()
...
so "includes" doesn't get listed as a parameter
Michael
(This used to be commit 01c4bd07305b4ce800b99a098652623f118a74aa)
2008-04-10 01:29:00 +02:00
Michael Adam
1da629537c
libsmbconf: refactor get_includes on opened key into smbconf_reg_get_includes_internal()
...
Michael
(This used to be commit 072a3228a4e08894c67ad2983bcea3417e202773)
2008-04-10 01:29:00 +02:00
Michael Adam
a7e06ad625
libsmbconf: rename registry_smbconf_valname_forbidden() to smbconf_reg_valname_forbidden()
...
Michael
(This used to be commit 23fb33fd33a8287d8691a1a5e95bf160be3ed25c)
2008-04-10 01:29:00 +02:00
Michael Adam
b91cdf7183
libsmbconf: make registry_smbconf_valname_forbidden() static
...
Michael
(This used to be commit 798808174d0d4cae3a746e26a253cad1a3177684)
2008-04-10 01:29:00 +02:00
Michael Adam
e06e8084c6
libsmbconf: move registry_smbconf_valname_forbidden() to the registry backend
...
from util_reg.c - no other callers left
Michael
(This used to be commit 98151fd3e1c24e5c8aaf3f5132071e91ac6ef257)
2008-04-10 01:29:00 +02:00
Michael Adam
7f0127a903
libsmbconf: more sanely print multi_sz values in registry backend
...
Michael
(This used to be commit 382c623948abd1c6a5cf8ab7ee2be784fcef76ee)
2008-04-10 01:28:59 +02:00
Michael Adam
40c60b0917
libsmbconf: testsuite: fix handling of error message/overall status
...
Michael
(This used to be commit c2d3d56d628f266fdfc0ca98fc199afc01670c2c)
2008-04-10 01:28:59 +02:00
Michael Adam
70bb9a919b
libsmbconf: testsuite: add test_set_get_includes() and use it in registry test
...
Michael
(This used to be commit 1f64a1b2b4f11b44e9c9584480f01cac066a6a1d)
2008-04-10 01:28:59 +02:00
Michael Adam
097a056df9
libsmbconf: testsuite: refactor printing of string lists out.
...
Michael
(This used to be commit 828c7297247a557ed8e2b6935bbc819aae95a660)
2008-04-10 01:28:59 +02:00
Michael Adam
56c0f28a50
libsmbconf: implement get_includes() and set_includes() for registry backend.
...
includes are stored per share in a special registry value "includes"
of type multi_sz.
Michael
(This used to be commit 3fee0d79cc618adc7dd82cfeff62c72ef061017b)
2008-04-10 01:28:59 +02:00
Michael Adam
8c091a60d4
libsmbconf: testsuite: test get_includes for registry backend
...
Michael
(This used to be commit 31e68cbe5bdc8d69b2b711ec8ea62dbe612ec68f)
2008-04-10 01:28:59 +02:00
Michael Adam
07d038652c
libsmbconf: testsuite: use the get_global_includes in get_includes test.
...
Michael
(This used to be commit 2a4b71b105616b42e1bbfbf01126cc445a991cc0)
2008-04-10 01:28:58 +02:00
Michael Adam
d399778acc
libsmbconf: add "_global_" wrappers for get/set_includes.
...
These use the usual global_check like the other global wrappers.
Michael
(This used to be commit ce1b2f550860cb3a566db09f7c7eac39c195a5b7)
2008-04-10 01:28:58 +02:00
Michael Adam
f4de1c6ac7
libsmbconf: testsuite: add test for "get_includes" and use it in the text backend test.
...
Michael
(This used to be commit 1ca5afe58cef8b750a65bd8c2a5c9ee794ed50ba)
2008-04-10 01:28:58 +02:00
Michael Adam
dde53e5d68
libsmbconf: fill get_includes() in text backed to retrieve includes from cache.
...
Michael
(This used to be commit 5e253e10b7f80af1f5a855c8e0f00846853cced1)
2008-04-10 01:28:58 +02:00
Michael Adam
893ed44762
libsmbconf: testsuite: set the debufg fd to stderr.
...
...so that we see some debug output
Michael
(This used to be commit 7cfec55ed48644f922ca0ffaa171e3512c93a360)
2008-04-10 01:28:58 +02:00
Michael Adam
e724bfae7a
libsmbconf: testsuite: use POPT_COMMON_SAMBA instead of POPT_COMMON_CONFIGFILE
...
so we can for instance set the debug level on the command line.
Michael
(This used to be commit 94a19234620fc23db9c4aaf449e948342164d1d4)
2008-04-10 01:28:58 +02:00
Michael Adam
869e011e0f
libsmbconf: testsuite: add talloc_stackframe to main().
...
Michael
(This used to be commit 8c631ac2f42e984137972b7388add4bcbc199665)
2008-04-10 01:28:58 +02:00
Michael Adam
e251327b5b
libsmbconf: testsuite: add support for "--configfile" option.
...
Michael
(This used to be commit 9f6c909f465df5fc64e2bec88acf272be9cd574e)
2008-04-10 01:28:57 +02:00
Michael Adam
b7377c33a3
libsmbconf: add testsuite to the library.
...
Currently only the init function is tested, more tests to come...
Michael
(This used to be commit bc8dc8626c5fb296edbd193a7cc293317c7a29ca)
2008-04-10 01:28:57 +02:00
Michael Adam
f5aac0a8d0
libsmbconf: add talloc context to the get_includes methods.
...
Michael
(This used to be commit ed535b6b30b5c9412803f6373eadc704de6de2f9)
2008-04-10 01:28:57 +02:00
Michael Adam
8e97662899
libsmbconf: add get_includes() and set_includes() to the API.
...
Includes have to get a special treatment, at least for registry.
Includes are not like other smbconf parameters: they are some kind
of metainformation. "include" has two effects when stated twice so
it can not be stored boldly into registry, since there can only be
one value named "include" in registry per key.
I will provide special handling for includes for the registry backend.
This patch provides the necessary methods in the smbconf API.
Michael
(This used to be commit e86eb375d9f83f73aeea0a16c8b43e2ef21a6e20)
2008-04-10 01:28:57 +02:00
Michael Adam
df6b68b073
libsmbconf: activate the verbatim-flag in text backend: store parameters as they come.
...
with verbatim == true, parameters are stored as they come from the input file,
duplicates are listed multiple times, etc.
Michael
(This used to be commit c65575f831e9929ef7e66f2c7bfeed50f135b4b2)
2008-04-10 01:28:57 +02:00
Michael Adam
101587eb6e
libsmbconf: pass txt_private_data instead of only cache to do_parameter/section
...
in preparation of using the verbatim flag.
Michael
(This used to be commit c68cd2477c65d5521a713ae0f37cf2994d2c339e)
2008-04-10 01:28:57 +02:00
Michael Adam
a01e840814
libsmbconf: load file after special initialization
...
otherwise verbatim parameter can have no effect.
Michael
(This used to be commit 2ff0b693d7fc7e130a2fb14c06ae8bc28f4b5c57)
2008-04-10 01:28:56 +02:00
Michael Adam
3d38f143df
libsmbconf: add a "verbatim" parameter to smbconf_init_txt_simple().
...
Michael
(This used to be commit b9e72b402de412c23702715ead96c20e9b3248cc)
2008-04-10 01:28:56 +02:00