diff options
87 files changed, 182 insertions, 36 deletions
diff --git a/src/wchar/btowc.c b/src/wchar/btowc.c index aa23463a..96cd29b1 100644 --- a/src/wchar/btowc.c +++ b/src/wchar/btowc.c @@ -6,6 +6,8 @@ wint_t btowc(int c) { + SIGNAL_SAFE(0); + char *l = setlocale(LC_CTYPE, NULL); if (!strcmp(l, "C") || !strcmp(l, "POSIX")) { diff --git a/src/wchar/fgetwc.c b/src/wchar/fgetwc.c index 593c121a..a334ae5a 100644 --- a/src/wchar/fgetwc.c +++ b/src/wchar/fgetwc.c @@ -7,6 +7,8 @@ wint_t fgetwc(FILE * stream) { + SIGNAL_SAFE(0); + char mbr[MB_LEN_MAX+1] = {0}; mbstate_t ps = 0; wint_t wc = 0; diff --git a/src/wchar/fgetws.c b/src/wchar/fgetws.c index 69990116..5a1b71aa 100644 --- a/src/wchar/fgetws.c +++ b/src/wchar/fgetws.c @@ -2,10 +2,12 @@ #include <wchar.h> #include <stdio.h> -#include "_assert.h" +#include "_safety.h" wchar_t * fgetws(wchar_t * restrict s, int n, FILE * restrict stream) { + SIGNAL_SAFE(0); + ASSERT_NONNULL(s); ASSERT_NONNULL(stream); diff --git a/src/wchar/fputwc.c b/src/wchar/fputwc.c index 07855cc1..afbefedb 100644 --- a/src/wchar/fputwc.c +++ b/src/wchar/fputwc.c @@ -8,6 +8,8 @@ wint_t fputwc(wchar_t c, FILE * stream) { + SIGNAL_SAFE(0); + char mbs[MB_LEN_MAX+1] = {0}; mbstate_t ps = 0; size_t len = wcrtomb(mbs, c, &ps); diff --git a/src/wchar/fputws.c b/src/wchar/fputws.c index 3bb8e8d8..b06f73a1 100644 --- a/src/wchar/fputws.c +++ b/src/wchar/fputws.c @@ -5,6 +5,8 @@ int fputws(const wchar_t * restrict s, FILE * restrict stream) { + SIGNAL_SAFE(0); + const wchar_t *p = s; while (*p != L'\0') { if (fputwc(*p, stream) == EOF) { diff --git a/src/wchar/fwide.c b/src/wchar/fwide.c index 372a811f..9623d956 100644 --- a/src/wchar/fwide.c +++ b/src/wchar/fwide.c @@ -3,10 +3,12 @@ #include <wchar.h> #include <stdio.h> #include "stdio/_stdio.h" -#include "_assert.h" +#include "_safety.h" int fwide(FILE * stream, int mode) { + SIGNAL_SAFE(0); + ASSERT_NONNULL(stream); if (stream->orientation == 0) { diff --git a/src/wchar/fwprintf.c b/src/wchar/fwprintf.c index ddcf4fe7..f3ee6f9c 100644 --- a/src/wchar/fwprintf.c +++ b/src/wchar/fwprintf.c @@ -6,6 +6,8 @@ int fwprintf(FILE * restrict stream, const wchar_t * restrict format, ...) { + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vfwprintf(stream, format, ap); diff --git a/src/wchar/fwprintf_s.c b/src/wchar/fwprintf_s.c index ae271c2d..8a4544a4 100644 --- a/src/wchar/fwprintf_s.c +++ b/src/wchar/fwprintf_s.c @@ -5,7 +5,8 @@ int fwprintf_s(FILE * restrict stream, const wchar_t * restrict format, ...) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vfwprintf_s(stream, format, ap); diff --git a/src/wchar/fwscanf.c b/src/wchar/fwscanf.c index 229b70f4..46cd0b23 100644 --- a/src/wchar/fwscanf.c +++ b/src/wchar/fwscanf.c @@ -11,6 +11,8 @@ int fwscanf(FILE * restrict stream, const wchar_t * restrict format, ...) { + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vfwscanf(stream, format, ap); diff --git a/src/wchar/fwscanf_s.c b/src/wchar/fwscanf_s.c index 7188f3cf..239c23c3 100644 --- a/src/wchar/fwscanf_s.c +++ b/src/wchar/fwscanf_s.c @@ -5,7 +5,8 @@ int fwscanf_s(FILE * restrict stream, const wchar_t * restrict format, ...) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vfwscanf_s(stream, format, ap); diff --git a/src/wchar/getwc.c b/src/wchar/getwc.c index 173f4c36..8b0a2674 100644 --- a/src/wchar/getwc.c +++ b/src/wchar/getwc.c @@ -5,6 +5,8 @@ wint_t getwc(FILE * stream) { + SIGNAL_SAFE(0); + return fgetwc(stream); } diff --git a/src/wchar/getwchar.c b/src/wchar/getwchar.c index 4e9105f9..fd0f29e9 100644 --- a/src/wchar/getwchar.c +++ b/src/wchar/getwchar.c @@ -5,6 +5,8 @@ wint_t getwchar(void) { + SIGNAL_SAFE(0); + return getwc(stdin); } diff --git a/src/wchar/mbrlen.c b/src/wchar/mbrlen.c index 8290e6ec..4489ad83 100644 --- a/src/wchar/mbrlen.c +++ b/src/wchar/mbrlen.c @@ -4,6 +4,8 @@ size_t mbrlen(const char * restrict s, size_t n, mbstate_t * restrict ps) { + SIGNAL_SAFE(0); + static mbstate_t internal = 0; return mbrtowc(NULL, s, n, ps != NULL ? ps : &internal); } diff --git a/src/wchar/mbrtowc.c b/src/wchar/mbrtowc.c index 647b5e98..56a50a11 100644 --- a/src/wchar/mbrtowc.c +++ b/src/wchar/mbrtowc.c @@ -4,6 +4,8 @@ size_t mbrtowc(wchar_t * restrict pwc, const char * restrict s, size_t n, mbstate_t * restrict ps) { + SIGNAL_SAFE(0); + (void)ps; (void)pwc; (void)n; if (s == NULL) { diff --git a/src/wchar/mbsinit.c b/src/wchar/mbsinit.c index 590ce2e6..52640483 100644 --- a/src/wchar/mbsinit.c +++ b/src/wchar/mbsinit.c @@ -4,6 +4,8 @@ int mbsinit(const mbstate_t * ps) { + SIGNAL_SAFE(0); + if (ps == NULL || *ps == 0) { return 1; } diff --git a/src/wchar/mbsrtowcs.c b/src/wchar/mbsrtowcs.c index dc8bde58..2a97cc83 100644 --- a/src/wchar/mbsrtowcs.c +++ b/src/wchar/mbsrtowcs.c @@ -4,6 +4,8 @@ size_t mbsrtowcs(wchar_t * restrict dst, const char * restrict src, size_t len, mbstate_t * restrict ps) { + SIGNAL_SAFE(0); + (void)dst; (void)src; (void)len; (void)ps; return 0; } diff --git a/src/wchar/mbsrtowcs_s.c b/src/wchar/mbsrtowcs_s.c index 7284a0fe..11beee78 100644 --- a/src/wchar/mbsrtowcs_s.c +++ b/src/wchar/mbsrtowcs_s.c @@ -7,7 +7,8 @@ errno_t mbsrtowcs_s(size_t * restrict retval, const char ** restrict src, rsize_t len, mbstate_t * restrict ps) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/putwc.c b/src/wchar/putwc.c index 87d58b04..8da6931e 100644 --- a/src/wchar/putwc.c +++ b/src/wchar/putwc.c @@ -5,6 +5,8 @@ wint_t putwc(wchar_t c, FILE * stream) { + SIGNAL_SAFE(0); + return fputwc(c, stream); } diff --git a/src/wchar/putwchar.c b/src/wchar/putwchar.c index 386b6913..ac61a572 100644 --- a/src/wchar/putwchar.c +++ b/src/wchar/putwchar.c @@ -5,6 +5,8 @@ wint_t putwchar(wchar_t c) { + SIGNAL_SAFE(0); + return putwc(c, stdout); } diff --git a/src/wchar/snwprintf_s.c b/src/wchar/snwprintf_s.c index 402da30b..ea0a090f 100644 --- a/src/wchar/snwprintf_s.c +++ b/src/wchar/snwprintf_s.c @@ -4,7 +4,8 @@ int snwprintf_s(wchar_t * restrict s, rsize_t n, const wchar_t * restrict format, ...) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vsnwprintf_s(s, n, format, ap); diff --git a/src/wchar/swprintf.c b/src/wchar/swprintf.c index a3aa6c45..6cc546c3 100644 --- a/src/wchar/swprintf.c +++ b/src/wchar/swprintf.c @@ -5,6 +5,8 @@ int swprintf(wchar_t * restrict s, size_t n, const wchar_t * restrict format, ...) { + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vswprintf(s, n, format, ap); diff --git a/src/wchar/swprintf_s.c b/src/wchar/swprintf_s.c index abadca9e..24468e30 100644 --- a/src/wchar/swprintf_s.c +++ b/src/wchar/swprintf_s.c @@ -5,7 +5,8 @@ int swprintf_s(wchar_t * restrict s, rsize_t n, const wchar_t * restrict format, ...) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vswprintf_s(s, n, format, ap); diff --git a/src/wchar/swscanf.c b/src/wchar/swscanf.c index 8885a143..3897662c 100644 --- a/src/wchar/swscanf.c +++ b/src/wchar/swscanf.c @@ -10,6 +10,8 @@ int swscanf(const wchar_t * restrict s, const wchar_t * restrict format, ...) { + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vswscanf(s, format, ap); diff --git a/src/wchar/swscanf_s.c b/src/wchar/swscanf_s.c index 754650a4..1ec64523 100644 --- a/src/wchar/swscanf_s.c +++ b/src/wchar/swscanf_s.c @@ -4,7 +4,8 @@ int swscanf_s(const wchar_t * restrict s, const wchar_t * restrict format, ...) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vswscanf_s(s, format, ap); diff --git a/src/wchar/ungetwc.c b/src/wchar/ungetwc.c index 028de61a..c055b9f4 100644 --- a/src/wchar/ungetwc.c +++ b/src/wchar/ungetwc.c @@ -5,6 +5,8 @@ wint_t ungetwc(wint_t c, FILE * stream) { + SIGNAL_SAFE(0); + (void)c; (void)stream; return -1; } diff --git a/src/wchar/vfwprintf.c b/src/wchar/vfwprintf.c index d9cf9b8e..89e4c6b5 100644 --- a/src/wchar/vfwprintf.c +++ b/src/wchar/vfwprintf.c @@ -8,6 +8,8 @@ int vfwprintf(FILE * restrict stream, const wchar_t * restrict format, va_list arg) { + SIGNAL_SAFE(0); + int ret = 0; struct io_options opt = {0}; opt.fnname = "vfwprintf"; diff --git a/src/wchar/vfwprintf_s.c b/src/wchar/vfwprintf_s.c index 61a5358c..fff95aa7 100644 --- a/src/wchar/vfwprintf_s.c +++ b/src/wchar/vfwprintf_s.c @@ -5,6 +5,8 @@ int vfwprintf_s(FILE * restrict stream, const wchar_t * restrict format, va_list arg) { + SIGNAL_SAFE(0); + struct io_options opt = { .fnname = __func__, .stream = stream, diff --git a/src/wchar/vfwscanf.c b/src/wchar/vfwscanf.c index b86b531b..e727b0c8 100644 --- a/src/wchar/vfwscanf.c +++ b/src/wchar/vfwscanf.c @@ -10,6 +10,8 @@ int vfwscanf(FILE * restrict stream, const wchar_t * restrict format, va_list arg) { + SIGNAL_SAFE(0); + int ret = 0; struct io_options opt = {0}; opt.fnname = __func__; diff --git a/src/wchar/vfwscanf_s.c b/src/wchar/vfwscanf_s.c index d9b6f147..3cebc5d1 100644 --- a/src/wchar/vfwscanf_s.c +++ b/src/wchar/vfwscanf_s.c @@ -5,7 +5,8 @@ int vfwscanf_s(FILE * restrict stream, const wchar_t * restrict format, va_list arg) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + // also maybe this one } diff --git a/src/wchar/vsnwprintf_s.c b/src/wchar/vsnwprintf_s.c index 56c69cc7..eb7a98fa 100644 --- a/src/wchar/vsnwprintf_s.c +++ b/src/wchar/vsnwprintf_s.c @@ -2,7 +2,8 @@ int vsnwprintf_s(whcar_t * restrict s, rsize_t n, const wchar_t * restrict format, va_list arg) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + // the actual function } diff --git a/src/wchar/vswprintf.c b/src/wchar/vswprintf.c index 34d23296..e9229399 100644 --- a/src/wchar/vswprintf.c +++ b/src/wchar/vswprintf.c @@ -6,6 +6,8 @@ int vswprintf(wchar_t * restrict s, size_t n, const wchar_t * restrict format, va_list arg) { + SIGNAL_SAFE(0); + int ret = 0; struct io_options opt = {0}; opt.fnname = "vswprintf"; diff --git a/src/wchar/vswprintf_s.c b/src/wchar/vswprintf_s.c index c789b448..14410341 100644 --- a/src/wchar/vswprintf_s.c +++ b/src/wchar/vswprintf_s.c @@ -5,7 +5,8 @@ int vswprintf_s(wchar_t * restrict s, rsize_t n, const wchar_t * restrict format, va_list arg) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + // wait } diff --git a/src/wchar/vswscanf.c b/src/wchar/vswscanf.c index a6574e9b..c28bd64f 100644 --- a/src/wchar/vswscanf.c +++ b/src/wchar/vswscanf.c @@ -9,6 +9,8 @@ int vswscanf(const wchar_t * restrict s, const wchar_t * restrict format, va_list arg) { + SIGNAL_SAFE(0); + int ret = 0; struct io_options opt = {0}; opt.fnname = __func__; diff --git a/src/wchar/vswscanf_s.c b/src/wchar/vswscanf_s.c index 3b2dd6a4..8f5bf60e 100644 --- a/src/wchar/vswscanf_s.c +++ b/src/wchar/vswscanf_s.c @@ -5,7 +5,8 @@ int vswscanf_s(const wchar_t * restrict s, const wchar_t * restrict format, va_list arg) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + // fmemopen(a stream) // vfwscanf_s(that stream) // wcscpy(the results) diff --git a/src/wchar/vwprintf.c b/src/wchar/vwprintf.c index d3a42e72..e1ab1741 100644 --- a/src/wchar/vwprintf.c +++ b/src/wchar/vwprintf.c @@ -5,6 +5,8 @@ int vwprintf(const wchar_t * restrict format, va_list arg) { + SIGNAL_SAFE(0); + return vfwprintf(stdout, format, arg); } diff --git a/src/wchar/vwprintf_s.c b/src/wchar/vwprintf_s.c index a67c9239..231a224c 100644 --- a/src/wchar/vwprintf_s.c +++ b/src/wchar/vwprintf_s.c @@ -5,7 +5,8 @@ int vwprintf_s(const wchar_t * restrict format, va_list arg) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + return vfwprintf_s(stdout, format, arg); } diff --git a/src/wchar/vwscanf.c b/src/wchar/vwscanf.c index 8278e820..d5d83df2 100644 --- a/src/wchar/vwscanf.c +++ b/src/wchar/vwscanf.c @@ -6,6 +6,8 @@ int vwscanf(const wchar_t * restrict format, va_list arg) { + SIGNAL_SAFE(0); + return vfwscanf(stdin, format, arg); } diff --git a/src/wchar/vwscanf_s.c b/src/wchar/vwscanf_s.c index d795ce96..86e9cf92 100644 --- a/src/wchar/vwscanf_s.c +++ b/src/wchar/vwscanf_s.c @@ -5,7 +5,8 @@ int vwscanf_s(const wchar_t * restrict format, va_list arg) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + return vwscanf_s(stdin, format, arg); } diff --git a/src/wchar/wcrtomb.c b/src/wchar/wcrtomb.c index bfad86ef..beff6457 100644 --- a/src/wchar/wcrtomb.c +++ b/src/wchar/wcrtomb.c @@ -5,6 +5,8 @@ size_t wcrtomb(char * restrict s, wchar_t wc, mbstate_t * restrict ps) { + SIGNAL_SAFE(0); + char buf[MB_LEN_MAX+1]; if (s == NULL) { s = buf; diff --git a/src/wchar/wcrtomb_s.c b/src/wchar/wcrtomb_s.c index 898da3fd..9248a6e7 100644 --- a/src/wchar/wcrtomb_s.c +++ b/src/wchar/wcrtomb_s.c @@ -5,7 +5,8 @@ errno_t wcrtomb_s(size_t * restrict retval, char * restrict s, rsize_t smax, wchar_t wc, mbstate_t * restrict ps) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wcscat.c b/src/wchar/wcscat.c index 24fb008c..2674e218 100644 --- a/src/wchar/wcscat.c +++ b/src/wchar/wcscat.c @@ -4,6 +4,8 @@ wchar_t * wcscat(wchar_t * restrict s1, const wchar_t * restrict s2) { + SIGNAL_SAFE(0); + wcscpy(s1 + wcslen(s1), s2); return s1; } diff --git a/src/wchar/wcscat_s.c b/src/wchar/wcscat_s.c index b762d219..e7f091d3 100644 --- a/src/wchar/wcscat_s.c +++ b/src/wchar/wcscat_s.c @@ -4,7 +4,8 @@ errno_t wcscat_s(wchar_t * restrict s1, rsize_t s1max, const wchar_t * restrict s2) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wcschr.c b/src/wchar/wcschr.c index 2a23d8b6..7fdecb89 100644 --- a/src/wchar/wcschr.c +++ b/src/wchar/wcschr.c @@ -4,6 +4,8 @@ wchar_t * wcschr(const wchar_t * s, wchar_t c) { + SIGNAL_SAFE(0); + while (*s) { if (*s == c) { return (wchar_t*) s; diff --git a/src/wchar/wcscmp.c b/src/wchar/wcscmp.c index 01d282fc..6693cc63 100644 --- a/src/wchar/wcscmp.c +++ b/src/wchar/wcscmp.c @@ -1,10 +1,12 @@ #if 0 #include <wchar.h> -#include "_assert.h" +#include "_safety.h" int wcscmp(const wchar_t * s1, const wchar_t * s2) { + SIGNAL_SAFE(0); + ASSERT_NONNULL(s1); ASSERT_NONNULL(s2); diff --git a/src/wchar/wcscoll.c b/src/wchar/wcscoll.c index 83fd39e8..4386b525 100644 --- a/src/wchar/wcscoll.c +++ b/src/wchar/wcscoll.c @@ -4,6 +4,8 @@ int wcscoll(const wchar_t * s1, const wchar_t * s2) { + SIGNAL_SAFE(0); + /* wchar_t *collated_s1 = s1; wchar_t *collated_s2 = s2; diff --git a/src/wchar/wcscpy.c b/src/wchar/wcscpy.c index cc1985a9..ce366198 100644 --- a/src/wchar/wcscpy.c +++ b/src/wchar/wcscpy.c @@ -4,6 +4,8 @@ wchar_t * wcscpy(wchar_t * restrict s1, const wchar_t * restrict s2) { + SIGNAL_SAFE(0); + return wcsncpy(s1, s2, wcslen(s2)); } diff --git a/src/wchar/wcscpy_s.c b/src/wchar/wcscpy_s.c index f3c9206d..927bba74 100644 --- a/src/wchar/wcscpy_s.c +++ b/src/wchar/wcscpy_s.c @@ -4,7 +4,8 @@ errno_t wcscpy_s(wchar_t * restrict s1, rsize_t s1max, const wchar_t * restrict s2) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wcscspn.c b/src/wchar/wcscspn.c index 5c063a47..5b5db5f3 100644 --- a/src/wchar/wcscspn.c +++ b/src/wchar/wcscspn.c @@ -1,10 +1,12 @@ #if 0 #include <wchar.h> -#include "_assert.h" +#include "_safety.h" size_t wcscspn(const wchar_t * s1, const wchar_t * s2) { + SIGNAL_SAFE(0); + size_t i; ASSERT_NONNULL(s1); diff --git a/src/wchar/wcsftime.c b/src/wchar/wcsftime.c index 398d8c55..e04eb966 100644 --- a/src/wchar/wcsftime.c +++ b/src/wchar/wcsftime.c @@ -4,6 +4,8 @@ size_t wcsftime(wchar_t * restrict s, size_t maxsize, const wchar_t * restrict format, const struct tm * restrict timeptr) { + SIGNAL_SAFE(0); + (void)s; (void)maxsize; (void)format; (void)timeptr; return 0; } diff --git a/src/wchar/wcslen.c b/src/wchar/wcslen.c index ca04fa0a..a59c8f17 100644 --- a/src/wchar/wcslen.c +++ b/src/wchar/wcslen.c @@ -1,9 +1,10 @@ -#if 0 - #include <wchar.h> +#include "_safety.h" size_t wcslen(const wchar_t * s) { + SIGNAL_SAFE(0); + size_t l = 0; while (s[l] != L'\0') { l++; @@ -14,6 +15,3 @@ size_t wcslen(const wchar_t * s) /* STDC(199409) */ - - -#endif diff --git a/src/wchar/wcsncat.c b/src/wchar/wcsncat.c index f2085747..8cda3694 100644 --- a/src/wchar/wcsncat.c +++ b/src/wchar/wcsncat.c @@ -4,6 +4,8 @@ wchar_t * wcsncat(wchar_t * restrict s1, const wchar_t * restrict s2, size_t n) { + SIGNAL_SAFE(0); + wcsncpy(s1 + wcslen(s1), s2, n); /* ensure trailing nul */ return s1; diff --git a/src/wchar/wcsncat_s.c b/src/wchar/wcsncat_s.c index 93cdbf10..68ee5456 100644 --- a/src/wchar/wcsncat_s.c +++ b/src/wchar/wcsncat_s.c @@ -4,7 +4,8 @@ errno_t wcsncat_s(wchar_t * restrict s1, rsize_t s1max, const wchar_t * restrict s2, rsize_t n) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wcsncmp.c b/src/wchar/wcsncmp.c index 14efdb51..0caa5a9e 100644 --- a/src/wchar/wcsncmp.c +++ b/src/wchar/wcsncmp.c @@ -1,10 +1,12 @@ #if 0 #include <wchar.h> -#include "_assert.h" +#include "_safety.h" int wcsncmp(const wchar_t * s1, const wchar_t * s2, size_t n) { + SIGNAL_SAFE(0); + size_t i; ASSERT_NONNULL(s1); diff --git a/src/wchar/wcsncpy.c b/src/wchar/wcsncpy.c index 4a33779a..2c595575 100644 --- a/src/wchar/wcsncpy.c +++ b/src/wchar/wcsncpy.c @@ -4,6 +4,8 @@ wchar_t * wcsncpy(wchar_t * restrict s1, const wchar_t * restrict s2, size_t n) { + SIGNAL_SAFE(0); + size_t i; int nul = 0; for (i = 0; i < n; i++) { diff --git a/src/wchar/wcsncpy_s.c b/src/wchar/wcsncpy_s.c index 9748a65b..a875b14c 100644 --- a/src/wchar/wcsncpy_s.c +++ b/src/wchar/wcsncpy_s.c @@ -4,7 +4,8 @@ errno_t wcsncpy_s(wchar_t * restrict s1, rsize_t s1max, const wchar_t * restrict s2, rsize_t n) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wcsnlen_s.c b/src/wchar/wcsnlen_s.c index d42fa1fb..b83f9530 100644 --- a/src/wchar/wcsnlen_s.c +++ b/src/wchar/wcsnlen_s.c @@ -4,7 +4,8 @@ size_t wcsnlen_s( const wchar_t *ws, size_t maxlen) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + return 0; } diff --git a/src/wchar/wcspbrk.c b/src/wchar/wcspbrk.c index 155bbdf5..fb72904c 100644 --- a/src/wchar/wcspbrk.c +++ b/src/wchar/wcspbrk.c @@ -4,6 +4,8 @@ wchar_t * wcspbrk(const wchar_t * s1, const wchar_t * s2) { + SIGNAL_SAFE(0); + int i; for (i = 0; s1[i] != L'\0'; i++) { if (wcschr(s2, s1[i]) != NULL) { diff --git a/src/wchar/wcsrchr.c b/src/wchar/wcsrchr.c index 7d9e9a50..6614e723 100644 --- a/src/wchar/wcsrchr.c +++ b/src/wchar/wcsrchr.c @@ -4,6 +4,8 @@ wchar_t * wcsrchr(const wchar_t * s, wchar_t c) { + SIGNAL_SAFE(0); + wchar_t *last = NULL; while (*s) { if (*s == c) { diff --git a/src/wchar/wcsrtombs.c b/src/wchar/wcsrtombs.c index b51b3a8b..82a38ff9 100644 --- a/src/wchar/wcsrtombs.c +++ b/src/wchar/wcsrtombs.c @@ -4,6 +4,8 @@ size_t wcsrtombs(char * restrict dst, const wchar_t ** restrict src, size_t len, mbstate_t * restrict ps) { + SIGNAL_SAFE(0); + (void)dst; (void)src; (void)len; (void)ps; return 0; } diff --git a/src/wchar/wcsrtombs_s.c b/src/wchar/wcsrtombs_s.c index 5ae76e42..61d04df0 100644 --- a/src/wchar/wcsrtombs_s.c +++ b/src/wchar/wcsrtombs_s.c @@ -7,7 +7,8 @@ errno_t wcsrtombs_s(size_t * restrict retval, const wchar_t ** restrict src, rsize_t len, mbstate_t * restrict ps) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wcsspn.c b/src/wchar/wcsspn.c index 162c141b..ebf30980 100644 --- a/src/wchar/wcsspn.c +++ b/src/wchar/wcsspn.c @@ -4,6 +4,8 @@ size_t wcsspn(const wchar_t * s1, const wchar_t * s2) { + SIGNAL_SAFE(0); + size_t i; for (i = 0; s1[i] != L'\0'; i++) { if (wcschr(s2, s1[i]) == NULL) { diff --git a/src/wchar/wcsstr.c b/src/wchar/wcsstr.c index 12bc2cfd..84b4020b 100644 --- a/src/wchar/wcsstr.c +++ b/src/wchar/wcsstr.c @@ -4,6 +4,8 @@ wchar_t * wcsstr(const wchar_t * s1, const wchar_t * s2) { + SIGNAL_SAFE(0); + (void)s2; return (wchar_t*)s1; } diff --git a/src/wchar/wcstod.c b/src/wchar/wcstod.c index f0e0cbc8..b5be3bcf 100644 --- a/src/wchar/wcstod.c +++ b/src/wchar/wcstod.c @@ -4,6 +4,8 @@ double wcstod(const wchar_t * restrict nptr, wchar_t ** restrict endptr) { + SIGNAL_SAFE(0); + (void)nptr; (void)endptr; return 0.0; } diff --git a/src/wchar/wcstof.c b/src/wchar/wcstof.c index b6784dd9..abea9395 100644 --- a/src/wchar/wcstof.c +++ b/src/wchar/wcstof.c @@ -4,6 +4,8 @@ float wcstof(const wchar_t * restrict nptr, wchar_t ** restrict endptr) { + SIGNAL_SAFE(0); + (void)nptr; (void)endptr; return 0; } diff --git a/src/wchar/wcstok.c b/src/wchar/wcstok.c index 83841c1d..484053d2 100644 --- a/src/wchar/wcstok.c +++ b/src/wchar/wcstok.c @@ -4,6 +4,8 @@ wchar_t * wcstok(wchar_t * restrict s1, const wchar_t * restrict s2, wchar_t ** restrict ptr) { + SIGNAL_SAFE(0); + (void)s1; (void)s2; (void)ptr; return s1; } diff --git a/src/wchar/wcstok_s.c b/src/wchar/wcstok_s.c index b9418e7c..2d0e3b53 100644 --- a/src/wchar/wcstok_s.c +++ b/src/wchar/wcstok_s.c @@ -5,7 +5,8 @@ wchar_t *wcstok_s(wchar_t * restrict s1, rsize_t * restrict s1max, const wchar_t * restrict s2, wchar_t ** restrict ptr) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wcstol.c b/src/wchar/wcstol.c index 256b0fee..414429ac 100644 --- a/src/wchar/wcstol.c +++ b/src/wchar/wcstol.c @@ -9,6 +9,8 @@ long int wcstol(const wchar_t * restrict nptr, wchar_t ** restrict endptr, int base) { + SIGNAL_SAFE(0); + long int ret = 0; long int max = LONG_MAX; long int min = LONG_MIN; diff --git a/src/wchar/wcstold.c b/src/wchar/wcstold.c index 4f717147..bf0304b6 100644 --- a/src/wchar/wcstold.c +++ b/src/wchar/wcstold.c @@ -4,6 +4,8 @@ long double wcstold(const wchar_t * restrict nptr, wchar_t ** restrict endptr) { + SIGNAL_SAFE(0); + (void)nptr; (void)endptr; return 0; } diff --git a/src/wchar/wcstoll.c b/src/wchar/wcstoll.c index 1cad9376..5a86a745 100644 --- a/src/wchar/wcstoll.c +++ b/src/wchar/wcstoll.c @@ -9,6 +9,8 @@ long long int wcstoll(const wchar_t * restrict nptr, wchar_t ** restrict endptr, int base) { + SIGNAL_SAFE(0); + long long int ret = 0; long long int max = LLONG_MAX; long long int min = LLONG_MIN; diff --git a/src/wchar/wcstoul.c b/src/wchar/wcstoul.c index eef920c9..e7be6154 100644 --- a/src/wchar/wcstoul.c +++ b/src/wchar/wcstoul.c @@ -9,6 +9,8 @@ unsigned long int wcstoul(const wchar_t * restrict nptr, wchar_t ** restrict endptr, int base) { + SIGNAL_SAFE(0); + unsigned long int ret = 0; unsigned long int max = ULONG_MAX; unsigned long int min = 0; diff --git a/src/wchar/wcstoull.c b/src/wchar/wcstoull.c index ef838036..26d61460 100644 --- a/src/wchar/wcstoull.c +++ b/src/wchar/wcstoull.c @@ -9,6 +9,8 @@ unsigned long long int wcstoull(const wchar_t * restrict nptr, wchar_t ** restrict endptr, int base) { + SIGNAL_SAFE(0); + unsigned long long int ret = 0; unsigned long long int max = ULLONG_MAX; unsigned long long int min = 0; diff --git a/src/wchar/wcswcs.c b/src/wchar/wcswcs.c index f9dcae5f..c4541af9 100644 --- a/src/wchar/wcswcs.c +++ b/src/wchar/wcswcs.c @@ -12,6 +12,8 @@ wchar_t * wcswcs(const wchar_t * s1, const wchar_t * s2) { + SIGNAL_SAFE(0); + return wcsstr(s1, s2); } diff --git a/src/wchar/wcswidth.c b/src/wchar/wcswidth.c index c10bf4c7..3aadc89b 100644 --- a/src/wchar/wcswidth.c +++ b/src/wchar/wcswidth.c @@ -7,6 +7,8 @@ int wcswidth(const wchar_t * wcsptr, size_t n) { + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wcsxfrm.c b/src/wchar/wcsxfrm.c index 9982aa8d..c025ee7e 100644 --- a/src/wchar/wcsxfrm.c +++ b/src/wchar/wcsxfrm.c @@ -4,6 +4,8 @@ size_t wcsxfrm(wchar_t * restrict s1, const wchar_t * restrict s2, size_t n) { + SIGNAL_SAFE(0); + (void)s1; (void)s2; (void)n; return 0; } diff --git a/src/wchar/wctob.c b/src/wchar/wctob.c index 5608a672..14ccf18c 100644 --- a/src/wchar/wctob.c +++ b/src/wchar/wctob.c @@ -7,6 +7,8 @@ int wctob(wint_t c) { + SIGNAL_SAFE(0); + char *l = setlocale(LC_CTYPE, NULL); if (!strcmp(l, "C") || !strcmp(l, "POSIX")) { diff --git a/src/wchar/wcwidth.c b/src/wchar/wcwidth.c index e562233c..62ad08bb 100644 --- a/src/wchar/wcwidth.c +++ b/src/wchar/wcwidth.c @@ -7,6 +7,8 @@ int wcwidth(wchar_t wc) { + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wmemchr.c b/src/wchar/wmemchr.c index dcbf0d1d..f6ab1f25 100644 --- a/src/wchar/wmemchr.c +++ b/src/wchar/wmemchr.c @@ -1,10 +1,12 @@ #if 0 #include <wchar.h> -#include "_assert.h" +#include "_safety.h" wchar_t * wmemchr(const wchar_t * s, wchar_t c, size_t n) { + SIGNAL_SAFE(0); + size_t i; ASSERT_NONNULL(s); diff --git a/src/wchar/wmemcmp.c b/src/wchar/wmemcmp.c index 97be69fe..693211d1 100644 --- a/src/wchar/wmemcmp.c +++ b/src/wchar/wmemcmp.c @@ -4,6 +4,8 @@ int wmemcmp(const wchar_t * s1, const wchar_t * s2, size_t n) { + SIGNAL_SAFE(0); + size_t i; for (i = 0; i < n; i++) { diff --git a/src/wchar/wmemcpy.c b/src/wchar/wmemcpy.c index f2e56ead..b45912a2 100644 --- a/src/wchar/wmemcpy.c +++ b/src/wchar/wmemcpy.c @@ -4,6 +4,8 @@ wchar_t * wmemcpy(wchar_t * restrict s1, const wchar_t * restrict s2, size_t n) { + SIGNAL_SAFE(0); + size_t i; for (i = 0; i < n; i++) { s1[i] = s2[i]; diff --git a/src/wchar/wmemcpy_s.c b/src/wchar/wmemcpy_s.c index 36b90e3c..28ce1f0f 100644 --- a/src/wchar/wmemcpy_s.c +++ b/src/wchar/wmemcpy_s.c @@ -4,7 +4,8 @@ errno_t wmemcpy_s(wchar_t * restrict s1, rsize_t s1max, const wchar_t * restrict s2, rsize_t n) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wmemmove.c b/src/wchar/wmemmove.c index 0c391377..7e6425ab 100644 --- a/src/wchar/wmemmove.c +++ b/src/wchar/wmemmove.c @@ -2,10 +2,12 @@ #include <wchar.h> #include <stdlib.h> -#include "_assert.h" +#include "_safety.h" wchar_t * wmemmove(wchar_t * s1, const wchar_t * s2, size_t n) { + SIGNAL_SAFE(0); + ASSERT_NONNULL(s1); ASSERT_NONNULL(s2); diff --git a/src/wchar/wmemmove_s.c b/src/wchar/wmemmove_s.c index fb108314..7ce61e30 100644 --- a/src/wchar/wmemmove_s.c +++ b/src/wchar/wmemmove_s.c @@ -4,7 +4,8 @@ errno_t wmemmove_s(whcar_t *s1, rsize_t s1max, const wchar_t *s2, rsize_t n) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + } /* diff --git a/src/wchar/wmemset.c b/src/wchar/wmemset.c index 65245a77..6bf8e38b 100644 --- a/src/wchar/wmemset.c +++ b/src/wchar/wmemset.c @@ -4,6 +4,8 @@ wchar_t * wmemset(wchar_t * s, wchar_t c, size_t n) { + SIGNAL_SAFE(0); + size_t i; for (i = 0; i < n; i++) { s[i] = c; diff --git a/src/wchar/wprintf.c b/src/wchar/wprintf.c index fed68cc0..84e349e2 100644 --- a/src/wchar/wprintf.c +++ b/src/wchar/wprintf.c @@ -5,6 +5,8 @@ int wprintf(const wchar_t * restrict format, ...) { + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vwprintf(format, ap); diff --git a/src/wchar/wprintf_s.c b/src/wchar/wprintf_s.c index 45e97719..3b95197c 100644 --- a/src/wchar/wprintf_s.c +++ b/src/wchar/wprintf_s.c @@ -4,7 +4,8 @@ int wprintf_s(const wchar_t * restrict format, ...) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vwprintf_s(format, ap); diff --git a/src/wchar/wscanf.c b/src/wchar/wscanf.c index ae1362b7..80dfdbd1 100644 --- a/src/wchar/wscanf.c +++ b/src/wchar/wscanf.c @@ -5,6 +5,8 @@ int wscanf(const wchar_t * restrict format, ...) { + SIGNAL_SAFE(0); + /* va_list ap; va_start(ap, format); diff --git a/src/wchar/wscanf_s.c b/src/wchar/wscanf_s.c index 6dfafc90..f66ae5ee 100644 --- a/src/wchar/wscanf_s.c +++ b/src/wchar/wscanf_s.c @@ -4,7 +4,8 @@ int wscanf_s(const wchar_t * restrict format, ...) { - __C_EXT(1, 201112L); + SIGNAL_SAFE(0); + va_list ap; va_start(ap, format); int ret = vwscanf_s(format, ap); |