summaryrefslogtreecommitdiffstats
path: root/cpukit/posix/src/barrierattrsetpshared.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/posix/src/barrierattrsetpshared.c')
-rw-r--r--cpukit/posix/src/barrierattrsetpshared.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/cpukit/posix/src/barrierattrsetpshared.c b/cpukit/posix/src/barrierattrsetpshared.c
new file mode 100644
index 0000000000..e7d226ea1a
--- /dev/null
+++ b/cpukit/posix/src/barrierattrsetpshared.c
@@ -0,0 +1,37 @@
+/*
+ * $Id$
+ */
+
+#if HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <pthread.h>
+#include <errno.h>
+
+/*PAGE
+ *
+ * Barrier Attributes Set Process Shared
+ */
+
+int pthread_barrierattr_setpshared(
+ pthread_barrierattr_t *attr,
+ int pshared
+)
+{
+ if ( !attr )
+ return EINVAL;
+
+ if ( !attr->is_initialized )
+ return EINVAL;
+
+ switch ( pshared ) {
+ case PTHREAD_PROCESS_SHARED:
+ case PTHREAD_PROCESS_PRIVATE:
+ attr->process_shared = pshared;
+ return 0;
+
+ default:
+ return EINVAL;
+ }
+}