Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-04-24 | rc: use LIST_FOREACH_SAFE in cleanup() | NRK | |
according to the linux manpage, the "safe" variant may not be available on all platform. however we bundle our own `queue.h` so this should not be an issue. | |||
2023-04-24 | rc: block SIGCHLD during pid list operations | NRK | |
the pid list will be accessed inside the SIGCHLD signal handler. so we must ensure SIGCHLD handler doesn't get invoked while the list is at an inconsistent state making it unsafe to interact with. Co-authored-by: Dominique MARTINET <dominique.martinet@atmark-techno.com> Bug: https://github.com/OpenRC/openrc/issues/589#issuecomment-1406588576 | |||
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 | meson.build: add -Werror=... for modern C issues | Sam James | |
Clang 16 makes these warnings fatal and GCC 14 is likely to as well. | |||
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-04-18 | version 0.47 | William Hubbs | |
2023-04-18 | update news | William Hubbs | |
2023-04-17 | rc.conf: note SSD_* vars need exporting | Doug Freed | |
2023-03-07 | init.d/rc.conf: make unicode default to yes | William Hubbs | |
2023-03-06 | rc.conf: default to unicode console | psykose | |
it's the high year of 2023, after all. closes #607 | |||
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-02-02 | bash-completions/rc-service: don't use grep | NRK | |
Co-authored-by: Mike Frysinger <vapier@gentoo.org> Closes: https://github.com/OpenRC/openrc/issues/344 | |||
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). |