NAME¶
ipsec_portof, ipsec_setportof, ipsec_sockaddrof, ipsec_sockaddrlenof - get port
field of an ip_address, set port field of an ip_address, get pointer to
internal sockaddr of an ip_address, get length of internal sockaddr of an
ip_address
SYNOPSIS¶
#include <freeswan.h>
int portof(const ip_address *src);
void setportof(int port, ip_address *dst);
struct sockaddr *sockaddrof(ip_address *src);
size_t sockaddrlenof(const ip_address *src);
DESCRIPTION¶
The
<freeswan.h> internal type
ip_address contains one of
the
sockaddr types internally.
Reliance on this feature is
discouraged, but it may occasionally be necessary. These functions provide
low-level tools for this purpose.
Portof and
setportof respectively read and write the port-number
field of the internal
sockaddr. The values are in network byte order.
Sockaddrof returns a pointer to the internal
sockaddr, for passing
to other functions.
Sockaddrlenof reports the size of the internal
sockaddr, for use
in storage allocation.
SEE ALSO¶
inet(3),
ipsec_initaddr(3)
DIAGNOSTICS¶
Portof returns
-1,
sockaddrof returns
NULL, and
sockaddrlenof returns
0 if an unknown address family is found
within the
ip_address.
HISTORY¶
Written for the FreeS/WAN project by Henry Spencer.
BUGS¶
These functions all depend on low-level details of the
ip_address type,
which are in principle subject to change. Avoid using them unless really
necessary.