aboutsummaryrefslogtreecommitdiff
path: root/src/thread/pthread_setcanceltype.c
blob: 8b665ac2833e659b618847b62f56001b9bc41396 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "pthread_impl.h"

int pthread_setcanceltype(int new, int *old)
{
	struct pthread *self = __pthread_self();
	if (new > 1U) return EINVAL;
	if (old) *old = self->cancelasync;
	self->cancelasync = new;
	if (new) pthread_testcancel();
	return 0;
}


#ifdef TEST
int
main(void) {
	return 0;
}
#endif