380 ip->encapsulate(tcp);
388 for (
int32 cc = 0; cc < noChunks; cc++) {
390 unsigned char chunkType =
chunk->getChunkType();
410 int tempLength = cookieEcho->getByteLength();
415 sctp->setByteLength(sctp->getByteLength() - tempLength + cookieEcho->getByteLength());
424 for (
int i = 0; i < sack->
getNumGaps(); i++) {
467 sctp->setName(
"inboundSctp");
468 ip->encapsulate(sctp);
477 event->getEventTimeEnd(),
event->getEventOffset(), liveInfo->
getLiveTime(),
482 throw cTerminationException(
"Packetdrill error: Timing error");
486 throw cTerminationException(
"Packetdrill error: Datagrams are not the same");
519 ip->setContextPointer(info);
520 snprintf(str,
sizeof(str),
"outbound %d",
eventCounter);
525 throw cRuntimeError(
"Invalid direction");
527 EV_INFO <<
"syscallEvent: time_type = " <<
event->getTimeType() <<
" event time = " <<
event->getEventTime()
528 <<
" end event time = " <<
event->getEventTimeEnd() << endl;
#define SCTP_COOKIE_ACK_LENGTH
Definition: SCTPAssociation.h:219
virtual uint16_t getNoOutStreams() const
uint32 localCumTsn
Definition: PacketDrillApp.h:116
virtual uint32_t getInitTSN() const
virtual uint16_t getParameterType() const
virtual uint32_t getCumTsnAck() const
uint32 peerTS
Definition: PacketDrillApp.h:106
uint32 relSequenceOut
Definition: PacketDrillApp.h:105
uint32 localVTag
Definition: PacketDrillApp.h:121
uint32 eventCounter
Definition: PacketDrillApp.h:117
Class generated from inet/applications/packetdrill/PacketDrillInfo.msg:20 by nedtool.
Definition: PacketDrillInfo_m.h:45
Class generated from inet/transportlayer/sctp/SCTPMessage.msg:177 by nedtool.
Definition: SCTPMessage_m.h:824
Definition: PacketDrillUtils.h:288
simtime_t getEventOffset() const
Definition: PacketDrillUtils.h:515
Class generated from inet/transportlayer/sctp/SCTPMessage.msg:286 by nedtool.
Definition: SCTPMessage_m.h:1567
Definition: sctphdr.h:121
uint32 initLocalTsn
Definition: PacketDrillApp.h:113
virtual void setHeaderOption(unsigned int k, const TCPOptionPtr &headerOption) override
Generated but unused method, should not be called.
Definition: TCPSegment.cc:255
enum eventTime_t getTimeType() const
Definition: PacketDrillUtils.h:517
uint16 peerCookieLength
Definition: PacketDrillApp.h:111
Definition: SCTPAssociation.h:121
virtual void setScriptTimeEnd(::omnetpp::simtime_t scriptTimeEnd)
enum event_t getType() const
Definition: PacketDrillUtils.h:519
virtual void setAckNo(unsigned int ackNo)
cMessage * eventTimer
Definition: PacketDrillApp.h:125
virtual void setGapStop(unsigned int k, uint32_t gapStop)
simtime_t getEventTime() const
Definition: PacketDrillUtils.h:509
virtual void setTimeType(uint16_t timeType)
virtual uint32_t getInitTag() const
virtual void setTag(uint32_t tag)
Class generated from inet/transportlayer/sctp/SCTPMessage.msg:110 by nedtool.
Definition: SCTPMessage_m.h:428
Definition: PacketDrillUtils.h:186
eventTime_t
Definition: PacketDrillUtils.h:234
virtual ::omnetpp::simtime_t getLiveTime() const
virtual uint16_t getNumGaps() const
enum direction_t getDirection() const
Definition: PacketDrillUtils.h:476
uint16 peerOutStreams
Definition: PacketDrillApp.h:109
Definition: SCTPAssociation.h:159
virtual void setSrResSn(uint32_t srResSn)
Definition: PacketDrillUtils.h:227
void scheduleEvent()
Definition: PacketDrillApp.cc:352
uint32 numEvents
Definition: PacketDrillApp.h:118
virtual uint16_t getNumDupTsns() const
int protocol
Definition: PacketDrillApp.h:85
uint32 initPeerTsn
Definition: PacketDrillApp.h:112
virtual uint16_t getNoInStreams() const
virtual void setEchoedTimestamp(uint32_t echoedTimestamp)
virtual uint32_t getInitTSN() const
PacketDrillPacket * getPacket()
Definition: PacketDrillUtils.h:520
virtual void setReceiversNextTsn(uint32_t receiversNextTsn)
virtual void setScriptTime(::omnetpp::simtime_t scriptTime)
Class generated from inet/transportlayer/sctp/SCTPMessage.msg:58 by nedtool.
Definition: SCTPMessage_m.h:197
uint32 peerCumTsn
Definition: PacketDrillApp.h:115
virtual uint32_t getReceiversNextTsn() const
virtual unsigned int getAckNo() const
Represents an IPv4 datagram.
Definition: IPv4Datagram.h:31
Definition: SCTPAssociation.h:156
Definition: SCTPAssociation.h:128
SCTPSocket sctpSocket
Definition: PacketDrillApp.h:90
virtual uint32 getParametersArraySize() const override
Definition: SCTPMessage.cc:249
cPacketQueue * receivedPackets
Definition: PacketDrillApp.h:99
Definition: SCTPAssociation.h:112
SCTPCookie * peerCookie
Definition: PacketDrillApp.h:110
virtual cPacketPtr & getParameters(uint32 k) override
Returns the kth parameter in this SCTP Reset Chunk.
Definition: SCTPMessage.cc:254
virtual void setDupTsns(unsigned int k, uint32_t dupTsns)
struct syscall_spec * getSyscall()
Definition: PacketDrillUtils.h:523
virtual void setCumTsnAck(uint32_t cumTsnAck)
virtual TCPOptionPtr & getHeaderOption(unsigned int k) override
Returns the kth TCP options in this TCP segment.
Definition: TCPSegment.cc:250
int verifyTime(enum eventTime_t timeType, simtime_t script_usecs, simtime_t script_usecs_end, simtime_t offset, simtime_t liveTime, const char *description)
Definition: PacketDrillApp.cc:1504
bool findSeqNumMap(uint32 num)
Definition: PacketDrillApp.cc:603
virtual uint32_t getGapStop(unsigned int k) const
Class generated from inet/transportlayer/sctp/SCTPMessage.msg:50 by nedtool.
Definition: SCTPMessage_m.h:137
simtime_t getEventTimeEnd() const
Definition: PacketDrillUtils.h:512
Definition: PacketDrillUtils.h:185
cPacketQueue * outboundPackets
Definition: PacketDrillApp.h:100
Definition: PacketDrillUtils.h:228
int32_t int32
Definition: Compat.h:31
std::map< uint32, uint32 > seqNumMap
Definition: PacketDrillApp.h:123
Definition: SCTPAssociation.h:114
virtual cPacketPtr & getStateCookie()
virtual uint32 getChunksArraySize() const override
Returns the number of chunks in this SCTP packet.
Definition: SCTPMessage.cc:73
virtual uint32_t getInitTag() const
Definition: PacketDrillUtils.h:229
Definition: SCTPMessage.h:120
virtual cPacketPtr & getChunks(uint32 k) override
Returns the kth chunk in this SCTP packet.
Definition: SCTPMessage.cc:78
Definition: IPProtocolId_m.h:80
virtual void setGapStart(unsigned int k, uint32_t gapStart)
virtual cPacket * peekFirstChunk()
Definition: SCTPMessage.cc:129
void setInboundStreams(int streams)
Definition: SCTPSocket.h:183
virtual unsigned int getHeaderOptionArraySize() const override
Returns the number of TCP options in this TCP segment.
Definition: TCPSegment.cc:245
Represents a TCP segment.
Definition: TCPSegment.h:60
uint32 peerVTag
Definition: PacketDrillApp.h:122
void setOutboundStreams(int streams)
Setter and getter methods for socket and API Parameters.
Definition: SCTPSocket.h:182
Represents a SCTP Message.
Definition: SCTPMessage.h:35
virtual void setSrResSn(uint32_t srResSn)
virtual SCTPCookie * dup() const override
Definition: SCTPMessage_m.h:506
Class generated from inet/transportlayer/sctp/SCTPMessage.msg:244 by nedtool.
Definition: SCTPMessage_m.h:1240
Class generated from inet/transportlayer/sctp/SCTPMessage.msg:82 by nedtool.
Definition: SCTPMessage_m.h:317
virtual void setStateCookie(const cPacketPtr &stateCookie)
Definition: SCTPAssociation.h:113
bool compareDatagram(IPv4Datagram *storedDatagram, IPv4Datagram *liveDatagram)
Definition: PacketDrillApp.cc:1541
virtual uint32_t getSrResSn() const
Class generated from inet/transportlayer/sctp/SCTPMessage.msg:266 by nedtool.
Definition: SCTPMessage_m.h:1407
Class generated from inet/transportlayer/tcp_common/TCPSegment.msg:174 by nedtool.
Definition: TCPSegment_m.h:510
void runSystemCallEvent(PacketDrillEvent *event, struct syscall_spec *syscall)
Definition: PacketDrillApp.cc:613
virtual uint32_t getDupTsns(unsigned int k) const
Definition: IPProtocolId_m.h:91
virtual void replaceChunk(cPacket *msg, uint32 k)
Definition: SCTPMessage.cc:83
#define TCPOPT_TIMESTAMP
Definition: PacketDrillUtils.h:66
virtual void setOffset(::omnetpp::simtime_t offset)
uint16 peerInStreams
Definition: PacketDrillApp.h:108
virtual uint32_t getSrResSn() const
virtual uint32_t getGapStart(unsigned int k) const
uint32 localDiffTsn
Definition: PacketDrillApp.h:114
virtual unsigned short getKind() const