From df31ce9930642bfb06372f2a4f598ccc9c8bb0a2 Mon Sep 17 00:00:00 2001 From: Tim Young Date: Tue, 1 Sep 2015 18:19:31 -0500 Subject: [PATCH] wap issues --- EduNetworkBuilder/NetworkCard.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/EduNetworkBuilder/NetworkCard.cs b/EduNetworkBuilder/NetworkCard.cs index 96e48e9..ba1cc36 100644 --- a/EduNetworkBuilder/NetworkCard.cs +++ b/EduNetworkBuilder/NetworkCard.cs @@ -380,7 +380,7 @@ namespace EduNetworkBuilder if (NB.GetComponentType(tPacket.WhereAmI) != GeneralComponentType.device) return false; //we cannot do this. NetworkDevice WhereFrom = (NetworkDevice)tPacket.WhereAmI; NicType what = GetNicType; - if (!tPacket.isFresh && WhereFrom.IsWirelessForwarder() && what == NicType.wlan) + if (!tPacket.isFresh && WhereFrom.IsWirelessForwarder() && (what == NicType.wlan || (WhereFrom.GetNetType() == NetworkComponentType.wap && what == NicType.eth))) what = NicType.wport; switch (what) @@ -557,7 +557,7 @@ namespace EduNetworkBuilder //Need to find the managament interface MAC nPacket.sourceMAC = WhereFrom.HubManagementMAC(); } - if(nPacket.sourceIP == null || nPacket.sourceIP.GetIPString == NB.ZeroIPString) + if(nPacket.sourceIP == null || nPacket.sourceIP.GetIPString == NB.ZeroIPString && (nPacket.MyType != PacketType.dhcp_request && !tPacket.isFresh)) { //set it to be the ip of management interface nPacket.sourceIP = WhereFrom.HubManagementIP(); @@ -600,7 +600,8 @@ namespace EduNetworkBuilder nd = mynet.GetDeviceFromID(myID); if (tPacket == null) return; tPacket.InboundNic = this; //track which nic we came in on. - if (myNicType == NicType.port || myNicType == NicType.wport || (nd.IsWirelessForwarder() && myNicType == NicType.wlan)) + if (myNicType == NicType.port || myNicType == NicType.wport || (nd.IsWirelessForwarder() && (myNicType == NicType.wlan || + (myNicType == NicType.eth && nd.GetNetType() == NetworkComponentType.wap )))) { //Try tracking the arp if we can if (tPacket.TsourceIP == null) tPacket.TsourceIP = tPacket.sourceIP;