Check os_snprintf() result more consistently - automatic 1
This converts os_snprintf() result validation cases to use os_snprintf_error() where the exact rule used in os_snprintf_error() was used. These changes were done automatically with spatch using the following semantic patch: @@ identifier E1; expression E2,E3,E4,E5,E6; statement S1; @@ ( E1 = os_snprintf(E2, E3, ...); | int E1 = os_snprintf(E2, E3, ...); | if (E5) E1 = os_snprintf(E2, E3, ...); else E1 = os_snprintf(E2, E3, ...); | if (E5) E1 = os_snprintf(E2, E3, ...); else if (E6) E1 = os_snprintf(E2, E3, ...); else E1 = 0; | if (E5) { ... E1 = os_snprintf(E2, E3, ...); } else { ... return -1; } | if (E5) { ... E1 = os_snprintf(E2, E3, ...); } else if (E6) { ... E1 = os_snprintf(E2, E3, ...); } else { ... return -1; } | if (E5) { ... E1 = os_snprintf(E2, E3, ...); } else { ... E1 = os_snprintf(E2, E3, ...); } ) ? os_free(E4); - if (E1 < 0 || \( E1 >= E3 \| (size_t) E1 >= E3 \| (unsigned int) E1 >= E3 \| E1 >= (int) E3 \)) + if (os_snprintf_error(E3, E1)) ( S1 | { ... } ) Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
a80ba67a26
commit
d85e1fc8a5
49 changed files with 343 additions and 343 deletions
|
@ -224,7 +224,7 @@ static inline int _wpa_snprintf_hex(char *buf, size_t buf_size, const u8 *data,
|
|||
for (i = 0; i < len; i++) {
|
||||
ret = os_snprintf(pos, end - pos, uppercase ? "%02X" : "%02x",
|
||||
data[i]);
|
||||
if (ret < 0 || ret >= end - pos) {
|
||||
if (os_snprintf_error(end - pos, ret)) {
|
||||
end[-1] = '\0';
|
||||
return pos - buf;
|
||||
}
|
||||
|
|
|
@ -55,7 +55,7 @@ int uuid_bin2str(const u8 *bin, char *str, size_t max_len)
|
|||
bin[4], bin[5], bin[6], bin[7],
|
||||
bin[8], bin[9], bin[10], bin[11],
|
||||
bin[12], bin[13], bin[14], bin[15]);
|
||||
if (len < 0 || (size_t) len >= max_len)
|
||||
if (os_snprintf_error(max_len, len))
|
||||
return -1;
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -619,7 +619,7 @@ void wpa_msg(void *ctx, int level, const char *fmt, ...)
|
|||
if (ifname) {
|
||||
int res = os_snprintf(prefix, sizeof(prefix), "%s: ",
|
||||
ifname);
|
||||
if (res < 0 || res >= (int) sizeof(prefix))
|
||||
if (os_snprintf_error(sizeof(prefix), res))
|
||||
prefix[0] = '\0';
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue