// This file was automatically generated by bifcl from /pobj/bro-2.6.1/bro-2.6.1/src/analyzer/protocol/bittorrent/events.bif (plugin mode).

#if defined(BRO_IN_NETVAR) || ! defined(_pobj_bro_2_6_1_bro_2_6_1_build_src_analyzer_protocol_bittorrent_events_bif)
#ifndef BRO_IN_NETVAR
#ifndef _pobj_bro_2_6_1_bro_2_6_1_build_src_analyzer_protocol_bittorrent_events_bif
#define _pobj_bro_2_6_1_bro_2_6_1_build_src_analyzer_protocol_bittorrent_events_bif
#include "bro-bif.h"
#endif
#endif

extern EventHandlerPtr bittorrent_peer_handshake; 
namespace BifEvent {  void generate_bittorrent_peer_handshake(analyzer::Analyzer* analyzer, Connection* c, int is_orig, StringVal* reserved, StringVal* info_hash, StringVal* peer_id);  } 
extern EventHandlerPtr bittorrent_peer_keep_alive; 
namespace BifEvent {  void generate_bittorrent_peer_keep_alive(analyzer::Analyzer* analyzer, Connection* c, int is_orig);  } 
extern EventHandlerPtr bittorrent_peer_choke; 
namespace BifEvent {  void generate_bittorrent_peer_choke(analyzer::Analyzer* analyzer, Connection* c, int is_orig);  } 
extern EventHandlerPtr bittorrent_peer_unchoke; 
namespace BifEvent {  void generate_bittorrent_peer_unchoke(analyzer::Analyzer* analyzer, Connection* c, int is_orig);  } 
extern EventHandlerPtr bittorrent_peer_interested; 
namespace BifEvent {  void generate_bittorrent_peer_interested(analyzer::Analyzer* analyzer, Connection* c, int is_orig);  } 
extern EventHandlerPtr bittorrent_peer_not_interested; 
namespace BifEvent {  void generate_bittorrent_peer_not_interested(analyzer::Analyzer* analyzer, Connection* c, int is_orig);  } 
extern EventHandlerPtr bittorrent_peer_have; 
namespace BifEvent {  void generate_bittorrent_peer_have(analyzer::Analyzer* analyzer, Connection* c, int is_orig, bro_uint_t piece_index);  } 
extern EventHandlerPtr bittorrent_peer_bitfield; 
namespace BifEvent {  void generate_bittorrent_peer_bitfield(analyzer::Analyzer* analyzer, Connection* c, int is_orig, StringVal* bitfield);  } 
extern EventHandlerPtr bittorrent_peer_request; 
namespace BifEvent {  void generate_bittorrent_peer_request(analyzer::Analyzer* analyzer, Connection* c, int is_orig, bro_uint_t index, bro_uint_t begin, bro_uint_t length);  } 
extern EventHandlerPtr bittorrent_peer_piece; 
namespace BifEvent {  void generate_bittorrent_peer_piece(analyzer::Analyzer* analyzer, Connection* c, int is_orig, bro_uint_t index, bro_uint_t begin, bro_uint_t piece_length);  } 
extern EventHandlerPtr bittorrent_peer_cancel; 
namespace BifEvent {  void generate_bittorrent_peer_cancel(analyzer::Analyzer* analyzer, Connection* c, int is_orig, bro_uint_t index, bro_uint_t begin, bro_uint_t length);  } 
extern EventHandlerPtr bittorrent_peer_port; 
namespace BifEvent {  void generate_bittorrent_peer_port(analyzer::Analyzer* analyzer, Connection* c, int is_orig, PortVal* listen_port);  } 
extern EventHandlerPtr bittorrent_peer_unknown; 
namespace BifEvent {  void generate_bittorrent_peer_unknown(analyzer::Analyzer* analyzer, Connection* c, int is_orig, bro_uint_t message_id, StringVal* data);  } 
extern EventHandlerPtr bittorrent_peer_weird; 
namespace BifEvent {  void generate_bittorrent_peer_weird(analyzer::Analyzer* analyzer, Connection* c, int is_orig, StringVal* msg);  } 
extern EventHandlerPtr bt_tracker_request; 
namespace BifEvent {  void generate_bt_tracker_request(analyzer::Analyzer* analyzer, Connection* c, StringVal* uri, Val* headers);  } 
extern EventHandlerPtr bt_tracker_response; 
namespace BifEvent {  void generate_bt_tracker_response(analyzer::Analyzer* analyzer, Connection* c, bro_uint_t status, Val* headers, Val* peers, Val* benc);  } 
extern EventHandlerPtr bt_tracker_response_not_ok; 
namespace BifEvent {  void generate_bt_tracker_response_not_ok(analyzer::Analyzer* analyzer, Connection* c, bro_uint_t status, Val* headers);  } 
extern EventHandlerPtr bt_tracker_weird; 
namespace BifEvent {  void generate_bt_tracker_weird(analyzer::Analyzer* analyzer, Connection* c, int is_orig, StringVal* msg);  } 

#endif
