transition to using functions for internal signal blocking/restoring
[musl] / src / internal / pthread_impl.h
index 544da9c..67b0575 100644 (file)
@@ -23,6 +23,8 @@ struct pthread {
        int detached;
        unsigned char *map_base;
        size_t map_size;
+       void *stack;
+       size_t stack_size;
        void *start_arg;
        void *(*start)(void *);
        void *result;
@@ -41,7 +43,7 @@ struct pthread {
        int killlock[2];
        int exitlock[2];
        int startlock[2];
-       unsigned long sigmask[__SYSCALL_SSLEN/sizeof(long)];
+       unsigned long sigmask[_NSIG/8/sizeof(long)];
 };
 
 struct __timer {
@@ -89,10 +91,10 @@ struct __timer {
 
 #define SIGALL_SET ((sigset_t *)(const unsigned long long [2]){ -1,-1 })
 #define SIGPT_SET \
-       ((sigset_t *)(const unsigned long [__SYSCALL_SSLEN/sizeof(long)]){ \
+       ((sigset_t *)(const unsigned long [_NSIG/8/sizeof(long)]){ \
        [sizeof(long)==4] = 3UL<<(32*(sizeof(long)>4)) })
 #define SIGTIMER_SET \
-       ((sigset_t *)(const unsigned long [__SYSCALL_SSLEN/sizeof(long)]){ \
+       ((sigset_t *)(const unsigned long [_NSIG/8/sizeof(long)]){ \
         0x80000000 })
 
 pthread_t __pthread_self_init(void);
@@ -113,6 +115,10 @@ void __acquire_ptc();
 void __release_ptc();
 void __inhibit_ptc();
 
+void __block_all_sigs(void *);
+void __block_app_sigs(void *);
+void __restore_sigs(void *);
+
 #define DEFAULT_STACK_SIZE 81920
 #define DEFAULT_GUARD_SIZE PAGE_SIZE