| 188 | } |
| 189 | |
| 190 | static bool IsRoutable(const struct wireaddr *addr) |
| 191 | { |
| 192 | return IsValid(addr) && !(IsRFC1918(addr) || IsRFC2544(addr) || IsRFC3927(addr) || IsRFC4862(addr) || IsRFC6598(addr) || IsRFC5737(addr) || (IsRFC4193(addr) && !IsTor(addr)) || IsRFC4843(addr) || IsLocal(addr) || IsInternal(addr)); |
| 193 | } |
| 194 | |
| 195 | /* Trick I learned from Harald Welte: create UDP socket, connect() and |
| 196 | * then query address. */ |
no test coverage detected