25 unsigned int nlength = (srcRouteOption->
nOptDataLen-2)/4;
26 if(!srcRouteOption->
Address || nlength == 1 || srcRouteOption->
nSegsLeft == nlength)
49 option =
calloc(1,
sizeof* option);
60 length = (srcRouteOption->nOptDataLen-2)/4-srcRouteOption->nSegsLeft;
61 rerrOption->
length = length;
66 for (loop = 0; loop < length; loop++)
67 rerrOption->
Address[loop] =
IP_COPY(srcRouteOption->Address[length - loop - 1]);
105 rerr->errorSourceAddress,
#define DSR_DELETE_ENTRY_CACHE(ppcache, ip1, ip2)
#define DSR_RERR_SIZE_FIXED
#define DSR_OPTION_HEADER_SIZE
NetSim_PACKET * fn_NetSim_DSR_GenerateCtrlPacket(NETSIM_ID src, NETSIM_ID dest, NETSIM_ID recv, double dTime, DSR_CONTROL_PACKET type)
NETSIM_IPAddress dsr_get_curr_ip()
NETSIM_IPAddress IP_COPY(NETSIM_IPAddress ip)
int fn_NetSim_DSR_ProcessRerr(NetSim_EVENTDETAILS *pstruEventDetails)
NETSIM_IPAddress fnGetPrevHop(NetSim_PACKET *packet)
int fn_NetSim_DSR_GenerateRERR(DSR_MAINT_BUFFER *maintBuffer, NetSim_EVENTDETAILS *pstruEventDetails)
int fn_NetSim_DSR_ForwardRERR(NetSim_EVENTDETAILS *pstruEventDetails)
NETSIM_IPAddress fn_NetSim_Stack_GetIPAddressAsId(NETSIM_ID nDeviceId, NETSIM_ID nInterfaceId)
EXPORTED struct stru_NetSim_EventDetails * pstruEventDetails
NETSIM_ID fn_NetSim_Stack_GetDeviceId_asIP(NETSIM_IPAddress ip, NETSIM_ID *nInterfaceId)
#define fn_NetSim_Packet_FreePacket(pstruPacket)
#define fnpAddEvent(pstruEvent)
NetSim_PACKET * packetList
packetList - list of packets sent to the destination
NETSIM_ID nextHop
Next hop ID of a route.
DSR_OPTION_TYPE nOptionType
void * TypeSpecificInformation
NETSIM_IPAddress errorSourceAddress
NETSIM_IPAddress errorDestinationAddress
enum stru_NetSim_DSR_RERR_Option::@11 nErrorType
NETSIM_IPAddress * Address
NETSIM_IPAddress * Address
struct stru_NetSim_Packet * pPacket
void * Packet_RoutingProtocol
NETSIM_IPAddress szDestIP
NETSIM_IPAddress szNextHopIp
NETSIM_IPAddress szSourceIP
struct stru_NetSim_Packet_NetworkLayer * pstruNetworkData