#include #include #include #include "thread_internal.h" int pthread_setcancelstate(int state, int *oldstate) { _pthread_descr thread; __THREAD_INIT(); if ((state==PTHREAD_CANCEL_ENABLE) || (state==PTHREAD_CANCEL_DISABLE)) { thread = __thread_self(); if (oldstate) *oldstate = thread->cancelstate; thread->cancelstate = state; return 0; } (*(__errno_location()))=EINVAL; return -1; }