mirror of
https://github.com/osmarks/ngircd.git
synced 2025-10-29 04:57:38 +00:00
bind ListenAddress for outgoing connections
ngircd would always use INADDR_ANY for outgoing connections; which might not be desirable. Added new [Server] option "Bind" to set source ip.
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
|
||||
#include "portab.h"
|
||||
|
||||
static char UNUSED id[] = "$Id: tool.c,v 1.6 2006/04/09 12:53:07 alex Exp $";
|
||||
static char UNUSED id[] = "$Id: tool.c,v 1.7 2007/11/23 16:26:05 fw Exp $";
|
||||
|
||||
#include "imp.h"
|
||||
#include <assert.h>
|
||||
@@ -22,6 +22,11 @@ static char UNUSED id[] = "$Id: tool.c,v 1.6 2006/04/09 12:53:07 alex Exp $";
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <netinet/in.h>
|
||||
#ifdef HAVE_ARPA_INET_H
|
||||
# include <arpa/inet.h>
|
||||
#endif
|
||||
|
||||
#include "exp.h"
|
||||
#include "tool.h"
|
||||
|
||||
@@ -105,4 +110,22 @@ ngt_TrimLastChr( char *String, const char Chr)
|
||||
} /* ngt_TrimLastChr */
|
||||
|
||||
|
||||
GLOBAL bool
|
||||
ngt_IPStrToBin(const char *ip_str, struct in_addr *inaddr)
|
||||
{
|
||||
/* AF is always AF_INET for now */
|
||||
#ifdef HAVE_INET_ATON
|
||||
if (inet_aton(ip_str, inaddr) == 0)
|
||||
return false;
|
||||
#else
|
||||
inaddr->s_addr = inet_addr(ip_str);
|
||||
if (inaddr->s_addr == (unsigned)-1)
|
||||
return false;
|
||||
#endif
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* -eof- */
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
* (at your option) any later version.
|
||||
* Please read the file COPYING, README and AUTHORS for more information.
|
||||
*
|
||||
* $Id: tool.h,v 1.3 2005/03/19 18:43:53 fw Exp $
|
||||
* $Id: tool.h,v 1.4 2007/11/23 16:26:05 fw Exp $
|
||||
*
|
||||
* Tool functions (Header)
|
||||
*/
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
#ifndef __tool_h__
|
||||
#define __tool_h__
|
||||
|
||||
#include "portab.h"
|
||||
|
||||
GLOBAL void ngt_TrimLastChr PARAMS((char *String, const char Chr ));
|
||||
|
||||
@@ -24,7 +24,7 @@ GLOBAL void ngt_TrimStr PARAMS((char *String ));
|
||||
|
||||
GLOBAL char *ngt_LowerStr PARAMS((char *String ));
|
||||
|
||||
|
||||
GLOBAL bool ngt_IPStrToBin PARAMS((const char *ip_str, struct in_addr *inaddr));
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user