diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2012-03-21 07:47:15 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2012-03-21 08:00:02 +0000 |
commit | 58b1c5cf916324511569f31a3b0adc09d0d23a13 (patch) | |
tree | ade26fffd410b6934d3dc9b864bcf8ab8a58f370 | |
parent | 1f57eb60222c4cc7aacdeecae111acf3db74feb0 (diff) | |
download | alpine_aports-58b1c5cf916324511569f31a3b0adc09d0d23a13.tar.bz2 alpine_aports-58b1c5cf916324511569f31a3b0adc09d0d23a13.tar.xz alpine_aports-58b1c5cf916324511569f31a3b0adc09d0d23a13.zip |
main/util-vserver: allow use bonded and bridge interfaces
-rw-r--r-- | main/util-vserver/APKBUILD | 4 | ||||
-rw-r--r-- | main/util-vserver/setup-vs-guest | 21 |
2 files changed, 22 insertions, 3 deletions
diff --git a/main/util-vserver/APKBUILD b/main/util-vserver/APKBUILD index f2364f452a..59d4ec1203 100644 --- a/main/util-vserver/APKBUILD +++ b/main/util-vserver/APKBUILD | |||
@@ -2,7 +2,7 @@ | |||
2 | pkgname=util-vserver | 2 | pkgname=util-vserver |
3 | pkgver=0.30.216_pre3029 | 3 | pkgver=0.30.216_pre3029 |
4 | _realver=${pkgver/_/-} | 4 | _realver=${pkgver/_/-} |
5 | pkgrel=0 | 5 | pkgrel=1 |
6 | pkgdesc="Linux-VServer admin utilities" | 6 | pkgdesc="Linux-VServer admin utilities" |
7 | url="http://www.nongnu.org/util-vserver/" | 7 | url="http://www.nongnu.org/util-vserver/" |
8 | arch="all" | 8 | arch="all" |
@@ -58,4 +58,4 @@ package() { | |||
58 | 58 | ||
59 | md5sums="e0775fe6ee9ce390be2be84c94eca4ab util-vserver-0.30.216-pre3029.tar.bz2 | 59 | md5sums="e0775fe6ee9ce390be2be84c94eca4ab util-vserver-0.30.216-pre3029.tar.bz2 |
60 | fae6626b724dec90a19924d68d355cd2 setup-vs-template | 60 | fae6626b724dec90a19924d68d355cd2 setup-vs-template |
61 | 4778b260b0fa8b5ce05d0a64f0b2fb39 setup-vs-guest" | 61 | dfd0a543b6dcaeef647ceac0ae103d12 setup-vs-guest" |
diff --git a/main/util-vserver/setup-vs-guest b/main/util-vserver/setup-vs-guest index 985be9c3ad..8d33f6c081 100644 --- a/main/util-vserver/setup-vs-guest +++ b/main/util-vserver/setup-vs-guest | |||
@@ -182,11 +182,30 @@ ask_hostname() { | |||
182 | done | 182 | done |
183 | } | 183 | } |
184 | 184 | ||
185 | available_ifaces() { | ||
186 | local iflist= ifpath= iface= i= | ||
187 | sorted_ifindexes=$( | ||
188 | for i in /sys/class/net/*/ifindex; do | ||
189 | [ -e "$i" ] || continue | ||
190 | echo -e "$(cat $i)\t$i"; | ||
191 | done | sort -n | awk '{print $2}') | ||
192 | for i in $sorted_ifindexes; do | ||
193 | ifpath=${i%/*} | ||
194 | iface=${ifpath##*/} | ||
195 | # skip interfaces that are part of a bond or bridge | ||
196 | if [ -d "$ifpath"/master/bonding ] || [ -d "$ifpath"/brport ]; then | ||
197 | continue | ||
198 | fi | ||
199 | iflist="${iflist}${iflist:+ }$iface" | ||
200 | done | ||
201 | echo $iflist | ||
202 | } | ||
203 | |||
185 | ask_ifaceopts() { | 204 | ask_ifaceopts() { |
186 | # get ip address(es) | 205 | # get ip address(es) |
187 | resp= | 206 | resp= |
188 | local ifaceopts= _def= _iface= | 207 | local ifaceopts= _def= _iface= |
189 | local ifaces=$(ip addr | awk -F: '$1 ~ /^[0-9]/ {printf "%s" $2} END {printf "\n"}') | 208 | local ifaces=$(available_ifaces) |
190 | local last_iface=$(echo $ifaces | sed 's/.* //') | 209 | local last_iface=$(echo $ifaces | sed 's/.* //') |
191 | while [ "$resp" != "done" ]; do | 210 | while [ "$resp" != "done" ]; do |
192 | if [ -z "$ifaces" ] || [ "$ifaces" = "lo " ] || [ -n "$ifaceopts" ]; then | 211 | if [ -z "$ifaces" ] || [ "$ifaces" = "lo " ] || [ -n "$ifaceopts" ]; then |