Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-04-24 | rc: avoid calling free inside SIGCHLD handler | NRK | |
`free` is not async-signal-safe and calling it inside a signal handler can have bad effects, as reported in the musl ML: https://www.openwall.com/lists/musl/2023/01/23/1 the solution: - keep track of weather remove_pid() is being called from inside a signal handler or not. - if it's inside a signal handler then DO NOT call free - instead put that pointer into a "to be freed later" list. - if it's not inside a signal handler then take the "to be freed later" list and free anything in it. Bug: https://github.com/OpenRC/openrc/issues/589 Reported-by: Dominique MARTINET <dominique.martinet@atmark-techno.com> | |||
2023-04-24 | fstabinfo: deal with EINTR in waitpid call | NRK | |
2023-04-24 | fstabinfo: replace vfork with posix_spawnp | NRK | |
problem: * vfork has been removed from POSIX [0]. * clang-tidy flags the `strerror` and `eerror` call inside the vfork-ed child as undefined behavior. solution: use posix_spawnp, which is serves similar purpose and is specified in posix. and as an added bonus, it's also easier to use and less lines of code. [0]: https://www.man7.org/linux/man-pages/man2/vfork.2.html#CONFORMING_TO | |||
2023-04-23 | einfo.h: fix EINFO_RESTRICT macro usage | Oskari Pirhonen | |
Make function declarations use the EINFO_RESTRICT macro instead of __EINFO_RESTRICT which gets treated as the name of the argument. | |||
2023-04-20 | shared: fix pointer type in UNCONST | Sam James | |
Thanks to vapier for noticing. | |||
2023-04-19 | Rename attribute macros to namespaced RC_* | Sam James | |
This conflicts with linux-headers which uses __unused for some padding members on ppc64le at least. Closes: https://github.com/OpenRC/openrc/issues/622 | |||
2023-02-16 | seedrng: fix copyright year | NRK | |
this was mistakenly changed to 2023 instead of 2022-2023 in 63a5ee3d | |||
2023-02-15 | rc-status: comment consistecy | anon | |
2023-02-15 | rc-status: all flags respect '-f' | anon | |
2023-02-05 | seedrng: fix memory leak reported by clang-tidy | NRK | |
`seed_dir` gets allocated via xstrdup but never gets freed - which clang-tidy flags as a memory leak. instead of free-ing the allocation, just don't allocate to begin with since there's no need for it. also bump the copyright year. | |||
2023-01-30 | start-stop-daemon: avoid malloc inside sig-handler | NRK | |
same rational as 459783bb Bug: https://github.com/OpenRC/openrc/issues/589 | |||
2023-01-30 | openrc-run: avoid malloc inside sig-handler | NRK | |
same rational as 459783bb Bug: https://github.com/OpenRC/openrc/issues/589 | |||
2023-01-29 | value: missing includes from IWYU | Sam James | |
2023-01-29 | swclock: missing includes from IWYU | Sam James | |
2023-01-29 | supervise-daemon: missing includes from IWYU | Sam James | |
2023-01-29 | start-stop-daemon: missing includes from IWYU | Sam James | |
2023-01-29 | shell_var: missing includes from IWYU | Sam James | |
2023-01-29 | shared: missing includes from IWYU | Sam James | |
2023-01-29 | service: missing includes from IWYU | Sam James | |
2023-01-29 | seedrng: missing includes from IWYU | Sam James | |
2023-01-29 | rc-update: missing includes from IWYU | Sam James | |
2023-01-29 | rc-status: missing includes from IWYU | Sam James | |
2023-01-29 | rc-service: missing includes from IWYU | Sam James | |
2023-01-29 | rc-depend: missing includes from IWYU | Sam James | |
2023-01-29 | rc-abort: missing includes from IWYU | Sam James | |
2023-01-29 | openrc-shutdown: missing includes from IWYU | Sam James | |
2023-01-29 | openrc-run: missing includes from IWYU | Sam James | |
2023-01-29 | openrc: missing includes from IWYU | Sam James | |
2023-01-29 | openrc-init: missing includes from IWYU | Sam James | |
2023-01-29 | mountinfo: missing includes from IWYU | Sam James | |
2023-01-29 | mark_service: missing includes from IWYU | Sam James | |
2023-01-29 | librc: missing includes from IWYU | Sam James | |
2023-01-29 | libeinfo: missing includes from IWYU | Sam James | |
2023-01-29 | kill_all: missing includes from IWYU | Sam James | |
2023-01-29 | is_older_than: missing includes from IWYU | Sam James | |
2023-01-29 | is_newer_than: missing includes from IWYU | Sam James | |
2023-01-29 | fstabinfo: missing includes from IWYU | Sam James | |
2023-01-29 | einfo: missing includes from IWYU | Sam James | |
2023-01-29 | checkpath: missing includes from IWYU | Sam James | |
2023-01-28 | src: shared: schedules: add missing includes to header | Sam James | |
Needed for clang-tidy prep work, as it requires headers to work standalone (which is useful anyway). | |||
2023-01-28 | src: shared: plugin: add missing includes to header | Sam James | |
Needed for clang-tidy prep work, as it requires headers to work standalone (which is useful anyway). | |||
2023-01-28 | src: shared: misc: add missing includes to header | Sam James | |
Needed for clang-tidy prep work, as it requires headers to work standalone (which is useful anyway). | |||
2023-01-28 | src: shared: helpers: add missing includes to header | Sam James | |
Needed for clang-tidy prep work, as it requires headers to work standalone (which is useful anyway). | |||
2023-01-28 | openrc: rc-logger: add missing includes to header | Sam James | |
Needed for clang-tidy prep work, as it requires headers to work standalone (which is useful anyway). | |||
2023-01-28 | swclock: fix codeql warning and upgrade to futimens | NRK | |
this was reported by codeql's scan as a TOCTOU bug. while that's true in theory, i don't believe it would've had any practical effect. a better justification for this change might be the fact that it upgrades from `utime` (which is depreciated by POSIX [0]) to `futimens`. [0]: https://www.man7.org/linux/man-pages/man3/utime.3p.html#FUTURE_DIRECTIONS | |||
2023-01-28 | openrc: avoid unnecessary malloc inside sig-handler | NRK | |
malloc (called by xasprintf) is not async-signal-safe. beside, the string here is constant, so there's no need to malloc it all. eerrorx isn't async-signal-safe either (due to calling fprintf and exit) but consequence of them are _typically_ not as grave as calling malloc while it's internal state is inconsistent. Bug: https://github.com/OpenRC/openrc/issues/589 | |||
2023-01-25 | openrc-shutdown: mark handler as noreturn, use _unused macro | Sam James | |
2023-01-25 | openrc: mark handle_bad_signal as noreturn | Sam James | |
For -Wmissing-noreturn. | |||
2023-01-25 | supervise-daemon: mark various functions as noreturn | Sam James | |
For -Wmissing-noreturn. | |||
2023-01-25 | openrc-shutdown: mark stop_shutdown as noreturn, fix typo/indentation | Sam James | |
For -Wmissing-noreturn. |