Xiang Xiao
|
7aad7eebff
|
libc: Change errno to set_errno and get_errno
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
|
2023-10-29 17:16:09 +02:00 |
|
chenrun1
|
4ce205cf08
|
lib_iconv.c:Fix possible out-of-bounds reads
Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
|
2023-09-19 09:34:48 +08:00 |
|
Junbo Zheng
|
0d3252ba06
|
libs/libc: fix locale/lib_iconv.c:538:23: warning: dereference of NULL ‘scd’ [CWE-690] [-Wanalyzer-null-dereference] by -fanalyzer
CC: signal/sig_queue.c locale/lib_iconv.c: In function ‘iconv’:
locale/lib_iconv.c:538:23: warning: dereference of NULL ‘scd’ [CWE-690] [-Wanalyzer-null-dereference]
538 | if (!scd->state)
| ~~~^~~~~~~
‘iconv’: events 1-5
|
| 413 | x = 0;
| | ~~^~~
| | |
| | (1) ‘scd’ is NULL
| 414 | scd = NULL;
| 415 | if (((size_t)cd & 1) == 0)
| | ~
| | |
| | (2) following ‘false’ branch...
|......
| 421 | to = extract_to(cd);
| | ~~~~~~~~~~~~~~
| | |
| | (3) ...to here
|......
| 428 | if (in == NULL || *in == NULL || *inb == 0)
| | ~ ~~~
| | | |
| | | (5) ...to here
| | (4) following ‘false’ branch (when ‘in’ is non-NULL)...
|
‘iconv’: events 6-8
|
| 428 | if (in == NULL || *in == NULL || *inb == 0)
| | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
| | | | |
| | | | (7) ...to here
| | | (8) following ‘false’ branch...
| | (6) following ‘false’ branch...
|
‘iconv’: event 9
|
|cc1:
| (9): ...to here
|
‘iconv’: events 10-14
|
| 433 | for (; *inb; *in += l, *inb -= l)
| | ^~~
| | |
| | (10) following ‘true’ branch...
| 434 | {
| 435 | c = *(FAR unsigned char *)*in;
| | ~~~~~~~~~~~~~~~~~~~~~~~~
| | |
| | (11) ...to here
|......
| 438 | switch (type)
| | ~~~~~~
| | |
| | (12) following ‘case 200:’ branch...
|......
| 529 | case UCS2:
| | ~~~~
| | |
| | (13) ...to here
|......
| 538 | if (!scd->state)
| | ~~~~~~~~~~
| | |
| | (14) dereference of NULL ‘scd’
|
locale/lib_iconv.c:565:23: warning: dereference of NULL ‘scd’ [CWE-690] [-Wanalyzer-null-dereference]
565 | if (!scd->state)
| ~~~^~~~~~~
‘iconv’: events 1-5
|
| 413 | x = 0;
| | ~~^~~
| | |
| | (1) ‘scd’ is NULL
| 414 | scd = NULL;
| 415 | if (((size_t)cd & 1) == 0)
| | ~
| | |
| | (2) following ‘false’ branch...
|......
| 421 | to = extract_to(cd);
| | ~~~~~~~~~~~~~~
| | |
| | (3) ...to here
|......
| 428 | if (in == NULL || *in == NULL || *inb == 0)
| | ~ ~~~
| | | |
| | | (5) ...to here
| | (4) following ‘false’ branch (when ‘in’ is non-NULL)...
|
‘iconv’: events 6-8
|
| 428 | if (in == NULL || *in == NULL || *inb == 0)
| | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
| | | | |
| | | | (7) ...to here
| | | (8) following ‘false’ branch...
| | (6) following ‘false’ branch...
|
‘iconv’: event 9
|
|cc1:
| (9): ...to here
|
‘iconv’: events 10-14
|
| 433 | for (; *inb; *in += l, *inb -= l)
| | ^~~
| | |
| | (10) following ‘true’ branch...
| 434 | {
| 435 | c = *(FAR unsigned char *)*in;
| | ~~~~~~~~~~~~~~~~~~~~~~~~
| | |
| | (11) ...to here
|......
| 438 | switch (type)
| | ~~~~~~
| | |
| | (12) following ‘case 202:’ branch...
|......
| 557 | case UTF_32:
| | ~~~~
| | |
| | (13) ...to here
|......
| 565 | if (!scd->state)
| | ~~~~~~~~~~
| | |
| | (14) dereference of NULL ‘scd’
|
Signed-off-by: Junbo Zheng <zhengjunbo1@xiaomi.com>
|
2023-06-30 16:11:10 +08:00 |
|
Petro Karashchenko
|
c70b7f6b3d
|
nuttx: improve C89 compatibility in common code
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
|
2023-05-19 02:40:38 +08:00 |
|
dongjiuzhu1
|
68d40d4a98
|
libc/locale: support iconv_open,iconv,iconv_close
Refs to:https://github.com/bminor/musl
Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
|
2023-04-25 19:12:53 +01:00 |
|