/* */ #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_