/* * This file is part of smolbote. It's copyrighted by the contributors recorded * in the version control history of the file, available from its original * location: git://neueland.iserlohn-fortress.net/smolbote.git * * SPDX-License-Identifier: GPL-3.0 */ #include "hostrule.h" HostRule::HostRule(const QString &line) { valid = parse(line); } QString HostRule::pattern() const { return domain; } bool HostRule::shouldBlock(const QWebEngineUrlRequestInfo &info) const { if(info.requestUrl().host().contains(domain)) { return true; } return false; } bool HostRule::parse(const QString &line) { QStringList parts = line.split(' '); if(parts.first() == "0.0.0.0") { blocking = true; } else { qDebug("Skipping rule: '%s'", qUtf8Printable(line)); } domain = parts.last(); #ifdef QT_DEBUG if(domain.isEmpty()) { qWarning("error parsing %s", qUtf8Printable(line)); } #endif return true; }