~smoser/+junk/lp1444428

« back to all changes in this revision

Viewing changes to nic-go-crazy

  • Committer: Scott Moser
  • Date: 2015-04-21 20:54:37 UTC
  • Revision ID: smoser@ubuntu.com-20150421205437-empuhttg15gr3ml8
some cleanups

Show diffs side-by-side

added added

removed removed

Lines of Context:
49
49
     echo "$ORIG: $CUR -> $new" 1>&2
50
50
     $DRY ip link set "$CUR" name "$new" && CUR="$new" ||
51
51
        { echo "failed rename $CUR -> $new" 1>&2; exit 1; }
52
 
     [ "$NAPLEN" = "0" ] || sleep "$NAPLEN"
 
52
     if [ "$NAPLEN" != "0" ]; then
 
53
         sleep "$NAPLEN" &
 
54
         wait
 
55
     fi
53
56
   done
54
57
   exit
55
58
elif [ "$1" = "nics" ]; then
60
63
   kids=( )
61
64
   cleanup() {
62
65
      trap "" EXIT
63
 
      kill -SIGHUP "${kids[@]}"
64
 
      wait
 
66
      if [ "${#kids[@]}" != "0" ]; then
 
67
         kill -SIGHUP "${kids[@]}"
 
68
         wait
 
69
      fi
65
70
   }
66
71
   trap cleanup EXIT INT
67
72
   for x in "$@"; do
78
83
   oname=${2:-xtap}
79
84
   MYTAPS=( )
80
85
   me=$(id -un)
81
 
   kids=( )
82
86
   assertroot
83
87
   cleanup() {
84
88
      trap "" EXIT
85
 
      [ "${#kids[@]}" = 0 ] || kill -SIGHUP "${kids[@]}"
86
 
      wait
 
89
      if [ "${#kids[@]}" != "0" ]; then
 
90
         kill -SIGHUP "${kids[@]}"
 
91
         wait
 
92
      fi
87
93
      local name
88
94
      for name in "${MYTAPS[@]}"; do
89
95
         echo "tap: removing $name" 1>&2
90
96
         ip tuntap del mode tap "$name"
91
97
      done
92
98
   }
93
 
   trap cleanup EXIT INT
 
99
   cleanexit() { cleanup; exit; }
 
100
   kids=( )
 
101
   trap cleanexit EXIT INT
94
102
   for((i=1;i<=$num;i++)); do
95
103
      name=$(printf "$oname-%03d" "$i")
96
104
      ip tuntap add mode tap user "$me" "$name" &&
97
105
         MYTAPS[${#MYTAPS[@]}]="$name" ||
98
106
         { echo "failed add tap $name"; exit 1; }
99
107
   done
 
108
   i=0
100
109
   for x in "${MYTAPS[@]}"; do
101
110
     i=$(($i+1))
102
111
     prefix=$(printf "%02d" "$i")