Dean Troyer | d4f69b2 | 2013-07-24 12:24:43 -0500 | [diff] [blame] | 1 | #!/usr/bin/env bash |
| 2 | |
| 3 | # Tests for DevStack functions |
| 4 | # address_in_net() |
| 5 | |
| 6 | TOP=$(cd $(dirname "$0")/.. && pwd) |
| 7 | |
| 8 | # Import common functions |
| 9 | source $TOP/functions |
| 10 | |
| 11 | # Import configuration |
| 12 | source $TOP/openrc |
| 13 | |
| 14 | |
| 15 | echo "Testing IP addr functions" |
| 16 | |
| 17 | if [[ $(cidr2netmask 4) == 240.0.0.0 ]]; then |
| 18 | echo "cidr2netmask(): /4...OK" |
| 19 | else |
| 20 | echo "cidr2netmask(): /4...failed" |
| 21 | fi |
| 22 | if [[ $(cidr2netmask 8) == 255.0.0.0 ]]; then |
| 23 | echo "cidr2netmask(): /8...OK" |
| 24 | else |
| 25 | echo "cidr2netmask(): /8...failed" |
| 26 | fi |
| 27 | if [[ $(cidr2netmask 12) == 255.240.0.0 ]]; then |
| 28 | echo "cidr2netmask(): /12...OK" |
| 29 | else |
| 30 | echo "cidr2netmask(): /12...failed" |
| 31 | fi |
| 32 | if [[ $(cidr2netmask 16) == 255.255.0.0 ]]; then |
| 33 | echo "cidr2netmask(): /16...OK" |
| 34 | else |
| 35 | echo "cidr2netmask(): /16...failed" |
| 36 | fi |
| 37 | if [[ $(cidr2netmask 20) == 255.255.240.0 ]]; then |
| 38 | echo "cidr2netmask(): /20...OK" |
| 39 | else |
| 40 | echo "cidr2netmask(): /20...failed" |
| 41 | fi |
| 42 | if [[ $(cidr2netmask 24) == 255.255.255.0 ]]; then |
| 43 | echo "cidr2netmask(): /24...OK" |
| 44 | else |
| 45 | echo "cidr2netmask(): /24...failed" |
| 46 | fi |
| 47 | if [[ $(cidr2netmask 28) == 255.255.255.240 ]]; then |
| 48 | echo "cidr2netmask(): /28...OK" |
| 49 | else |
| 50 | echo "cidr2netmask(): /28...failed" |
| 51 | fi |
| 52 | if [[ $(cidr2netmask 30) == 255.255.255.252 ]]; then |
| 53 | echo "cidr2netmask(): /30...OK" |
| 54 | else |
| 55 | echo "cidr2netmask(): /30...failed" |
| 56 | fi |
| 57 | if [[ $(cidr2netmask 32) == 255.255.255.255 ]]; then |
| 58 | echo "cidr2netmask(): /32...OK" |
| 59 | else |
| 60 | echo "cidr2netmask(): /32...failed" |
| 61 | fi |
| 62 | |
| 63 | if [[ $(maskip 169.254.169.254 240.0.0.0) == 160.0.0.0 ]]; then |
| 64 | echo "maskip(): /4...OK" |
| 65 | else |
| 66 | echo "maskip(): /4...failed" |
| 67 | fi |
| 68 | if [[ $(maskip 169.254.169.254 255.0.0.0) == 169.0.0.0 ]]; then |
| 69 | echo "maskip(): /8...OK" |
| 70 | else |
| 71 | echo "maskip(): /8...failed" |
| 72 | fi |
| 73 | if [[ $(maskip 169.254.169.254 255.240.0.0) == 169.240.0.0 ]]; then |
| 74 | echo "maskip(): /12...OK" |
| 75 | else |
| 76 | echo "maskip(): /12...failed" |
| 77 | fi |
| 78 | if [[ $(maskip 169.254.169.254 255.255.0.0) == 169.254.0.0 ]]; then |
| 79 | echo "maskip(): /16...OK" |
| 80 | else |
| 81 | echo "maskip(): /16...failed" |
| 82 | fi |
| 83 | if [[ $(maskip 169.254.169.254 255.255.240.0) == 169.254.160.0 ]]; then |
| 84 | echo "maskip(): /20...OK" |
| 85 | else |
| 86 | echo "maskip(): /20...failed" |
| 87 | fi |
| 88 | if [[ $(maskip 169.254.169.254 255.255.255.0) == 169.254.169.0 ]]; then |
| 89 | echo "maskip(): /24...OK" |
| 90 | else |
| 91 | echo "maskip(): /24...failed" |
| 92 | fi |
| 93 | if [[ $(maskip 169.254.169.254 255.255.255.240) == 169.254.169.240 ]]; then |
| 94 | echo "maskip(): /28...OK" |
| 95 | else |
| 96 | echo "maskip(): /28...failed" |
| 97 | fi |
| 98 | if [[ $(maskip 169.254.169.254 255.255.255.255) == 169.254.169.254 ]]; then |
| 99 | echo "maskip(): /32...OK" |
| 100 | else |
| 101 | echo "maskip(): /32...failed" |
| 102 | fi |
| 103 | |
| 104 | for mask in 8 12 16 20 24 26 28; do |
| 105 | echo -n "address_in_net(): in /$mask..." |
| 106 | if address_in_net 10.10.10.1 10.10.10.0/$mask; then |
| 107 | echo "OK" |
| 108 | else |
| 109 | echo "address_in_net() failed on /$mask" |
| 110 | fi |
| 111 | |
| 112 | echo -n "address_in_net(): not in /$mask..." |
| 113 | if ! address_in_net 10.10.10.1 11.11.11.0/$mask; then |
| 114 | echo "OK" |
| 115 | else |
| 116 | echo "address_in_net() failed on /$mask" |
| 117 | fi |
| 118 | done |