summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/inspircd_io.h2
-rw-r--r--include/socket.h22
2 files changed, 19 insertions, 5 deletions
diff --git a/include/inspircd_io.h b/include/inspircd_io.h
index aac40337d..158acfa79 100644
--- a/include/inspircd_io.h
+++ b/include/inspircd_io.h
@@ -398,7 +398,7 @@ void SetSignals();
bool DaemonSeed();
bool FileExists(const char* file);
int OpenTCPSocket();
-bool BindSocket(int sockfd, struct sockaddr_in client, struct sockaddr_in server, int port, char* addr);
+bool BindSocket(int sockfd, insp_sockaddr client, insp_sockaddr server, int port, char* addr);
void WritePID(const std::string &filename);
int BindPorts(bool bail);
char* CleanFilename(char* name);
diff --git a/include/socket.h b/include/socket.h
index f8b15ae53..caa1490b5 100644
--- a/include/socket.h
+++ b/include/socket.h
@@ -24,6 +24,20 @@
#include <string>
#include <deque>
#include "dns.h"
+#include "inspircd_config.h"
+
+/* macros to the relevant system address description structs */
+#ifdef IPV6
+
+typedef struct sockaddr_in6 insp_sockaddr;
+typedef struct in6_addr insp_inaddr;
+
+#else
+
+typedef struct sockaddr_in insp_sockaddr;
+typedef struct in_addr insp_inaddr;
+
+#endif
/**
* States which a socket may be in
@@ -84,13 +98,13 @@ private:
* The host being connected to,
* in sockaddr form
*/
- sockaddr_in addr;
+ insp_sockaddr addr;
/**
* The host being connected to,
* in in_addr form
*/
- in_addr addy;
+ insp_inaddr addy;
/**
* When this time is reached,
@@ -125,13 +139,13 @@ private:
* Client sockaddr structure used
* by accept()
*/
- sockaddr_in client;
+ insp_sockaddr client;
/**
* Server sockaddr structure used
* by accept()
*/
- sockaddr_in server;
+ insp_sockaddr server;
/**
* Used by accept() to indicate the