table of contents
other versions
- wheezy 1:2.6.37-3+deb7u1
| IPSEC_RANGETOSUBNET(3) | 8 Sept 2000 | IPSEC_RANGETOSUBNET(3) |
NAME¶
ipsec_rangetosubnet - convert address range to subnetSYNOPSIS¶
#include <freeswan.h>
const
char *rangetosubnet(const ip_address * start,
const ip_address * stop,
ip_subnet * dst);
DESCRIPTION¶
Rangetosubnet accepts two IP addresses which define an address range, from start to stop inclusive, and converts this to a subnet if possible. The addresses must both be IPv4 or both be IPv6, and the address family of the resulting subnet is the same. Rangetosubnet returns NULL for success and a pointer to a string-literal error message for failure; see DIAGNOSTICS.SEE ALSO¶
ipsec_initsubnet(3), ipsec_ttosubnet(3)DIAGNOSTICS¶
Fatal errors in rangetosubnet are: mixed address families; unknown address family; start and stop do not define a subnet.HISTORY¶
Written for the FreeS/WAN project by Henry Spencer.BUGS¶
The restriction of error reports to literal strings (so that callers don´t need to worry about freeing them or copying them) does limit the precision of error reporting. The error-reporting convention lends itself to slightly obscure code, because many readers will not think of NULL as signifying success. A good way to make it clearer is to write something like:const char *error;
error = rangetosubnet( /* ... */ );
if (error != NULL) {
/* something went wrong */
| 11/14/2008 | 8 Sept 2000 |