C utility functions for OpenWRT libraries
Find a file
Philip Prindeville 5893cf78da
blobmsg: Don't do at run-time what can be done at compile-time
Repeatedly calling a run-time function like strlen() on an
invariant value is inefficient, especially if that value can be
computed once (at initialization) or better yet, computed at
compile-time.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2023-04-16 14:53:11 +02:00
examples examples/lua: attempt to highlight some traps 2020-07-11 11:15:12 +02:00
lua lua/uloop: use uloop_timeout_remaining64 2021-11-04 13:05:29 +02:00
sh jshn.sh: Add pretty-printing to json_dump 2023-04-15 15:04:19 +02:00
tests tests: add blob-buffer overflow test 2021-04-29 15:34:21 +02:00
.gitignore examples: add shunit2 tests for json_script 2016-02-20 13:36:08 +01:00
.gitlab-ci.yml add cram based unit tests 2019-11-24 13:26:58 +01:00
assert.h add assert.h component 2019-11-24 13:26:58 +01:00
avl-cmp.c avl: add blob comparator function 2016-07-29 10:58:55 +02:00
avl-cmp.h avl: add blob comparator function 2016-07-29 10:58:55 +02:00
avl.c avl: guard against theoretical null pointer dereference 2019-11-24 13:26:58 +01:00
avl.h switch from typeof to the more portable __typeof__ 2018-04-07 15:21:33 +02:00
base64.c base64: fix possible null pointer dereference 2019-11-24 13:26:58 +01:00
blob.c blob: clear buf->head when freeing a buffer 2022-02-10 21:02:20 +01:00
blob.h Ensure blob_attr length check does not perform out of bounds reads 2019-12-25 10:31:58 +01:00
blobmsg.c blobmsg: implicitly reserve space for 0-terminator in string buf alloc 2022-05-12 13:26:29 +02:00
blobmsg.h blobmsg: add blobmsg_parse_array_attr 2023-01-03 10:43:49 +01:00
blobmsg_json.c blobmsg: Don't do at run-time what can be done at compile-time 2023-04-16 14:53:11 +02:00
blobmsg_json.h blobmsg_json: add new functions blobmsg_format_json_value* 2016-07-02 10:10:08 +02:00
CMakeLists.txt cmake: add a possibility to set library version 2020-01-20 16:54:10 +01:00
jshn.c jshn: prefer snprintf usage 2020-01-20 16:54:10 +01:00
json_script.c blobmsg: implicitly reserve space for 0-terminator in string buf alloc 2022-05-12 13:26:29 +02:00
json_script.h json_script: add support for aborting script processing 2015-11-06 22:58:15 +01:00
kvlist.c Fix various memory management issues 2016-06-26 12:53:51 +02:00
kvlist.h kvlist: add static initializer macros 2016-10-24 12:34:09 +02:00
list.h list.h: add container_of_safe macro 2022-04-29 12:57:52 +02:00
md5.c md5: add "const" qualifier to the "file" argument 2017-03-20 12:44:46 +01:00
md5.h md5: add "const" qualifier to the "file" argument 2017-03-20 12:44:46 +01:00
runqueue.c libubox: runqueue: fix use-after-free bug 2020-05-21 15:58:46 +02:00
runqueue.h libubox: runqueue: fix use-after-free bug 2020-05-21 15:58:46 +02:00
safe_list.c runqueue: add a function that allows adding jobs to the front of the runqueue 2013-11-18 12:25:21 +01:00
safe_list.h runqueue: add a function that allows adding jobs to the front of the runqueue 2013-11-18 12:25:21 +01:00
ulog.c blobmsg/ulog: fix format string compiler warnings 2019-12-07 23:47:03 +01:00
ulog.h libubox: add format string checking to ulog() 2019-06-16 16:29:47 +02:00
uloop-epoll.c uloop: remove useless epoll data assignment 2016-12-12 12:24:14 +01:00
uloop-kqueue.c uloop: use a waker for notifying sigchld and loop cancel events 2016-06-15 11:54:37 +02:00
uloop.c uloop: add uloop_timeout_remaining64 2021-11-04 13:05:24 +02:00
uloop.h uloop: deprecate uloop_timeout_remaining 2021-11-04 13:05:31 +02:00
usock.c usock: fix poll return code check 2023-03-08 09:38:55 +01:00
usock.h usock: implement usock_inet_timeout() with RFC6555 support 2016-01-28 12:07:25 +01:00
ustream-fd.c ustream-fd: handle ENOTCONN for read/write on not-yet-connected sockets 2016-01-15 21:35:48 +01:00
ustream.c Fix various memory management issues 2016-06-26 12:53:51 +02:00
ustream.h ustream: Add format string checks to ustream_(v)printf() 2019-06-16 16:30:01 +02:00
utils.c utils: simplify mkdir_p boolean conditions 2020-12-13 12:05:45 +00:00
utils.h utils.h: add fallthrough macro 2021-05-16 17:32:00 +02:00
vlist.c vlist: constify key argument to vlist_add 2013-10-05 21:40:04 +02:00
vlist.h vlist: define vlist_for_each_element_safe 2021-11-20 17:44:11 +00:00