block all signals (even internal ones) in cancellation signal handler
[musl] / src / internal / libc.h
index fb4d9bc..3751cca 100644 (file)
@@ -5,6 +5,14 @@
 #include <stdio.h>
 #include <limits.h>
 
+struct __locale_map;
+
+struct __locale_struct {
+       volatile int ctype_utf8;
+       char *messages_name;
+       struct __locale_map *volatile cat[4];
+};
+
 struct __libc {
        int has_thread_pointer;
        int can_do_threads;
@@ -13,9 +21,12 @@ struct __libc {
        size_t *auxv;
        volatile int threads_minus_1;
        FILE *ofl_head;
-       int ofl_lock[2];
+       volatile int ofl_lock[2];
        size_t tls_size;
        size_t page_size;
+       volatile int uselocale_cnt;
+       volatile int bytelocale_cnt_minus_1;
+       struct __locale_struct global_locale;
 };
 
 extern size_t __hwcap;