| 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 |