/* */ #ifndef _D_BT_BITFIELD_MESSAGE_VALIDATOR_H_ #define _D_BT_BITFIELD_MESSAGE_VALIDATOR_H_ #include "BtMessageValidator.h" #include "BtBitfieldMessage.h" #include "bittorrent_helper.h" namespace aria2 { class BtBitfieldMessageValidator : public BtMessageValidator { private: const BtBitfieldMessage* _message; size_t _numPiece; public: BtBitfieldMessageValidator(const BtBitfieldMessage* message, size_t numPiece): _message(message), _numPiece(numPiece) {} virtual void validate() { bittorrent::checkBitfield(_message->getBitfield(), _message->getBitfieldLength(), _numPiece); } }; typedef SharedHandle BtBitfieldMessageValidatorHandle; } // namespace aria2 #endif // _D_BT_BITFIELD_MESSAGE_VALIDATOR_H_