| 143 | static void ProxyEncodeIpHeader(struct ip *, int); |
| 144 | |
| 145 | static int |
| 146 | IpMask(int nbits, struct in_addr *mask) |
| 147 | { |
| 148 | int i; |
| 149 | u_int imask; |
| 150 | |
| 151 | if (nbits < 0 || nbits > 32) |
| 152 | return (-1); |
| 153 | |
| 154 | imask = 0; |
| 155 | for (i = 0; i < nbits; i++) |
| 156 | imask = (imask >> 1) + 0x80000000; |
| 157 | mask->s_addr = htonl(imask); |
| 158 | |
| 159 | return (0); |
| 160 | } |
| 161 | |
| 162 | static int |
| 163 | IpAddr(char *s, struct in_addr *addr) |