diff options
author | sr | 2013-02-04 19:50:31 +0100 |
---|---|---|
committer | sr | 2013-02-04 19:50:31 +0100 |
commit | 1a5709501f94014d41987b956338bb6424b9f90c (patch) | |
tree | d3b93fe8dc406bca56aff147ef5cc4cbf9ed6be0 /src/server/net/discoverylistener.h | |
parent | Test (diff) | |
download | pvs2-1a5709501f94014d41987b956338bb6424b9f90c.tar.gz pvs2-1a5709501f94014d41987b956338bb6424b9f90c.tar.xz pvs2-1a5709501f94014d41987b956338bb6424b9f90c.zip |
Initial commit
Diffstat (limited to 'src/server/net/discoverylistener.h')
-rw-r--r-- | src/server/net/discoverylistener.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/server/net/discoverylistener.h b/src/server/net/discoverylistener.h new file mode 100644 index 0000000..64d4351 --- /dev/null +++ b/src/server/net/discoverylistener.h @@ -0,0 +1,40 @@ +/* + * discoverylistener.h + * + * Created on: 25.01.2013 + * Author: sr + */ + +#ifndef DISCOVERYLISTENER_H_ +#define DISCOVERYLISTENER_H_ + +#include <QtCore> +#include <QUdpSocket> +#include "../../shared/networkmessage.h" + +#define SD_PACKET_TABLE_SIZE 20000 + +class DiscoveryListener : public QObject +{ + Q_OBJECT + +private: + QUdpSocket _socket; + NetworkMessage _packet; + int _counterResetPos; + + quint8 _packetCounter[SD_PACKET_TABLE_SIZE]; // count packets per source address to ignore spammers + +protected: + void timerEvent(QTimerEvent* event); + +public: + DiscoveryListener(); + virtual ~DiscoveryListener(); + +private slots: + void onReadyRead(); + +}; + +#endif /* DISCOVERYLISTENER_H_ */ |