Provided by: openswan_2.6.37-1_amd64 bug


       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


       #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);


       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.


       inet(3), ipsec_initaddr(3)


       Portof returns -1, sockaddrof returns NULL, and sockaddrlenof  returns  0  if  an  unknown
       address family is found within the ip_address.


       Written for the FreeS/WAN project by Henry Spencer.


       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                            IPSEC_PORTOF(3)