IRC IPv6 support.

This commit is contained in:
lotodore
2007-10-08 11:07:32 +00:00
parent d11b35a1a7
commit d0ccc68d1f
11 changed files with 193 additions and 16 deletions
+11 -2
View File
@@ -11,7 +11,7 @@
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
* License for more details.
*
* $Id: libirc_errors.h 28 2004-10-04 10:34:58Z gyunaev $
* $Id: libirc_errors.h 28M 2007-09-16 23:43:28Z (local) $
*/
/*!
@@ -193,8 +193,17 @@
#define LIBIRC_ERR_TERMINATED 15
/*! \brief IPv6 not supported
*
* The function which requires IPv6 support was called, but the IPv6 support was not compiled
* into the application
*
* \ingroup errorcodes
*/
#define LIBIRC_ERR_NOIPV6 16
/*! brief Internal max error value count
*/
#define LIBIRC_ERR_MAX 16
#define LIBIRC_ERR_MAX 17
#endif /* INCLUDE_IRC_ERRORS_H */
@@ -11,7 +11,7 @@
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
* License for more details.
*
* $Id: libirc_session.h 18 2004-09-14 19:50:10Z gyunaev $
* $Id: libirc_session.h 18M 2007-09-17 01:14:31Z (local) $
*/
@@ -54,7 +54,11 @@ struct irc_session_s
char * username;
char * nick;
#if defined( ENABLE_IPV6 )
struct in6_addr local_addr;
#else
struct in_addr local_addr;
#endif
irc_dcc_t dcc_last_id;
irc_dcc_session_t * dcc_sessions;
port_mutex_t mutex_dcc;
@@ -50,6 +50,7 @@
#include <netinet/in.h> /* sockaddr_in */
#else
#include <winsock2.h>
#include <ws2tcpip.h>
#endif
#ifdef __cplusplus
@@ -228,6 +229,13 @@ int irc_connect (irc_session_t * session,
const char * username,
const char * realname);
int irc_connect6 (irc_session_t * session,
const char * server,
unsigned short port,
const char * server_password,
const char * nick,
const char * username,
const char * realname);
/*!
* \fn void irc_disconnect (irc_session_t * session)