luci-lib-nixio: Fix add_luci_conffiles adding duplicate files (#6568)

* luci-lib-nixio: Fix add_luci_conffiles adding duplicate files

add_luci_conffiles does not check whether the file already exists
when adding the file, which may result in redundant backups in the
sysupgrade backup.

Signed-off-by: Xiang W <wxjstz@126.com>
This commit is contained in:
Xiang W 2023-12-05 04:48:19 +08:00 committed by GitHub
parent 830c0ee6bd
commit c2f679962d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,15 +1,26 @@
add_luci_conffiles()
{
add_luci_conffiles_helper()
{
[ ! -f "$1" ] && return
grep -q "$1" "$2" && return
echo "$1" >> "$2"
}
local filelist="$1"
# save ssl certs
if [ -d /etc/nixio ]; then
find /etc/nixio -type f >> $filelist
find /etc/nixio -type f | while read ff; do
add_luci_conffiles_helper "$ff" "$filelist"
done
fi
# save uhttpd certs
[ -f "/etc/uhttpd.key" ] && echo /etc/uhttpd.key >> $filelist
[ -f "/etc/uhttpd.crt" ] && echo /etc/uhttpd.crt >> $filelist
add_luci_conffiles_helper /etc/uhttpd.key "$filelist"
add_luci_conffiles_helper /etc/uhttpd.crt "$filelist"
unset -f add_luci_conffiles_helper
}
sysupgrade_init_conffiles="$sysupgrade_init_conffiles add_luci_conffiles"