mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-26101: Galera WSREP SST broken on 10.6 under FreeBSD
This commit fixes a call to the sockstat utility for FreeBSD, where this utility requires an extra "-s" parameter to display the connection status and prints one extra column.
This commit is contained in:
@ -1010,7 +1010,13 @@ check_port()
|
|||||||
lsof -Pnl -i ":$port" 2>/dev/null | \
|
lsof -Pnl -i ":$port" 2>/dev/null | \
|
||||||
grep -q -E "^($utils)[^[:space:]]*[[:space:]]+$pid[[:space:]].*\\(LISTEN\\)" && rc=0
|
grep -q -E "^($utils)[^[:space:]]*[[:space:]]+$pid[[:space:]].*\\(LISTEN\\)" && rc=0
|
||||||
elif [ $sockstat_available -ne 0 ]; then
|
elif [ $sockstat_available -ne 0 ]; then
|
||||||
sockstat -p "$port" 2>/dev/null | \
|
local opts='-p'
|
||||||
|
if [ "$OS" = 'FreeBSD' ]; then
|
||||||
|
# sockstat on FreeBSD requires the "-s" option
|
||||||
|
# to display the connection state:
|
||||||
|
opts='-sp'
|
||||||
|
fi
|
||||||
|
sockstat "$opts" "$port" 2>/dev/null | \
|
||||||
grep -q -E "[[:space:]]+($utils)[^[:space:]]*[[:space:]]+$pid[[:space:]].*[[:space:]]LISTEN" && rc=0
|
grep -q -E "[[:space:]]+($utils)[^[:space:]]*[[:space:]]+$pid[[:space:]].*[[:space:]]LISTEN" && rc=0
|
||||||
elif [ $ss_available -ne 0 ]; then
|
elif [ $ss_available -ne 0 ]; then
|
||||||
ss -nlpH "( sport = :$port )" 2>/dev/null | \
|
ss -nlpH "( sport = :$port )" 2>/dev/null | \
|
||||||
|
@ -93,7 +93,15 @@ check_pid_and_port()
|
|||||||
else
|
else
|
||||||
local filter='([^[:space:]]+[[:space:]]+){4}[^[:space:]]+'
|
local filter='([^[:space:]]+[[:space:]]+){4}[^[:space:]]+'
|
||||||
if [ $sockstat_available -eq 1 ]; then
|
if [ $sockstat_available -eq 1 ]; then
|
||||||
port_info=$(sockstat -p "$port" 2>/dev/null | \
|
local opts='-p'
|
||||||
|
if [ "$OS" = 'FreeBSD' ]; then
|
||||||
|
# sockstat on FreeBSD requires the "-s" option
|
||||||
|
# to display the connection state:
|
||||||
|
opts='-sp'
|
||||||
|
# in addition, sockstat produces an additional column:
|
||||||
|
filter='([^[:space:]]+[[:space:]]+){5}[^[:space:]]+'
|
||||||
|
fi
|
||||||
|
port_info=$(sockstat "$opts" "$port" 2>/dev/null | \
|
||||||
grep -E '[[:space:]]LISTEN' | grep -o -E "$filter")
|
grep -E '[[:space:]]LISTEN' | grep -o -E "$filter")
|
||||||
else
|
else
|
||||||
port_info=$(ss -nlpH "( sport = :$port )" 2>/dev/null | \
|
port_info=$(ss -nlpH "( sport = :$port )" 2>/dev/null | \
|
||||||
|
Reference in New Issue
Block a user