1 Arithmetic (add/sub), comparison (lower/higher/equal/contains), 2 predicate methods and byte-level access on netaddr.range instances. 3 4 -- Testcase -- 5 import * as netaddr from 'netaddr'; 6 7 let a = netaddr.new("192.168.1.1/24"); 8 print(a.add(1), "\n"); 9 print(a.add(253), "\n"); 10 print(a.sub(1), "\n"); 11 print(a.sub(2), "\n"); 12 13 a = netaddr.new("255.255.255.255/32"); 14 print(a.add(1), "\n"); 15 16 a = netaddr.new("0.0.0.0/0"); 17 print(a.sub(1), "\n"); 18 19 a = netaddr.new("2001:db8::1/64"); 20 print(a.add(1), "\n"); 21 print(a.sub(1), "\n"); 22 23 a = netaddr.new("fe80::1%lo"); 24 print(a.add(1), "\n"); 25 print(a.sub(1), "\n"); 26 27 a = netaddr.new("00:11:22:33:44:55"); 28 print(a.add(1), "\n"); 29 print(a.sub(1), "\n"); 30 31 let b = netaddr.new("192.168.1.2"); 32 print(netaddr.new("192.168.1.1/24").contains(b), "\n"); 33 print(netaddr.new("192.168.1.1/24").contains(netaddr.new("192.168.2.1")), "\n"); 34 print(netaddr.new("192.168.1.1/24").contains(netaddr.new("10.0.0.1")), "\n"); 35 print(netaddr.new("2001:db8::/32").contains(netaddr.new("2001:db8:1::1")), "\n"); 36 print(netaddr.new("2001:db8::/32").contains(netaddr.new("2001:db9::1")), "\n"); 37 38 let c = netaddr.new("10.0.0.1"); 39 print(netaddr.new("192.168.1.1").lower(c), "\n"); 40 print(netaddr.new("192.168.1.1").higher(c), "\n"); 41 print(netaddr.new("192.168.1.1").equal(netaddr.new("192.168.1.1/24")), "\n"); 42 print(netaddr.new("192.168.1.1").equal(netaddr.new("192.168.1.2")), "\n"); 43 print(netaddr.new("1.2.3.4").lower(netaddr.new("2001:db8::1")), "\n"); 44 print(netaddr.new("2001:db8::1").higher(netaddr.new("1.2.3.4")), "\n"); 45 46 print(netaddr.new("10.0.0.1").is4(), "\n"); 47 print(netaddr.new("10.0.0.1").is4rfc1918(), "\n"); 48 print(netaddr.new("192.168.1.1").is4rfc1918(), "\n"); 49 print(netaddr.new("172.16.0.1").is4rfc1918(), "\n"); 50 print(netaddr.new("172.32.0.1").is4rfc1918(), "\n"); 51 print(netaddr.new("169.254.1.1").is4linklocal(), "\n"); 52 print(netaddr.new("10.0.0.1").is4linklocal(), "\n"); 53 print(netaddr.new("2001:db8::1").is6(), "\n"); 54 print(netaddr.new("2001:db8::1").is4(), "\n"); 55 print(netaddr.new("fe80::1").is6linklocal(), "\n"); 56 print(netaddr.new("fe80::1%lo").is6linklocal(), "\n"); 57 print(netaddr.new("2001:db8::1").is6linklocal(), "\n"); 58 print(netaddr.new("::ffff:1.2.3.4").is6mapped4(), "\n"); 59 print(netaddr.new("ffff::1.2.3.4").is6mapped4(), "\n"); 60 print(netaddr.new("00:11:22:33:44:55").ismac(), "\n"); 61 print(netaddr.new("00:11:22:33:44:55").ismaclocal(), "\n"); 62 print(netaddr.new("02:11:22:33:44:55").ismaclocal(), "\n"); 63 print(netaddr.new("01:00:5e:00:00:01").ismacmcast(), "\n"); 64 print(netaddr.new("01:80:c2:00:00:01").ismacmcast(), "\n"); 65 print(netaddr.new("02:11:22:33:44:55").ismacmcast(), "\n"); 66 print(netaddr.new("00:11:22:33:44:55").ismacmcast(), "\n"); 67 68 a = netaddr.new("192.168.1.1"); 69 print(a[0], a[1], a[2], a[3], "\n"); 70 print(a[-1], a[-4], "\n"); 71 a[3] = 2; 72 print(a.string(), "\n"); 73 a[0] = 10; 74 print(a.string(), "\n"); 75 76 a = netaddr.new("2001:db8::1"); 77 print(a[0], a[1], a[12], a[15], "\n"); 78 a[15] = 2; 79 print(a.string(), "\n"); 80 81 a = netaddr.new("00:11:22:33:44:55"); 82 print(a[0], a[1], a[5], "\n"); 83 a[5] = 0xee; 84 print(a.string(), "\n"); 85 86 a = netaddr.new("10.0.0.1/8"); 87 print(a.prefix(), "\n"); 88 print(a.prefix(24), "\n"); 89 print(a.string(), "\n"); 90 print(a.prefix("255.255.255.0"), "\n"); 91 print(a.string(), "\n"); 92 93 a = netaddr.new("2001:db8::1"); 94 print(a.prefix(64), "\n"); 95 print(a.string(), "\n"); 96 97 a = netaddr.new("192.168.1.1"); 98 print(a.netmask, "\n"); 99 a = netaddr.new("192.168.1.1/24"); 100 print(a.netmask, "\n"); 101 -- End -- 102 103 -- Args -- 104 -R 105 -- End -- 106 107 -- Expect stdout -- 108 192.168.1.2/24 109 192.168.1.254/24 110 192.168.1.0/24 111 192.168.0.255/24 112 255.255.255.255 113 0.0.0.0/0 114 2001:db8::2/64 115 2001:db8::/64 116 fe80::2%lo 117 fe80::%lo 118 00:11:22:33:44:56 119 00:11:22:33:44:54 120 true 121 false 122 false 123 true 124 false 125 false 126 true 127 true 128 false 129 true 130 true 131 true 132 true 133 true 134 true 135 false 136 true 137 false 138 true 139 false 140 true 141 true 142 false 143 true 144 false 145 true 146 false 147 true 148 true 149 true 150 false 151 false 152 19216811 153 1192 154 192.168.1.2 155 10.168.1.2 156 32101 157 2001:db8::2 158 01785 159 00:11:22:33:44:EE 160 8 161 24 162 10.0.0.1/24 163 24 164 10.0.0.1/24 165 64 166 2001:db8::1/64 167 255.255.255.255 168 255.255.255.0 169 -- End --
This page was automatically generated by LXR 0.3.1. • OpenWrt