mirror of
https://gitlab.com/shorewall/code.git
synced 2024-11-23 16:13:18 +01:00
Restore find_first_interface_address and find_first_interface_address_if_any
This commit is contained in:
parent
7440cd7d21
commit
f02cddd780
@ -598,6 +598,40 @@ chain_exists() # $1 = chain name
|
|||||||
qt $IPTABLES -L $1 -n
|
qt $IPTABLES -L $1 -n
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Find interface address--returns the first IP address assigned to the passed
|
||||||
|
# device
|
||||||
|
#
|
||||||
|
find_first_interface_address() # $1 = interface
|
||||||
|
{
|
||||||
|
#
|
||||||
|
# get the line of output containing the first IP address
|
||||||
|
#
|
||||||
|
addr=$(ip -f inet addr show $1 2> /dev/null | grep 'inet .* global' | head -n1)
|
||||||
|
#
|
||||||
|
# If there wasn't one, bail out now
|
||||||
|
#
|
||||||
|
[ -n "$addr" ] || fatal_error "Can't determine the IP address of $1"
|
||||||
|
#
|
||||||
|
# Strip off the trailing VLSM mask (or the peer IP in case of a P-t-P link)
|
||||||
|
# along with everything else on the line
|
||||||
|
#
|
||||||
|
echo $addr | sed 's/\s*inet //;s/\/.*//;s/ peer.*//'
|
||||||
|
}
|
||||||
|
|
||||||
|
find_first_interface_address_if_any() # $1 = interface
|
||||||
|
{
|
||||||
|
#
|
||||||
|
# get the line of output containing the first IP address
|
||||||
|
#
|
||||||
|
addr=$(ip -f inet addr show $1 2> /dev/null | grep 'inet .* global' | head -n1)
|
||||||
|
#
|
||||||
|
# Strip off the trailing VLSM mask (or the peer IP in case of a P-t-P link)
|
||||||
|
# along with everything else on the line
|
||||||
|
#
|
||||||
|
[ -n "$addr" ] && echo $addr | sed 's/\s*inet //;s/\/.*//;s/ peer.*//' || echo 0.0.0.0
|
||||||
|
}
|
||||||
|
|
||||||
#
|
#
|
||||||
# Internal version of 'which'
|
# Internal version of 'which'
|
||||||
#
|
#
|
||||||
|
Loading…
Reference in New Issue
Block a user