Explorar el Código

wifi_essid: add boundary check && prevent the use of direct string literal as a format string in snprintf()

raiz hace 9 años
padre
commit
94e87eb8ba
Se han modificado 1 ficheros con 2 adiciones y 1 borrados
  1. 2 1
      slstatus.c

+ 2 - 1
slstatus.c

@@ -717,7 +717,8 @@ wifi_essid(const char *iface)
 
 	memset(&wreq, 0, sizeof(struct iwreq));
 	wreq.u.essid.length = IW_ESSID_MAX_SIZE+1;
-	sprintf(wreq.ifr_name, iface);
+	snprintf(wreq.ifr_name, ifrn_name, "%s", iface);
+
 	if (sockfd == -1) {
 		warn("Failed to get ESSID for interface %s", iface);
 		return smprintf("%s", UNKNOWN_STR);