From: Jouni Malinen Date: Thu, 17 Nov 2011 17:54:26 +0000 (+0200) Subject: Avoid 0-length memmove from buffer end to keep static analyzers happier X-Git-Tag: aosp-jb-start~320 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bfbc4284a8fe0307c29336b5ed252163d8f0892d;p=thirdparty%2Fhostap.git Avoid 0-length memmove from buffer end to keep static analyzers happier This avoid incorrect errors from some static analyzers that do not like memmove with pointers just after the end of a buffer even if the number of bytes to move is zero. Signed-hostap: Jouni Malinen --- diff --git a/src/eap_server/eap_server.c b/src/eap_server/eap_server.c index 0f0da29d6..4483508ce 100644 --- a/src/eap_server/eap_server.c +++ b/src/eap_server/eap_server.c @@ -1028,9 +1028,12 @@ void eap_sm_process_nak(struct eap_sm *sm, const u8 *nak_list, size_t len) not_found: /* not found - remove from the list */ - os_memmove(&sm->user->methods[i], &sm->user->methods[i + 1], - (EAP_MAX_METHODS - i - 1) * - sizeof(sm->user->methods[0])); + if (i + 1 < EAP_MAX_METHODS) { + os_memmove(&sm->user->methods[i], + &sm->user->methods[i + 1], + (EAP_MAX_METHODS - i - 1) * + sizeof(sm->user->methods[0])); + } sm->user->methods[EAP_MAX_METHODS - 1].vendor = EAP_VENDOR_IETF; sm->user->methods[EAP_MAX_METHODS - 1].method = EAP_TYPE_NONE;