#ifndef LOGRECEIVER_H #define LOGRECEIVER_H #include #include class QLocalServer; class QLocalSocket; class LogReceiver: public QObject { Q_OBJECT public: LogReceiver(); ~LogReceiver(); void initAndRun(); private slots: void handleNewConnection(); void handleNewInput(); void handleNewInputLine(QString data); void handleProcessFinished(int exitCode, QProcess::ExitStatus exitStatus); void handleProcessStarted(); signals: void addNewInterface(QString ifName, int index); void changeProgressBarValue(int index, int newValue); private: QLocalServer *server; quint16 blockSize; QMap interfacesMap; QMap indexToIfaceNameMap; QMap clients; QMap clientProcesses; QString pathToDhcpcdExe; QStringList dhcpcdArguments; void runDHCPCD(QList &interfaces); void runDHCPCD(QString interface); void checkCarrierState(QList &interfaces); bool checkCarrierState(QString interface); QList getListOfNetworkInterfaces(); bool checkBlackList(QString i); }; #endif // LOGRECEIVER_H