Deleted Added
full compact
thr_rwlockattr.c (54757) thr_rwlockattr.c (55838)
1/*-
2 * Copyright (c) 1998 Alex Nash
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
1/*-
2 * Copyright (c) 1998 Alex Nash
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $FreeBSD: head/lib/libkse/thread/thr_rwlockattr.c 54757 1999-12-18 01:00:42Z jasone $
26 * $FreeBSD: head/lib/libkse/thread/thr_rwlockattr.c 55838 2000-01-12 09:28:58Z jasone $
27 */
28
29#ifdef _THREAD_SAFE
30#include <errno.h>
31#include <stdlib.h>
32
33#include <pthread.h>
34#include "pthread_private.h"
35
36int
27 */
28
29#ifdef _THREAD_SAFE
30#include <errno.h>
31#include <stdlib.h>
32
33#include <pthread.h>
34#include "pthread_private.h"
35
36int
37pthread_rwlockattr_destroy (pthread_rwlockattr_t *rwlockattr)
37pthread_rwlockattr_destroy(pthread_rwlockattr_t *rwlockattr)
38{
39 pthread_rwlockattr_t prwlockattr;
40
41 if (rwlockattr == NULL)
42 return(EINVAL);
43
44 prwlockattr = *rwlockattr;
45
46 if (prwlockattr == NULL)
47 return(EINVAL);
48
49 free(prwlockattr);
50
51 return(0);
52}
53
54int
38{
39 pthread_rwlockattr_t prwlockattr;
40
41 if (rwlockattr == NULL)
42 return(EINVAL);
43
44 prwlockattr = *rwlockattr;
45
46 if (prwlockattr == NULL)
47 return(EINVAL);
48
49 free(prwlockattr);
50
51 return(0);
52}
53
54int
55pthread_rwlockattr_getpshared (const pthread_rwlockattr_t *rwlockattr,
55pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *rwlockattr,
56 int *pshared)
57{
58 *pshared = (*rwlockattr)->pshared;
59
60 return(0);
61}
62
63int
56 int *pshared)
57{
58 *pshared = (*rwlockattr)->pshared;
59
60 return(0);
61}
62
63int
64pthread_rwlockattr_init (pthread_rwlockattr_t *rwlockattr)
64pthread_rwlockattr_init(pthread_rwlockattr_t *rwlockattr)
65{
66 pthread_rwlockattr_t prwlockattr;
67
68 if (rwlockattr == NULL)
69 return(EINVAL);
70
71 prwlockattr = (pthread_rwlockattr_t)
72 malloc(sizeof(struct pthread_rwlockattr));
73
74 if (prwlockattr == NULL)
75 return(ENOMEM);
76
77 prwlockattr->pshared = PTHREAD_PROCESS_PRIVATE;
78 *rwlockattr = prwlockattr;
79
80 return(0);
81}
82
83int
65{
66 pthread_rwlockattr_t prwlockattr;
67
68 if (rwlockattr == NULL)
69 return(EINVAL);
70
71 prwlockattr = (pthread_rwlockattr_t)
72 malloc(sizeof(struct pthread_rwlockattr));
73
74 if (prwlockattr == NULL)
75 return(ENOMEM);
76
77 prwlockattr->pshared = PTHREAD_PROCESS_PRIVATE;
78 *rwlockattr = prwlockattr;
79
80 return(0);
81}
82
83int
84pthread_rwlockattr_setpshared (pthread_rwlockattr_t *rwlockattr, int pshared)
84pthread_rwlockattr_setpshared(pthread_rwlockattr_t *rwlockattr, int pshared)
85{
86 /* Only PTHREAD_PROCESS_PRIVATE is supported. */
87 if (pshared != PTHREAD_PROCESS_PRIVATE)
88 return(EINVAL);
89
90 (*rwlockattr)->pshared = pshared;
91
92 return(0);
93}
94
95#endif /* _THREAD_SAFE */
85{
86 /* Only PTHREAD_PROCESS_PRIVATE is supported. */
87 if (pshared != PTHREAD_PROCESS_PRIVATE)
88 return(EINVAL);
89
90 (*rwlockattr)->pshared = pshared;
91
92 return(0);
93}
94
95#endif /* _THREAD_SAFE */