aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/include/Xos_r.h
diff options
context:
space:
mode:
Diffstat (limited to 'nx-X11/include/Xos_r.h')
-rw-r--r--nx-X11/include/Xos_r.h104
1 files changed, 11 insertions, 93 deletions
diff --git a/nx-X11/include/Xos_r.h b/nx-X11/include/Xos_r.h
index bafbefcb3..ee0a77bfa 100644
--- a/nx-X11/include/Xos_r.h
+++ b/nx-X11/include/Xos_r.h
@@ -37,9 +37,8 @@ in this Software without prior written authorization from The Open Group.
*
* If you are on a platform that defines XTHREADS but does not have
* MT-safe system API (e.g. UnixWare) you must define _Xos_processLock
- * and _Xos_processUnlock macros before including this header. If
- * you are on OSF/1 V3.2 and plan to use readdir(), you must also define
- * _Xos_isThreadsInitialized. For convenience XOS_USE_XLIB_LOCKING or
+ * and _Xos_processUnlock macros before including this header.
+ * For convenience XOS_USE_XLIB_LOCKING or
* XOS_USE_XT_LOCKING may be defined to obtain either Xlib-only or
* Xt-based versions of these macros. These macros won't result in
* truly thread-safe calls, but they are better than nothing. If you
@@ -197,14 +196,6 @@ extern void XtProcessUnlock(
# undef _POSIX_THREAD_SAFE_FUNCTIONS
#endif
-/*
- * LynxOS 3.1 defines _POSIX_THREAD_SAFE_FUNCTIONS but
- * getpwuid_r has different semantics than defined by POSIX
- */
-#if defined(Lynx) && defined(_POSIX_THREAD_SAFE_FUNCTIONS)
-# undef _POSIX_THREAD_SAFE_FUNCTIONS
-#endif
-
/***** <pwd.h> wrappers *****/
@@ -328,24 +319,17 @@ static __inline__ void _Xpw_copyPasswd(_Xgetpwparams p)
(p).pwp )
#elif !defined(_POSIX_THREAD_SAFE_FUNCTIONS) && !defined(__APPLE__) && !defined(__DARWIN__)
-/* SVR4 threads, AIX 4.2.0 and earlier and OSF/1 3.2 and earlier pthreads */
+/* SVR4 threads */
# define X_NEEDS_PWPARAMS
typedef struct {
struct passwd pws;
char pwbuf[X_LINE_MAX];
} _Xgetpwparams;
-# if defined(_POSIX_REENTRANT_FUNCTIONS) || !defined(SVR4) || defined(Lynx)
-# ifndef Lynx
-# define _XGetpwuid(u,p) \
+# if defined(_POSIX_REENTRANT_FUNCTIONS) || !defined(SVR4)
+# define _XGetpwuid(u,p) \
((getpwuid_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf)) == -1) ? NULL : &(p).pws)
-# define _XGetpwnam(u,p) \
+# define _XGetpwnam(u,p) \
((getpwnam_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf)) == -1) ? NULL : &(p).pws)
-# else /* Lynx */
-# define _XGetpwuid(u,p) \
-((getpwuid_r(&(p).pws,(u),(p).pwbuf,sizeof((p).pwbuf)) == -1) ? NULL : &(p).pws)
-# define _XGetpwnam(u,p) \
-((getpwnam_r(&(p).pws,(u),(p).pwbuf,sizeof((p).pwbuf)) == -1) ? NULL : &(p).pws)
-# endif
# else /* SVR4 */
# define _XGetpwuid(u,p) \
((getpwuid_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf)) == NULL) ? NULL : &(p).pws)
@@ -355,11 +339,6 @@ typedef struct {
#else /* _POSIX_THREAD_SAFE_FUNCTIONS */
/* Digital UNIX 4.0, but not (beta) T4.0-1 */
-# if defined(__osf__)
-/* OSF/1 V4.0 <pwd.h> doesn't declare the _P routines, breaking under C++. */
-extern int _Pgetpwuid_r(uid_t, struct passwd *, char *, size_t, struct passwd **);
-extern int _Pgetpwnam_r(const char *, struct passwd *, char *, size_t, struct passwd **);
-# endif
# define X_NEEDS_PWPARAMS
typedef struct {
struct passwd pws;
@@ -480,13 +459,6 @@ typedef struct {
* POSIX does not specify _r equivalents for <netdb.h> API, but some
* vendors provide them anyway. Use them only when explicitly asked.
*/
-# ifdef _POSIX_REENTRANT_FUNCTIONS
-# ifndef _POSIX_THREAD_SAFE_FUNCTIONS
-# if defined(AIXV3) || defined(AIXV4) || defined(__osf__)
-# define X_POSIX_THREAD_SAFE_FUNCTIONS 1
-# endif
-# endif
-# endif
# ifdef _POSIX_THREAD_SAFE_FUNCTIONS
# define X_POSIX_THREAD_SAFE_FUNCTIONS 1
# endif
@@ -619,32 +591,11 @@ typedef struct {
# endif
} _Xreaddirparams;
-# if defined(_POSIX_THREAD_SAFE_FUNCTIONS) || defined(AIXV3) || \
- defined(AIXV4) || defined(__APPLE__) || defined(__DARWIN__)
-/* AIX defines the draft POSIX symbol, but uses the final API. */
+# if defined(_POSIX_THREAD_SAFE_FUNCTIONS) || \
+ defined(__APPLE__) || defined(__DARWIN__)
/* POSIX final API, returns (int)0 on success. */
-# if defined(__osf__)
-/* OSF/1 V4.0 <dirent.h> doesn't declare _Preaddir_r, breaking under C++. */
-extern int _Preaddir_r(DIR *, struct dirent *, struct dirent **);
-# endif
# define _XReaddir(d,p) \
(readdir_r((d), &((p).dir_entry), &((p).result)) ? NULL : (p).result)
-# elif defined(_POSIX_REENTRANT_FUNCTIONS) && defined(__osf__)
-/*
- * OSF/1 V3.2 readdir_r() will SEGV if the main program is not
- * explicitly linked with -lc_r. The library REQUIREDLIBS don't help.
- * Assume that if threads have been initialized we're linked properly.
- */
-# define _XReaddir(d,p) \
- ( (_Xos_isThreadInitialized) ? \
- (readdir_r((d), &((p).dir_entry)) ? NULL : &((p).dir_entry)) : \
- ((_Xos_processLock), \
- (((p).result = readdir((d))) ? \
- (memcpy(&((p).dir_entry), (p).result, (p).result->d_reclen), \
- ((p).result = &(p).dir_entry), 0) : \
- 0), \
- (_Xos_processUnlock), \
- (p).result) )
# elif defined(_POSIX_REENTRANT_FUNCTIONS)
/* POSIX draft API, returns (int)0 on success. */
# define _XReaddir(d,p) \
@@ -942,28 +893,6 @@ typedef struct {
(_Xos_processUnlock), \
(p).result )
-#elif !defined(_POSIX_THREAD_SAFE_FUNCTIONS) && (defined(__osf__) || defined(hpV4))
-/* Returns (int)0 on success. OSF/1 v3.2, HP/UX 10
- *
- * extern int asctime_r(const struct tm *timeptr, char *buffer, int buflen);
- * extern int ctime_r(const time_t *timer, char *buffer, int buflen);
- * extern int gmtime_r(const time_t *timer, struct tm *result);
- * extern int localtime_r(const time_t *timer, struct tm *result);
- */
-# ifdef TIMELEN
-typedef char _Xatimeparams[TIMELEN];
-typedef char _Xctimeparams[TIMELEN];
-# else
-typedef char _Xatimeparams[26];
-typedef char _Xctimeparams[26];
-# endif
-typedef struct tm _Xgtimeparams;
-typedef struct tm _Xltimeparams;
-# define _XAsctime(t,p) (asctime_r((t),(p),sizeof((p))) ? NULL : (p))
-# define _XCtime(t,p) (ctime_r((t),(p),sizeof((p))) ? NULL : (p))
-# define _XGmtime(t,p) (gmtime_r((t),&(p)) ? NULL : &(p))
-# define _XLocaltime(t,p) (localtime_r((t),&(p)) ? NULL : &(p))
-
#elif !defined(_POSIX_THREAD_SAFE_FUNCTIONS) && defined(sun)
/* Returns NULL on failure. Solaris 2.5
*
@@ -987,19 +916,13 @@ typedef struct tm _Xltimeparams;
# define _XLocaltime(t,p) localtime_r((t),&(p))
#else /* defined(_POSIX_THREAD_SAFE_FUNCTIONS) */
-/* POSIX final API. OSF/1 v4.0, AIX, etc.
+/* POSIX final API. OSF/1 v4.0, etc.
*
* extern char *asctime_r(const struct tm *timeptr, char *buffer);
* extern char *ctime_r(const time_t *timer, char *buffer);
* extern struct tm *gmtime_r(const time_t *timer, struct tm *result);
* extern struct tm *localtime_r(const time_t *timer, struct tm *result);
*/
-# if defined(__osf__)
-/* OSF/1 V4.0 <time.h> doesn't declare the _P routines, breaking under C++. */
-extern char *_Pasctime_r(const struct tm *, char *);
-extern char *_Pctime_r(const time_t *, char *);
-extern struct tm *_Plocaltime_r(const time_t *, struct tm *);
-# endif
# ifdef TIMELEN
typedef char _Xatimeparams[TIMELEN];
typedef char _Xctimeparams[TIMELEN];
@@ -1094,7 +1017,7 @@ typedef struct {
(_Xos_processUnlock), \
(p).pgrp )
-#elif !defined(_POSIX_THREAD_SAFE_FUNCTIONS) && (defined(sun) || defined(__osf__))
+#elif !defined(_POSIX_THREAD_SAFE_FUNCTIONS) && defined(sun)
/* Non-POSIX API. Solaris, DEC v3.2.
*
* extern struct group *getgrgid_r(gid_t, struct group *, char *, int);
@@ -1108,7 +1031,7 @@ typedef struct {
#define _XGetgrnam(n,p) getgrnam_r((n), &(p).grp, (p).buf, sizeof((p).buf))
#elif !defined(_POSIX_THREAD_SAFE_FUNCTIONS)
-/* Non-POSIX API. HP/UX 10, AIX 4.
+/* Non-POSIX API. HP/UX 10.
*
* extern int getgrgid_r(gid_t, struct group *, char *, int);
* extern int getgrnam_r(const char *, struct group *, char *, int);
@@ -1128,11 +1051,6 @@ typedef struct {
* int getgrgid_r(gid_t, struct group *, char *, size_t, struct group **);
* int getgrnam_r(const char *, struct group *, char *, size_t, struct group **);
*/
-# if defined(__osf__)
-/* OSF/1 V4.0 <grp.h> doesn't declare the _P routines, breaking under C++. */
-extern int _Pgetgrgid_r(gid_t, struct group *, char *, size_t, struct group **);
-extern int _Pgetgrnam_r(const char *, struct group *, char *, size_t, struct group **);
-# endif
typedef struct {
struct group grp;
char buf[X_LINE_MAX]; /* Should be sysconf(_SC_GETGR_R_SIZE_MAX)? */