diff options
Diffstat (limited to 'sockutils.h')
-rw-r--r-- | sockutils.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/sockutils.h b/sockutils.h index 5e3ac49c..a488d8fc 100644 --- a/sockutils.h +++ b/sockutils.h @@ -37,6 +37,10 @@ #pragma once #endif +#include <stdarg.h> /* we declare varargs functions */ + +#include "pcap/funcattrs.h" + #include "pcap/socket.h" #ifndef _WIN32 @@ -127,8 +131,13 @@ extern "C" { int sock_init(char *errbuf, int errbuflen); void sock_cleanup(void); -void sock_fmterror(const char *caller, int errcode, char *errbuf, int errbuflen); -void sock_geterror(const char *caller, char *errbuf, int errbufsize); +int sock_geterrcode(void); +void sock_vfmterrmsg(char *errbuf, size_t errbuflen, int errcode, + PCAP_FORMAT_STRING(const char *fmt), va_list ap) PCAP_PRINTFLIKE(4, 0); +void sock_fmterrmsg(char *errbuf, size_t errbuflen, int errcode, + PCAP_FORMAT_STRING(const char *fmt), ...) PCAP_PRINTFLIKE(4, 5); +void sock_geterrmsg(char *errbuf, size_t errbuflen, + PCAP_FORMAT_STRING(const char *fmt), ...) PCAP_PRINTFLIKE(3, 4); int sock_initaddress(const char *address, const char *port, struct addrinfo *hints, struct addrinfo **addrinfo, char *errbuf, int errbuflen); @@ -136,7 +145,7 @@ int sock_recv(SOCKET sock, SSL *, void *buffer, size_t size, int receiveall, char *errbuf, int errbuflen); int sock_recv_dgram(SOCKET sock, SSL *, void *buffer, size_t size, char *errbuf, int errbuflen); -SOCKET sock_open(struct addrinfo *addrinfo, int server, int nconn, char *errbuf, int errbuflen); +SOCKET sock_open(const char *host, struct addrinfo *addrinfo, int server, int nconn, char *errbuf, int errbuflen); int sock_close(SOCKET sock, char *errbuf, int errbuflen); int sock_send(SOCKET sock, SSL *, const char *buffer, size_t size, @@ -148,7 +157,7 @@ int sock_cmpaddr(struct sockaddr_storage *first, struct sockaddr_storage *second int sock_getmyinfo(SOCKET sock, char *address, int addrlen, char *port, int portlen, int flags, char *errbuf, int errbuflen); -int sock_getascii_addrport(const struct sockaddr_storage *sockaddr, char *address, int addrlen, char *port, int portlen, int flags, char *errbuf, int errbuflen); +int sock_getascii_addrport(const struct sockaddr_storage *sockaddr, char *address, int addrlen, char *port, int portlen, int flags, char *errbuf, size_t errbuflen); int sock_present2network(const char *address, struct sockaddr_storage *sockaddr, int addr_family, char *errbuf, int errbuflen); #ifdef __cplusplus |