24 for (i = 0; i < route->
count; i++)
35 for (i = 0; i <
DEVICE(d)->nNumOfInterface; i++)
43#define isBroadcastInterface(d,i) (DEVICE_INTERFACE(d,i)->nInterfaceType != INTERFACE_WAN_ROUTER)
61 bool isMsgArrivesFromBroadcastInterface =
false;
83 isMsgArrivesFromBroadcastInterface =
true;
94 fnNetSimError(
"Packet is reached to router without valid route to source\n");
98 if (!isMsgArrivesFromBroadcastInterface)
105 for (i = 0; i <
DEVICE(d)->nNumOfInterface; i++)
ptrIP_FORWARD_ROUTE fn_NetSim_IP_RoutePacket(NetSim_PACKET *packet, NETSIM_ID dev)
#define IP_IS_IN_SAME_NETWORK_IPV4(ip1, ip2, subnet)
#define IP_COMPARE(ip1, ip2)
bool isMulticastIP(NETSIM_IPAddress ip)
#define fnNetSimError(x,...)
ptrPIM_GROUP pim_find_group(NETSIM_ID d, NETSIM_IPAddress addr)
static bool isInPresentInRoute(NETSIM_ID d, NETSIM_ID in, ptrIP_FORWARD_ROUTE route)
static bool isIamSrc(NetSim_PACKET *packet, NETSIM_ID d)
#define isBroadcastInterface(d, i)
static bool isIamDR(NETSIM_ID d, NETSIM_ID in)
NETSIM_ID fn_NetSim_Stack_GetConnectedDevice(NETSIM_ID nDeviceId, NETSIM_ID nInterfaceId, NETSIM_ID *nConnectedDevId, NETSIM_ID *nConnectedInterfaceId)
#define DEVICE_NWADDRESS(DeviceId, InterfaceId)
#define DEVICE_PUBLICIP(DeviceId, InterfaceId)
EXPORTED struct stru_NetSim_EventDetails * pstruEventDetails
#define DEVICE_INTERFACE(DeviceId, InterfaceId)
NETSIM_ID fn_NetSim_Stack_GetDeviceId_asIP(NETSIM_IPAddress ip, NETSIM_ID *nInterfaceId)
#define fn_NetSim_Packet_CopyPacket(pstruPacket)
#define fn_NetSim_Packet_CreatePacket(layer)
#define fn_NetSim_Packet_FreePacket(pstruPacket)
#define fnpAddEvent(pstruEvent)
NETSIM_IPAddress * gateway
struct stru_NetSim_Packet * pPacket
NETSIM_IPAddress szGatewayIP
NETSIM_IPAddress szDestIP
NETSIM_IPAddress szNextHopIp
NETSIM_IPAddress szSourceIP
struct stru_NetSim_Packet_NetworkLayer * pstruNetworkData