Annotation of embedaddon/miniupnpd/minissdpd/upnputils.h, revision 1.1
1.1 ! misho 1: /* $Id: upnputils.h,v 1.5 2021/11/04 22:57:20 nanard Exp $ */
! 2: /* MiniUPnP project
! 3: * http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
! 4: * (c) 2011-2021 Thomas Bernard
! 5: * This software is subject to the conditions detailed
! 6: * in the LICENCE file provided within the distribution */
! 7:
! 8: #ifndef UPNPUTILS_H_INCLUDED
! 9: #define UPNPUTILS_H_INCLUDED
! 10:
! 11: /**
! 12: * convert a struct sockaddr to a human readable string.
! 13: * [ipv6]:port or ipv4:port
! 14: * return the number of characters used (as snprintf)
! 15: */
! 16: int
! 17: sockaddr_to_string(const struct sockaddr * addr, char * str, size_t size);
! 18:
! 19: /**
! 20: * set the file description as non blocking
! 21: * return 0 in case of failure, 1 in case of success
! 22: */
! 23: int
! 24: set_non_blocking(int fd);
! 25:
! 26: /**
! 27: * get the LAN which the peer belongs to
! 28: */
! 29: struct lan_addr_s *
! 30: get_lan_for_peer(const struct sockaddr * peer);
! 31:
! 32: /**
! 33: * get the time for upnp
! 34: * Similar to a monotonic gettimeofday(tv, NULL)
! 35: */
! 36: int upnp_gettimeofday(struct timeval * tv);
! 37:
! 38: /**
! 39: * define portability macros
! 40: */
! 41: #if defined(__sun)
! 42: static __inline size_t _sa_len(const struct sockaddr *addr)
! 43: {
! 44: if (addr->sa_family == AF_INET)
! 45: return (sizeof(struct sockaddr_in));
! 46: else if (addr->sa_family == AF_INET6)
! 47: return (sizeof(struct sockaddr_in6));
! 48: else
! 49: return (sizeof(struct sockaddr));
! 50: }
! 51: # define SA_LEN(sa) (_sa_len(sa))
! 52: #else
! 53: #if !defined(SA_LEN)
! 54: # define SA_LEN(sa) ((sa)->sa_len)
! 55: #endif
! 56: #endif
! 57:
! 58: #endif
! 59:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>