Lines 1-92
Link Here
|
1 |
--- clamav-unofficial-sigs.sh.orig 2019-09-02 22:41:48 UTC |
|
|
2 |
+++ clamav-unofficial-sigs.sh |
3 |
@@ -1422,25 +1422,14 @@ force_wget="no" |
4 |
enable_log="no" |
5 |
custom_config="no" |
6 |
we_have_a_config="0" |
7 |
+pkg_mgr="FreeBSD ports" |
8 |
+pkg_rm="pkg delete" |
9 |
|
10 |
- |
11 |
-# Attempt to scan for a valid config dir |
12 |
-if [ -f "/etc/clamav-unofficial-sigs/master.conf" ] ; then |
13 |
- config_dir="/etc/clamav-unofficial-sigs" |
14 |
-elif [ -f "/usr/local/etc/clamav-unofficial-sigs/master.conf" ] ; then |
15 |
- config_dir="/usr/local/etc/clamav-unofficial-sigs/" |
16 |
-elif [ -f "/opt/zimbra/config/clamav-unofficial-sigs/master.conf" ] ; then |
17 |
- config_dir="/opt/zimbra/config/clamav-unofficial-sigs/" |
18 |
-else |
19 |
- xshok_pretty_echo_and_log "ERROR: config_dir (/etc/clamav-unofficial-sigs/master.conf) could not be found" |
20 |
- exit 1 |
21 |
-fi |
22 |
# Default config files |
23 |
+config_dir="%%PREFIX%%/etc/clamav-unofficial-sigs" |
24 |
config_files=("${config_dir}/master.conf") |
25 |
-#find the a suitable os.conf or os.*.conf file |
26 |
-config_file="$(find "$config_dir" -type f -iname "os.conf" -o -iname "os.*.conf" | tail -n1)" |
27 |
-if [ -r "${config_file}" ]; then |
28 |
- config_files+=( "${config_file}" ) |
29 |
+if [ -r "${config_dir}/os.conf" ] ; then |
30 |
+ config_files+=( "${config_dir}/os.conf" ) |
31 |
fi |
32 |
if [ -r "${config_dir}/user.conf" ] ; then |
33 |
config_files+=( "${config_dir}/user.conf" ) |
34 |
@@ -1576,10 +1565,8 @@ if [ "$custom_config" != "no" ] ; then |
35 |
else |
36 |
xshok_pretty_echo_and_log "WARNING: ${config_dir}/master.conf not found" |
37 |
fi |
38 |
- #find the a suitable os.conf or os.*.conf file |
39 |
- config_file="$(find "$config_dir" -type f -iname "os.conf" -o -iname "os.*.conf" | tail -n1)" |
40 |
- if [ -r "${config_file}" ] ; then |
41 |
- config_files+=( "${config_file}" ) |
42 |
+ if [ -r "${config_dir}/os.conf" ] ; then |
43 |
+ config_files+=( "${config_dir}/os.conf" ) |
44 |
else |
45 |
xshok_pretty_echo_and_log "WARNING: ${config_dir}/os.conf not found" |
46 |
fi |
47 |
@@ -1625,7 +1612,7 @@ for config_file in "${config_files[@]}" ; do |
48 |
# Delete both trailing and leading whitespace |
49 |
# Delete all trailing whitespace |
50 |
# Delete all empty lines |
51 |
- clean_config="$(command sed -e '/^#.*/d' -e 's/[[:space:]]#.*//' -e 's/#[[:space:]].*//' -e 's/^[ \t]*//;s/[ \t]*$//' -e '/^\s*$/d' "$config_file")" |
52 |
+ clean_config="$(command sed -e '/^#.*/d' -e 's/[[:space:]]#.*//' -e 's/#[[:space:]].*//' -e 's/^[[:blank:]]*//;s/[[:blank:]]*$//' -e '/^[[:space:]]*$/d' "$config_file")" |
53 |
fi |
54 |
|
55 |
#fix eval of | |
56 |
@@ -1640,7 +1627,7 @@ for config_file in "${config_files[@]}" ; do |
57 |
fi |
58 |
|
59 |
# Check there is an = for every set of "" optional whitespace \s* between = and " |
60 |
- config_check_vars="$(echo "$clean_config" | $grep_bin -c '=\s*\"' )" |
61 |
+ config_check_vars="$(echo "$clean_config" | $grep_bin -c '=[[:space:]]*\"' )" |
62 |
|
63 |
if [ $(( ${#config_check} / 2 )) -ne "$config_check_vars" ] ; then |
64 |
xshok_pretty_echo_and_log "ERROR: Your configuration has errors, every = requires a pair of \"\"" |
65 |
@@ -2316,24 +2303,12 @@ if [ "$sanesecurity_enabled" == "yes" ] ; then |
66 |
echo "$current_time" > "${work_dir_work_configs}/last-ss-update.txt" |
67 |
xshok_pretty_echo_and_log "Sanesecurity Database & GPG Signature File Updates" "=" |
68 |
xshok_pretty_echo_and_log "Checking for Sanesecurity updates..." |
69 |
- # shellcheck disable=SC2086 |
70 |
- sanesecurity_mirror_ips="$(dig $dig_proxy +ignore +short "$sanesecurity_url")" |
71 |
- # Add fallback to host if dig returns no records |
72 |
- if [ ${#sanesecurity_mirror_ips} -lt 1 ] ; then |
73 |
- # shellcheck disable=SC2086 |
74 |
- sanesecurity_mirror_ips="$(host $host_proxy -t A "$sanesecurity_url" | sed -n '/has address/{s/.*address \([^ ]*\).*/\1/;p;}')" |
75 |
- fi |
76 |
|
77 |
+ sanesecurity_mirror_ips=$(host "$sanesecurity_url" | sed 's/.*[[:space:]]//') |
78 |
+ |
79 |
if [ ${#sanesecurity_mirror_ips} -ge 1 ] ; then |
80 |
for sanesecurity_mirror_ip in $sanesecurity_mirror_ips ; do |
81 |
- sanesecurity_mirror_name="" |
82 |
- # shellcheck disable=SC2086 |
83 |
- sanesecurity_mirror_name="$(dig $dig_proxy +short -x "$sanesecurity_mirror_ip" | command sed 's/\.$//')" |
84 |
- # Add fallback to host if dig returns no records |
85 |
- if [ -z "$sanesecurity_mirror_name" ] ; then |
86 |
- # shellcheck disable=SC2086 |
87 |
- sanesecurity_mirror_name="$(host $host_proxy "$sanesecurity_mirror_ip" | sed -n '/name pointer/{s/.*pointer \([^ ]*\).*\.$/\1/;p;}')" |
88 |
- fi |
89 |
+ sanesecurity_mirror_name=$(host "$sanesecurity_mirror_ip" | sed 's/.*[[:space:]]//' | sed 's/\.$//') |
90 |
sanesecurity_mirror_site_info="$sanesecurity_mirror_name $sanesecurity_mirror_ip" |
91 |
xshok_pretty_echo_and_log "Sanesecurity mirror site used: ${sanesecurity_mirror_site_info}" |
92 |
# shellcheck disable=SC2086 |