2 //metadoc IPAddress copyright Steve Dekorte 2002
3 //metadoc IPAddress license BSD revised
5 #ifndef IPADDRESS_DEFINED
6 #define IPADDRESS_DEFINED 1
11 #include <sys/types.h>
14 #include <sys/types.h>
16 #include <sys/socket.h>
17 #include <netinet/in.h>
18 #include <arpa/inet.h>
21 #include <sys/ioctl.h>
27 #ifndef IO_WINSOCK_COMPAT
28 #define IO_WINSOCK_COMPAT
29 typedef size_t socklen_t
;
30 typedef SSIZE_T ssize_t
;
34 #define EISCONN WSAEISCONN
35 #define ENOTCONN WSAENOTCONN
42 struct sockaddr_in
*sockaddr
;
45 IPAddress
*IPAddress_new(void);
46 IPAddress
*IPAddress_setIPAddress_size_(IPAddress
*self
, struct sockaddr
*sockaddr
, size_t size
);
47 void IPAddress_free(IPAddress
*self
);
49 struct sockaddr
*IPAddress_sockaddr(IPAddress
*self
);
50 socklen_t
IPAddress_size(IPAddress
*self
);
51 void IPAddress_setSize_(IPAddress
*self
, socklen_t size
);
55 void IPAddress_setIp_(IPAddress
*self
, char *ip
);
56 char *IPAddress_ip(IPAddress
*self
);
60 void IPAddress_setPort_(IPAddress
*self
, uint16_t port
);
61 uint16_t IPAddress_port(IPAddress
*self
);