[X2serv-cvs] CVS: x2/source server.c,1.18,1.19
Brought to you by:
sirvulcan
From: Alex S. <ru...@us...> - 2003-02-24 09:20:03
|
Update of /cvsroot/x2serv/x2/source In directory sc8-pr-cvs1:/tmp/cvs-serv22088 Modified Files: server.c Log Message: added bad ip checking to the new sgline range code. Index: server.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/server.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -r1.18 -r1.19 *** server.c 17 Feb 2003 08:58:49 -0000 1.18 --- server.c 24 Feb 2003 09:19:55 -0000 1.19 *************** *** 112,116 **** /* the sgline has an ip range for a host. */ char *ip, *buff; ! unsigned long int rangestart, rangeend; char addy[MAXLEN]; char *a = addy; --- 112,117 ---- /* the sgline has an ip range for a host. */ char *ip, *buff; ! in_addr_t iat = 0; ! unsigned long int rangestart = 0, rangeend = 0; char addy[MAXLEN]; char *a = addy; *************** *** 124,132 **** /* now buff is the host part only */ ip = mysep(&buff, "|"); ! rangestart = ntohl(inet_addr(ip)); if(rangestart == 0) return(FALSE); ip = mysep(&buff, "|"); ! rangeend = ntohl(inet_addr(ip)); if(rangeend == 0) return(FALSE); --- 125,145 ---- /* now buff is the host part only */ ip = mysep(&buff, "|"); ! iat = inet_addr(ip); ! if(iat == INADDR_NONE) ! { ! Debug(DBGWARNING, "Warning, Begining range %s is not a valid IP in sgline %s", ip, gptr->address); ! return(FALSE); ! } ! rangestart = ntohl(iat); if(rangestart == 0) return(FALSE); ip = mysep(&buff, "|"); ! iat = inet_addr(ip); ! if(iat == INADDR_NONE) ! { ! Debug(DBGWARNING, "Warning, End range %s is not a valid IP in sgline %s", ip, gptr->address); ! return(FALSE); ! } ! rangeend = ntohl(iat); if(rangeend == 0) return(FALSE); *************** *** 151,154 **** --- 164,168 ---- send_gline(Address, 3600, "%s", reason); ProcessAddGline(Address, 3600, reason); + Debug(DBGINFO, "Supergline matched: %s", gptr->reason); return(TRUE); } |