mirror of
https://git.proxmox.com/git/pve-manager
synced 2025-05-29 15:33:21 +00:00
bridgevlanport: replace sed pipe with substitution
The previous code stripped *all* combinations of zero or more letters and digits followed by a dot of an interface name to retrieve the VLANID. At the same time the supposedly opposite code for IF_VLAN_RAW_DEVICE only actually extracts the part up to the *first* dot. Thus an interface named 'a.b.0' would have a VLANID of 0 and a raw device name of just 'a'. I also don't see a reason to limit the removed portions to alphanumeric characters. I.e. an interface named tap-test.0 would result in a VLANID of 'tap-0' and an IF_VLAN_RAW_DEVICE of 'test'. A simple shell substitution seems to do a much better job and is more efficient than forking out two processes with a pipe.
This commit is contained in:
parent
eafe236e8a
commit
c182eb5891
@ -8,8 +8,8 @@ fi
|
|||||||
if [ "$MODE" = "start" ] ; then
|
if [ "$MODE" = "start" ] ; then
|
||||||
case "$IFACE" in
|
case "$IFACE" in
|
||||||
*.[0-9]*)
|
*.[0-9]*)
|
||||||
VLANID=`echo $IFACE|sed "s/[a-zA-Z0-9]*\.//g"`
|
VLANID="${IFACE##*.}"
|
||||||
IF_VLAN_RAW_DEVICE=`echo $IFACE|sed "s/\([a-zA-Z0-9]*\)\..*/\1/"`
|
IF_VLAN_RAW_DEVICE="${IFACE%.*}"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user