Felix Fietkau [Thu, 14 Feb 2013 22:39:57 +0000 (23:39 +0100)]
utils: make le16 endian conversion functions work with arguments that have side effects
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 14 Feb 2013 21:02:56 +0000 (22:02 +0100)]
utils.h: make 16-bit little endian conversion robust against pointer subtraction arguments
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Wed, 13 Feb 2013 11:35:19 +0000 (12:35 +0100)]
utils: add little-endian swap helpers
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Mon, 11 Feb 2013 21:00:08 +0000 (22:00 +0100)]
utils: prefer using gccs builtin swapping functions which support constant folding
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Mon, 11 Feb 2013 20:46:41 +0000 (21:46 +0100)]
utils: move endian swap helpers and __packed definition to utils.h
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 10 Feb 2013 19:43:51 +0000 (20:43 +0100)]
blobmsg: add blobmsg_realloc_string_buffer()
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 10 Feb 2013 19:43:33 +0000 (20:43 +0100)]
blob: add blob_buf_grow()
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 10 Feb 2013 14:32:45 +0000 (15:32 +0100)]
blobmsg_json: prefer to link against libjson-c over libjson (the new library name in git versions of json-c)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 31 Jan 2013 17:10:16 +0000 (18:10 +0100)]
ustream: another fix for ustream_read_buf_full() with split read buffers
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 31 Jan 2013 16:05:44 +0000 (17:05 +0100)]
ustream-fd: do not loop back into the callback from ustream_fd_set_uloop
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 31 Jan 2013 15:43:44 +0000 (16:43 +0100)]
ustream: set the right EOF flag
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 31 Jan 2013 15:43:00 +0000 (16:43 +0100)]
uloop: remove file descriptors if neither read nor write notification is requested
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Wed, 30 Jan 2013 16:48:55 +0000 (17:48 +0100)]
ustream-fd: only use read() == 0 as eof indication, and issue a state change notification when that happens
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Wed, 30 Jan 2013 15:52:32 +0000 (16:52 +0100)]
ustream: fix ustream_read_buf_full() for multiple read buffers
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 29 Jan 2013 22:06:55 +0000 (23:06 +0100)]
blobmsg_json: fix buffer growing on blobmsg json formatting
Jo-Philipp Wich [Wed, 23 Jan 2013 18:33:12 +0000 (19:33 +0100)]
uloop: rename uloop_timeout_pending() to uloop_timeout_remaining()
Jo-Philipp Wich [Tue, 22 Jan 2013 14:50:09 +0000 (15:50 +0100)]
uloop: add uloop_timeout_pending() function to determine the remaining time of an active timeout
Felix Fietkau [Wed, 23 Jan 2013 14:22:29 +0000 (15:22 +0100)]
build: remove install prefix override
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Wed, 23 Jan 2013 01:41:16 +0000 (02:41 +0100)]
blob/blobmsg: use 32 bit load/store for 64 bit access, unaligned attributes cause data corruption on ARM
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 22 Jan 2013 09:09:55 +0000 (10:09 +0100)]
ustream-fd: retry partial writes
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Luka Perkov [Tue, 8 Jan 2013 09:48:01 +0000 (10:48 +0100)]
rename internal variables in json_get_type
Signed-off-by: Luka Perkov <luka@openwrt.org>
Felix Fietkau [Sun, 13 Jan 2013 14:29:14 +0000 (15:29 +0100)]
blobmsg: add blobmsg_get_string
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 13 Jan 2013 14:27:34 +0000 (15:27 +0100)]
add license headers for usock
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 13 Jan 2013 08:49:16 +0000 (09:49 +0100)]
list_compat.h: add copyright info
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 13 Jan 2013 08:47:51 +0000 (09:47 +0100)]
uloop: replace copyright info (code has been completely rewritten over time), relicense to ISC
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 13 Jan 2013 08:45:59 +0000 (09:45 +0100)]
jshn: add copyright info
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 13 Jan 2013 08:07:32 +0000 (09:07 +0100)]
blobmsg: fix blobmsg_parse_array, drop name field requirement
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 13 Jan 2013 08:02:47 +0000 (09:02 +0100)]
blobmsg: allow BLOBMSG_TYPE_UNSPEC attributes, treat them as null for JSON conversion
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 8 Jan 2013 01:05:00 +0000 (02:05 +0100)]
blobmsg: add blobmsg_parse_array()
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 6 Jan 2013 02:04:04 +0000 (03:04 +0100)]
uloop: use clock_gettime with the monotonic clock instead of using gettimeofday()
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 6 Jan 2013 01:42:58 +0000 (02:42 +0100)]
uloop: add a clock_gettime() implementation for mac os x
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 6 Jan 2013 01:15:48 +0000 (02:15 +0100)]
blobmsg_json: export blobmsg_add_object
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sat, 5 Jan 2013 15:04:41 +0000 (16:04 +0100)]
uloop: add back state tracking on mac os x, it seems to work reliably now (after the other fixes)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Luka Perkov [Fri, 4 Jan 2013 10:26:08 +0000 (11:26 +0100)]
sanitize json_get_type function
Signed-off-by: Luka Perkov <luka@openwrt.org>
Felix Fietkau [Fri, 4 Jan 2013 02:17:51 +0000 (03:17 +0100)]
uloop: improve edge trigger reliability on mac os x
Sometimes after re-arming a fd, an initial event for reads is not generated,
even though there is data pending. Work around this by making the trigger
level-triggered first, then switching to edge trigger after processing the first
event.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Fri, 4 Jan 2013 02:13:29 +0000 (03:13 +0100)]
uloop: ensure SIGCHLD is properly received on mac os x
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Fri, 4 Jan 2013 00:15:45 +0000 (01:15 +0100)]
uloop: do less state/change tracking for kevent() on mac os x, it is unreliable
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 3 Jan 2013 15:32:25 +0000 (16:32 +0100)]
ustream: increment receive buffer count
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 3 Jan 2013 14:58:04 +0000 (15:58 +0100)]
ustream-fd: prevent callbacks during init
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 3 Jan 2013 14:46:21 +0000 (15:46 +0100)]
ustream-fd: fix read error handling
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 1 Jan 2013 22:37:17 +0000 (23:37 +0100)]
uloop: fix immediate timeout processing on mac os x
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 1 Jan 2013 15:10:27 +0000 (16:10 +0100)]
utils: add BUILD_BUG_ON (similar to the one in the linux kernel)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 1 Jan 2013 15:10:14 +0000 (16:10 +0100)]
ustream: add ustream_pending_data accessor function
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Mon, 31 Dec 2012 14:40:07 +0000 (15:40 +0100)]
utils: make it unnecessary to specify the last NULL argument for calloc_a
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Mon, 31 Dec 2012 14:02:31 +0000 (15:02 +0100)]
utils: move ARRAY_SIZE from uloop to utils.h
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 30 Dec 2012 21:42:46 +0000 (22:42 +0100)]
add utils.c, containing a calloc-like function to allocate multiple chunks with different sizes in one block and return pointers
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 30 Dec 2012 18:21:03 +0000 (19:21 +0100)]
ustream: avoid calling s->poll from a write path to avoid looping back through the notify_write cb
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 30 Dec 2012 16:26:40 +0000 (17:26 +0100)]
ustream: fix polling for write buffer availability after buffering writes
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 30 Dec 2012 14:46:18 +0000 (15:46 +0100)]
ustream: suppress write attempts in ustream_printf and ustream_vprintf if a write error was flagged
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 30 Dec 2012 14:25:35 +0000 (15:25 +0100)]
ustream: add ustream_read_buf_full() helper
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 18 Dec 2012 12:38:27 +0000 (13:38 +0100)]
jshn: fix check to reset array sequence counters on cleanup
Jo-Philipp Wich [Mon, 17 Dec 2012 12:54:45 +0000 (13:54 +0100)]
jshn: introduce json_is_a() convenience function to check field types without using a temporary variable
Felix Fietkau [Sun, 16 Dec 2012 18:58:06 +0000 (19:58 +0100)]
jshn: fix array handling
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 16 Dec 2012 17:04:14 +0000 (18:04 +0100)]
jshn: fix some variable handling regressions
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 16 Dec 2012 16:46:02 +0000 (17:46 +0100)]
jshn: add support for namespaces
Can be used to fix variable namespace clashes in library code using jshn
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 2 Dec 2012 16:49:08 +0000 (17:49 +0100)]
blob.h: fix endian check
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Wed, 31 Oct 2012 19:28:11 +0000 (20:28 +0100)]
uloop: fix tv_diff() calculation
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Wed, 31 Oct 2012 19:09:47 +0000 (20:09 +0100)]
uloop: another timer fix
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Wed, 31 Oct 2012 19:03:45 +0000 (20:03 +0100)]
uloop: fix sub-second timer offsets for uloop_timeout_set
Felix Fietkau [Mon, 29 Oct 2012 23:00:57 +0000 (00:00 +0100)]
ustream: make notify_state optional as well
Felix Fietkau [Mon, 29 Oct 2012 23:00:23 +0000 (00:00 +0100)]
ustream: mark notify_read cb as optional
Felix Fietkau [Mon, 29 Oct 2012 22:39:48 +0000 (23:39 +0100)]
ustream: add a poll callback function defined by the ustream implementation
Felix Fietkau [Mon, 29 Oct 2012 22:11:08 +0000 (23:11 +0100)]
ustream: fix variable initialization
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 23 Oct 2012 16:00:18 +0000 (18:00 +0200)]
ustream-example: fix logic inversion
Felix Fietkau [Tue, 23 Oct 2012 01:41:45 +0000 (03:41 +0200)]
uloop: fix a segfault on deleting the first active timer from within another timer
Felix Fietkau [Mon, 22 Oct 2012 20:28:43 +0000 (22:28 +0200)]
ustream: add a pointer to the ustream struct useful for chaining ustreams
Felix Fietkau [Mon, 22 Oct 2012 19:14:02 +0000 (21:14 +0200)]
ustream.h: include stdarg.h
Felix Fietkau [Mon, 22 Oct 2012 18:03:53 +0000 (20:03 +0200)]
add -Wmissing-declarations to cflags
Felix Fietkau [Mon, 22 Oct 2012 18:03:33 +0000 (20:03 +0200)]
add declarations for lua{open,close}_uloop to avoid warnings
Felix Fietkau [Mon, 22 Oct 2012 18:02:38 +0000 (20:02 +0200)]
ustream: make ustream_init_buf static
Felix Fietkau [Sun, 21 Oct 2012 21:01:30 +0000 (23:01 +0200)]
add a cmake file for the examples and add the binaries to .gitignore
Felix Fietkau [Sun, 21 Oct 2012 21:01:12 +0000 (23:01 +0200)]
ustream: add example code
Felix Fietkau [Sun, 21 Oct 2012 21:00:06 +0000 (23:00 +0200)]
add ustream, an api for stream buffer management
Felix Fietkau [Sun, 21 Oct 2012 01:40:53 +0000 (03:40 +0200)]
blobmsg-example: fix compile errors
Felix Fietkau [Sun, 21 Oct 2012 01:40:35 +0000 (03:40 +0200)]
uloop: fix event delete races on mac os x
Felix Fietkau [Thu, 4 Oct 2012 14:11:04 +0000 (16:11 +0200)]
list.h: undefine LIST_HEAD to prevent conflicts on mac os x
Felix Fietkau [Thu, 4 Oct 2012 12:14:52 +0000 (14:14 +0200)]
lua: use relative paths for includes instead of system-wide
John Crispin [Fri, 28 Sep 2012 23:11:31 +0000 (01:11 +0200)]
rename proc_cb to ul_process_cb
Signed-off-by: John Crispin <blogic@openwrt.org>
Felix Fietkau [Thu, 27 Sep 2012 11:47:46 +0000 (13:47 +0200)]
add an example script for the uloop lua binding
Felix Fietkau [Thu, 27 Sep 2012 11:30:33 +0000 (13:30 +0200)]
add lua binding for uloop (written by John Crispin)
Felix Fietkau [Sun, 8 Jul 2012 20:27:40 +0000 (22:27 +0200)]
uloop: clear processes and timeouts on uloop_done()
Jo-Philipp Wich [Sat, 7 Jul 2012 16:17:40 +0000 (18:17 +0200)]
uloop: handle EPOLLHUP like EPOLLERR to prevent infinite tight loops between epoll_wait() and the continue in uloop_run_events()
Felix Fietkau [Sun, 24 Jun 2012 19:11:06 +0000 (21:11 +0200)]
blobmsg: remove the unnecessary name argument from blobmsg_check_attr_list, infer it from the list type
Felix Fietkau [Sun, 24 Jun 2012 19:07:47 +0000 (21:07 +0200)]
blobmsg: add blobmsg_check_attr_list() to validate element types of arrays and tables
Felix Fietkau [Sun, 24 Jun 2012 19:06:16 +0000 (21:06 +0200)]
uloop: prevent fd callbacks for unregistered fds by ensuring that pointers in the epoll array are cleared
Felix Fietkau [Sun, 10 Jun 2012 15:11:36 +0000 (17:11 +0200)]
vlist.h: protect against multiple inclusions
Felix Fietkau [Fri, 1 Jun 2012 18:54:05 +0000 (20:54 +0200)]
blob: add blob_memdup()
Jo-Philipp Wich [Wed, 30 May 2012 19:47:43 +0000 (21:47 +0200)]
sh/jshn.sh: fix json_get_var() and json_get_type() to not return cached values
Jo-Philipp Wich [Tue, 29 May 2012 00:17:35 +0000 (02:17 +0200)]
Merge branch 'master' of nbd.name:luci2/libubox
Jo-Philipp Wich [Tue, 29 May 2012 00:10:20 +0000 (02:10 +0200)]
sh/jshn.sh: replace "tr" calls with inline substitution, signalize success with return values
Jo-Philipp Wich [Tue, 29 May 2012 00:06:39 +0000 (02:06 +0200)]
sh/jshn.sh: replace "tr" calls with inline substitution, signalize success with return values
Benjamin Larsson [Mon, 28 May 2012 12:59:49 +0000 (14:59 +0200)]
uloop: include sys/types.h to make pid_t available
Felix Fietkau [Sat, 26 May 2012 16:04:34 +0000 (18:04 +0200)]
remove uapi.h, afacis nothing uses it
Felix Fietkau [Sat, 26 May 2012 16:03:08 +0000 (18:03 +0200)]
switch blobmsg_json over to permissive license
Felix Fietkau [Sat, 26 May 2012 16:02:30 +0000 (18:02 +0200)]
switch blobmsg over to permissive license
Felix Fietkau [Sat, 26 May 2012 15:59:59 +0000 (17:59 +0200)]
remove ulog.h, afaics nothing uses it
Felix Fietkau [Sat, 26 May 2012 15:57:04 +0000 (17:57 +0200)]
add vlist (from netifd)
Felix Fietkau [Sat, 26 May 2012 15:50:10 +0000 (17:50 +0200)]
add avl_strcmp
Felix Fietkau [Thu, 17 May 2012 12:29:59 +0000 (14:29 +0200)]
sh/jshn.sh: fix allowing numbers in identifiers
json_add_generic() needs to handle them as well
Jo-Philipp Wich [Tue, 15 May 2012 22:18:16 +0000 (00:18 +0200)]
sh/jshn.sh: allow numbers in identifiers for json_get_var()
When traversing arrays of tables or arrays of array it is required to
call json_select # where # is the index of the array item to select.
Internally json_select() calls json_get_var() to obtain the correct
prefix to populate $JSON_CUR with. However, the "tr" call in
json_get_var() incorrectly replaces all digits with underscores,
making any lookup for numeric array items fail.
The attached patch changes the "tr" expression to allow digits and
thus implements the expected behaviour for nested arrays.