118#pragma warning(disable:4312)
120#pragma warning(default:4312)
135 memset(&pevent, 0,
sizeof pevent);
177 if (!pstruPacket)
return;
214 int nSegmentCount = 0;
static void set_app_end_and_generate_next_packet(NetSim_PACKET *pstruPacket, ptrAPPLICATION_INFO appInfo, UINT destCount, NETSIM_ID *dest)
static void add_app_info_to_packet(NetSim_PACKET *packet, double time, double size, UINT appId)
static void send_to_next_protocol(ptrSOCKETINTERFACE s, ptrAPPLICATION_INFO appInfo, NetSim_PACKET *packet, NETSIM_ID nDeviceId)
static void appout_send_packet(ptrSOCKETINTERFACE s, ptrAPPLICATION_INFO appInfo, NetSim_PACKET *packet, NETSIM_ID nDeviceId)
static void send_to_transport_layer(ptrSOCKETINTERFACE s, ptrAPPLICATION_INFO appInfo, NetSim_PACKET *packet, NETSIM_ID nDeviceId)
static ptrAPPLICATION_INFO get_app_info(void *detail, APPLICATION_TYPE type)
int fn_NetSim_Application_GenerateNextPacket(ptrAPPLICATION_INFO appInfo, NETSIM_ID nSource, UINT destCount, NETSIM_ID *nDestination, double time)
int fn_NetSim_Add_DummyPayload(NetSim_PACKET *packet, ptrAPPLICATION_INFO info)
ptrAPPLICATION_INFO get_email_app_info(void *detail)
void appmetrics_src_add(ptrAPPLICATION_INFO appInfo, _In_ NetSim_PACKET *packet)
int fn_NetSim_Application_StartDataAPP(ptrAPPLICATION_INFO appInfo, double time)
ptrAPPLICATION_INFO fn_NetSim_Application_Email_GenerateNextPacket(DETAIL *detail, NETSIM_ID nSourceId, NETSIM_ID nDestinationId, double time)
ptrSOCKETINTERFACE fnGetSocket(NETSIM_ID nAppId, NETSIM_ID nSourceId, NETSIM_ID nSourcePort, NETSIM_ID nDestPort)
#define fnNetSimError(x,...)
int fn_NetSim_Stack_FragmentPacket(NetSim_PACKET *pstruPacket, int nMSS)
NETSIM_ID * get_dest_from_packet(NetSim_PACKET *packet, UINT *count)
enum enum_ApplicationType APPLICATION_TYPE
NETSIM_ID get_first_dest_from_packet(NetSim_PACKET *packet)
EXPORTED double ldEventTime
double fn_NetSim_Stack_GetMSS(const NetSim_PACKET *pPacket)
void fn_NetSim_Socket_PassPacketToInterface(NETSIM_ID deviceId, NetSim_PACKET *packet, ptrSOCKETINTERFACE socketInterface)
#define DEVICE_TYPE(DeviceId)
bool fn_NetSim_Socket_GetBufferStatus(ptrSOCKETINTERFACE s)
EXPORTED struct stru_NetSim_EventDetails * pstruEventDetails
#define fnpAddEvent(pstruEvent)
Structure to store application information.
APPLICATION_LAYER_PROTOCOL protocol
TRANSPORT_LAYER_PROTOCOL trxProtocol
struct stru_NetSim_Packet * pPacket
netsimDEVICE_TYPE nDeviceType
unsigned long long int nEventId
APPLICATION_TYPE nAppType
TRANSPORT_LAYER_PROTOCOL nTransportProtocol
unsigned short int nSourcePort
unsigned short int nDestinationPort
struct stru_NetSim_Packet_AppLayer * pstruAppData
struct stru_NetSim_Packet * pstruNextPacket
struct stru_NetSim_Packet_TransportLayer * pstruTransportData