diff --git a/Src/Sdk_workspace/OpcServer_bsp/microblaze_0/libsrc/lwip211_v1_0/src/lwip-2.1.1/src/netif/ppp/eap.c b/Src/Sdk_workspace/OpcServer_bsp/microblaze_0/libsrc/lwip211_v1_0/src/lwip-2.1.1/src/netif/ppp/eap.c index 3a6f65e..177a86b 100644 --- a/Src/Sdk_workspace/OpcServer_bsp/microblaze_0/libsrc/lwip211_v1_0/src/lwip-2.1.1/src/netif/ppp/eap.c +++ b/Src/Sdk_workspace/OpcServer_bsp/microblaze_0/libsrc/lwip211_v1_0/src/lwip-2.1.1/src/netif/ppp/eap.c @@ -1417,7 +1417,7 @@ static void eap_request(ppp_pcb *pcb, u_char *inp, int id, int len) { } /* Not so likely to happen. */ - if (vallen >= len + sizeof (rhostname)) { + if (len - vallen >= sizeof (rhostname)) { ppp_dbglog("EAP: trimming really long peer name down"); MEMCPY(rhostname, inp + vallen, sizeof (rhostname) - 1); rhostname[sizeof (rhostname) - 1] = '\0'; @@ -1845,7 +1845,7 @@ static void eap_response(ppp_pcb *pcb, u_char *inp, int id, int len) { } /* Not so likely to happen. */ - if (vallen >= len + sizeof (rhostname)) { + if (len - vallen >= sizeof (rhostname)) { ppp_dbglog("EAP: trimming really long peer name down"); MEMCPY(rhostname, inp + vallen, sizeof (rhostname) - 1); rhostname[sizeof (rhostname) - 1] = '\0';