Parcourir la source

P2P: Make sure parsed Device Name gets null terminated

If the msg->device_name buffer is filled from two different sources,
the copy from the P2P Device Info attribute needs to make sure that
the values gets null terminated to match the length of the correct
string should the other place use another string (which is not really
allowed by the spec, but could happen).
Jouni Malinen il y a 14 ans
Parent
commit
e2197af1b2
1 fichiers modifiés avec 1 ajouts et 0 suppressions
  1. 1 0
      src/p2p/p2p_parse.c

+ 1 - 0
src/p2p/p2p_parse.c

@@ -162,6 +162,7 @@ static int p2p_parse_attribute(u8 id, const u8 *data, u16 len,
 			return -1;
 		}
 		os_memcpy(msg->device_name, pos, nlen);
+		msg->device_name[nlen] = '\0';
 		for (i = 0; i < nlen; i++) {
 			if (msg->device_name[i] == '\0')
 				break;