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 3fb95ab757
)
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 7c343c6057
)
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 8fe1a2f567
)
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 c4e1439ede
)
2008-04-11 15:40:02 +02:00
Michael Adam
3201155e00
libsmbconf: testsuite: add test for delete_includes
...
Michael
(This used to be commit 757601ec83
)
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 182433be5b
)
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 daef50e54d
)
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 0dc1fd6859
)
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 dd543cd30c
)
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 5a880c6a2f
)
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 2c8c65d690
)
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 9bd06d5737
)
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 01c4bd0730
)
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 072a3228a4
)
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 23fb33fd33
)
2008-04-10 01:29:00 +02:00
Michael Adam
b91cdf7183
libsmbconf: make registry_smbconf_valname_forbidden() static
...
Michael
(This used to be commit 798808174d
)
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 98151fd3e1
)
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 382c623948
)
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 c2d3d56d62
)
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 1f64a1b2b4
)
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 828c729724
)
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 3fee0d79cc
)
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 31e68cbe5b
)
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 2a4b71b105
)
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 ce1b2f5508
)
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 1ca5afe58c
)
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 5e253e10b7
)
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 7cfec55ed4
)
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 94a1923462
)
2008-04-10 01:28:58 +02:00
Michael Adam
869e011e0f
libsmbconf: testsuite: add talloc_stackframe to main().
...
Michael
(This used to be commit 8c631ac2f4
)
2008-04-10 01:28:58 +02:00
Michael Adam
e251327b5b
libsmbconf: testsuite: add support for "--configfile" option.
...
Michael
(This used to be commit 9f6c909f46
)
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 bc8dc8626c
)
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 ed535b6b30
)
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 e86eb375d9
)
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 c65575f831
)
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 c68cd2477c
)
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 2ff0b693d7
)
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 b9e72b402d
)
2008-04-10 01:28:56 +02:00
Michael Adam
0acf338503
libsmbconf: reformat smbconf_format_registry_value() - indentations/tabs
...
Michael
(This used to be commit b79a33eb2f
)
2008-04-10 01:28:56 +02:00
Michael Adam
ec12f0a25a
libsmbconf: untangle assignment and test in for-loop condition.
...
Michael
(This used to be commit 4339caff09
)
2008-04-10 01:28:56 +02:00
Michael Adam
3c40c2d7d3
libsmbconf: fix a comment
...
Michael
(This used to be commit bc1a5bdbd3
)
2008-04-10 01:28:56 +02:00
Michael Adam
8c85c10f8a
libsmbconf: search from the back when getting parameter from text backend
...
so we make sure to always deliver the value last read.
Michael
(This used to be commit 2eb5a681e9
)
2008-04-10 01:28:56 +02:00
Michael Adam
862608ca1f
libsmbconf: add smbconf_reverse_find_in_array() to find last occurence of a string.
...
Michael
(This used to be commit 25e0fd8478
)
2008-04-10 01:28:55 +02:00
Michael Adam
498e5f99d2
libsmbconf: move smbconf_find_in_array() to smbconf_util.c
...
Michael
(This used to be commit 7af79e60a3
)
2008-04-10 01:28:55 +02:00
Michael Adam
015e424bf1
libsmbconf: reorder prototypes in smbconf_private.h
...
Michael
(This used to be commit 0e932a0981
)
2008-04-10 01:28:55 +02:00
Michael Adam
77fce35417
libsmbconf: rename smbconf_txt_find_in_array() to smbconf_find_in_array()
...
Michael
(This used to be commit 9890f43726
)
2008-04-10 01:28:55 +02:00
Michael Adam
36ede8ae54
libsmbconf: move utility functions from main module to new smbconf_util.c
...
Michael
(This used to be commit e0f6a9d50c
)
2008-04-10 01:28:55 +02:00
Michael Adam
24c54ee4fb
libsmbconf: move initialization of registry value down after error checks.
...
Michael
(This used to be commit 2a8029985f
)
2008-04-03 15:43:04 +02:00
Michael Adam
3d8727343b
libsmbconf: text - pass the cache instead of all private data to pm_process.
...
Michael
(This used to be commit ee46f0eca6
)
2008-03-27 00:32:09 +01:00
Michael Adam
916b30d502
libsmbconf: text - change the cache to be talloced
...
instead of having it directly as a member in the private data struct.
This makes it easier to flush and initialize the cache.
Michael
(This used to be commit 03efb72b46
)
2008-03-27 00:32:09 +01:00
Michael Adam
1c8ad296b9
libsmbconf: in text backend, put flushing of the cache into a helper function.
...
And use it also in the close operation.
Michael
(This used to be commit 8cb2881249
)
2008-03-27 00:32:09 +01:00
Michael Adam
2e83818b3b
libsmbconf: add a text backend to libsmbconf based on the params.c parser.
...
This is a simple implementation of text backend for libsmbconf.
It is read only. It uses the parser from params.c. It loads the
given config file and holds the parsed lists of strings in memory.
Config is only re-read if the time stamp of the config file has changed.
Brilliant performance on large files is not to be expected since the
string lists are not hashed. This might be added in the future.
Michael
(This used to be commit 4ea5084385
)
2008-03-26 14:55:05 +01:00
Michael Adam
a8d7febc7a
smbconf: reformat - fix intentation.
...
This time this won't make me stumble, since there is no
magic in indented function headers here - no automatic
prototype generation... :-)
Michael
(This used to be commit 6d72fc4373
)
2008-03-26 11:15:04 +01:00
Michael Adam
9ec7af58c6
registry: fix registry_init_smbconf() to close the registry at the end.
...
Michael
(This used to be commit f4d87fdbf2
)
2008-03-21 23:50:49 +01:00
Michael Adam
a81ed36e86
libsmbconf: add internal open/close handling to registry backend.
...
This internally keeps track of opened registry in the private data
struct. The first call that really accesses data, opens the registry
and it is kept open until the destructor is called.
This behaviour might be changed in the future.
Michael
(This used to be commit 03e72e1307
)
2008-03-21 23:43:52 +01:00
Michael Adam
aa3e4d56cb
libsmbconf: add a comment.
...
Michael
(This used to be commit 513ae78ef7
)
2008-03-21 22:55:20 +01:00
Michael Adam
be97af0edb
libsmbconf: add private_data section to smbconf_ctx.
...
This private data should be used by backends.
The token for the registry backend is moved from
the context to the private data section, since
this is registry specific.
Michael
(This used to be commit a02163356b
)
2008-03-21 22:52:27 +01:00
Michael Adam
6f7cfeddd6
libsmbconf: add a "path" variable to the conf context.
...
This is passed to the module init routines.
In case of the registry, this is the path of the
basekey in registry, that is to be used, defaulting
to KEY_SMBCONF (HKLM\software\samba\smbconf), when
NULL is given. This is the only case currently used.
In order to support other keys, registry initialization
for smbconf has to be changed to support different keys.
Michael
(This used to be commit 96434d9dc7
)
2008-03-21 18:19:24 +01:00
Michael Adam
40ea88db5e
libsmbconf: add structuring comments to the prototypes in the public header.
...
Michael
(This used to be commit 4f816df276
)
2008-03-21 16:45:25 +01:00
Michael Adam
e62cae6638
libsmbconf: adapt a comment to new circumstances
...
Michael
(This used to be commit 83b9453c88
)
2008-03-21 16:42:42 +01:00
Michael Adam
5e1eca34f3
libsmbconf: group together functions in smbconf.c more appropriately
...
Michael
(This used to be commit e8ed8ad077
)
2008-03-21 16:40:20 +01:00
Michael Adam
44dc10d808
libsmbconf: add a comment.
...
Michael
(This used to be commit 8974b28368
)
2008-03-21 16:35:52 +01:00
Michael Adam
890d1d8f78
libsmbconf: move registry implementation to a module of its own.
...
Michael
(This used to be commit 431b10bfe0
)
2008-03-21 16:26:50 +01:00
Michael Adam
8ae2afa3c8
libsmbconf: reformaat - fix some whispacing/tabs
...
Michael
(This used to be commit 1a5e5bf38f
)
2008-03-21 02:29:09 +01:00
Michael Adam
fececde181
libsmbconf: add backend specific init function.
...
Hide generic init function taking smbconf_ops argument
from public api.
Michael
(This used to be commit b3f6920ccb
)
2008-03-21 02:25:56 +01:00
Michael Adam
6c20e83294
libsmbconf: add shutdown handler to smbconf_ops.
...
Michael
(This used to be commit acbd1f40e0
)
2008-03-21 02:25:56 +01:00
Michael Adam
095048f2df
libsmbconf: fix comments
...
Michael
(This used to be commit 24f32d9bd9
)
2008-03-21 02:25:56 +01:00
Michael Adam
23b1d721b8
libsmbconf: rename smbconf_close() to smbconf_shutdown().
...
Michael
(This used to be commit 797b26ad3f
)
2008-03-21 02:25:56 +01:00
Michael Adam
adf5bf554c
libsmbconf: rename smbconf_open() to smbconf_init().
...
That's more appropriate.
Michael
(This used to be commit d7bd9bb8aa
)
2008-03-21 02:25:56 +01:00
Michael Adam
ac7c582ec0
libsmbconf: add open and close operations to the smbconf_ops.
...
Note: currently, reg_init_smbconf opens the registry, but does
not close it. This has to be changed. so that it is closed.
And then libsmbconf will need these open/close functions
Michael
(This used to be commit 77dbdf82ef
)
2008-03-21 02:25:56 +01:00
Michael Adam
2135f7dd61
libsmbconf: introduce a smbconf_ops layer to allow interchangeable backends.
...
Michael
(This used to be commit a857f643d1
)
2008-03-21 02:25:56 +01:00
Michael Adam
f12b10566d
libsmbconf: move smbconf_reg_initialize() down to the smbconf operations.
...
Michael
(This used to be commit f2d605006c
)
2008-03-21 02:25:56 +01:00
Michael Adam
d19e308a14
libsmbconf: add existence check for service to smbconf_delete_share().
...
Michael
(This used to be commit d44c2ef0b7
)
2008-03-21 02:25:56 +01:00
Michael Adam
94ef924800
libsmbconf: add existence check for service to smbconf_get_share().
...
Michael
(This used to be commit 26208d3e96
)
2008-03-21 02:25:56 +01:00
Michael Adam
fbd2c552ea
libsmbconf: add check for NULL servicename to smbconf_share_exists().
...
Michael
(This used to be commit 5dac66c82a
)
2008-03-21 02:25:56 +01:00
Michael Adam
4c7214aae2
libsmbconf: fix a comment
...
(This used to be commit 103a37ac8e
)
2008-03-21 02:25:56 +01:00
Michael Adam
73f8c1c68c
libsmbconf: refactor out registry implementation of smbconf operations.
...
This leaves most of the api functions mere wrappers except for some
common initial checks.
Michael
(This used to be commit 9448a7a298
)
2008-03-21 02:25:55 +01:00
Michael Adam
1e8d72aec9
libsmbconf: refactor autocreation of [global] into a helper function.
...
Michael
(This used to be commit aeaf66c064
)
2008-03-21 02:25:55 +01:00
Michael Adam
7b53c84fe1
libsmbconf: put the smbconf context struct into a private header.
...
Michael
(This used to be commit a99ee5e536
)
2008-03-21 02:25:55 +01:00
Michael Adam
153ed797e6
libsmbconf: change the API to always take the smbconf_ctx parameter first.
...
..for consistency. Exception: the open/init function, where the smbconf_ctx
is created from the given talloc context.
Michael
(This used to be commit 304dba6cb2
)
2008-03-21 02:25:55 +01:00
Michael Adam
fc730cac35
libsmbconf: fix indentation.
...
Michael
(This used to be commit 7460697ea4
)
2008-03-21 02:25:55 +01:00
Michael Adam
7621b4c3d8
libsmbconf: change smbconf_get_seqnum() to smbconf_changed().
...
The former seqnum is hidden inside a struct smbconf_csn.
And the get_seqnum is united with a changed function that
stores the seqnum inside the given csn.
Michael
(This used to be commit 5b6b90900a
)
2008-03-21 02:25:55 +01:00
Michael Adam
77dd53ad5c
libsmbconf: fix a comment
...
Michael
(This used to be commit e6b60f6cad
)
2008-03-21 02:25:55 +01:00
Michael Adam
6274929b1e
libsmbconf: rename all occurrences of libnet_conf_ to smbconf_ .
...
Michael
(This used to be commit 097af0309d
)
2008-03-17 18:03:02 +01:00
Michael Adam
670418c116
Move libnet_conf to a library lib/smbconf/ of its own, fixing the api.
...
The libnet_conf code to access the registry based configuration has
become more of a library used in several places in samba (e.g. loadparm)
than an abstraction of "net conf". So I move it to a location lib/smbconf/.
In the same breath, the api is fixed (not generated by make proto anymore).
Michael
(This used to be commit 5315ef41f4
)
2008-03-17 18:03:02 +01:00