1 /* Copyright (c) 2007-2009, UNINETT AS */
2 /* See LICENSE for licensing information. */
4 #include <sys/socket.h>
7 #define SOCKADDR_SIZE(addr) ((addr).ss_family == AF_INET ? \
8 sizeof(struct sockaddr_in) : \
9 sizeof(struct sockaddr_in6))
11 #define SOCKADDRP_SIZE(addr) ((addr)->sa_family == AF_INET ? \
12 sizeof(struct sockaddr_in) : \
13 sizeof(struct sockaddr_in6))
15 char *stringcopy(const char *s, int len);
16 char *addr2string(struct sockaddr *addr);
17 struct sockaddr *addr_copy(struct sockaddr *in);
18 void port_set(struct sockaddr *sa, uint16_t port);
20 void printfchars(char *prefixfmt, char *prefix, char *charfmt, char *chars, int len);
21 void disable_DF_bit(int socket, struct addrinfo *res);
22 int bindtoaddr(struct addrinfo *addrinfo, int family, int reuse, int v6only);
23 int connecttcp(struct addrinfo *addrinfo, struct addrinfo *src, uint16_t timeout);
26 /* Local Variables: */
27 /* c-file-style: "stroustrup" */