author | mickeyl <mickeyl> | 2003-04-10 17:25:24 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2003-04-10 17:25:24 (UTC) |
commit | 1064aea74c5dd7b3d4f87e483bd85f3fac0cf03c (patch) (side-by-side diff) | |
tree | 63e2cb70dbc76e8ac911fbbbb50625e4cc89705b /libopie2/opienet/opcap.h | |
parent | 4e8e3741dca909782e15bb197e5b6a78750536c2 (diff) | |
download | opie-1064aea74c5dd7b3d4f87e483bd85f3fac0cf03c.zip opie-1064aea74c5dd7b3d4f87e483bd85f3fac0cf03c.tar.gz opie-1064aea74c5dd7b3d4f87e483bd85f3fac0cf03c.tar.bz2 |
OPacketCapturer is now able to write captured packages in the standard tcpdump-compatible format
-rw-r--r-- | libopie2/opienet/opcap.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libopie2/opienet/opcap.h b/libopie2/opienet/opcap.h index 6c3ac6d..99631ba 100644 --- a/libopie2/opienet/opcap.h +++ b/libopie2/opienet/opcap.h @@ -441,65 +441,67 @@ class OPacketCapturer : public QObject */ ~OPacketCapturer(); /** * Setting the packet capturer to use blocking IO calls can be useful when * not using the socket notifier, e.g. without an application object. */ void setBlocking( bool ); /** * @returns true if the packet capturer uses blocking IO calls. */ bool blocking() const; /** * Closes the packet capturer. This is automatically done in the destructor. */ void close(); /** * @returns the data link type. * @see <pcap.h> for possible values. */ int dataLink() const; /** * @returns the filedescriptor of the packet capturer. This is only useful, if * not using the socket notifier, e.g. without an application object. */ int fileno() const; /** * @returns the next @ref OPacket from the packet capturer. * @note If blocking mode is true then this call might block. */ OPacket* next(); /** * Open the packet capturer to capture packets in live-mode from @a interface. + * If a @a filename is given, all captured packets are output to a tcpdump-compatible capture file. */ - bool open( const QString& interface ); + bool open( const QString& interface, const QString& filename = QString::null ); /** * Open the packet capturer to capture packets in offline-mode from @a file. */ bool open( const QFile& file ); /** * @returns true if the packet capturer is open */ bool isOpen() const; const QMap<QString,int>& statistics() const; signals: /** * This signal is emitted, when a packet has been received. */ void receivedPacket( OPacket* ); protected slots: void readyToReceive(); protected: QString _name; // devicename bool _open; // check this before doing pcap calls pcap_t* _pch; // pcap library handle + pcap_dumper_t* _pcd; // pcap dumper handle QSocketNotifier* _sn; // socket notifier for main loop mutable char _errbuf[PCAP_ERRBUF_SIZE]; // holds error strings from libpcap QMap<QString, int> _stats; // statistics; }; #endif // OPCAP_H |