41 return hdr->
Syn ? true :
false;
80 for (i = 0; i < 4-l; i++)
279 if (seg->
Ack ||
c == 1)
369 memcpy(o, opt,
sizeof* o);
373 memcpy(m, mss,
sizeof* m);
381 memcpy(o, opt,
sizeof* o);
385 memcpy(sp, sackPermitted,
sizeof* sp);
393 memcpy(o, opt,
sizeof* o);
397 memcpy(dex, ex,
sizeof* dex);
406 memcpy(s, sack,
sizeof* s);
410 for (
UINT i = 0; i <
c; i++)
425 memcpy(o, opt,
sizeof* o);
429 memcpy(dex, ex,
sizeof* dex);
437 memcpy(o, opt,
sizeof* o);
441 memcpy(dex, ex,
sizeof* dex);
498 memcpy(dhdr, hdr,
sizeof * dhdr);
523 for (
UINT i = 0; i <
c; i++)
#define fnNetSimError(x,...)
NETSIM_ID get_first_dest_from_packet(NetSim_PACKET *packet)
void add_dest_to_packet(NetSim_PACKET *packet, NETSIM_ID dest)
void set_sack_option(PNETSIM_SOCKET s, PTCP_SEGMENT_HDR hdr, double time)
EXPORTED struct stru_NetSim_EventDetails * pstruEventDetails
UINT16 window_scale_get_wnd(PNETSIM_SOCKET s)
NetSim_PACKET * create_ack(PNETSIM_SOCKET s, double time, UINT32 seqno, UINT32 ackno)
static PTCPOPTION copy_tcp_mss_option(PTCPOPTION opt)
static void copy_tcp_option(PTCP_SEGMENT_HDR dhdr, PTCP_SEGMENT_HDR hdr)
static void free_tcp_timestamp_option(PTSopt opt)
static void add_tcp_extra_option(PTCP_SEGMENT_HDR hdr, UINT32 l)
static void free_tcp_window_scale_option(PWsopt opt)
NetSim_PACKET * create_synAck(PNETSIM_SOCKET s, double time)
NetSim_PACKET * create_tcp_ctrl_packet(PNETSIM_SOCKET s, TCPPACKET type, double time)
static PTCPOPTION copy_sack_option(PTCPOPTION t)
void free_tcp_hdr(PTCP_SEGMENT_HDR hdr)
NetSim_PACKET * create_rst(NetSim_PACKET *p, double time, UINT c)
static void set_tcp_packet_size(NetSim_PACKET *p)
static void add_tcp_mss_option(PNETSIM_SOCKET s, PTCP_SEGMENT_HDR hdr)
static PTCPOPTION copy_tcp_sack_permitted_option(PTCPOPTION opt)
bool isSynbitSet(NetSim_PACKET *packet)
PTCP_SEGMENT_HDR copy_tcp_hdr(PTCP_SEGMENT_HDR hdr)
void set_tcp_option(PTCP_SEGMENT_HDR hdr, void *option, TCP_OPTION type, UINT32 size)
static void free_tcp_sack_option(PSACK_OPTION sack)
void add_tcp_hdr(NetSim_PACKET *p, PNETSIM_SOCKET s)
bool isSynPacket(NetSim_PACKET *packet)
static void add_tcp_window_scale_option(PNETSIM_SOCKET s, PTCP_SEGMENT_HDR hdr)
NetSim_PACKET * create_syn(PNETSIM_SOCKET s, double time)
static void add_tcp_timestamp_option(PNETSIM_SOCKET s, PTCP_SEGMENT_HDR hdr)
static void free_tcp_option(PTCPOPTION opt)
static PTCPOPTION copy_window_scale_option(PTCPOPTION opt)
static void free_tcp_extra_option(PEXTRA_OPTION ex)
static PTCPOPTION copy_tcp_extra_option(PTCPOPTION opt)
static PTCPOPTION copy_timestamp_option(PTCPOPTION opt)
static void add_tcp_sack_permitted_option(PNETSIM_SOCKET s, PTCP_SEGMENT_HDR hdr)
void * get_tcp_option(PTCP_SEGMENT_HDR hdr, TCP_OPTION type)
static void free_tcp_sack_permitted_option(PSACKPERMITTED_OPTION sackPermitted)
NetSim_PACKET * create_fin(PNETSIM_SOCKET s, double time)
static void free_tcp_mss_option(PMSS_OPTION mss)
#define fn_NetSim_Packet_CreatePacket(layer)
IP_PROTOCOL_NUMBER IPProtocol
NETSIM_IPAddress szDestIP
NETSIM_IPAddress szSourceIP
TRANSPORT_LAYER_PROTOCOL nTransportProtocol
unsigned short int nSourcePort
void * Packet_TransportProtocol
unsigned short int nDestinationPort
struct stru_NetSim_Packet_AppLayer * pstruAppData
struct stru_NetSim_Packet_NetworkLayer * pstruNetworkData
unsigned int nControlDataType
struct stru_NetSim_Packet_TransportLayer * pstruTransportData
PSOCKETADDRESS remoteAddr
struct stru_tcp_Transmission_Control_Block::stru_tcb_send_seq_var SND
UINT16(* get_MSS)(PNETSIM_SOCKET)
struct stru_tcp_Transmission_Control_Block::stru_tcp_snd Snd
struct stru_tcp_Transmission_Control_Block::stru_tcb_recv_seq_var RCV
UINT16(* get_WND)(PNETSIM_SOCKET)
struct stru_tcp_option * next