Jo-Philipp Wich [Fri, 24 Feb 2012 14:08:34 +0000 (15:08 +0100)]
Do quote section names to keep the same style as option values
Jo-Philipp Wich [Fri, 24 Feb 2012 11:24:17 +0000 (12:24 +0100)]
Section names, option names, list names can only be identifiers, so they don't need to be quoted.
Strip quotes except from values.
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
Jo-Philipp Wich [Tue, 20 Dec 2011 16:06:50 +0000 (17:06 +0100)]
lua: properly handle corner cases in changes
The previous rework of the change serialization caused some deltas to incorrectly
get promoted to list appends. Rework the code to explicitely check for an add list
change type, in all other cases simply overwrite existing fields with the current
string value instead of coercing existing values into a table and append to that.
This hopefully sorts out the remaining issues.
Jo-Philipp Wich [Mon, 19 Dec 2011 18:25:00 +0000 (19:25 +0100)]
lua: expose completely new lists in changes() as well
Since the first delta of a new list is of type UCI_CMD_CHANGE and
not UCI_CMD_LIST_ADD, the current code does not start a new table
and subsequent items are silently disacarded. Expose all items of
new list by coercing the existing string element into a table when
encountering subsequent items.
Jo-Philipp Wich [Mon, 19 Dec 2011 18:10:07 +0000 (19:10 +0100)]
Merge branch 'master' of git://nbd.name/uci
Jo-Philipp Wich [Sat, 12 Nov 2011 14:16:31 +0000 (15:16 +0100)]
lua: simplify add_list changes handling, always create a table for LIST_ADD commands
Jo-Philipp Wich [Sat, 12 Nov 2011 13:35:12 +0000 (14:35 +0100)]
lua: expose add_list change items as table values
Jo-Philipp Wich [Sat, 12 Nov 2011 14:16:31 +0000 (15:16 +0100)]
lua: simplify add_list changes handling, always create a table for LIST_ADD commands
Jo-Philipp Wich [Sat, 12 Nov 2011 13:35:12 +0000 (14:35 +0100)]
lua: expose add_list change items as table values
Felix Fietkau [Fri, 21 Oct 2011 20:48:01 +0000 (22:48 +0200)]
fix segfault on import of anonymous sections
Felix Fietkau [Fri, 21 Oct 2011 13:15:53 +0000 (15:15 +0200)]
lua: always return after calling luaL_error (patch by Stanislav Fomichev)
Felix Fietkau [Fri, 21 Oct 2011 13:15:24 +0000 (15:15 +0200)]
cli: check against multiple -f invocations to avoid leaks (patch by Stanislav Fomichev)
Felix Fietkau [Fri, 21 Oct 2011 13:14:30 +0000 (15:14 +0200)]
ucimap: initialize an uninitialized pointer (patch by Stanislav Fomichev)
Felix Fietkau [Fri, 21 Oct 2011 13:14:03 +0000 (15:14 +0200)]
ucimap: fix a memory leak (patch by Stanislav Fomichev)
Felix Fietkau [Fri, 21 Oct 2011 13:13:32 +0000 (15:13 +0200)]
add a few missing null pointer checks, and fix check vs dereference order in some cases (patch by Stanislav Fomichev)
Felix Fietkau [Fri, 21 Oct 2011 13:12:04 +0000 (15:12 +0200)]
check result of memory allocations (patch by Stanislav Fomichev)
Felix Fietkau [Fri, 21 Oct 2011 13:09:11 +0000 (15:09 +0200)]
ucimap: fix use-after-free on cleanup (patch by Stanislav Fomichev)
Felix Fietkau [Fri, 23 Sep 2011 13:12:47 +0000 (07:12 -0600)]
free memory for uci hooks
Felix Fietkau [Thu, 15 Sep 2011 14:41:57 +0000 (16:41 +0200)]
lua: allow overriding of LUA_CFLAGS
Felix Fietkau [Thu, 15 Sep 2011 14:39:05 +0000 (16:39 +0200)]
lua: use pkg-config to find the correct lua cflags
Felix Fietkau [Wed, 31 Aug 2011 14:55:25 +0000 (16:55 +0200)]
fix lgpl license headers
Felix Fietkau [Tue, 19 Jul 2011 20:39:56 +0000 (22:39 +0200)]
fix one more unused-but-set variable
Felix Fietkau [Mon, 18 Jul 2011 10:05:42 +0000 (12:05 +0200)]
fix more unused-but-set errors
Felix Fietkau [Mon, 18 Jul 2011 06:25:27 +0000 (08:25 +0200)]
remove unused but set variable to fix a compiler warning
Felix Fietkau [Wed, 6 Apr 2011 23:13:57 +0000 (01:13 +0200)]
do not attempt to build lua if disabled
Felix Fietkau [Tue, 5 Apr 2011 01:33:38 +0000 (03:33 +0200)]
constify arguments to parser function
Felix Fietkau [Tue, 5 Apr 2011 01:29:17 +0000 (03:29 +0200)]
add parser helpers similar to the blobmsg parser in libubox
Felix Fietkau [Sat, 2 Apr 2011 13:44:34 +0000 (15:44 +0200)]
cli: do not return 0 if the command was invalid
Felix Fietkau [Sun, 27 Mar 2011 12:52:58 +0000 (14:52 +0200)]
also link the shared libuci to libdl
Felix Fietkau [Sun, 27 Mar 2011 00:47:23 +0000 (01:47 +0100)]
fix lua plugin linker error
Felix Fietkau [Sat, 26 Mar 2011 22:37:53 +0000 (23:37 +0100)]
fix building without plugin support
Felix Fietkau [Sat, 26 Mar 2011 20:55:03 +0000 (21:55 +0100)]
fix include path
Felix Fietkau [Sat, 26 Mar 2011 20:53:17 +0000 (21:53 +0100)]
use libdl
Felix Fietkau [Sat, 26 Mar 2011 20:46:11 +0000 (21:46 +0100)]
allow the user to override the lua path
Felix Fietkau [Sat, 26 Mar 2011 20:42:30 +0000 (21:42 +0100)]
move ucimap to a separate library
Felix Fietkau [Sat, 26 Mar 2011 20:40:51 +0000 (21:40 +0100)]
replace the existing build system with cmake
Felix Fietkau [Tue, 15 Mar 2011 03:05:15 +0000 (04:05 +0100)]
improve support for C++ stuff
Felix Fietkau [Wed, 19 Jan 2011 20:30:35 +0000 (21:30 +0100)]
fix uci_list_set_pos to reorder sections properly, even when moving a section to the last position
Felix Fietkau [Tue, 28 Dec 2010 17:14:39 +0000 (18:14 +0100)]
make uci_file_commit() static
Felix Fietkau [Mon, 1 Nov 2010 13:43:00 +0000 (14:43 +0100)]
lua: use uci_foreach_element_safe in uci_lua_foreach() - patch by jow
Felix Fietkau [Tue, 28 Sep 2010 09:17:23 +0000 (11:17 +0200)]
add a helper function for looking up an option string
Felix Fietkau [Tue, 28 Sep 2010 09:12:41 +0000 (11:12 +0200)]
fix return value in inline lookup functions
Lars-Peter Clausen [Sat, 21 Aug 2010 00:51:48 +0000 (02:51 +0200)]
ucimap: ucimap_parse: consider smap_offset when allocating the section data
Currently when there is no custom section data allocator the ucimap_section_data
struct has to be at the beginning at the containing structure.
This patch gets rid of that restriction by taking smap_offset into account.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Felix Fietkau [Sat, 21 Aug 2010 01:17:38 +0000 (03:17 +0200)]
add convenience functions for looking up packages/sections/options
Felix Fietkau [Sat, 21 Aug 2010 00:47:25 +0000 (02:47 +0200)]
remove the unused "complete" parameter for uci_fill_ptr()
Felix Fietkau [Sat, 21 Aug 2010 00:44:32 +0000 (02:44 +0200)]
add support for partial lookups - skip lookup for filled-in sections or packages
Felix Fietkau [Fri, 20 Aug 2010 18:45:04 +0000 (20:45 +0200)]
provide backwards compatibility in the lua module after the history -> delta change
Felix Fietkau [Fri, 20 Aug 2010 13:51:07 +0000 (15:51 +0200)]
make uci_lookup_ptr() use the extended flag properly again
Felix Fietkau [Fri, 20 Aug 2010 13:27:22 +0000 (15:27 +0200)]
split off and compile delta.c separately
Felix Fietkau [Fri, 20 Aug 2010 12:59:27 +0000 (14:59 +0200)]
uci_history -> uci_delta
Felix Fietkau [Fri, 20 Aug 2010 12:56:30 +0000 (14:56 +0200)]
split off and compile util.c separately
Felix Fietkau [Fri, 20 Aug 2010 12:55:15 +0000 (14:55 +0200)]
export uci_parse_ptr
Felix Fietkau [Fri, 20 Aug 2010 12:51:18 +0000 (14:51 +0200)]
split off and compile file.c separately
Felix Fietkau [Tue, 17 Aug 2010 11:34:04 +0000 (13:34 +0200)]
simplify dependency handling
Felix Fietkau [Sat, 23 Jan 2010 19:55:55 +0000 (20:55 +0100)]
simplify code (thx, henning)
Justin Bronder [Tue, 1 Dec 2009 16:13:41 +0000 (11:13 -0500)]
Fix memory leak in uci_list_config_files
When glob returns non-zero, the path buffer was not unallocated.
Justin Bronder [Thu, 18 Jun 2009 17:49:28 +0000 (13:49 -0400)]
Allow setting of libdirname.
Modifies the Makefiles so that the installer can specify the name
of the directory that libraries should be installed into by setting
LIBDIRNAME. For instance 'lib' or 'lib64'.
Felix Fietkau [Fri, 6 Nov 2009 08:14:58 +0000 (09:14 +0100)]
fix compile on snow leopard
Felix Fietkau [Wed, 28 Oct 2009 20:13:27 +0000 (21:13 +0100)]
lua: use extended lookups by default
Felix Fietkau [Mon, 19 Oct 2009 11:33:27 +0000 (13:33 +0200)]
lua: add uci.foreach() error handling patch by xMff
Felix Fietkau [Thu, 17 Sep 2009 09:27:15 +0000 (11:27 +0200)]
fix uci_lookup_ptr comments
Felix Fietkau [Sun, 6 Sep 2009 19:42:17 +0000 (21:42 +0200)]
add test/save to .gitignore
Felix Fietkau [Sun, 6 Sep 2009 19:40:10 +0000 (21:40 +0200)]
ucimap: simplify the parse/format callbacks. the data argument now always points to the field in the data structure
Felix Fietkau [Sun, 6 Sep 2009 17:20:01 +0000 (19:20 +0200)]
ucimap: fix list size initialization, validate list size on fixups as well
Felix Fietkau [Sun, 6 Sep 2009 17:07:21 +0000 (19:07 +0200)]
ucimap: fix list initialization
Felix Fietkau [Sat, 5 Sep 2009 00:51:42 +0000 (02:51 +0200)]
add some comments to the header file
Felix Fietkau [Sat, 5 Sep 2009 00:32:37 +0000 (02:32 +0200)]
replace the use of list.h in the ucimap core, relicense ucimap to LGPL v2.1, update copyright headers
Felix Fietkau [Fri, 4 Sep 2009 23:24:40 +0000 (01:24 +0200)]
remove ucimap type->name conversion unless DEBUG is enabled
Felix Fietkau [Fri, 4 Sep 2009 23:22:37 +0000 (01:22 +0200)]
fix a typo
Felix Fietkau [Fri, 4 Sep 2009 23:10:42 +0000 (01:10 +0200)]
ucimap: add support for saving lists to uci
Felix Fietkau [Fri, 4 Sep 2009 22:45:12 +0000 (00:45 +0200)]
test: do not print expected error messages
Felix Fietkau [Fri, 4 Sep 2009 22:39:41 +0000 (00:39 +0200)]
ucimap: add helper function for resizing lists and freeing items (both using ucimap internal allocation list), add test coverage for config change operations
Felix Fietkau [Fri, 4 Sep 2009 18:07:06 +0000 (20:07 +0200)]
add sanity checks for optmap section type vs sectionmap type
Felix Fietkau [Fri, 4 Sep 2009 01:59:11 +0000 (03:59 +0200)]
ucimap: add custom free() callbacks for options, only used on custom datatypes
Felix Fietkau [Fri, 4 Sep 2009 00:57:43 +0000 (02:57 +0200)]
add ucimap_free_section to the api
Felix Fietkau [Fri, 4 Sep 2009 00:55:00 +0000 (02:55 +0200)]
fix a null pointer deref in uci_file_commit when overwriting history data
Felix Fietkau [Fri, 4 Sep 2009 00:42:54 +0000 (02:42 +0200)]
add type safety checks for option maps
Felix Fietkau [Fri, 4 Sep 2009 00:19:34 +0000 (02:19 +0200)]
build ucimap-example in make all
Felix Fietkau [Wed, 2 Sep 2009 00:43:03 +0000 (02:43 +0200)]
only call section ->add callbacks after all fixups have been processed, also call ->add for sections manually parsed later
Felix Fietkau [Tue, 1 Sep 2009 15:07:51 +0000 (17:07 +0200)]
fix missing api change
Felix Fietkau [Tue, 1 Sep 2009 03:03:05 +0000 (05:03 +0200)]
preserve section list order
Felix Fietkau [Tue, 1 Sep 2009 01:23:01 +0000 (03:23 +0200)]
rename ucimap_data::section to ptr
Felix Fietkau [Tue, 1 Sep 2009 00:51:59 +0000 (02:51 +0200)]
add missing build dependencies
Felix Fietkau [Tue, 1 Sep 2009 00:27:55 +0000 (02:27 +0200)]
expose the ucimap_parse_section function in the api, do not defer fixups if immediate lookup works
Felix Fietkau [Mon, 31 Aug 2009 21:28:53 +0000 (23:28 +0200)]
protect ucimap.h against multiple inclusions
Felix Fietkau [Mon, 31 Aug 2009 21:20:54 +0000 (23:20 +0200)]
move ucimap into the core library
Felix Fietkau [Mon, 31 Aug 2009 20:44:34 +0000 (22:44 +0200)]
ucimap: add new UCIMAP_LIST_AUTO for automatically converting multiple list items whitespace-separated in an option
Felix Fietkau [Sun, 30 Aug 2009 15:43:38 +0000 (17:43 +0200)]
ucimap: properly test bool interpretation
Felix Fietkau [Sun, 30 Aug 2009 15:41:15 +0000 (17:41 +0200)]
ucimap: fix boolean interpretation, add range checks for int values (thx, henning)
Felix Fietkau [Sun, 30 Aug 2009 14:36:45 +0000 (16:36 +0200)]
add missing lib flags for ucimap-example
Felix Fietkau [Sun, 30 Aug 2009 13:47:53 +0000 (15:47 +0200)]
remove ucimap-example during make clean
Felix Fietkau [Sun, 30 Aug 2009 13:37:22 +0000 (15:37 +0200)]
turn ucimap-example.c into a test case
Felix Fietkau [Sun, 30 Aug 2009 01:12:49 +0000 (03:12 +0200)]
add missing null pointer check after malloc
Felix Fietkau [Sun, 30 Aug 2009 00:55:22 +0000 (02:55 +0200)]
ucimap: clarify alloc
Felix Fietkau [Sun, 30 Aug 2009 00:54:16 +0000 (02:54 +0200)]
bump major version
Felix Fietkau [Sun, 30 Aug 2009 00:53:48 +0000 (02:53 +0200)]
ucimap: some hints
Felix Fietkau [Sun, 30 Aug 2009 00:51:11 +0000 (02:51 +0200)]
ucimap: implement format callback for custom data types
Felix Fietkau [Sat, 29 Aug 2009 21:01:20 +0000 (23:01 +0200)]
ucimap: add example for using the alloc callback
Felix Fietkau [Sat, 29 Aug 2009 20:59:02 +0000 (22:59 +0200)]
ucimap: allow api users to take over allocation of section data structures
Felix Fietkau [Sat, 29 Aug 2009 20:53:26 +0000 (22:53 +0200)]
ucimap: move the section data to a dedicated field inside the managed structs