|
|
|
@ -790,15 +790,20 @@ void options_imp::processFilterFile(const QString& filePath){
@@ -790,15 +790,20 @@ void options_imp::processFilterFile(const QString& filePath){
|
|
|
|
|
while (!file.atEnd()) { |
|
|
|
|
++nbLine; |
|
|
|
|
QByteArray line = file.readLine(); |
|
|
|
|
if(!line.startsWith('#') && !line.startsWith("//")){ |
|
|
|
|
if(line.startsWith('#') || line.startsWith("//")) continue; |
|
|
|
|
// Line is not commented
|
|
|
|
|
QList<QByteArray> partsList = line.split(','); |
|
|
|
|
unsigned int nbElem = partsList.size(); |
|
|
|
|
if(nbElem < 2){ |
|
|
|
|
std::cerr << "Ipfilter.dat: line " << nbLine << " is malformed.\n"; |
|
|
|
|
qDebug("Ipfilter.dat: line %d is malformed.", nbLine); |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
bool ok; |
|
|
|
|
int nbAccess = partsList.at(1).trimmed().toInt(&ok); |
|
|
|
|
if(!ok){ |
|
|
|
|
qDebug("Ipfilter.dat: line %d is malformed.", nbLine); |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
int nbAccess = partsList.at(1).trimmed().toInt(); |
|
|
|
|
if(nbAccess <= 127){ |
|
|
|
|
QString strComment; |
|
|
|
|
QString strStartIP = partsList.at(0).split('-').at(0).trimmed(); |
|
|
|
@ -811,13 +816,13 @@ void options_imp::processFilterFile(const QString& filePath){
@@ -811,13 +816,13 @@ void options_imp::processFilterFile(const QString& filePath){
|
|
|
|
|
// Split IP
|
|
|
|
|
IP = strStartIP.split('.'); |
|
|
|
|
if(IP.size() != 4){ |
|
|
|
|
std::cerr << "Ipfilter.dat: line " << nbLine << ", first IP is malformed.\n"; |
|
|
|
|
qDebug("Ipfilter.dat: line %d is malformed.", nbLine); |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
address_v4 start((IP.at(0).toInt() << 24) + (IP.at(1).toInt() << 16) + (IP.at(2).toInt() << 8) + IP.at(3).toInt()); |
|
|
|
|
IP = strEndIP.split('.'); |
|
|
|
|
if(IP.size() != 4){ |
|
|
|
|
std::cerr << "Ipfilter.dat: line " << nbLine << ", second IP is malformed.\n"; |
|
|
|
|
qDebug("Ipfilter.dat: line %d is malformed.", nbLine); |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
address_v4 last((IP.at(0).toInt() << 24) + (IP.at(1).toInt() << 16) + (IP.at(2).toInt() << 8) + IP.at(3).toInt()); |
|
|
|
@ -835,7 +840,6 @@ void options_imp::processFilterFile(const QString& filePath){
@@ -835,7 +840,6 @@ void options_imp::processFilterFile(const QString& filePath){
|
|
|
|
|
filter.add_rule(start, last, ip_filter::blocked); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
file.close(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|