summaryrefslogtreecommitdiffstats
path: root/c/src/exec/posix/src/mutex.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/exec/posix/src/mutex.c')
-rw-r--r--c/src/exec/posix/src/mutex.c23
1 files changed, 19 insertions, 4 deletions
diff --git a/c/src/exec/posix/src/mutex.c b/c/src/exec/posix/src/mutex.c
index 51ac6e097c..a3b81da52d 100644
--- a/c/src/exec/posix/src/mutex.c
+++ b/c/src/exec/posix/src/mutex.c
@@ -151,8 +151,15 @@ int pthread_mutexattr_setpshared(
if ( !attr )
return EINVAL;
- attr->process_shared = pshared;
- return 0;
+ switch ( pshared ) {
+ case PTHREAD_PROCESS_SHARED:
+ case PTHREAD_PROCESS_PRIVATE:
+ attr->process_shared = pshared;
+ return 0;
+
+ default:
+ return EINVAL;
+ }
}
/*PAGE
@@ -466,8 +473,16 @@ int pthread_mutexattr_setprotocol(
if ( !attr )
return EINVAL;
- attr->protocol = protocol;
- return 0;
+ switch ( protocol ) {
+ case PTHREAD_PRIO_NONE:
+ case PTHREAD_PRIO_INHERIT:
+ case PTHREAD_PRIO_PROTECT:
+ attr->protocol = protocol;
+ return 0;
+
+ default:
+ return EINVAL;
+ }
}
/*PAGE