Joachim Wiberg
b69d8a6013
Fix copyfile() not preserving source mode with restrictive umask
...
copyfile() passes the source mode to open(2), which applies the umask,
so a 0644 file copied with umask 0027 ends up 0640.
Apply the source mode with fchmod() after creating the destination.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2026-09-13 18:53:40 +02:00
Joachim Wiberg
e874608b76
Fix mkpath() ignoring mode when umask is more restrictive
...
mkpath(dir, 0755) with umask 0027 silently creates a 0750 directory,
since mkdir(2) applies the umask to the requested mode. Callers pass
an explicit mode and expect exactly that.
Apply the mode with chmod() after each successful mkdir().
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2026-09-13 17:17:37 +02:00
Joachim Wiberg
c1e050f93c
Update ChangeLog and bump version for v2.6.2 release
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
v2.6.2
2025-11-22 21:59:46 +01:00
Joachim Wiberg
0e45929323
Make note of possible extensions
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2025-11-22 21:44:20 +01:00
Joachim Wiberg
958502d982
Fix memory leak in which() on realloc() failure
...
Avoid leaking memory when realloc() fails by using a temporary pointer
and only updating the original on success. Also remove redundant NULL
check before free().
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2025-11-22 20:48:35 +01:00
Joachim Wiberg
f0cb0b7bf2
.github: bump actions
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2025-04-28 08:34:00 +02:00
Joachim Wiberg
ee5788d49b
Create SECURITY.md policy
2025-04-28 07:54:35 +02:00
Joachim Wiberg
9bfe54f959
pidfile(): ensure prefix path ends with slash
...
For some builds using Buildroot, the system default _PATH_VARRUN did not
include a trailing slas '/', which cause the pidfile() function to fail.
Example:
pidfile("arg") => "/var/runarg.pid"
Since the __pidfile_path can be overridden we add a check if that prefix
path ends with '/', if not we add one in the path composition.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2024-03-25 05:23:41 +01:00
Joachim Wiberg
960e7f69ed
Update changelog and bump version for v2.6.1 release
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
v2.6.1
2023-10-15 10:22:36 +02:00
Joachim Wiberg
68bc83f08f
FTBFS uClibc and musl libc, lite.h missing stdarg.h include
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-10-15 10:21:30 +02:00
Joachim Wiberg
986d29caf0
m4: sync with latest ax_prog_doxygen.m4
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-10-15 10:18:33 +02:00
Joachim Wiberg
2d9f8f595d
Update ChangeLog and bump version to v2.6.0 GA
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
v2.6.0
2023-09-17 16:59:24 +02:00
Joachim Wiberg
3f8ad99f1f
Fix varargs bug/usage, found by Coverity Scan
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:47:59 +02:00
Joachim Wiberg
63e25ecae4
.github: use new syntax for setting variables
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:47:43 +02:00
Joachim Wiberg
6c53ee819b
test: adjust times again
...
Running the tests in a Debian container seem to be taking way too long.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:26:08 +02:00
Joachim Wiberg
da21e02be0
Update ChangeLog diffs
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:19:13 +02:00
Joachim Wiberg
c33500c372
.github: import release job from Mg project
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:17:53 +02:00
Joachim Wiberg
bed65c84e6
.github: bump action versions, node12 deprecated
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:17:27 +02:00
Joachim Wiberg
c4f262b721
debian: prepare new release
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:17:14 +02:00
Joachim Wiberg
563b387ec7
test: increase delay waiting for background job in Debian container
...
GitHub action fails, probably due to too short wait delay.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:11:51 +02:00
Joachim Wiberg
b93d74c065
Update ChangeLog and bump version for v2.6.0-rc1
...
Bump ABI: 5.3.2 -> 5.4.0
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 12:00:04 +02:00
Joachim Wiberg
c1f7bc2bbb
Update copyright years
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 11:56:26 +02:00
Joachim Wiberg
99f644b512
doc: document new procfile functions
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 11:48:37 +02:00
Joachim Wiberg
92bb0ca399
runbg: new helper function inspired by the Infix project
...
The runbg() function is a delayed execvp() that has double-forked to the
background (to not create zombies). It is useful for running commands
in the background for APIs that need to return a reply, e.g. a NETCONF
RPC to reboot the system.
Compared to the original in Infix, this version double forks to reparent
itself to PID 1 (init), closes all open files, including stdio.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 11:00:09 +02:00
Joachim Wiberg
921afdecb4
Minor, indent
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 10:49:25 +02:00
Joachim Wiberg
47b02df823
Minor, spellcheck
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-09-17 10:49:13 +02:00
Joachim Wiberg
4dd14dac42
New helper functions to read/write /proc and /sys style files
...
From the Infix project.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-06-11 13:19:05 +02:00
Joachim Wiberg
97a3d43e9c
Reminder
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-06-11 12:47:49 +02:00
Joachim Wiberg
784a667584
New helper function, fexistf(), made for the Infix project
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-06-11 12:18:45 +02:00
Joachim Wiberg
1f6ff90d9e
New helper function, vfopenf(), inspired by the Infix project
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-06-11 12:16:58 +02:00
Joachim Wiberg
9eb847e56c
New helper function, popenf(), from the Infix project
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-06-11 12:03:24 +02:00
Joachim Wiberg
55272c13f7
Start new devel cycle for v2.6.0 release
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-06-11 11:38:01 +02:00
Joachim Wiberg
34097d33b6
Update changelog and bump version for v2.5.3 release
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
v2.5.3
2023-04-08 07:05:58 +02:00
Joachim Wiberg
311288eec9
test: major refactor and cleanup
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-08 06:51:25 +02:00
Joachim Wiberg
63cf8867c5
test: refactor, each test in separate func
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-08 06:00:47 +02:00
Joachim Wiberg
ac7b4194cf
Fix copyfile() regression introduced in 4e9b5c13
...
Caught in release cycle.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-08 05:55:48 +02:00
Joachim Wiberg
e44aaa4fd5
test: slight refactor to add diff -q A B check to fcopyfile()
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-08 05:55:48 +02:00
Joachim Wiberg
97cb2cb87c
test: reproduce copyfile() off by one regression
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-08 05:55:39 +02:00
Joachim Wiberg
837c3f23be
Prepare for v2.5.3 bug fix release
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-02 22:20:03 +02:00
Joachim Wiberg
4e9b5c13c1
copyfile: allow copying empty files to non-existing destination dirs
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-02 22:17:47 +02:00
Joachim Wiberg
d61b847e55
rsync: fix check for missing dst when dst is a directory
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-02 22:17:09 +02:00
Joachim Wiberg
90fdcdeb39
rsync: fix return value when copying a single file
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-02 22:16:50 +02:00
Joachim Wiberg
e36ac8f462
test: finalize rsync unit test to reproduce bugs
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-04-02 22:16:21 +02:00
Joachim Wiberg
eb3bb94cfa
Update changelog and bump version for v2.5.2 release
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
v2.5.2
2022-04-17 14:19:11 +02:00
Joachim Wiberg
11b9c88732
Add printf format attribute to all vararg functions
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2022-04-17 14:11:31 +02:00
Joachim Wiberg
11d4aafce1
Merge pull request #20 from yangfl/upstream
...
Fix for some non-linux
2022-01-27 11:34:50 +01:00
yangfl
5cdc5736f3
Replace mknod() with creat()
...
For mknod(), mode must be S_IFIFO otherwise the behaviour is unspecified
according to SUS, and apparently Debian/kFreeBSD is in the hater list.
2022-01-27 00:11:00 +08:00
yangfl
059bfd7806
test: use sleep() for mtime delay
...
For filesystems without high-resolution time support, an usleep() is too short
to alter mtime. Though 1s is quite safe, sleep for 2s in case it gets awaken
right within that second.
2022-01-26 23:57:27 +08:00
yangfl
0cda6339a4
Fix fisdir sigfault on Hurd
...
Apparently Hurd's stat() does not like NULL and will sigfault, this patch takes
care of it.
2022-01-26 02:11:08 +08:00
Joachim Wiberg
8120492fc8
Update changelogs and bump version for v2.5.1
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
v2.5.1
2021-12-02 00:43:02 +01:00