Scroll to navigation

IPSEC_PORTOF(3) Library Functions Manual IPSEC_PORTOF(3)

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.
8 Sept 2000