METRICS: Using configs from the Registry (like --config=p/ci) reports pseudonymous rule metrics to semgrep.dev.
To disable Registry rule metrics, use "--metrics=off".
Using configs only from local files (like --config=xyz.yml) does not enable metrics.
More information: https://semgrep.dev/docs/metrics
┌─────────────┐
│ Scan Status │
└─────────────┘
Scanning 1045 files tracked by git with 7 Code rules:
Scanning 58 files with 7 bash rules.
┌───────────────────┐
│ 574 Code Findings │
└───────────────────┘
/logs/firmware/patool_extraction/DUMP/mtdblock2_unblob_extracted/mtdblock2_extract/0-376832.squashfs_v4_le_extract/m
ydlink_watchdog.sh
external.semgrep-rules.bash.lang.best-practice.useless-cat
Useless call to 'cat' in a pipeline. Use '<' and '>' for any command to read from a file or
write to a file.
116┆ Free_Memory=`cat /proc/meminfo | grep 'MemFree:' | sed 's/^.*MemFree://g' | sed 's/kB*$//g'`
⋮┆----------------------------------------
116┆ Free_Memory=`cat /proc/meminfo | grep 'MemFree:' | sed 's/^.*MemFree://g' | sed 's/kB*$//g'`
⋮┆----------------------------------------
116┆ Free_Memory=`cat /proc/meminfo | grep 'MemFree:' | sed 's/^.*MemFree://g' | sed 's/kB*$//g'`
⋮┆----------------------------------------
135┆ MEM_PAGES=`cat /proc/${pid}/statm | awk '{print $1}'`
⋮┆----------------------------------------
157┆ state=`cat /proc/${pid}/stat | awk '{print $3}'`
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
72┆ `cp /mydlink/config/device.mmt /mydlink/config/device.cfg`
⋮┆----------------------------------------
74┆ `cp /mydlink/device.cfg /mydlink/config/device.cfg`
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
27┆ mkdir -p $TMP_MYDLINK
⋮┆----------------------------------------
28┆ mkdir -p $PID_BASE
⋮┆----------------------------------------
33┆ INTERFACE=`cat $INTERFACE_FILE`
⋮┆----------------------------------------
34┆ LANIP=`ifconfig $INTERFACE | grep 'inet addr' | cut -d: -f2 | awk '{print $1}'`
⋮┆----------------------------------------
60┆ wd_pid=`cat ${WATCHDOG_PID}`
⋮┆----------------------------------------
80┆ mdb_dev_list=`LD_LIBRARY_PATH="/mydlink/lib" $mdb_path get dev_list`
⋮┆----------------------------------------
83┆ mdb_dev_model=`LD_LIBRARY_PATH="/mydlink/lib" $mdb_path get dev_model`
⋮┆----------------------------------------
102┆ rm $PID_BASE/da_adaptor.pid
⋮┆----------------------------------------
103┆ rm $PID_BASE/cda.pid
⋮┆----------------------------------------
104┆ rm $PID_BASE/sa.pid
⋮┆----------------------------------------
105┆ rm $PID_BASE/strmsvr.pid
⋮┆----------------------------------------
132┆ pid=`cat ${PID_BASE}/${1}.pid`
⋮┆----------------------------------------
135┆ MEM_PAGES=`cat /proc/${pid}/statm | awk '{print $1}'`
⋮┆----------------------------------------
136┆ allocated_memory=`expr $MEM_PAGES \* $FW_PAGE_SIZE`
⋮┆----------------------------------------
138┆ killall -9 $1
⋮┆----------------------------------------
154┆ pid=`cat ${PID_BASE}/${1}.pid`
⋮┆----------------------------------------
157┆ state=`cat /proc/${pid}/stat | awk '{print $3}'`
⋮┆----------------------------------------
164┆ restart_cnt=`expr $restart_cnt + 1`
⋮┆----------------------------------------
172┆ killall -9 $1 2>/dev/null
⋮┆----------------------------------------
179┆ LD_LIBRARY_PATH="/mydlink/lib" /mydlink/$1 "$2" "$3" > /dev/null 2>&1 &
⋮┆----------------------------------------
181┆ LD_LIBRARY_PATH="/mydlink/lib" /mydlink/$1 "$2" > /dev/null 2>&1 &
⋮┆----------------------------------------
187┆ echo $pid > "${PID_BASE}/${1}.pid"
⋮┆----------------------------------------
194┆ ca_check_counter=`expr $ca_check_counter + 1`
⋮┆----------------------------------------
197┆ ca_next_check_time=`cat $CA_CHECK_FLAG`
⋮┆----------------------------------------
206┆ eval $MYDLINK_BASE/ca-refresh $CA_CHECK_URL /mydlink/config /tmp > /dev/null 2>&1
⋮┆----------------------------------------
209┆ mv /tmp/ca-bundle.crt $CA_CRT_FILE
⋮┆----------------------------------------
210┆ mv /tmp/ca-bundle.sig $CA_SIG_FILE
⋮┆----------------------------------------
218┆ echo -n $ca_next_check_time > $CA_CHECK_FLAG
⋮┆----------------------------------------
228┆ sleep $UNIT_CHECK_T
⋮┆----------------------------------------
242┆ pid=`cat ${PID_BASE}/${1}.pid`
⋮┆----------------------------------------
243┆ rm $PID_BASE/${1}.pid
⋮┆----------------------------------------
247┆ killall -9 $1 2>/dev/null
⋮┆----------------------------------------
252┆ pid=`pidof $1`
⋮┆----------------------------------------
254┆ killall -9 $1 2>/dev/null
⋮┆----------------------------------------
266┆ mdb_oob_st=`LD_LIBRARY_PATH="/mydlink/lib" $mdb_path get oob_changed`
⋮┆----------------------------------------
275┆ curpid=`cat ${WATCHDOG_PID}`
⋮┆----------------------------------------
291┆ mdb_reg_st=`LD_LIBRARY_PATH="/mydlink/lib" $mdb_path get register_st`
⋮┆----------------------------------------
300┆ check_memory da_adaptor $mem_max_da_adaptor
⋮┆----------------------------------------
301┆ check_memory cda $mem_max_cda
⋮┆----------------------------------------
302┆ check_memory sa $mem_max_sa
⋮┆----------------------------------------
303┆ check_memory strmsvr $mem_max_strmsvr
⋮┆----------------------------------------
310┆ sleep $UNIT_CHECK_T
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/openssl/cert_create.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
34┆ country_name=$(tdb get $tdbname $vCountry)
⋮┆----------------------------------------
35┆ state_province=$(tdb get $tdbname $vProvince | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
36┆ locality_name=$(tdb get $tdbname $vLocality | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
37┆ organization_name=$(tdb get $tdbname $vOrganization | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
38┆ organization_unit_name=$(tdb get $tdbname $vOrganization_u | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
39┆ common_name=$(tdb get $tdbname $vCommonName | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
40┆ validity=$(tdb get $tdbname $vValidity)
⋮┆----------------------------------------
41┆ keylen=$(tdb get $tdbname $vKeyLen)
⋮┆----------------------------------------
55┆ openssl req -sha256 -new -newkey rsa:$keylen -x509 -keyout /tmp/server.key -out /tmp/server.crt -days
$validity -nodes -config $OPENSSL_CONF -subj /C=$country_n ...
[shortened a long line from output, adjust with --max-chars-per-line]
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/openssl/csr_create.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
13┆ country_name=$(tdb get $tdbname $vCountry)
⋮┆----------------------------------------
14┆ state_province=$(tdb get $tdbname $vProvince | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
15┆ locality_name=$(tdb get $tdbname $vLocality | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
16┆ organization_name=$(tdb get $tdbname $vOrganization | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
17┆ organization_unit_name=$(tdb get $tdbname $vOrganization_u | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
18┆ common_name=$(tdb get $tdbname $vCommonName | sed -re "s/\ /\\\ /g")
⋮┆----------------------------------------
19┆ validity=$(tdb get $tdbname $vValidity)
⋮┆----------------------------------------
20┆ keylen=$(tdb get $tdbname $vKeyLen)
⋮┆----------------------------------------
34┆ openssl req -config $OPENSSL_CONF -new -newkey rsa:$keylen -nodes -keyout /tmp/server.key -out
/tmp/server.csr -subj /C=$country_name/ST="$state_province"/L="$l ...
[shortened a long line from output, adjust with --max-chars-per-line]
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/avcd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
22┆ kill -s SIGUSR2 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
27┆ eval $(dumpKeys | tdb get Microphone)
⋮┆----------------------------------------
30┆ eval $(dumpKeys | tdb get Speaker)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
20┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
22┆ kill -s SIGUSR2 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
36┆ $mixer igain $micVolume
⋮┆----------------------------------------
38┆ $mixer igain 0
⋮┆----------------------------------------
42┆ $mixer vol $speakerVolume
⋮┆----------------------------------------
44┆ $mixer vol 0
⋮┆----------------------------------------
54┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
57┆ pids=$(pidof $daemon) && echo -17 > /proc/$pids/oom_adj && break
⋮┆----------------------------------------
73┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
77┆ pids=$(pidof $daemon) && return 1 || return 0
⋮┆----------------------------------------
87┆ killall -USR1 $daemon
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/bluetoothd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
64┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
16┆ pids=$(pidof $daemon) && return 1 || return 0
⋮┆----------------------------------------
43┆ $binary -n -E -p "gatt, gatt_example" -q "$pincode" -s > /dev/null 2>&1 &
⋮┆----------------------------------------
46┆ $binary -n -E -p "gatt, gatt_example" -q "$pincode" > /dev/null 2>&1 &
⋮┆----------------------------------------
64┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
71┆ killall $daemon
⋮┆----------------------------------------
78┆ killall -9 $daemon
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/db_analysis.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
32┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
20┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
26┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
30┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
32┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/dbd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
23┆ tdb set HTTPAccount AdminPasswd_ss=$(pibinfo Pincode)
⋮┆----------------------------------------
84┆ tdb set HTTPAccount AdminPasswd_ss=$(pibinfo FactoryPassword)
⋮┆----------------------------------------
87┆ tdb set HTTPAccount AdminPasswd_ss=$(pibinfo Pincode)
⋮┆----------------------------------------
89┆ tdb set Wireless AP_PW_ls=$(pibinfo ApKey)
⋮┆----------------------------------------
91┆ tdb set HTTPAccount AdminPasswd_ss=$(pibinfo FactoryPassword)
⋮┆----------------------------------------
93┆ tdb set Wireless AP_PW_ls=$(pibinfo ApKey)
⋮┆----------------------------------------
126┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
33┆ Last4Mac=$(echo $MacAddress | cut -b 9-12)
⋮┆----------------------------------------
43┆ rm -f $file
⋮┆----------------------------------------
50┆ major="$(echo $hwVer | cut -d '.' -f 1)"
⋮┆----------------------------------------
51┆ minor=$(echo $hwVer | cut -d '.' -f 2)
⋮┆----------------------------------------
59┆ echo "name=$model-$(echo $mac | cut -b 9-12)" >> $file
⋮┆----------------------------------------
71┆ tdb set Host CameraName_ms=$model
⋮┆----------------------------------------
72┆ tdb set OSD Text_ss=$model
⋮┆----------------------------------------
73┆ tdb set TargetSnapFTP Prefix_ss=$model
⋮┆----------------------------------------
74┆ tdb set TargetClipFTP Prefix_ss=$model
⋮┆----------------------------------------
75┆ tdb set TargetSamba ShareFolder_ss=$model
⋮┆----------------------------------------
76┆ tdb set Scopes Name_ls=$model
⋮┆----------------------------------------
77┆ tdb set Image Frequency_num=$power_freq
⋮┆----------------------------------------
79┆ mac_b5=$(echo $mac_addr | cut -d':' -f5)
⋮┆----------------------------------------
80┆ mac_b6=$(echo $mac_addr | cut -d':' -f6)
⋮┆----------------------------------------
88┆ tdb set Wireless AP_SSID_ms=${model}-${mac_b5}${mac_b6}
⋮┆----------------------------------------
92┆ tdb set Wireless AP_SSID_ms=${model}-${mac_b5}${mac_b6}
⋮┆----------------------------------------
108┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
119┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
123┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
126┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
128┆ pids=$(pidof $daemon) || break
⋮┆----------------------------------------
130┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
130┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
130┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/dbus-daemon.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
42┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
16┆ pids=$(pidof $daemon) && return 1 || return 0
⋮┆----------------------------------------
26┆ $binary --system > /dev/null 2> /dev/null &
⋮┆----------------------------------------
42┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
49┆ killall $daemon
⋮┆----------------------------------------
56┆ killall -9 $daemon
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/dibbler.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
35┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
53┆ kill -s SIGUSR2 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
23┆ $binary start > /dev/null 2> /dev/null &
⋮┆----------------------------------------
29┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
33┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
35┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
44┆ killall -0 $daemon > /dev/null 2>&1
⋮┆----------------------------------------
45┆ while [ $? == 0 -a $((count++)) -le 6 ]; do sleep 1; killall -0 $daemon > /dev/null 2>& done;
⋮┆----------------------------------------
49┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
51┆ $daemon stop &
⋮┆----------------------------------------
53┆ kill -s SIGUSR2 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
57┆ pids=$(pidof $daemon) && echo "force kill $daemon" && killall -9 $daemon && sleep 1 && pids=$(pidof
$daemon) && echo "force " && die "ng." || echo "ok."
⋮┆----------------------------------------
57┆ pids=$(pidof $daemon) && echo "force kill $daemon" && killall -9 $daemon && sleep 1 && pids=$(pidof
$daemon) && echo "force " && die "ng." || echo "ok."
⋮┆----------------------------------------
57┆ pids=$(pidof $daemon) && echo "force kill $daemon" && killall -9 $daemon && sleep 1 && pids=$(pidof
$daemon) && echo "force " && die "ng." || echo "ok."
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/discovery.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
63┆ eval $(dumpSystemKeys | tdb get System)
⋮┆----------------------------------------
88┆ kill $(echo $pids)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
9┆ echo $@
⋮┆----------------------------------------
38┆ ethtool $1 2> /dev/null | grep -q "Link detected: yes"
⋮┆----------------------------------------
65┆ route add -host 239.255.255.250 dev $median 2> /dev/null
⋮┆----------------------------------------
66┆ $binary -i $median "$debug" > /dev/null 2> /dev/null &
⋮┆----------------------------------------
76┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
87┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
88┆ kill $(echo $pids)
⋮┆----------------------------------------
90┆ $binary -o "bye" -i $median
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/firewall.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
57┆ eval $(loadDBSetting)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
9┆ echo $@
⋮┆----------------------------------------
18┆ $binary_v4 -F
⋮┆----------------------------------------
19┆ $binary_v4 -X
⋮┆----------------------------------------
20┆ $binary_v4 -Z
⋮┆----------------------------------------
21┆ $binary_v4 -P INPUT ACCEPT
⋮┆----------------------------------------
23┆ $binary_v6 -F
⋮┆----------------------------------------
24┆ $binary_v6 -X
⋮┆----------------------------------------
25┆ $binary_v6 -Z
⋮┆----------------------------------------
26┆ $binary_v6 -P INPUT ACCEPT
⋮┆----------------------------------------
31┆ $binary_v4 -P INPUT $defaultAction
⋮┆----------------------------------------
33┆ $binary_v6 -P INPUT $defaultAction
⋮┆----------------------------------------
65┆ $binary_v4 -A INPUT -i lo -j ACCEPT
⋮┆----------------------------------------
67┆ $binary_v6 -A INPUT -i lo -j ACCEPT
⋮┆----------------------------------------
75┆ $binary_v4 -I INPUT -m iprange --src-range $ip -j $action
⋮┆----------------------------------------
77┆ $binary_v4 -A INPUT -s $ip -j $action
⋮┆----------------------------------------
86┆ $binary_v6 -I INPUT -m iprange --src-range $ip -j $action
⋮┆----------------------------------------
88┆ $binary_v6 -A INPUT -s $ip -j $action
⋮┆----------------------------------------
94┆ $binary_v6 -I INPUT -s $AdminAllowAddr_ss -j ACCEPT
⋮┆----------------------------------------
96┆ $binary_v4 -I INPUT -s $AdminAllowAddr_ss -j ACCEPT
⋮┆----------------------------------------
106┆ $binary_v4 -L -n
⋮┆----------------------------------------
109┆ $binary_v6 -L -n
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/getters.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
5┆ echo $@
⋮┆----------------------------------------
15┆ $prefix/etc/rc.d/init.d/rtpd.sh start $prefix
⋮┆----------------------------------------
16┆ $prefix/etc/rc.d/init.d/rtspd.sh start $prefix
⋮┆----------------------------------------
17┆ $prefix/etc/rc.d/init.d/Ruler.sh start $prefix
⋮┆----------------------------------------
22┆ $prefix/etc/rc.d/init.d/rtpd.sh status $prefix
⋮┆----------------------------------------
23┆ $prefix/etc/rc.d/init.d/rtspd.sh status $prefix
⋮┆----------------------------------------
24┆ $prefix/etc/rc.d/init.d/Ruler.sh status $prefix
⋮┆----------------------------------------
39┆ echo Daemons are killed: $daemons ...
⋮┆----------------------------------------
40┆ killall $daemons
⋮┆----------------------------------------
43┆ pids=$(pidof $daemons) || return 0
⋮┆----------------------------------------
44┆ echo $daemons is not stop clearly
⋮┆----------------------------------------
45┆ killall $daemons
⋮┆----------------------------------------
49┆ killall -9 $daemons
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/lighttpd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
97┆ $1:$mac_realm:$(md5hex "$1:$mac_realm:$2")
⋮┆----------------------------------------
98┆ $1:nipca:$(md5hex "$1:nipca:$2")
⋮┆----------------------------------------
99┆ $1:onvif:$(md5hex "$1:onvif:$2")
⋮┆----------------------------------------
427┆ eval $(dumpAccountKey | tdb get HTTPAccount)
⋮┆----------------------------------------
457┆ kill -USR1 $(pidof rtspd | cut -d' ' -f1)
⋮┆----------------------------------------
468┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
514┆ eval $(dumpAccountKey | tdb get HTTPAccount)
⋮┆----------------------------------------
520┆ kill -SIGHUP $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
522┆ kill -USR1 $(pidof rtspd | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
21┆ echo $@
⋮┆----------------------------------------
97┆ $1:$mac_realm:$(md5hex "$1:$mac_realm:$2")
⋮┆----------------------------------------
98┆ $1:nipca:$(md5hex "$1:nipca:$2")
⋮┆----------------------------------------
99┆ $1:onvif:$(md5hex "$1:onvif:$2")
⋮┆----------------------------------------
451┆ [ -d "/mnt/usb/$model" ] && [ ! -L "/var/www/volumes/local" ] && ln -sf /mnt/usb/$model
/var/www/volumes/local
⋮┆----------------------------------------
452┆ [ -d "/mnt/usb/$model" ] && [ ! -L "/var/www/volumes2/local" ] && ln -sf /mnt/usb/$model
/var/www/volumes2/local
⋮┆----------------------------------------
455┆ $binary -f $prefix/etc/lighttpd/lighttpd.conf -m $prefix/lib
⋮┆----------------------------------------
462┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
466┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
468┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
470┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
470┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
470┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
519┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
520┆ kill -SIGHUP $(echo $pids | cut -d' ' -f1)
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/lighttpd_ssl.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
88┆ eval $(dumpAccountKey | tdb get HTTPAccount)
⋮┆----------------------------------------
97┆ $1:$mac_realm:$(md5hex "$1:$mac_realm:$2")
⋮┆----------------------------------------
98┆ $1:nipca:$(md5hex "$1:nipca:$2")
⋮┆----------------------------------------
99┆ $1:onvif:$(md5hex "$1:onvif:$2")
⋮┆----------------------------------------
338┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
20┆ echo $@
⋮┆----------------------------------------
97┆ $1:$mac_realm:$(md5hex "$1:$mac_realm:$2")
⋮┆----------------------------------------
98┆ $1:nipca:$(md5hex "$1:nipca:$2")
⋮┆----------------------------------------
99┆ $1:onvif:$(md5hex "$1:onvif:$2")
⋮┆----------------------------------------
326┆ $binary -f $prefix/etc/lighttpd/lighttpd_ssl.conf -m $prefix/lib
⋮┆----------------------------------------
332┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
336┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
338┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
340┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
340┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
340┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
350┆ ln -sf $prefix/sbin/lighttpd $prefix/sbin/$daemon
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/logd-deprecated.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
33┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
41┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
21┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
27┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
31┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
33┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
35┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
35┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
35┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
39┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
41┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/mDNSResponder.sh
external.semgrep-rules.bash.lang.best-practice.useless-cat
Useless call to 'cat' in a pipeline. Use '<' and '>' for any command to read from a file or
write to a file.
24┆ MDVersion=$(cat /mydlink/version | sed 's/VERSION=//g')
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
90┆ kill -SIGQUIT $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
100┆ kill -SIGHUP $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
20┆ Last4Mac=$(echo $MacAddress | cut -b 9-12)
⋮┆----------------------------------------
78┆ $binary -b -f $conf > /dev/null 2> /dev/null
⋮┆----------------------------------------
84┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
88┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
90┆ kill -SIGQUIT $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
93┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
93┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
93┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
99┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
100┆ kill -SIGHUP $(echo $pids | cut -d' ' -f1)
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/managerReset.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
9┆ tdb set $i Status_byte=0
⋮┆----------------------------------------
15┆ tdb set $i Status_byte=0
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/mdnsd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
42┆ kill -TERM `cat /var/run/mdnsd.pid`
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
31┆ test -r $DAEMON || exit 0
⋮┆----------------------------------------
52┆ $START $DAEMON
⋮┆----------------------------------------
57┆ echo -n " mdnsd" ; $STOP $DAEMON
⋮┆----------------------------------------
62┆ $STOP $DAEMON
⋮┆----------------------------------------
64┆ $START $DAEMON
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/motion_detection_bgm.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
32┆ kill -s SIGTERM $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
40┆ kill -s SIGUSR2 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
48┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
56┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
64┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
20┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
26┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
30┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
32┆ kill -s SIGTERM $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
38┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && start && return 1; }
⋮┆----------------------------------------
40┆ kill -s SIGUSR2 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
45┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
48┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
53┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
56┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
61┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
64┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/myDlinkEvent.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
20┆ base64 de `pibinfo MyDlinkPublicKey` > /mydlink/cert/client.crt.pem
⋮┆----------------------------------------
21┆ base64 de `pibinfo MyDlinkPrivateKey` > /mydlink/cert/client.crt.key
⋮┆----------------------------------------
31┆ echo `tdb get TimeZone POSIXTZ_ms` > /etc/TZ
⋮┆----------------------------------------
45┆ kill $(echo $pids)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
8┆ echo $@
⋮┆----------------------------------------
30┆ $binary --port 3012 > /dev/null 2> /dev/null &
⋮┆----------------------------------------
38┆ /bin/$alexa_proxy &
⋮┆----------------------------------------
44┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
45┆ kill $(echo $pids)
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/network_mfg.sh
external.semgrep-rules.bash.lang.best-practice.useless-cat
Useless call to 'cat' in a pipeline. Use '<' and '>' for any command to read from a file or
write to a file.
24┆ cat /proc/bus/usb/devices | grep -q 'Vendor=148f'
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
15┆ echo $@
⋮┆----------------------------------------
130┆ [ "$DNS1_ss" ] && echo nameserver $DNS1_ss
⋮┆----------------------------------------
131┆ [ "$DNS2_ss" ] && echo nameserver $DNS2_ss
⋮┆----------------------------------------
161┆ dumpStatic $1 >> $interfaces
⋮┆----------------------------------------
167┆ dumpLinkLocalIP $1 >> $interfaces
⋮┆----------------------------------------
173┆ dumpDHCP $1 >> $interfaces
⋮┆----------------------------------------
197┆ echo -n
"\
198┆ pre-up iwpriv apcli0 set
ApCliEnable=0
199┆ pre-up iwpriv apcli0 set
ApCliAuthMode=WEPAUTO
200┆ pre-up iwpriv apcli0 set
ApCliEncrypType=WEP
201┆ pre-up iwpriv apcli0 set
ApCliDefaultKeyID="$WepKeyIndex_byte"
202┆ pre-up iwpriv apcli0 set ApCliKey"$WepKeyIndex_byte"=$(quote encode "$Key_ls") ||
true
203┆ pre-up iwpriv apcli0 set ApCliSsid=$(quote encode
"$ESSID_ms")
204┆ pre-up iwpriv apcli0 set
ApCliEnable=1
205┆ "
⋮┆----------------------------------------
209┆ echo -n
"\
210┆ pre-up iwpriv apcli0 set
ApCliEnable=0
211┆ pre-up iwpriv apcli0 set
ApCliAuthMode=WEPAUTO
212┆ pre-up iwpriv apcli0 set
ApCliEncrypType=WEP
213┆ pre-up iwpriv apcli0 set
ApCliDefaultKeyID="$WepKeyIndex_byte"
214┆ pre-up iwpriv apcli0 set ApCliKey"$WepKeyIndex_byte"=$(quote encode "$Key_ls") ||
true
215┆ pre-up iwpriv apcli0 set ApCliSsid=$(quote encode
"$ESSID_ms")
216┆ pre-up iwpriv apcli0 set
ApCliEnable=1
217┆ "
⋮┆----------------------------------------
221┆ echo -n
"\
222┆ pre-up iwpriv apcli0 set
ApCliEnable=0
223┆ pre-up iwpriv apcli0 set
ApCliAuthMode=WEPAUTO
224┆ pre-up iwpriv apcli0 set
ApCliEncrypType=WEP
225┆ pre-up iwpriv apcli0 set
ApCliDefaultKeyID="$WepKeyIndex_byte"
226┆ pre-up iwpriv apcli0 set ApCliKey"$WepKeyIndex_byte"=$(quote encode "$Key_ls") ||
true
227┆ pre-up iwpriv apcli0 set ApCliSsid=$(quote encode
"$ESSID_ms")
228┆ pre-up iwpriv apcli0 set
ApCliEnable=1
229┆ "
⋮┆----------------------------------------
295┆ echo -n
"\
296┆ pre-up iwpriv ra0 set
NetworkType=Infra
297┆ pre-up iwpriv ra0 set
AuthMode=WEPAUTO
298┆ pre-up iwpriv ra0 set
EncrypType=WEP
299┆ pre-up iwpriv ra0 set
DefaultKeyID="$WepKeyIndex_byte"
300┆ pre-up iwpriv ra0 set Key"$WepKeyIndex_byte"=$(quote encode "$Key_ls") ||
true
301┆ pre-up iwpriv ra0 set SSID=$(quote encode
"$ESSID_ms")
302┆ "
⋮┆----------------------------------------
306┆ echo -n
"\
307┆ pre-up iwpriv ra0 set
NetworkType=Infra
308┆ pre-up iwpriv ra0 set
AuthMode=WEPAUTO
309┆ pre-up iwpriv ra0 set
EncrypType=WEP
310┆ pre-up iwpriv ra0 set
DefaultKeyID="$WepKeyIndex_byte"
311┆ pre-up iwpriv ra0 set Key"$WepKeyIndex_byte"=$(quote encode "$Key_ls") ||
true
312┆ pre-up iwpriv ra0 set SSID=$(quote encode
"$ESSID_ms")
313┆ "
⋮┆----------------------------------------
317┆ echo -n
"\
318┆ pre-up iwpriv ra0 set
NetworkType=Infra
319┆ pre-up iwpriv ra0 set
AuthMode=WEPAUTO
320┆ pre-up iwpriv ra0 set
EncrypType=WEP
321┆ pre-up iwpriv ra0 set
DefaultKeyID="$WepKeyIndex_byte"
322┆ pre-up iwpriv ra0 set Key"$WepKeyIndex_byte"=$(quote encode "$Key_ls") ||
true
323┆ pre-up iwpriv ra0 set SSID=$(quote encode
"$ESSID_ms")
324┆ "
⋮┆----------------------------------------
403┆ echo -n
"\
404┆ pre-up iwpriv wlan0 set
NetworkType=Adhoc
405┆ pre-up iwpriv wlan0 set
AuthMode=WEPAUTO
406┆ pre-up iwpriv wlan0 set
EncrypType=WEP
407┆ pre-up iwpriv wlan0 set
DefaultKeyID="$WepKeyIndex_byte"
408┆ $([ "$Channel_num" -ne 0 ] && echo -n "pre-up iwpriv wlan0 set
Channel=$Channel_num")
409┆ pre-up iwpriv wlan0 set SSID=$(quote encode
"$ESSID_ms")
410┆ pre-up iwpriv wlan0 set Key"$WepKeyIndex_byte"=$(quote encode "$Key_ls") ||
true
411┆ "
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/network_services.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
4┆ echo $@
⋮┆----------------------------------------
85┆ [ "$pidmDNSResponder" != "" ] && kill -s SIGQUIT $pidmDNSResponder > /dev/null 2> /dev/null
⋮┆----------------------------------------
87┆ killall -9 $daemons > /dev/null 2> /dev/null
⋮┆----------------------------------------
90┆ pids=$(pidof $daemons) || return 0
⋮┆----------------------------------------
91┆ echo $daemons is not stop clearly
⋮┆----------------------------------------
92┆ killall $daemons > /dev/null 2> /dev/null
⋮┆----------------------------------------
96┆ killall -9 $daemons > /dev/null 2> /dev/null
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/network_services_ipv6.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
4┆ echo $@
⋮┆----------------------------------------
62┆ ip addr add $ipv6_address/$ipv6_prefix dev $ipv6_interface || return 1
⋮┆----------------------------------------
65┆ ipv6_gateway_network_id=$(/sbin/ipv6_get_network_id $ipv6_gateway $ipv6_prefix $ipv6_gateway)
⋮┆----------------------------------------
66┆ ipv6_gateway_network_id_prefix=$(echo $ipv6_gateway_network_id | cut -d ":" -f1)
⋮┆----------------------------------------
68┆ ip -6 route add $ipv6_gateway/$ipv6_prefix dev $ipv6_interface
⋮┆----------------------------------------
74┆ route -A inet6 add ::/0 gw $ipv6_gateway dev $ipv6_interface
⋮┆----------------------------------------
79┆ ip addr del $ipv6_address/$ipv6_prefix dev $ipv6_interface && return 1
⋮┆----------------------------------------
112┆ [ "$pidipv6_network_helper" != "" ] && kill -9 $pidipv6_network_helper > /dev/null 2> /dev/null
⋮┆----------------------------------------
113┆ [ "$piddibbler" != "" ] && kill -s SIGUSR2 $piddibbler > /dev/null 2> /dev/null
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/ntpd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
21┆ eval $(echo "Enable_byte DHCPNTPEnable_byte Server_ms Retry_byte" | tdb get NTPClient)
⋮┆----------------------------------------
66┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
12┆ echo $@
⋮┆----------------------------------------
28┆ pids=$(pidof $daemon) && return 1 || return 0
⋮┆----------------------------------------
45┆ $binary -s -r $Retry_byte -f $ntp_from_dhcp &
⋮┆----------------------------------------
47┆ $binary -s -r $Retry_byte -f $conf &
⋮┆----------------------------------------
66┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
73┆ killall $daemon
⋮┆----------------------------------------
80┆ killall -9 $daemon
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/rdnssd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
41┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
16┆ pids=$(pidof $daemon) && return 1 || return 0
⋮┆----------------------------------------
26┆ $binary -H /etc/rdnssd/merge-hook -r /tmp/rdnssd-resolv.conf
⋮┆----------------------------------------
41┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
48┆ killall $daemon
⋮┆----------------------------------------
55┆ killall -9 $daemon
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/rtspd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
16┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
23┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
27┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
29┆ kill $pids
⋮┆----------------------------------------
31┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
31┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
31┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/services.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
4┆ echo $@
⋮┆----------------------------------------
14┆ [ -x $prefix/etc/rc.d/init.d/vcd.sh ] && $prefix/etc/rc.d/init.d/vcd.sh start $prefix
⋮┆----------------------------------------
15┆ [ -x $prefix/etc/rc.d/init.d/acd.sh ] && $prefix/etc/rc.d/init.d/acd.sh start $prefix
⋮┆----------------------------------------
16┆ [ -x $prefix/etc/rc.d/init.d/avcd.sh ] && $prefix/etc/rc.d/init.d/avcd.sh start $prefix
⋮┆----------------------------------------
18┆ [ -x $prefix/etc/rc.d/init.d/db_analysis.sh ] && $prefix/etc/rc.d/init.d/db_analysis.sh start $prefix
⋮┆----------------------------------------
19┆ [ -x $prefix/etc/rc.d/init.d/rtpd.sh ] && $prefix/etc/rc.d/init.d/rtpd.sh start $prefix
⋮┆----------------------------------------
20┆ [ -x $prefix/etc/rc.d/init.d/rtspd.sh ] && $prefix/etc/rc.d/init.d/rtspd.sh start $prefix
⋮┆----------------------------------------
21┆ [ -x $prefix/etc/rc.d/init.d/Onvif_mcast.sh ] && $prefix/etc/rc.d/init.d/Onvif_mcast.sh start $prefix
⋮┆----------------------------------------
22┆ [ -x $prefix/etc/rc.d/init.d/Ruler.sh ] && $prefix/etc/rc.d/init.d/Ruler.sh start $prefix
⋮┆----------------------------------------
23┆ [ -x $prefix/etc/rc.d/init.d/dbus-daemon.sh ] && $prefix/etc/rc.d/init.d/dbus-daemon.sh start $prefix
⋮┆----------------------------------------
24┆ [ -x $prefix/etc/rc.d/init.d/bluetoothd.sh ] && $prefix/etc/rc.d/init.d/bluetoothd.sh start $prefix
⋮┆----------------------------------------
27┆ [ -x $prefix/etc/rc.d/init.d/finderd.sh ] && $prefix/etc/rc.d/init.d/finderd.sh start $prefix
⋮┆----------------------------------------
28┆ [ -x $prefix/etc/rc.d/init.d/mDNSResponder.sh ] && $prefix/etc/rc.d/init.d/mDNSResponder.sh start $prefix
⋮┆----------------------------------------
29┆ [ -x $prefix/etc/rc.d/init.d/upnp_av.sh ] && $prefix/etc/rc.d/init.d/upnp_av.sh start $prefix
⋮┆----------------------------------------
30┆ [ -x $prefix/etc/rc.d/init.d/upnp_av_ipv6.sh ] && $prefix/etc/rc.d/init.d/upnp_av_ipv6.sh start $prefix
⋮┆----------------------------------------
31┆ [ -x $prefix/etc/rc.d/init.d/discovery.sh ] && $prefix/etc/rc.d/init.d/discovery.sh start $prefix
⋮┆----------------------------------------
32┆ [ -x $prefix/etc/rc.d/init.d/ddnsUpdater.sh ] && $prefix/etc/rc.d/init.d/ddnsUpdater.sh start $prefix
⋮┆----------------------------------------
33┆ [ -x $prefix/etc/rc.d/init.d/lld2d.sh ] && $prefix/etc/rc.d/init.d/lld2d.sh start $prefix
⋮┆----------------------------------------
34┆ [ -x $prefix/etc/rc.d/init.d/ntpd.sh ] && $prefix/etc/rc.d/init.d/ntpd.sh start $prefix
⋮┆----------------------------------------
41┆ [ -x $prefix/etc/rc.d/init.d/vcd.sh ] && $prefix/etc/rc.d/init.d/vcd.sh status $prefix
⋮┆----------------------------------------
42┆ [ -x $prefix/etc/rc.d/init.d/acd.sh ] && $prefix/etc/rc.d/init.d/acd.sh status $prefix
⋮┆----------------------------------------
43┆ [ -x $prefix/etc/rc.d/init.d/avcd.sh ] && $prefix/etc/rc.d/init.d/avcd.sh status $prefix
⋮┆----------------------------------------
44┆ [ -x $prefix/etc/rc.d/init.d/db_analysis.sh ] && $prefix/etc/rc.d/init.d/db_analysis.sh status $prefix
⋮┆----------------------------------------
45┆ [ -x $prefix/etc/rc.d/init.d/rtpd.sh ] && $prefix/etc/rc.d/init.d/rtpd.sh status $prefix
⋮┆----------------------------------------
46┆ [ -x $prefix/etc/rc.d/init.d/rtspd.sh ] && $prefix/etc/rc.d/init.d/rtspd.sh status $prefix
⋮┆----------------------------------------
47┆ [ -x $prefix/etc/rc.d/init.d/Onvif_mcast.sh ] && $prefix/etc/rc.d/init.d/Onvif_mcast.sh status $prefix
⋮┆----------------------------------------
48┆ [ -x $prefix/etc/rc.d/init.d/Ruler.sh ] && $prefix/etc/rc.d/init.d/Ruler.sh status $prefix
⋮┆----------------------------------------
49┆ [ -x $prefix/etc/rc.d/init.d/dbus-daemon.sh ] && $prefix/etc/rc.d/init.d/dbus-daemon.sh status $prefix
⋮┆----------------------------------------
50┆ [ -x $prefix/etc/rc.d/init.d/bluetoothd.sh ] && $prefix/etc/rc.d/init.d/bluetoothd.sh status $prefix
⋮┆----------------------------------------
53┆ [ -x $prefix/etc/rc.d/init.d/finderd.sh ] && $prefix/etc/rc.d/init.d/finderd.sh status $prefix
⋮┆----------------------------------------
54┆ [ -x $prefix/etc/rc.d/init.d/mDNSResponder.sh ] && $prefix/etc/rc.d/init.d/mDNSResponder.sh status
$prefix
⋮┆----------------------------------------
55┆ [ -x $prefix/etc/rc.d/init.d/upnp_av.sh ] && $prefix/etc/rc.d/init.d/upnp_av.sh status $prefix
⋮┆----------------------------------------
56┆ [ -x $prefix/etc/rc.d/init.d/upnp_av_ipv6.sh ] && $prefix/etc/rc.d/init.d/upnp_av_ipv6.sh status $prefix
⋮┆----------------------------------------
57┆ [ -x $prefix/etc/rc.d/init.d/discovery.sh ] && $prefix/etc/rc.d/init.d/discovery.sh status $prefix
⋮┆----------------------------------------
58┆ [ -x $prefix/etc/rc.d/init.d/ddnsUpdater.sh ] && $prefix/etc/rc.d/init.d/ddnsUpdater.sh status $prefix
⋮┆----------------------------------------
59┆ [ -x $prefix/etc/rc.d/init.d/lld2d.sh ] && $prefix/etc/rc.d/init.d/lld2d.sh status $prefix
⋮┆----------------------------------------
60┆ [ -x $prefix/etc/rc.d/init.d/ntpd.sh ] && $prefix/etc/rc.d/init.d/ntpd.sh status $prefix
⋮┆----------------------------------------
88┆ [ -x $prefix/etc/rc.d/init.d/lld2d.sh ] && $prefix/etc/rc.d/init.d/lld2d.sh stop $prefix
⋮┆----------------------------------------
89┆ [ -x $prefix/etc/rc.d/init.d/discovery.sh ] && $prefix/etc/rc.d/init.d/discovery.sh stop $prefix
⋮┆----------------------------------------
90┆ [ -x $prefix/etc/rc.d/init.d/bluetoothd.sh ] && $prefix/etc/rc.d/init.d/bluetoothd.sh stop $prefix
⋮┆----------------------------------------
91┆ [ -x $prefix/etc/rc.d/init.d/dbus-daemon.sh ] && $prefix/etc/rc.d/init.d/dbus-daemon.sh stop $prefix
⋮┆----------------------------------------
93┆ echo Daemons are killed: $daemons ...
⋮┆----------------------------------------
94┆ killall $daemons
⋮┆----------------------------------------
97┆ pids=$(pidof $daemons) || return 0
⋮┆----------------------------------------
98┆ echo $daemons is not stop clear
⋮┆----------------------------------------
99┆ killall $daemons
⋮┆----------------------------------------
103┆ killall -9 $daemons
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/trservices.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
4┆ echo $@
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/tz_dst.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
30┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
19┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
28┆ pids=$(pidof $app) || { echo "$app is not running." && return 1; }
⋮┆----------------------------------------
30┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
32┆ pids=$(pidof $app) && killall -9 $app && sleep 1 && pids=$(pidof $app) && die "ng." || echo "ok."
⋮┆----------------------------------------
32┆ pids=$(pidof $app) && killall -9 $app && sleep 1 && pids=$(pidof $app) && die "ng." || echo "ok."
⋮┆----------------------------------------
32┆ pids=$(pidof $app) && killall -9 $app && sleep 1 && pids=$(pidof $app) && die "ng." || echo "ok."
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/watchDog.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
32┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
20┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
26┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
30┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
32┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
38┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/init.d/wifiAutoReconnect.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
29┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
16┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
22┆ pids=$(pidof $daemon) && echo "($pids) is running." || echo " is stop."
⋮┆----------------------------------------
26┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
29┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
31┆ pids=$(pidof $daemon) || break
⋮┆----------------------------------------
33┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
33┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
⋮┆----------------------------------------
33┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"ok."
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
etc/rc.d/rcS.d/S22bluetoothd.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
55┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ echo $@
⋮┆----------------------------------------
16┆ pids=$(pidof $daemon) && return 1 || return 0
⋮┆----------------------------------------
38┆ $binary -d -n -E -p "gatt, gatt_example" -q "$pincode" -s > /dev/null 2>&1 &
⋮┆----------------------------------------
55┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
62┆ killall $daemon
⋮┆----------------------------------------
69┆ killall -9 $daemon
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
sbin/automount.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
13┆ M=`mount | grep $1`
⋮┆----------------------------------------
16┆ $MKDIR -p "$MOUNT_PATH"
⋮┆----------------------------------------
18┆ $MOUNT -t vfat -o fmask=0000,dmask=0000,allow_utime=0022 /dev/$1 "$MOUNT_PATH" && echo -n "/dev/$1" >
/tmp/sddev
⋮┆----------------------------------------
20┆ [ ! -d $MOUNT_PATH/$model ] && $MKDIR $MOUNT_PATH/$model
⋮┆----------------------------------------
22┆ [ $model != "" ] && ln -sf $MOUNT_PATH/$model $VOLUME_PATH
⋮┆----------------------------------------
25┆ $UMOUNT -lf "$MOUNT_PATH" && rm /tmp/sddev
⋮┆----------------------------------------
26┆ rm $VOLUME_PATH
⋮┆----------------------------------------
30┆ test=$(echo $1 | grep -re "mmcblk[0-9]$")
⋮┆----------------------------------------
33┆ domount ${test}p1
⋮┆----------------------------------------
37┆ domount $test
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
sbin/fw_decrypt.sh
external.semgrep-rules.bash.lang.best-practice.useless-cat
Useless call to 'cat' in a pipeline. Use '<' and '>' for any command to read from a file or
write to a file.
4┆ target=$(cat $p/certificate.info | grep "Target" | cut -d":" -f2)
⋮┆----------------------------------------
4┆ target=$(cat $p/certificate.info | grep "Target" | cut -d":" -f2)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
8┆ eval $(cat $p/keysuit)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
4┆ target=$(cat $p/certificate.info | grep "Target" | cut -d":" -f2)
⋮┆----------------------------------------
5┆ openssl rsautl -decrypt -in $p/keysuit.enc -inkey "$1" -out $p/keysuit || ret=1
⋮┆----------------------------------------
8┆ eval $(cat $p/keysuit)
⋮┆----------------------------------------
9┆ openssl aes-256-cbc -k $key -iv $iv -S $salt -d -in $p/$target.aes -out "$2" || ret=1
⋮┆----------------------------------------
10┆ chmod u+x $2
⋮┆----------------------------------------
11┆ exit $ret
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
sbin/fw_sign_verify.sh
external.semgrep-rules.bash.lang.best-practice.useless-cat
Useless call to 'cat' in a pipeline. Use '<' and '>' for any command to read from a file or
write to a file.
8┆ target=$(cat $p/certificate.info | grep "Target" | cut -d":" -f2)
⋮┆----------------------------------------
8┆ target=$(cat $p/certificate.info | grep "Target" | cut -d":" -f2)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
4┆ mkdir $p
⋮┆----------------------------------------
5┆ tar -xf "$1" certificate.info -C $p
⋮┆----------------------------------------
6┆ tar -xf "$1" keysuit.enc -C $p
⋮┆----------------------------------------
7┆ tar -xf "$1" sign.sha1.enc -C $p
⋮┆----------------------------------------
8┆ target=$(cat $p/certificate.info | grep "Target" | cut -d":" -f2)
⋮┆----------------------------------------
9┆ tar -xf "$1" $target.aes -C $p
⋮┆----------------------------------------
10┆ file=$(echo $target | cut -d'.' -f 0)
⋮┆----------------------------------------
11┆ tar -xOf "$1" $file.aes | openssl dgst -sha256 | cut -d' ' -f2 > $p/$file.sha1
⋮┆----------------------------------------
12┆ sum1=`cat $p/$target.aes $p/keysuit.enc $p/certificate.info $p/$file.sha1 | openssl dgst -sha256 | cut
-d' ' -f2`
⋮┆----------------------------------------
16┆ openssl rsautl -verify -inkey "$2" -pubin -in $p/sign.sha1.enc > $p/sign.sha1
⋮┆----------------------------------------
18┆ sum2=`cat $p/sign.sha1`
⋮┆----------------------------------------
20┆ echo $sum1
⋮┆----------------------------------------
21┆ echo $sum2
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
sbin/subscriptionManager.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
27┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
36┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
43┆ kill -s SIGUSR2 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
6┆ echo $@
⋮┆----------------------------------------
20┆ $binary > /dev/null 2> /dev/null &
⋮┆----------------------------------------
25┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
27┆ kill $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
29┆ pids=$(pidof $daemon) && sleep 2
⋮┆----------------------------------------
30┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"stop $daemon ok."
⋮┆----------------------------------------
30┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"stop $daemon ok."
⋮┆----------------------------------------
30┆ pids=$(pidof $daemon) && killall -9 $daemon && sleep 1 && pids=$(pidof $daemon) && die "ng." || echo
"stop $daemon ok."
⋮┆----------------------------------------
34┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
36┆ kill -s SIGUSR1 $(echo $pids | cut -d' ' -f1)
⋮┆----------------------------------------
41┆ pids=$(pidof $daemon) || { echo "$daemon is not running." && return 1; }
⋮┆----------------------------------------
43┆ kill -s SIGUSR2 $(echo $pids | cut -d' ' -f1)
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
sbin/udhcpc.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
24┆ [ -f /tmp/wifi-led.pid ] && kill -USR1 `cat /tmp/wifi-led.pid`
⋮┆----------------------------------------
35┆ eval $(dumpNetworkKeys | tdb get Network)
⋮┆----------------------------------------
54┆ eval $(dumpNetworkKeys | tdb get Network)
⋮┆----------------------------------------
135┆ [ $interface = "wlan0" ] && kill -USR1 `cat /tmp/wifiAutoReconnect.pid`
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
40┆ /sbin/ifconfig $interface 0.0.0.0
⋮┆----------------------------------------
46┆ /sbin/ifconfig $interface $Address_ss netmask $Netmask_ss
⋮┆----------------------------------------
47┆ route add default gw $Gateway_ss $interface
⋮┆----------------------------------------
58┆ /sbin/ifconfig $interface $ip $BROADCAST $NETMASK
⋮┆----------------------------------------
64┆ printf "ip='%s'\n" $ip > /tmp/dhcptemp.log.new
⋮┆----------------------------------------
65┆ printf "interface='%s'\n" $interface >> /tmp/dhcptemp.log.new
⋮┆----------------------------------------
66┆ printf "broadcast='%s'\n" $broadcast >> /tmp/dhcptemp.log.new
⋮┆----------------------------------------
67┆ printf "subnet='%s'\n" $subnet >> /tmp/dhcptemp.log.new
⋮┆----------------------------------------
68┆ printf "router='%s'\n" $router >> /tmp/dhcptemp.log.new
⋮┆----------------------------------------
69┆ printf "meteric='%s'\n" $metric >> /tmp/dhcptemp.log.new
⋮┆----------------------------------------
70┆ printf "domain='%s'\n" $domain >> /tmp/dhcptemp.log.new
⋮┆----------------------------------------
71┆ printf "dns='%s'\n" $dns >> /tmp/dhcptemp.log.new
⋮┆----------------------------------------
96┆ while route del default gw 0.0.0.0 dev $interface ; do
⋮┆----------------------------------------
102┆ metric=`expr $metric + 1`
⋮┆----------------------------------------
103┆ route add default gw $i dev $interface metric $metric
⋮┆----------------------------------------
112┆ /sbin/ifconfig $interface $Address_ss netmask $Netmask_ss up
⋮┆----------------------------------------
113┆ while route del default gw 0.0.0.0 dev $interface ; do
⋮┆----------------------------------------
116┆ route add default gw $Gateway_ss dev $interface
⋮┆----------------------------------------
122┆ [ -n "$domain" ] && echo search $domain >> $RESOLV_CONF
⋮┆----------------------------------------
125┆ echo nameserver $i >> $RESOLV_CONF
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
sbin/wpsApCheck.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
31┆ kill -SIGUSR1 $udhcpd_pid
⋮┆----------------------------------------
33┆ lease_str=`/usr/bin/dumpleases -f /tmp/udhcpd.leases | grep $ip_mask`
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
sbin/write_mac_rtl8723bu.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
41┆ printf "pibinfo MacAddress:\t%s\n" `pibinfo MacAddress`
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
4┆ mac_b1=$(echo $mac_addr | cut -d':' -f1)
⋮┆----------------------------------------
5┆ mac_b2=$(echo $mac_addr | cut -d':' -f2)
⋮┆----------------------------------------
6┆ mac_b3=$(echo $mac_addr | cut -d':' -f3)
⋮┆----------------------------------------
7┆ mac_b4=$(echo $mac_addr | cut -d':' -f4)
⋮┆----------------------------------------
8┆ mac_b5=$(echo $mac_addr | cut -d':' -f5)
⋮┆----------------------------------------
9┆ mac_b6=$(echo $mac_addr | cut -d':' -f6)
⋮┆----------------------------------------
16┆ echo rtwpriv wlan0 efuse_set btwmap,3C,$mac_b6$mac_b5$mac_b4$mac_b3$mac_b2$mac_b1
⋮┆----------------------------------------
18┆ echo MacAddress=$mac_addr | pibinfo set
⋮┆----------------------------------------
22┆ rtwpriv wlan0 efuse_set btwmap,3C,$mac_b6$mac_b5$mac_b4$mac_b3$mac_b2$mac_b1
⋮┆----------------------------------------
42┆ printf "BT MAC address:\t\t%s:%s:%s:%s:%s:%s\n" $bt_mac_b1 $bt_mac_b2 $bt_mac_b3 $bt_mac_b4 $bt_mac_b5
$bt_mac_b6
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
usr/bin/BurnInTest.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
21┆ eval $( dumpBurnInKeys | tdb get BurnIn )
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
6┆ echo $@
⋮┆----------------------------------------
24┆ let sleepSecs=$BurnInWMins_num*60
⋮┆----------------------------------------
26┆ sleep $sleepSecs
⋮┆----------------------------------------
30┆ sleep $intervalSecs
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
usr/bin/efuseBuff2PIB.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
6┆ echo $0 will write the efusebuffer from PATH to PIB with uuencode.
⋮┆----------------------------------------
8┆ echo $0 [PATH]
⋮┆----------------------------------------
9┆ echo default : $0 $EFUSEBUFFER_PATH
⋮┆----------------------------------------
16┆ cat $EFUSEBUFFER_PATH | uuencode $EFUSEBUFFER_PATH | pibinfo setEfuseBuffer && echo set PIB OK || echo
set PIB FAILED
⋮┆----------------------------------------
16┆ cat $EFUSEBUFFER_PATH | uuencode $EFUSEBUFFER_PATH | pibinfo setEfuseBuffer && echo set PIB OK || echo
set PIB FAILED
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
usr/bin/nfshost.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
4┆ echo $0 host [prefix] [mntPoint]
⋮┆----------------------------------------
17┆ mount -o nolock $host:$prefix $mntPoint
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
usr/bin/readAllFiles.sh
external.semgrep-rules.bash.lang.best-practice.iteration-over-ls-output
Iterating over ls output is fragile. Use globs, e.g. 'dir/*' instead of '$(ls dir)'.
12┆ for i in $(ls $1); do
⋮┆----------------------------------------
16┆ for i in $(ls $1); do
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
7┆ if ! ls $1 > /dev/null; then
⋮┆----------------------------------------
12┆ for i in $(ls $1); do
⋮┆----------------------------------------
14┆ [ -d $1/$i ] && catFiles $1/$i
⋮┆----------------------------------------
16┆ for i in $(ls $1); do
⋮┆----------------------------------------
19┆ if ! cat $1/$i > /dev/null; then
⋮┆----------------------------------------
30┆ catFiles $dir
⋮┆----------------------------------------
31┆ exit $exitCode
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
usr/bin/watchcgi.sh
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
18┆ while sleep $interval; do
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
var/www/cgiMain.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
13┆ eval $(urlDecode "$PARAMETERS") || exit 1
⋮┆----------------------------------------
17┆ eval $(memfree)
⋮┆----------------------------------------
18┆ eval $(formData "$CONTENT_TYPE") || exit 1
⋮┆----------------------------------------
23┆ eval $(urlDecode "$QUERY_STRING") || exit 1
⋮┆----------------------------------------
28┆ eval $(urlDecode "$QUERY_STRING") || exit 1
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
2┆ echo $@ >> /tmp/debuglog
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
var/www/infMain.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
50┆ eval $(urlDecode "$PARAMETERS") || exit 1
⋮┆----------------------------------------
54┆ eval $(formData "$CONTENT_TYPE") || exit 1
⋮┆----------------------------------------
59┆ eval $(urlDecode "$QUERY_STRING") || exit 1
⋮┆----------------------------------------
64┆ eval $(urlDecode "$QUERY_STRING") || exit 1
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
9┆ ls -l $1 | cut -b 39-43
⋮┆----------------------------------------
22┆ Content-Length: $(sizeof $infFile)\r
⋮┆----------------------------------------
26┆ [ -f "$infFile" ] && cat $infFile
⋮┆----------------------------------------
39┆ echo $@ >> /tmp/debuglog
⋮┆----------------------------------------
76┆ [ -f "$infFile" ] && rm -f $infFile
⋮┆----------------------------------------
112┆ SeparateStr=$(echo $Str | cut -d$SeparateChar -f${n})
⋮┆----------------------------------------
112┆ SeparateStr=$(echo $Str | cut -d$SeparateChar -f${n})
⋮┆----------------------------------------
132┆ SeparateStr=$(echo $Str | cut -d$SeparateChar -f${n})
⋮┆----------------------------------------
132┆ SeparateStr=$(echo $Str | cut -d$SeparateChar -f${n})
⋮┆----------------------------------------
142┆ n=$(expr $n - 1)
⋮┆----------------------------------------
144┆ return $n
/logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/
var/www/xmlFunctions.sh
external.semgrep-rules.bash.lang.correctness.unquoted-command-substitution-in-command
The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or
other separators specified by the IFS variable. You should surround it with double quotes to
avoid splitting the result.
14┆ eval $(pibinfo Peripheral)
⋮┆----------------------------------------
81┆ eval $(dumpSystemKeys | tdb get System) || return 1
⋮┆----------------------------------------
external.semgrep-rules.bash.lang.correctness.unquoted-variable-expansion-in-command
Variable expansions must be double-quoted so as to prevent being split into multiple pieces
according to whitespace or whichever separator is specified by the IFS variable. If you
really wish to split the variable's contents, you may use a variable that starts with an
underscore e.g. $_X instead of $X, and semgrep will ignore it. If what you need is an array,
consider using a proper bash array.
73┆ [ -f "$2" ] && cat $2
⋮┆----------------------------------------
74┆ [ -f "$3" ] && cat $3
⋮┆----------------------------------------
78┆ ipv4address=$(ifconfig $median | grep "inet addr:" | cut -d ':' -f2 | cut -d ' ' -f1)
┌──────────────┐
│ Scan Summary │
└──────────────┘
Some files were skipped or only partially analyzed.
Partially scanned: 17 files only partially analyzed due to parsing or internal Semgrep errors
Ran 7 rules on 58 files: 574 findings.