14 #define FSCTPFRAME_H 1
18 #include "../endian_conversion.h"
21 #include "../fframe.h"
22 #include "../caddress.h"
38 uint32_t verification_tag;
41 } __attribute__((packed));
48 } __attribute__((packed));
57 } __attribute__((packed));
59 enum sctp_ip_proto_t {
107 validate(uint16_t total_len = 0)
const;
144 set_sport(uint16_t port);
154 set_dport(uint16_t port);
159 struct sctp_hdr_t *sctp_hdr;
170 operator<< (std::ostream& os,
fsctpframe const& frame) {
171 os << dynamic_cast<fframe const&>( frame );
172 os <<
indent(2) <<
"<fsctpframe ";
173 os <<
"dport:" << (int)frame.get_dport() <<
" ";
174 os <<
"sport:" << (int)frame.get_sport() <<
" ";
175 os <<
">" << std::endl;
Definition: fsctpframe.h:29
Definition: fsctpframe.h:35
virtual void payload_insert(uint8_t *data, size_t datalen)
Definition: fsctpframe.cc:87
fsctpframe(uint8_t *_data, size_t _datalen)
Definition: fsctpframe.cc:16
Definition: fsctpframe.h:44
Definition: fsctpframe.h:27
Definition: fsctpframe.h:51
virtual size_t need_bytes() const
Definition: fsctpframe.cc:72
Definition: fsctpframe.h:32
virtual size_t payloadlen() const
Definition: fsctpframe.cc:108
virtual void initialize()
Definition: fsctpframe.cc:37
Definition: caddress.h:415
virtual ~fsctpframe()
Definition: fsctpframe.cc:29
virtual void validate(uint16_t total_len=0) const
Definition: fsctpframe.cc:118
virtual bool complete() const
Definition: fsctpframe.cc:58
virtual uint8_t * payload() const
Definition: fsctpframe.cc:98
void sctp_calc_checksum(caddress_in4 const &ip_src, caddress_in4 const &ip_dst, uint8_t ip_proto, uint16_t length)
Definition: fsctpframe.cc:132
Definition: fsctpframe.h:28