aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gabriel <mike.gabriel@das-netzwerkteam.de>2016-11-15 18:41:52 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2017-02-08 22:40:46 +0100
commitd12f9524138899e43deb1a70fb37c97559d8f64e (patch)
treee262f16b885408a54f632ba370bdb83b769727bd
parent86a6a340f06e7a735b92ca2923d2ebc6183de546 (diff)
downloadnx-libs-d12f9524138899e43deb1a70fb37c97559d8f64e.tar.gz
nx-libs-d12f9524138899e43deb1a70fb37c97559d8f64e.tar.bz2
nx-libs-d12f9524138899e43deb1a70fb37c97559d8f64e.zip
drop platform support: unifdef __UNIXOS2__.
Fixes ArcticaProject/nx-libs#271.
-rw-r--r--nx-X11/config/cf/Imake.cf7
-rw-r--r--nx-X11/config/cf/Imake.tmpl2
-rw-r--r--nx-X11/config/cf/xorg.cf2
-rw-r--r--nx-X11/extras/Mesa/include/GL/glxext.h2
-rw-r--r--nx-X11/extras/Mesa/src/mesa/math/m_debug_clip.c5
-rw-r--r--nx-X11/extras/Mesa/src/mesa/math/m_debug_norm.c5
-rw-r--r--nx-X11/extras/Mesa/src/mesa/math/m_debug_xform.c5
-rw-r--r--nx-X11/include/Xos.h8
-rw-r--r--nx-X11/include/Xosdefs.h5
-rw-r--r--nx-X11/lib/X11/CrGlCur.c4
-rw-r--r--nx-X11/lib/X11/GetDflt.c11
-rw-r--r--nx-X11/lib/X11/Imakefile12
-rw-r--r--nx-X11/lib/X11/RdBitF.c3
-rw-r--r--nx-X11/lib/X11/SetLocale.c4
-rw-r--r--nx-X11/lib/X11/WMProps.c8
-rw-r--r--nx-X11/lib/X11/WrBitF.c3
-rw-r--r--nx-X11/lib/X11/XKBCvt.c4
-rw-r--r--nx-X11/lib/X11/Xlib.h4
-rw-r--r--nx-X11/lib/X11/XlibInt.c19
-rw-r--r--nx-X11/lib/X11/Xlibint.h6
-rw-r--r--nx-X11/lib/X11/Xrm.c17
-rw-r--r--nx-X11/lib/X11/cmsColNm.c3
-rw-r--r--nx-X11/lib/X11/lcDB.c13
-rw-r--r--nx-X11/lib/X11/lcFile.c65
-rw-r--r--nx-X11/lib/X11/os2Stubs.c428
-rw-r--r--nx-X11/programs/Xserver/Imakefile2
-rw-r--r--nx-X11/programs/Xserver/Xext/security.c20
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/Imakefile7
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/os2Stub.c410
-rw-r--r--nx-X11/programs/Xserver/include/os.h2
-rw-r--r--nx-X11/programs/Xserver/include/servermd.h2
-rw-r--r--nx-X11/programs/Xserver/os/WaitFor.c3
-rw-r--r--nx-X11/programs/Xserver/os/access.c7
-rw-r--r--nx-X11/programs/Xserver/os/connection.c29
-rw-r--r--nx-X11/programs/Xserver/os/io.c6
-rw-r--r--nx-X11/programs/Xserver/os/log.c3
-rw-r--r--nx-X11/programs/Xserver/os/oscolor.c11
-rw-r--r--nx-X11/programs/Xserver/os/osdep.h2
-rw-r--r--nx-X11/programs/Xserver/os/osinit.c2
-rw-r--r--nx-X11/programs/Xserver/os/utils.c26
-rw-r--r--nx-X11/programs/Xserver/xkb/ddxConfig.c3
-rw-r--r--nx-X11/programs/Xserver/xkb/ddxLoad.c36
-rw-r--r--nx-X11/programs/Xserver/xkb/xkbInit.c2
43 files changed, 24 insertions, 1194 deletions
diff --git a/nx-X11/config/cf/Imake.cf b/nx-X11/config/cf/Imake.cf
index 8decfdc3c..54c7d0aee 100644
--- a/nx-X11/config/cf/Imake.cf
+++ b/nx-X11/config/cf/Imake.cf
@@ -1117,13 +1117,6 @@ XCOMM Keep cpp from replacing path elements containing i486/i586/i686
#endif
#endif
-#ifdef emxos2
-#define MacroIncludeFile <os2.cf>
-#define MacroFile os2.cf
-#define OS2Architecture
-#define i386Architecture
-#endif /* emxos2 */
-
#if defined(__QNX__) && !defined(__QNXNTO__)
#define MacroIncludeFile <QNX4.cf>
#define MacroFile QNX4.cf
diff --git a/nx-X11/config/cf/Imake.tmpl b/nx-X11/config/cf/Imake.tmpl
index 5c8effee5..1488c9a32 100644
--- a/nx-X11/config/cf/Imake.tmpl
+++ b/nx-X11/config/cf/Imake.tmpl
@@ -466,7 +466,7 @@ XCOMM the platform-specific parameters - edit site.def to change
#define HasBasename YES
#endif
#ifndef HasGetopt
-# if !defined(Win32Architecture) && !defined(OS2Architecture)
+# if !defined(Win32Architecture)
# define HasGetopt YES
# else
# define HasGetopt NO
diff --git a/nx-X11/config/cf/xorg.cf b/nx-X11/config/cf/xorg.cf
index fb0dbfd08..63ea21264 100644
--- a/nx-X11/config/cf/xorg.cf
+++ b/nx-X11/config/cf/xorg.cf
@@ -513,7 +513,7 @@ IPLAN2P8_DEFS = -DUSE_IPLAN2P8
# if SystemV || SystemV4 || \
(defined(LinuxArchitecture) && !defined(Mc68020Architecture)) || \
defined(i386BsdArchitecture) || defined(LynxOSArchitecture) || \
- defined(OS2Architecture) || defined(GNUMachArchitecture) || \
+ defined(GNUMachArchitecture) || \
(defined(KFreeBSDArchitecture) && defined(i386Architecture))
# define BuildScanpci YES
# else
diff --git a/nx-X11/extras/Mesa/include/GL/glxext.h b/nx-X11/extras/Mesa/include/GL/glxext.h
index 589d1ef36..0f5321a6c 100644
--- a/nx-X11/extras/Mesa/include/GL/glxext.h
+++ b/nx-X11/extras/Mesa/include/GL/glxext.h
@@ -340,7 +340,7 @@ typedef long int int64_t;
typedef long long int int64_t;
#endif /* __arch64__ */
#endif /* __STDC__ */
-#elif defined(__UNIXOS2__) || defined(__SOL64__)
+#elif defined(__SOL64__)
typedef long int int32_t;
typedef long long int int64_t;
#elif defined( __VMS )
diff --git a/nx-X11/extras/Mesa/src/mesa/math/m_debug_clip.c b/nx-X11/extras/Mesa/src/mesa/math/m_debug_clip.c
index ae8108b88..da482a2dd 100644
--- a/nx-X11/extras/Mesa/src/mesa/math/m_debug_clip.c
+++ b/nx-X11/extras/Mesa/src/mesa/math/m_debug_clip.c
@@ -36,11 +36,6 @@
#include "m_debug.h"
#include "m_debug_util.h"
-#ifdef __UNIXOS2__
-/* The linker doesn't like empty files */
-static char dummy;
-#endif
-
#ifdef DEBUG /* This code only used for debugging */
static clip_func *clip_tab[2] = {
diff --git a/nx-X11/extras/Mesa/src/mesa/math/m_debug_norm.c b/nx-X11/extras/Mesa/src/mesa/math/m_debug_norm.c
index e40399855..4eac6f6dc 100644
--- a/nx-X11/extras/Mesa/src/mesa/math/m_debug_norm.c
+++ b/nx-X11/extras/Mesa/src/mesa/math/m_debug_norm.c
@@ -38,11 +38,6 @@
#include "m_debug_util.h"
-#ifdef __UNIXOS2__
-/* The linker doesn't like empty files */
-static char dummy;
-#endif
-
#ifdef DEBUG /* This code only used for debugging */
diff --git a/nx-X11/extras/Mesa/src/mesa/math/m_debug_xform.c b/nx-X11/extras/Mesa/src/mesa/math/m_debug_xform.c
index d8250f246..84e11fe34 100644
--- a/nx-X11/extras/Mesa/src/mesa/math/m_debug_xform.c
+++ b/nx-X11/extras/Mesa/src/mesa/math/m_debug_xform.c
@@ -37,11 +37,6 @@
#include "m_debug.h"
#include "m_debug_util.h"
-#ifdef __UNIXOS2__
-/* The linker doesn't like empty files */
-static char dummy;
-#endif
-
#ifdef DEBUG /* This code only used for debugging */
diff --git a/nx-X11/include/Xos.h b/nx-X11/include/Xos.h
index e79cec662..10b3a225f 100644
--- a/nx-X11/include/Xos.h
+++ b/nx-X11/include/Xos.h
@@ -246,12 +246,6 @@ typedef unsigned long fd_mask;
#endif
#endif /* XPG4 else */
-#ifdef __UNIXOS2__
-typedef unsigned long fd_mask;
-#include <limits.h>
-#define MAX_PATH _POSIX_PATH_MAX
-#endif
-
#ifdef __GNU__
#define PATH_MAX 4096
#define MAXPATHLEN 4096
@@ -269,7 +263,7 @@ typedef unsigned long fd_mask;
#define NGROUPS 16
#endif
-#if defined(ISC) || defined(__UNIXOS2__) || \
+#if defined(ISC) || \
(defined(__linux__) && !defined(__GLIBC__)) || \
(defined(__QNX__) && !defined(UNIXCONN))
/*
diff --git a/nx-X11/include/Xosdefs.h b/nx-X11/include/Xosdefs.h
index 3b151199e..ae676f9ff 100644
--- a/nx-X11/include/Xosdefs.h
+++ b/nx-X11/include/Xosdefs.h
@@ -127,11 +127,6 @@ in this Software without prior written authorization from The Open Group.
#define X_NOT_STDC_ENV
#endif
-#ifdef __UNIXOS2__
-#define USGISH
-#define NULL_NOT_ZERO
-#endif
-
#ifdef __DARWIN__
#define NULL_NOT_ZERO
#endif
diff --git a/nx-X11/lib/X11/CrGlCur.c b/nx-X11/lib/X11/CrGlCur.c
index 460660f81..11c047097 100644
--- a/nx-X11/lib/X11/CrGlCur.c
+++ b/nx-X11/lib/X11/CrGlCur.c
@@ -31,10 +31,6 @@ in this Software without prior written authorization from The Open Group.
#ifdef USE_DYNAMIC_XCURSOR
-#ifdef __UNIXOS2__
-#define RTLD_LAZY 1
-#define LIBXCURSOR "Xcursor.dll"
-#endif
#include <stdio.h>
#include <string.h>
#if defined(hpux)
diff --git a/nx-X11/lib/X11/GetDflt.c b/nx-X11/lib/X11/GetDflt.c
index f2098dff3..c2cc1da47 100644
--- a/nx-X11/lib/X11/GetDflt.c
+++ b/nx-X11/lib/X11/GetDflt.c
@@ -184,10 +184,6 @@ XGetDefault(
#ifdef WIN32
char *progname2;
#endif
-#ifdef __UNIXOS2__
- char *progname2;
- char *dotpos;
-#endif
/*
* strip path off of program name (XXX - this is OS specific)
@@ -198,13 +194,6 @@ XGetDefault(
if (progname2 && (!progname || progname < progname2))
progname = progname2;
#endif
-#ifdef __UNIXOS2__ /* Very similar to WIN32 */
- progname2 = strrchr (prog, '\\');
- if (progname2 && (!progname || progname < progname2))
- progname = progname2;
- dotpos = strrchr (prog, '.');
- if (dotpos && (dotpos>progname2)) *dotpos='\0';
-#endif /* We take out the .exe suffix */
if (progname)
progname++;
diff --git a/nx-X11/lib/X11/Imakefile b/nx-X11/lib/X11/Imakefile
index b3fc07adf..69b96314a 100644
--- a/nx-X11/lib/X11/Imakefile
+++ b/nx-X11/lib/X11/Imakefile
@@ -806,7 +806,7 @@ SRCS3 = \
LockDis.c \
x11_trans.c \
xim_trans.c \
- $(XKBSRCS) $(LCSRCS) $(MISCSRCS)
+ $(XKBSRCS) $(LCSRCS)
OBJS3 = \
Lab.o \
@@ -889,7 +889,7 @@ OBJS3 = \
LockDis.o \
x11_trans.o \
xim_trans.o \
- $(XKBOBJS) $(LCOBJS) $(MISCOBJS)
+ $(XKBOBJS) $(LCOBJS)
SHAREDLCDEPSYMSRCS = XlcDL.c XlcSL.c
@@ -1036,14 +1036,6 @@ SHAREDLCOBJS = \
$(SHAREDLCDEPOBJS) \
$(SHAREDI18NSTATICOBJS)
-#ifdef OS2Architecture
-MISCSRCS = os2Stubs.c
-#endif
-
-#ifdef OS2Architecture
-MISCOBJS = os2Stubs.o
-#endif
-
OBJS = $(OBJS1) $(OBJS2) $(OBJS3)
EXTRAUNSHAREDOBJS = $(STATICLCOBJS)
diff --git a/nx-X11/lib/X11/RdBitF.c b/nx-X11/lib/X11/RdBitF.c
index c2316ae0c..319a0ee0b 100644
--- a/nx-X11/lib/X11/RdBitF.c
+++ b/nx-X11/lib/X11/RdBitF.c
@@ -129,9 +129,6 @@ XReadBitmapFileData (
int hx = -1; /* x hotspot */
int hy = -1; /* y hotspot */
-#ifdef __UNIXOS2__
- filename = __XOS2RedirRoot(filename);
-#endif
if (!(fstream = fopen(filename, "r")))
return BitmapOpenFailed;
diff --git a/nx-X11/lib/X11/SetLocale.c b/nx-X11/lib/X11/SetLocale.c
index f4d2aca21..e14fdaef6 100644
--- a/nx-X11/lib/X11/SetLocale.c
+++ b/nx-X11/lib/X11/SetLocale.c
@@ -99,7 +99,7 @@ _XlcMapOSLocaleName(
char *osname,
char *siname)
{
-#if defined(hpux) || defined(CSRG_BASED) || defined(sun) || defined(SVR4) || defined(sgi) || defined(__osf__) || defined(AIXV3) || defined(ultrix) || defined(WIN32) || defined(__UNIXOS2__) || defined(linux)
+#if defined(hpux) || defined(CSRG_BASED) || defined(sun) || defined(SVR4) || defined(sgi) || defined(__osf__) || defined(AIXV3) || defined(ultrix) || defined(WIN32) || defined(linux)
# ifdef hpux
# ifndef _LastCategory
/* HPUX 9 and earlier */
@@ -116,7 +116,7 @@ _XlcMapOSLocaleName(
# define STARTCHAR '\001'
# define ENDCHAR '\001'
# else
-# if defined(WIN32) || defined(__UNIXOS2__)
+# if defined(WIN32)
# define SKIPCOUNT 1
# define STARTCHAR '='
# define ENDCHAR ';'
diff --git a/nx-X11/lib/X11/WMProps.c b/nx-X11/lib/X11/WMProps.c
index 249072936..e77f7ba56 100644
--- a/nx-X11/lib/X11/WMProps.c
+++ b/nx-X11/lib/X11/WMProps.c
@@ -122,14 +122,6 @@ void XSetWMProperties (
* systems will have to change this.
*/
char *cp = strrchr (argv[0], '/');
-#ifdef __UNIXOS2__
- char *os2_cp = strrchr (argv[0],'\\');
- char *dot_cp = strrchr (argv[0],'.');
- if (os2_cp && (os2_cp > cp)) {
- if(dot_cp && (dot_cp > os2_cp)) *dot_cp = '\0';
- cp=os2_cp;
- }
-#endif
tmp.res_name = (cp ? cp + 1 : argv[0]);
}
tmp.res_class = classHints->res_class;
diff --git a/nx-X11/lib/X11/WrBitF.c b/nx-X11/lib/X11/WrBitF.c
index 0b27d5adf..47b47208f 100644
--- a/nx-X11/lib/X11/WrBitF.c
+++ b/nx-X11/lib/X11/WrBitF.c
@@ -105,9 +105,6 @@ XWriteBitmapFile(
else
name++;
-#ifdef __UNIXOS2__
- filename = (char*)__XOS2RedirRoot(filename);
-#endif
if (!(stream = fopen(filename, "w")))
return(BitmapOpenFailed);
diff --git a/nx-X11/lib/X11/XKBCvt.c b/nx-X11/lib/X11/XKBCvt.c
index f4df3fcfc..ded0a3e3a 100644
--- a/nx-X11/lib/X11/XKBCvt.c
+++ b/nx-X11/lib/X11/XKBCvt.c
@@ -279,11 +279,7 @@ _XkbGetCharset(void)
else {
struct stat sbuf;
FILE *file;
-#ifndef __UNIXOS2__
char *cf = CHARSET_FILE;
-#else
- char *cf = __XOS2RedirRoot(CHARSET_FILE);
-#endif
#ifndef S_ISREG
# define S_ISREG(mode) (((mode) & S_IFMT) == S_IFREG)
diff --git a/nx-X11/lib/X11/Xlib.h b/nx-X11/lib/X11/Xlib.h
index 1ac1ef181..b68a09f2b 100644
--- a/nx-X11/lib/X11/Xlib.h
+++ b/nx-X11/lib/X11/Xlib.h
@@ -51,13 +51,9 @@ in this Software without prior written authorization from The Open Group.
#ifndef X_WCHAR
#include <stddef.h>
#else
-#ifdef __UNIXOS2__
-#include <stdlib.h>
-#else
/* replace this with #include or typedef appropriate for your system */
typedef unsigned long wchar_t;
#endif
-#endif
extern int
diff --git a/nx-X11/lib/X11/XlibInt.c b/nx-X11/lib/X11/XlibInt.c
index 42b928fd5..bae224ee1 100644
--- a/nx-X11/lib/X11/XlibInt.c
+++ b/nx-X11/lib/X11/XlibInt.c
@@ -169,14 +169,9 @@ extern int _X11TransSocketCongestionChange(XtransConnInfo, int *);
#define ECHECK(err) (WSAGetLastError() == err)
#define ESET(val) WSASetLastError(val)
#else
-#ifdef __UNIXOS2__
-#define ECHECK(err) (errno == err)
-#define ESET(val)
-#else
#define ECHECK(err) (errno == err)
#define ESET(val) errno = val
#endif
-#endif
#if defined(LOCALCONN) || defined(LACHMAN)
#ifdef EMSGSIZE
@@ -190,14 +185,6 @@ extern int _X11TransSocketCongestionChange(XtransConnInfo, int *);
#endif
#endif
-#ifdef __UNIXOS2__
-#if !USE_XCB
-#define select(n,r,w,x,t) os2ClientSelect(n,r,w,x,t)
-#endif /* !USE_XCB */
-#include <limits.h>
-#define MAX_PATH _POSIX_PATH_MAX
-#endif
-
#if !USE_XCB
#define STARTITERATE(tpvar,type,start,endcond) \
@@ -4054,10 +4041,6 @@ static int AccessFile (path, pathbuf, len_pathbuf, pathret)
/* try the places set in the environment */
drive = getenv ("_XBASEDRIVE");
-#ifdef __UNIXOS2__
- if (!drive)
- drive = getenv ("X11ROOT");
-#endif
if (!drive)
drive = "C:";
len = strlen (drive) + strlen (path);
@@ -4070,7 +4053,6 @@ static int AccessFile (path, pathbuf, len_pathbuf, pathret)
return 1;
}
-#ifndef __UNIXOS2__
/* one last place to look */
drive = getenv ("HOMEDRIVE");
if (drive) {
@@ -4105,7 +4087,6 @@ static int AccessFile (path, pathbuf, len_pathbuf, pathret)
}
}
}
-#endif
return 0;
}
diff --git a/nx-X11/lib/X11/Xlibint.h b/nx-X11/lib/X11/Xlibint.h
index 932ed745e..c138d6360 100644
--- a/nx-X11/lib/X11/Xlibint.h
+++ b/nx-X11/lib/X11/Xlibint.h
@@ -1249,12 +1249,6 @@ struct _XConnWatchInfo { /* info from XAddConnectionWatch */
struct _XConnWatchInfo *next;
};
-#ifdef __UNIXOS2__
-extern char* __XOS2RedirRoot(
- char*
-);
-#endif
-
extern int _XTextHeight(
XFontStruct* /* font_struct */,
_Xconst char* /* string */,
diff --git a/nx-X11/lib/X11/Xrm.c b/nx-X11/lib/X11/Xrm.c
index 3b90346d8..e3587d021 100644
--- a/nx-X11/lib/X11/Xrm.c
+++ b/nx-X11/lib/X11/Xrm.c
@@ -305,7 +305,7 @@ typedef unsigned char XrmBits;
static XrmBits const xrmtypes[256] = {
EOS,0,0,0,0,0,0,0,
0,SPACE,EOL,0,0,
-#if defined(WIN32) || defined(__UNIXOS2__)
+#if defined(WIN32)
EOL, /* treat CR the same as LF, just in case */
#else
0,
@@ -1575,10 +1575,6 @@ ReadInFile(_Xconst char *filename)
register int fd, size;
char * filebuf;
-#ifdef __UNIXOS2__
- filename = __XOS2RedirRoot(filename);
-#endif
-
/*
* MS-Windows and OS/2 note: Default open mode includes O_TEXT
*/
@@ -1610,17 +1606,6 @@ ReadInFile(_Xconst char *filename)
}
size = read (fd, filebuf, size);
-#ifdef __UNIXOS2__
- { /* kill CRLF */
- int i,k;
- for (i=k=0; i<size; i++)
- if (filebuf[i] != 0x0d) {
- filebuf[k++] = filebuf[i];
- }
- filebuf[k] = 0;
- }
-#endif
-
if (size < 0) {
close (fd);
Xfree(filebuf);
diff --git a/nx-X11/lib/X11/cmsColNm.c b/nx-X11/lib/X11/cmsColNm.c
index e43a829f2..c6f1e0f31 100644
--- a/nx-X11/lib/X11/cmsColNm.c
+++ b/nx-X11/lib/X11/cmsColNm.c
@@ -730,9 +730,6 @@ LoadColornameDB(void)
if ((pathname = getenv("XCMSDB")) == NULL) {
pathname = XCMSDB;
}
-#ifdef __UNIXOS2__
- pathname = __XOS2RedirRoot(pathname);
-#endif
length = strlen(pathname);
if ((length == 0) || (length >= (BUFSIZ - 5))){
diff --git a/nx-X11/lib/X11/lcDB.c b/nx-X11/lib/X11/lcDB.c
index 1111ec955..cc14bed72 100644
--- a/nx-X11/lib/X11/lcDB.c
+++ b/nx-X11/lib/X11/lcDB.c
@@ -344,15 +344,6 @@ read_line(
cur += len;
str[cur] = '\0';
-#ifdef __UNIXOS2__ /* Take out carriage returns under OS/2 */
- if (cur>1) {
- if (str[cur-2] == '\r' && str[cur-1] == '\n') {
- str[cur-2] = '\n';
- str[cur-1] = '\0';
- cur--;
- }
- }
-#endif
if (!quoted && cur > 1 && str[cur - 2] == SYM_BACKSLASH &&
(str[cur - 1] == SYM_NEWLINE || str[cur-1] == SYM_CR)) {
/* the line is ended backslash followed by newline.
@@ -1286,11 +1277,7 @@ _XlcCreateLocaleDataBase(
if (name == NULL)
return (XPointer)NULL;
-#ifndef __UNIXOS2__
name_q = XrmStringToQuark(name);
-#else
- name_q = XrmStringToQuark((char*)__XOS2RedirRoot(name));
-#endif
for (list = _db_list; list; list = list->next) {
if (name_q == list->name_q) {
list->ref_count++;
diff --git a/nx-X11/lib/X11/lcFile.c b/nx-X11/lib/X11/lcFile.c
index eeb6ce312..cf03a90a7 100644
--- a/nx-X11/lib/X11/lcFile.c
+++ b/nx-X11/lib/X11/lcFile.c
@@ -36,9 +36,6 @@
/************************************************************************/
-#ifdef __UNIXOS2__
-# define seteuid setuid
-#endif
#define iscomment(ch) ((ch) == '#' || (ch) == '\0')
#if defined(WIN32)
#define isreadable(f) (_XAccessFile(f))
@@ -46,11 +43,7 @@
#define isreadable(f) ((access((f), R_OK) != -1) ? 1 : 0)
#endif
-#ifndef __UNIXOS2__
#define LC_PATHDELIM ':'
-#else
-#define LC_PATHDELIM ';'
-#endif
#define XLC_BUFSIZE 256
@@ -92,40 +85,7 @@ parse_line(
return argc;
}
-#ifdef __UNIXOS2__
-
-/* fg021216: entries in locale files are separated by colons while under
- OS/2, path entries are separated by semicolon, so we need two functions */
-
-static int
-parse_line1(
- char *line,
- char **argv,
- int argsize)
-{
- int argc = 0;
- char *p = line;
-
- while (argc < argsize) {
- while (isspace(*p)) {
- ++p;
- }
- if (*p == '\0') {
- break;
- }
- argv[argc++] = p;
- while (*p != ';' && *p != '\n' && *p != '\0') {
- ++p;
- }
- if (*p == '\0') {
- break;
- }
- *p++ = '\0';
- }
-
- return argc;
-}
-#elif defined(WIN32)
+#if defined(WIN32)
/* this is parse_line but skips drive letters at the beginning of the entry */
static int
@@ -160,7 +120,7 @@ parse_line1(
return argc;
}
-#endif /* __UNIXOS2__ */
+#endif /* WIN32 */
/* Splits a colon separated list of directories, and returns the constituent
paths (without trailing slash). At most argsize constituents are stored
@@ -174,7 +134,7 @@ _XlcParsePath(
char *p = path;
int n, i;
-#if !defined(__UNIXOS2__) && !defined(WIN32)
+#if !defined(WIN32)
n = parse_line(path, argv, argsize);
#else
n = parse_line1(path, argv, argsize);
@@ -265,11 +225,7 @@ xlocaledir(
#endif /* NO_XLOCALEDIR */
if (len < buf_len)
-#ifndef __UNIXOS2__
strncpy(p, XLOCALEDIR, buf_len - len);
-#else
- strncpy(p,__XOS2RedirRoot(XLOCALEDIR), buf_len - len);
-#endif
buf[buf_len-1] = '\0';
}
@@ -343,11 +299,7 @@ xlocalelibdir(
#endif /* NO_XLOCALEDIR */
if (len < buf_len)
-#ifndef __UNIXOS2__
strncpy(p, XLOCALELIBDIR, buf_len - len);
-#else
- strncpy(p,__XOS2RedirRoot(XLOCALELIBDIR), buf_len - len);
-#endif
buf[buf_len-1] = '\0';
}
@@ -374,17 +326,6 @@ resolve_name(
char *p = buf;
int n;
char *args[2], *from, *to;
-#ifdef __UNIXOS2__ /* Take out CR under OS/2 */
- int len;
-
- len = strlen(p);
- if (len > 1) {
- if (*(p+len-2) == '\r' && *(p+len-1) == '\n') {
- *(p+len-2) = '\n';
- *(p+len-1) = '\0';
- }
- }
-#endif
while (isspace(*p)) {
++p;
}
diff --git a/nx-X11/lib/X11/os2Stubs.c b/nx-X11/lib/X11/os2Stubs.c
deleted file mode 100644
index 5ffc4824c..000000000
--- a/nx-X11/lib/X11/os2Stubs.c
+++ /dev/null
@@ -1,428 +0,0 @@
-/*
- * (c) Copyright 1996 by Sebastien Marineau and Holger Veit
- * <marineau@genie.uottawa.ca>
- * <Holger.Veit@gmd.de>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * HOLGER VEIT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- * Except as contained in this notice, the name of Sebastien Marineau or Holger Veit
- * shall not be used in advertising or otherwise to promote the sale, use or other
- * dealings in this Software without prior written authorization from Holger Veit or
- * Sebastien Marineau.
- *
- */
-
-
-/* A few OS/2 functions needed in the X11 lib. Mainly, the file path redirection
- * functions and the "optimized" select() for the clients */
-
-#define I_NEED_OS2_H
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-#include <nx-X11/Xpoll.h>
-#include <stdio.h>
-#include <sys/errno.h>
-#define INCL_DOSSEMAPHORES
-#define INCL_DOSNPIPES
-#define INCL_DOSMISC
-#define INCL_DOSMODULEMGR
-#undef BOOL
-#undef BYTE
-#include <os2.h>
-#include <sys/select.h>
-#include <sys/time.h>
-
-char *__XOS2RedirRoot(char *fname)
-{
- /* This adds a further redirection by allowing the ProjectRoot
- * to be prepended by the content of the envvar X11ROOT.
- * This is for the purpose to move the whole X11 stuff to a different
- * disk drive.
- * The feature was added despite various environment variables
- * because not all file opens respect them.
- */
- static char redirname[300]; /* enough for long filenames */
- char *root;
-
- /* if name does not start with /, assume it is not root-based */
- if (fname==0 || !(fname[0]=='/' || fname[0]=='\\'))
- return fname;
-
- root = (char*)getenv("X11ROOT");
- if (root==0 ||
- (fname[1]==':' && isalpha(fname[0])) ||
- (strlen(fname)+strlen(root)+2) > 300)
- return fname;
- sprintf(redirname,"%s%s",root,fname);
- return redirname;
-}
-
-char *__XOS2RedirRoot1(char *format, char *arg1, char *arg2, char *arg3)
-{
- /* this first constructs a name from a format and up to three
- * components, then adds a path
- */
- char buf[300];
- sprintf(buf,format,arg1,arg2,arg3);
- return __XOS2RedirRoot(buf);
-}
-
-/* This below implements select() for the calls in this file. It has been */
-/* somewhat optimized for improved performance, but assumes a few */
-/* things so it cannot be used as a general select. If both pipes and */
-/* sockets are present, this may call the emx select */
-
-
-HEV hPipeSem;
-HMODULE hmod_so32dll;
-static int (*os2_tcp_select)(int*,int,int,int,long);
-ULONG os2_get_sys_millis();
-extern int _files[];
-
-#define MAX_TCP 256
-/* These lifted from sys/emx.h. Change if that changes there! */
-#define F_SOCKET 0x10000000
-#define F_PIPE 0x20000000
-
-struct select_data
-{
- fd_set read_copy;
- fd_set write_copy;
- BOOL have_read;
- BOOL have_write;
- int tcp_select_mask[MAX_TCP];
- int tcp_emx_handles[MAX_TCP];
- int tcp_select_copy[MAX_TCP];
- int socket_nread;
- int socket_nwrite;
- int socket_ntotal;
- int pipe_ntotal;
- int pipe_have_write;
- int max_fds;
-};
-
-int os2ClientSelect(int nfds, fd_set *readfds, fd_set *writefds,
- fd_set *exceptfds, struct timeval *timeout)
-{
-static BOOL FirstTime=TRUE;
-static haveTCPIP=TRUE;
-ULONG timeout_ms;
-ULONG postCount, start_millis,now_millis;
-char faildata[16];
-struct select_data sd;
-BOOL any_ready;
-int np,ns, i,ready_handles,n;
-APIRET rc;
-
-sd.have_read=FALSE; sd.have_write=FALSE;
-sd.socket_nread=0; sd.socket_nwrite=0; sd.socket_ntotal=0;
-sd.max_fds=31; ready_handles=0; any_ready=FALSE;
-sd.pipe_ntotal=0; sd.pipe_have_write=FALSE;
-
-if(FirstTime){
- /* First load the so32dll.dll module and get a pointer to the SELECT fn */
-
- if((rc=DosLoadModule(faildata,sizeof(faildata),"SO32DLL",&hmod_so32dll))!=0){
- fprintf(stderr, "Could not load module so32dll.dll, rc = %d. Error note %s\n",rc,faildata);
- haveTCPIP=FALSE;
- }
- if((rc = DosQueryProcAddr(hmod_so32dll, 0, "SELECT", (PPFN)&os2_tcp_select))!=0){
- fprintf(stderr, "Could not query address of SELECT, rc = %d.\n",rc);
- haveTCPIP=FALSE;
- }
- /* Call these a first time to set the semaphore */
- rc = DosCreateEventSem(NULL, &hPipeSem, DC_SEM_SHARED, FALSE);
- if(rc) {
- fprintf(stderr, "Could not create event semaphore, rc=%d\n",rc);
- return(-1);
- }
- rc = DosResetEventSem(hPipeSem, &postCount);
- FirstTime = FALSE;
-}
-
-/* Set up the time delay structs */
-
- if(timeout!=NULL) {
- timeout_ms=timeout->tv_sec*1000+timeout->tv_usec/1000;
- }
- else { timeout_ms=1000000; } /* This should be large enough... */
- if(timeout_ms>0) start_millis=os2_get_sys_millis();
-
-/* Copy the masks */
- {FD_ZERO(&sd.read_copy);}
- {FD_ZERO(&sd.write_copy);}
- if(readfds!=NULL){ XFD_COPYSET(readfds,&sd.read_copy); sd.have_read=TRUE;}
- if(writefds!=NULL) {XFD_COPYSET(writefds,&sd.write_copy);sd.have_write=TRUE;}
-
-/* And zero the original masks */
- if(sd.have_read){ FD_ZERO(readfds);}
- if(sd.have_write) {FD_ZERO(writefds);}
- if(exceptfds != NULL) {FD_ZERO(exceptfds);}
-
-/* Now we parse the fd_sets passed to select and separate pipe/sockets */
- n = os2_parse_select(&sd,nfds);
- if(n == -1) {
- errno = EBADF;
- return (-1);
- }
-
-/* Now we have three cases: either we have sockets, pipes, or both */
-/* We handle all three cases differently to optimize things */
-
-/* Case 1: only pipes! */
- if((sd.pipe_ntotal >0) && (!sd.socket_ntotal)){
- np = os2_check_pipes(&sd,readfds,writefds);
- if(np > 0){
- return (np);
- }
- else if (np == -1) { return(-1); }
- while(!any_ready){
- rc = DosWaitEventSem(hPipeSem, timeout_ms);
- if(rc == 640) {
- return(0);
- }
- if((rc != 0) && (rc != 95)) {errno= EBADF; return(-1);}
- np = os2_check_pipes(&sd,readfds,writefds);
- if (np > 0){
- return(np);
- }
- else if (np < 0){ return(-1); }
- }
- }
-
-/* Case 2: only sockets. Just let the os/2 tcp select do the work */
- if((sd.socket_ntotal > 0) && (!sd.pipe_ntotal)){
- ns = os2_check_sockets(&sd, readfds, writefds, timeout_ms);
- return (ns);
- }
-
-/* Case 3: combination of both */
- if((sd.socket_ntotal > 0) && (sd.pipe_ntotal)){
- np = os2_check_pipes(&sd,readfds,writefds);
- if(np > 0){
- any_ready=TRUE;
- ready_handles += np;
- }
- else if (np == -1) { return(-1); }
-
- ns = os2_check_sockets(&sd,readfds,writefds, 0);
- if(ns>0){
- ready_handles+=ns;
- any_ready = TRUE;
- }
- else if (ns == -1) {return(-1);}
-
- while (!any_ready && timeout_ms){
-
- rc = DosWaitEventSem(hPipeSem, 10L);
- if(rc == 0){
- np = os2_check_pipes(&sd,readfds,writefds);
- if(np > 0){
- ready_handles+=np;
- any_ready = TRUE;
- }
- else if (np == -1) {
- return(-1); }
- }
-
- ns = os2_check_sockets(&sd,readfds,writefds,exceptfds, 0);
- if(ns>0){
- ready_handles+=ns;
- any_ready = TRUE;
- }
- else if (ns == -1) {return(-1);}
-
- if (i%8 == 0) {
- now_millis = os2_get_sys_millis();
- if((now_millis-start_millis) > timeout_ms) timeout_ms = 0;
- }
- i++;
- }
- }
-
-return(ready_handles);
-}
-
-
-ULONG os2_get_sys_millis()
-{
- APIRET rc;
- ULONG milli;
-
- rc = DosQuerySysInfo(14, 14, &milli, sizeof(milli));
- if(rc) {
- fprintf(stderr,"Bad return code querying the millisecond counter! rc=%d\n",rc);
- return(0);
- }
- return(milli);
-}
-
-int os2_parse_select(sd,nfds)
-struct select_data *sd;
-int nfds;
-{
- int i;
- APIRET rc;
-/* First we determine up to which descriptor we need to check. */
-/* No need to check up to 256 if we don't have to (and usually we dont...)*/
-/* Note: stuff here is hardcoded for fd_sets which are int[8] as in EMX!!! */
-
- if(nfds > sd->max_fds){
- for(i=0;i<((FD_SETSIZE+31)/32);i++){
- if(sd->read_copy.fds_bits[i] ||
- sd->write_copy.fds_bits[i])
- sd->max_fds=(i*32) +32;
- }
- }
- else { sd->max_fds = nfds; }
-/* Check if result is greater than specified in select() call */
- if(sd->max_fds > nfds) sd->max_fds = nfds;
-
- if (sd->have_read)
- {
- for (i = 0; i < sd->max_fds; ++i) {
- if (FD_ISSET (i, &sd->read_copy)){
- if(_files[i] & F_SOCKET)
- {
- sd->tcp_select_mask[sd->socket_ntotal]=_getsockhandle(i);
- sd->tcp_emx_handles[sd->socket_ntotal]=i;
- sd->socket_ntotal++; sd->socket_nread++;
- }
- else if (_files[i] & F_PIPE)
- {
- sd -> pipe_ntotal++;
- rc = DosSetNPipeSem((HPIPE)i, (HSEM) hPipeSem, i);
- if(rc) { fprintf(stderr,"Error SETNPIPE rc = %d\n",rc); return -1;}
- }
- }
- }
- }
-
- if (sd->have_write)
- {
- for (i = 0; i < sd->max_fds; ++i) {
- if (FD_ISSET (i, &sd->write_copy)){
- if(_files[i] & F_SOCKET)
- {
- sd->tcp_select_mask[sd->socket_ntotal]=_getsockhandle(i);
- sd->tcp_emx_handles[sd->socket_ntotal]=i;
- sd->socket_ntotal++; sd->socket_nwrite++;
- }
- else if (_files[i] & F_PIPE)
- {
- sd -> pipe_ntotal++;
- rc = DosSetNPipeSem((HPIPE)i, (HSEM) hPipeSem, i);
- if(rc) { fprintf(stderr,"Error SETNPIPE rc = %d\n",rc); return -1;}
- sd -> pipe_have_write=TRUE;
- }
- }
- }
- }
-
-
-return(sd->socket_ntotal);
-}
-
-
-int os2_check_sockets(sd,readfds,writefds)
-struct select_data *sd;
-fd_set *readfds,*writefds;
-{
- int e,i;
- int j,n;
- memcpy(sd->tcp_select_copy,sd->tcp_select_mask,
- sd->socket_ntotal*sizeof(int));
-
- e = os2_tcp_select(sd->tcp_select_copy,sd->socket_nread,
- sd->socket_nwrite, 0, 0);
-
- if(e == 0) return(e);
-/* We have something ready? */
- if(e>0){
- j = 0; n = 0;
- for (i = 0; i < sd->socket_nread; ++i, ++j)
- if (sd->tcp_select_copy[j] != -1)
- {
- FD_SET (sd->tcp_emx_handles[j], readfds);
- n ++;
- }
- for (i = 0; i < sd->socket_nwrite; ++i, ++j)
- if (sd->tcp_select_copy[j] != -1)
- {
- FD_SET (sd->tcp_emx_handles[j], writefds);
- n ++;
- }
- errno = 0;
-
- return n;
- }
- if(e<0){
- /*Error -- TODO */
- fprintf(stderr,"Error in server select! e=%d\n",e);
- errno = EBADF;
- return (-1);
- }
- }
-
-/* Check to see if anything is ready on pipes */
-
-int os2_check_pipes(sd,readfds,writefds)
-struct select_data *sd;
-fd_set *readfds,*writefds;
-{
-int i,e;
-ULONG ulPostCount;
-PIPESEMSTATE pipeSemState[128];
-APIRET rc;
- e = 0;
- rc = DosResetEventSem(hPipeSem,&ulPostCount);
- rc = DosQueryNPipeSemState((HSEM) hPipeSem, (PPIPESEMSTATE)&pipeSemState,
- sizeof(pipeSemState));
- if(rc) fprintf(stderr,"SELECT: rc from QueryNPipeSem: %d\n",rc);
- i=0;
- while (pipeSemState[i].fStatus != 0) {
- /*fprintf(stderr,"SELECT: sem entry, stat=%d, flag=%d, key=%d,avail=%d\n",
- pipeSemState[i].fStatus,pipeSemState[i].fFlag,pipeSemState[i].usKey,
- pipeSemState[i].usAvail); */
- if((pipeSemState[i].fStatus == 1) &&
- (FD_ISSET(pipeSemState[i].usKey,&sd->read_copy))){
- FD_SET(pipeSemState[i].usKey,readfds);
- e++;
- }
- else if((pipeSemState[i].fStatus == 2) &&
- (FD_ISSET(pipeSemState[i].usKey,&sd->write_copy))){
- FD_SET(pipeSemState[i].usKey,writefds);
- e++;
- }
- else if( (pipeSemState[i].fStatus == 3) &&
- ( (FD_ISSET(pipeSemState[i].usKey,&sd->read_copy)) ||
- (FD_ISSET(pipeSemState[i].usKey,&sd->write_copy)) )){
- errno = EBADF;
- return (-1);
- }
- i++;
- } /* endwhile */
- /*fprintf(stderr,"Done listing pipe sem entries, total %d entries, total ready entries %d\n",i,e);*/
-errno = 0;
-return(e);
-}
-
-
-
diff --git a/nx-X11/programs/Xserver/Imakefile b/nx-X11/programs/Xserver/Imakefile
index 8efbcf14a..9a7462c7a 100644
--- a/nx-X11/programs/Xserver/Imakefile
+++ b/nx-X11/programs/Xserver/Imakefile
@@ -523,7 +523,7 @@ SUBDIRS = $(STDDIRS) \
$(IPLANDIRS) $(ILBMDIR) \
$(DDXDIRS) $(FBSUBDIR) $(KDRIVEDIRS) $(MIEXTDIRS)
-#if defined(ServerToInstall) && !defined(OS2Architecture)
+#if defined(ServerToInstall)
install::
-(cd $(DESTDIR)$(BINDIR); $(RM) X; $(LN) ServerToInstall X)
#endif
diff --git a/nx-X11/programs/Xserver/Xext/security.c b/nx-X11/programs/Xserver/Xext/security.c
index 6883db5f8..3a638460e 100644
--- a/nx-X11/programs/Xserver/Xext/security.c
+++ b/nx-X11/programs/Xserver/Xext/security.c
@@ -1481,11 +1481,7 @@ SecurityFreePropertyAccessList(void)
}
} /* SecurityFreePropertyAccessList */
-#ifndef __UNIXOS2__
#define SecurityIsWhitespace(c) ( (c == ' ') || (c == '\t') || (c == '\n') )
-#else
-#define SecurityIsWhitespace(c) ( (c == ' ') || (c == '\t') || (c == '\n') || (c == '\r') )
-#endif
static char *
SecuritySkipWhitespace(
@@ -1774,8 +1770,6 @@ SecurityLoadPropertyAccessList(void)
#endif
-#ifndef __UNIXOS2__
-
#ifdef NXAGENT_SERVER
f = Fopen(_NXGetPolicyFilePath(SecurityPolicyFile), "r");
@@ -1786,20 +1780,6 @@ SecurityLoadPropertyAccessList(void)
#endif
-#else
-
-#ifdef NXAGENT_SERVER
-
- f = Fopen((char*)__XOS2RedirRoot( _NXGetPolicyFilePath(SecurityPolicyFile)), "r");
-
-#else
-
- f = Fopen((char*)__XOS2RedirRoot(SecurityPolicyFile), "r");
-
-#endif
-
-#endif
-
if (!f)
{
#ifdef NXAGENT_SERVER
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Imakefile b/nx-X11/programs/Xserver/hw/nxagent/Imakefile
index 7dbcce896..f849c3e5a 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Imakefile
+++ b/nx-X11/programs/Xserver/hw/nxagent/Imakefile
@@ -6,11 +6,6 @@ NULL =
SUBDIRS = compext \
$(NULL)
-#ifdef OS2Architecture
-SRCS1 = os2Stub.c
-OBJS1 = os2Stub.o
-#endif
-
SRCS = \
NXwindow.c \
NXevents.c \
@@ -71,7 +66,6 @@ SRCS = \
stubs.c \
xpstubs.c \
miinitext.c \
- $(SRCS1) \
$(NULL)
OBJS = \
@@ -134,7 +128,6 @@ OBJS = \
stubs.o \
xpstubs.o \
miinitext.o \
- $(OBJS1) \
$(NULL)
VFBINCLUDES = \
diff --git a/nx-X11/programs/Xserver/hw/nxagent/os2Stub.c b/nx-X11/programs/Xserver/hw/nxagent/os2Stub.c
deleted file mode 100644
index 226140dc5..000000000
--- a/nx-X11/programs/Xserver/hw/nxagent/os2Stub.c
+++ /dev/null
@@ -1,410 +0,0 @@
-/**************************************************************************/
-/* */
-/* Copyright (c) 2001, 2011 NoMachine (http://www.nomachine.com) */
-/* Copyright (c) 2008-2014 Oleksandr Shneyder <o.shneyder@phoca-gmbh.de> */
-/* Copyright (c) 2011-2016 Mike Gabriel <mike.gabriel@das-netzwerkteam.de>*/
-/* Copyright (c) 2014-2016 Mihai Moldovan <ionic@ionic.de> */
-/* Copyright (c) 2014-2016 Ulrich Sibiller <uli42@gmx.de> */
-/* Copyright (c) 2015-2016 Qindel Group (http://www.qindel.com) */
-/* */
-/* NXAGENT, NX protocol compression and NX extensions to this software */
-/* are copyright of the aforementioned persons and companies. */
-/* */
-/* Redistribution and use of the present software is allowed according */
-/* to terms specified in the file LICENSE which comes in the source */
-/* distribution. */
-/* */
-/* All rights reserved. */
-/* */
-/* NOTE: This software has received contributions from various other */
-/* contributors, only the core maintainers and supporters are listed as */
-/* copyright holders. Please contact us, if you feel you should be listed */
-/* as copyright holder, as well. */
-/* */
-/**************************************************************************/
-
-/*
- * (c) Copyright 1996 by Sebastien Marineau
- * <marineau@genie.uottawa.ca>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * HOLGER VEIT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- * Except as contained in this notice, the name of Sebastien Marineau shall not be
- * used in advertising or otherwise to promote the sale, use or other dealings
- * in this Software without prior written authorization from Sebastien Marineau.
- *
- */
-
-/* This below implements select() for calls in nxagent. It has been */
-/* somewhat optimized for improved performance, but assumes a few */
-/* things so it cannot be used as a general select. */
-
-#define I_NEED_OS2_H
-#include "Xpoll.h"
-#include <stdio.h>
-#include <sys/select.h>
-#include <sys/errno.h>
-#include <sys/time.h>
-#define INCL_DOSSEMAPHORES
-#define INCL_DOSNPIPES
-#define INCL_DOSMISC
-#define INCL_DOSMODULEMGR
-#undef BOOL
-#undef BYTE
-#include <os2.h>
-
-HEV hPipeSem;
-HMODULE hmod_so32dll;
-static int (*os2_tcp_select)(int*,int,int,int,long);
-ULONG os2_get_sys_millis();
-extern int _files[];
-
-#define MAX_TCP 256
-/* These lifted from sys/emx.h. Change if that changes there! */
-#define F_SOCKET 0x10000000
-#define F_PIPE 0x20000000
-
-struct select_data
-{
- fd_set read_copy;
- fd_set write_copy;
- BOOL have_read;
- BOOL have_write;
- int tcp_select_mask[MAX_TCP];
- int tcp_emx_handles[MAX_TCP];
- int tcp_select_copy[MAX_TCP];
- int socket_nread;
- int socket_nwrite;
- int socket_ntotal;
- int pipe_ntotal;
- int pipe_have_write;
- int max_fds;
-};
-
-int os2PseudoSelect(int nfds, fd_set *readfds, fd_set *writefds,
- fd_set *exceptfds, struct timeval *timeout)
-{
-static BOOL FirstTime=TRUE;
-static haveTCPIP=TRUE;
-ULONG timeout_ms;
-ULONG postCount, start_millis,now_millis;
-char faildata[16];
-struct select_data sd;
-BOOL any_ready;
-int np,ns, i,ready_handles,n;
-APIRET rc;
-
-sd.have_read=FALSE; sd.have_write=FALSE;
-sd.socket_nread=0; sd.socket_nwrite=0; sd.socket_ntotal=0;
-sd.max_fds=31; ready_handles=0; any_ready=FALSE;
-sd.pipe_ntotal=0; sd.pipe_have_write=FALSE;
-
-if(FirstTime){
- /* First load the so32dll.dll module and get a pointer to the SELECT function */
-
- if((rc=DosLoadModule(faildata,sizeof(faildata),"SO32DLL",&hmod_so32dll))!=0){
- fprintf(stderr, "Could not load module so32dll.dll, rc = %d. Error note %s\n",rc,faildata);
- haveTCPIP=FALSE;
- }
- if((rc = DosQueryProcAddr(hmod_so32dll, 0, "SELECT", (PPFN)&os2_tcp_select))!=0){
- fprintf(stderr, "Could not query address of SELECT, rc = %d.\n",rc);
- haveTCPIP=FALSE;
- }
- /* Call these a first time to set the semaphore */
- /* rc = DosCreateEventSem(NULL, &hPipeSem, DC_SEM_SHARED, FALSE);
- if(rc) {
- fprintf(stderr, "Could not create event semaphore, rc=%d\n",rc);
- return(-1);
- }
- rc = DosResetEventSem(hPipeSem, &postCount); */ /* Done in xtrans code for servers*/
-
-fprintf(stderr, "Client select() done first-time stuff, sem handle %d.\n",hPipeSem);
-
- FirstTime = FALSE;
-}
-
-/* Set up the time delay structs */
-
- if(timeout!=NULL) {
- timeout_ms=timeout->tv_sec*1000+timeout->tv_usec/1000;
- }
- else { timeout_ms=1000000; } /* This should be large enough... */
- if(timeout_ms>0) start_millis=os2_get_sys_millis();
-
-/* Copy the masks */
- {FD_ZERO(&sd.read_copy);}
- {FD_ZERO(&sd.write_copy);}
- if(readfds!=NULL){ XFD_COPYSET(readfds,&sd.read_copy); sd.have_read=TRUE;}
- if(writefds!=NULL) {XFD_COPYSET(writefds,&sd.write_copy);sd.have_write=TRUE;}
-
-/* And zero the original masks */
- if(sd.have_read){ FD_ZERO(readfds);}
- if(sd.have_write) {FD_ZERO(writefds);}
- if(exceptfds != NULL) {FD_ZERO(exceptfds);}
-
-/* Now we parse the fd_sets passed to select and separate pipe/sockets */
- n = os2_parse_select(&sd,nfds);
- if(n == -1) {
- errno = EBADF;
- return (-1);
- }
-
-/* Now we have three cases: either we have sockets, pipes, or both */
-/* We handle all three cases differently to optimize things */
-
-/* Case 1: only pipes! */
- if((sd.pipe_ntotal >0) && (!sd.socket_ntotal)){
- np = os2_check_pipes(&sd,readfds,writefds);
- if(np > 0){
- return (np);
- }
- else if (np == -1) { return(-1); }
- while(!any_ready){
- rc = DosWaitEventSem(hPipeSem, timeout_ms);
- /* if(rc) fprintf(stderr,"Sem-wait timeout, rc = %d\n",rc); */
- if(rc == 640) {
- return(0);
- }
- if((rc != 0) && (rc != 95)) {errno= EBADF; return(-1);}
- np = os2_check_pipes(&sd,readfds,writefds);
- if (np > 0){
- return(np);
- }
- else if (np < 0){ return(-1); }
- }
- }
-
-/* Case 2: only sockets. Just let the os/2 tcp select do the work */
- if((sd.socket_ntotal > 0) && (!sd.pipe_ntotal)){
- ns = os2_check_sockets(&sd, readfds, writefds, timeout_ms);
- return (ns);
- }
-
-/* Case 3: combination of both */
- if((sd.socket_ntotal > 0) && (sd.pipe_ntotal)){
- np = os2_check_pipes(&sd,readfds,writefds);
- if(np > 0){
- any_ready=TRUE;
- ready_handles += np;
- }
- else if (np == -1) { return(-1); }
-
- ns = os2_check_sockets(&sd,readfds,writefds, 0);
- if(ns>0){
- ready_handles+=ns;
- any_ready = TRUE;
- }
- else if (ns == -1) {return(-1);}
-
- while (!any_ready && timeout_ms){
-
- rc = DosWaitEventSem(hPipeSem, 10L);
- if(rc == 0){
- np = os2_check_pipes(&sd,readfds,writefds);
- if(np > 0){
- ready_handles+=np;
- any_ready = TRUE;
- }
- else if (np == -1) {
- return(-1); }
- }
-
- ns = os2_check_sockets(&sd,readfds,writefds,exceptfds, 0);
- if(ns>0){
- ready_handles+=ns;
- any_ready = TRUE;
- }
- else if (ns == -1) {return(-1);}
-
- if (i%8 == 0) {
- now_millis = os2_get_sys_millis();
- if((now_millis-start_millis) > timeout_ms) timeout_ms = 0;
- }
- i++;
- }
- }
-
-return(ready_handles);
-}
-
-
-ULONG os2_get_sys_millis()
-{
- APIRET rc;
- ULONG milli;
-
- rc = DosQuerySysInfo(14, 14, &milli, sizeof(milli));
- if(rc) {
- fprintf(stderr,"Bad return code querying the millisecond counter! rc=%d\n",rc);
- return(0);
- }
- return(milli);
-}
-
-int os2_parse_select(sd,nfds)
-struct select_data *sd;
-int nfds;
-{
- int i;
- APIRET rc;
-/* First we determine up to which descriptor we need to check. */
-/* No need to check up to 256 if we don't have to (and usually we dont...)*/
-/* Note: stuff here is hardcoded for fd_sets which are int[8] as in EMX! */
-
- if(nfds > sd->max_fds){
- for(i=0;i<((FD_SETSIZE+31)/32);i++){
- if(sd->read_copy.fds_bits[i] ||
- sd->write_copy.fds_bits[i])
- sd->max_fds=(i*32) +32;
- }
- }
- else { sd->max_fds = nfds; }
-/* Check if result is greater than specified in select() call */
- if(sd->max_fds > nfds) sd->max_fds = nfds;
-
- if (sd->have_read)
- {
- for (i = 0; i < sd->max_fds; ++i) {
- if (FD_ISSET (i, &sd->read_copy)){
- if(_files[i] & F_SOCKET)
- {
- sd->tcp_select_mask[sd->socket_ntotal]=_getsockhandle(i);
- sd->tcp_emx_handles[sd->socket_ntotal]=i;
- sd->socket_ntotal++; sd->socket_nread++;
- }
- else if (_files[i] & F_PIPE)
- {
- sd -> pipe_ntotal++;
- /* rc = DosSetNPipeSem((HPIPE)i, (HSEM) hPipeSem, i);
- if(rc) { fprintf(stderr,"Error SETNPIPE rc = %d\n",rc); return -1;} */
- }
- }
- }
- }
-
- if (sd->have_write)
- {
- for (i = 0; i < sd->max_fds; ++i) {
- if (FD_ISSET (i, &sd->write_copy)){
- if(_files[i] & F_SOCKET)
- {
- sd->tcp_select_mask[sd->socket_ntotal]=_getsockhandle(i);
- sd->tcp_emx_handles[sd->socket_ntotal]=i;
- sd->socket_ntotal++; sd->socket_nwrite++;
- }
- else if (_files[i] & F_PIPE)
- {
- sd -> pipe_ntotal++;
- /* rc = DosSetNPipeSem((HPIPE)i, (HSEM) hPipeSem, i);
- if(rc) { fprintf(stderr,"Error SETNPIPE rc = %d\n",rc); return -1;} */
- sd -> pipe_have_write=TRUE;
- }
- }
- }
- }
-
-
-return(sd->socket_ntotal);
-}
-
-
-int os2_check_sockets(sd,readfds,writefds)
-struct select_data *sd;
-fd_set *readfds,*writefds;
-{
- int e,i;
- int j,n;
- memcpy(sd->tcp_select_copy,sd->tcp_select_mask,
- sd->socket_ntotal*sizeof(int));
-
- e = os2_tcp_select(sd->tcp_select_copy,sd->socket_nread,
- sd->socket_nwrite, 0, 0);
-
- if(e == 0) return(e);
-/* We have something ready? */
- if(e>0){
- j = 0; n = 0;
- for (i = 0; i < sd->socket_nread; ++i, ++j)
- if (sd->tcp_select_copy[j] != -1)
- {
- FD_SET (sd->tcp_emx_handles[j], readfds);
- n ++;
- }
- for (i = 0; i < sd->socket_nwrite; ++i, ++j)
- if (sd->tcp_select_copy[j] != -1)
- {
- FD_SET (sd->tcp_emx_handles[j], writefds);
- n ++;
- }
- errno = 0;
-
- return n;
- }
- if(e<0){
- /*Error -- TODO. EBADF is a good choice for now. */
- fprintf(stderr,"Error in server select! e=%d\n",e);
- errno = EBADF;
- return (-1);
- }
- }
-
-/* Check to see if anything is ready on pipes */
-
-int os2_check_pipes(sd,readfds,writefds)
-struct select_data *sd;
-fd_set *readfds,*writefds;
-{
-int i,e;
-ULONG ulPostCount;
-PIPESEMSTATE pipeSemState[128];
-APIRET rc;
- e = 0;
- rc = DosResetEventSem(hPipeSem,&ulPostCount);
- rc = DosQueryNPipeSemState((HSEM) hPipeSem, (PPIPESEMSTATE)&pipeSemState,
- sizeof(pipeSemState));
- if(rc) fprintf(stderr,"SELECT: rc from QueryNPipeSem: %d\n",rc);
- i=0;
- while (pipeSemState[i].fStatus != 0) {
- /*fprintf(stderr,"SELECT: sem entry, stat=%d, flag=%d, key=%d,avail=%d\n",
- pipeSemState[i].fStatus,pipeSemState[i].fFlag,pipeSemState[i].usKey,
- pipeSemState[i].usAvail); */
- if((pipeSemState[i].fStatus == 1) &&
- (FD_ISSET(pipeSemState[i].usKey,&sd->read_copy))){
- FD_SET(pipeSemState[i].usKey,readfds);
- e++;
- }
- else if((pipeSemState[i].fStatus == 2) &&
- (FD_ISSET(pipeSemState[i].usKey,&sd->write_copy))){
- FD_SET(pipeSemState[i].usKey,writefds);
- e++;
- }
- else if( (pipeSemState[i].fStatus == 3) &&
- ( (FD_ISSET(pipeSemState[i].usKey,&sd->read_copy)) ||
- (FD_ISSET(pipeSemState[i].usKey,&sd->write_copy)) )){
- errno = EBADF;
- /* fprintf(stderr,"Pipe has closed down, fd=%d\n",pipeSemState[i].usKey); */
- return (-1);
- }
- i++;
- } /* endwhile */
- /*fprintf(stderr,"Done listing pipe sem entries, total %d entries, total ready entries %d\n" i,e);*/
-errno = 0;
-return(e);
-}
-
diff --git a/nx-X11/programs/Xserver/include/os.h b/nx-X11/programs/Xserver/include/os.h
index 268513bfd..881abfccb 100644
--- a/nx-X11/programs/Xserver/include/os.h
+++ b/nx-X11/programs/Xserver/include/os.h
@@ -263,7 +263,7 @@ void OsBlockSignals (void);
void OsReleaseSignals (void);
-#if !defined(WIN32) && !defined(__UNIXOS2__)
+#if !defined(WIN32)
extern int System(char *);
extern void * Popen(char *, char *);
extern int Pclose(void *);
diff --git a/nx-X11/programs/Xserver/include/servermd.h b/nx-X11/programs/Xserver/include/servermd.h
index 27b5a8fb9..76f28e9ed 100644
--- a/nx-X11/programs/Xserver/include/servermd.h
+++ b/nx-X11/programs/Xserver/include/servermd.h
@@ -327,8 +327,6 @@ SOFTWARE.
#if (defined(SVR4) && defined(i386)) || \
defined(__alpha__) || defined(__alpha) || \
defined(__i386__) || defined(__i386) || \
- defined(__UNIXOS2__) || \
- defined(__OS2ELF__) || \
defined(__QNX__) || \
defined(__s390x__) || defined(__s390__)
diff --git a/nx-X11/programs/Xserver/os/WaitFor.c b/nx-X11/programs/Xserver/os/WaitFor.c
index 2858637fa..899b1de0b 100644
--- a/nx-X11/programs/Xserver/os/WaitFor.c
+++ b/nx-X11/programs/Xserver/os/WaitFor.c
@@ -91,9 +91,6 @@ SOFTWARE.
#include <nx-X11/X.h>
#include "misc.h"
-#ifdef __UNIXOS2__
-#define select(n,r,w,x,t) os2PseudoSelect(n,r,w,x,t)
-#endif
#include "osdep.h"
#include <nx-X11/Xpoll.h>
#include "dixstruct.h"
diff --git a/nx-X11/programs/Xserver/os/access.c b/nx-X11/programs/Xserver/os/access.c
index 5735fd556..c775952e2 100644
--- a/nx-X11/programs/Xserver/os/access.c
+++ b/nx-X11/programs/Xserver/os/access.c
@@ -1139,9 +1139,6 @@ ResetHosts (char *display)
if (fnamelen > sizeof(fname))
FatalError("Display name `%s' is too long\n", display);
sprintf(fname, ETC_HOST_PREFIX "%s" ETC_HOST_SUFFIX, display);
-#ifdef __UNIXOS2__
- strcpy(fname, (char*)__XOS2RedirRoot(fname));
-#endif /* __UNIXOS2__ */
if ((fd = fopen (fname, "r")) != 0)
{
@@ -1152,10 +1149,6 @@ ResetHosts (char *display)
continue;
if ((ptr = strchr(ohostname, '\n')) != 0)
*ptr = 0;
-#ifdef __UNIXOS2__
- if ((ptr = strchr(ohostname, '\r')) != 0)
- *ptr = 0;
-#endif
hostlen = strlen(ohostname) + 1;
for (i = 0; i < hostlen; i++)
lhostname[i] = tolower(ohostname[i]);
diff --git a/nx-X11/programs/Xserver/os/connection.c b/nx-X11/programs/Xserver/os/connection.c
index 9681ced38..e38e94c67 100644
--- a/nx-X11/programs/Xserver/os/connection.c
+++ b/nx-X11/programs/Xserver/os/connection.c
@@ -107,11 +107,6 @@ SOFTWARE.
#include <sys/ioctl.h>
#endif
-#ifdef __UNIXOS2__
-#define select(n,r,w,x,t) os2PseudoSelect(n,r,w,x,t)
-extern __const__ int _nfiles;
-#endif
-
#if defined(TCPCONN)
# include <netinet/in.h>
# include <arpa/inet.h>
@@ -124,21 +119,17 @@ extern __const__ int _nfiles;
# ifdef CSRG_BASED
# include <sys/param.h>
# endif
-# ifndef __UNIXOS2__
-# include <netinet/tcp.h>
-# endif
+# include <netinet/tcp.h>
# endif
# endif
# include <arpa/inet.h>
#endif
-#if !defined(__UNIXOS2__)
#ifndef Lynx
#include <sys/uio.h>
#else
#include <uio.h>
#endif
-#endif
#endif /* WIN32 */
#include "misc.h"
#include "osdep.h"
@@ -173,9 +164,6 @@ Bool AnyClientsWriteBlocked; /* true if some client blocked on write */
Bool RunFromSmartParent; /* send SIGUSR1 to parent process */
Bool PartialNetwork; /* continue even if unable to bind all addrs */
static Pid_t ParentProcess;
-#ifdef __UNIXOS2__
-Pid_t GetPPID(Pid_t pid);
-#endif
static Bool debug_conns = FALSE;
@@ -314,8 +302,6 @@ InitConnectionLimits(void)
#ifndef __CYGWIN__
-#ifndef __UNIXOS2__
-
#if !defined(XNO_SYSCONF) && defined(_SC_OPEN_MAX)
lastfdesc = sysconf(_SC_OPEN_MAX) - 1;
#endif
@@ -330,10 +316,6 @@ InitConnectionLimits(void)
lastfdesc = _NFILE - 1;
#endif
-#else /* __UNIXOS2__ */
- lastfdesc = _nfiles - 1;
-#endif
-
#endif /* __CYGWIN__ */
/* This is the fallback */
@@ -449,15 +431,6 @@ CreateWellKnownSockets(void)
RunFromSmartParent = TRUE;
OsSignal(SIGUSR1, handler);
ParentProcess = getppid ();
-#ifdef __UNIXOS2__
- /*
- * fg030505: under OS/2, xinit is not the parent process but
- * the "grant parent" process of the server because execvpe()
- * presents us an additional process number;
- * GetPPID(pid) is part of libemxfix
- */
- ParentProcess = GetPPID (ParentProcess);
-#endif /* __UNIXOS2__ */
if (RunFromSmartParent) {
if (ParentProcess > 1) {
kill (ParentProcess, SIGUSR1);
diff --git a/nx-X11/programs/Xserver/os/io.c b/nx-X11/programs/Xserver/os/io.c
index d184a981c..8439a3edd 100644
--- a/nx-X11/programs/Xserver/os/io.c
+++ b/nx-X11/programs/Xserver/os/io.c
@@ -70,7 +70,7 @@ SOFTWARE.
#include <nx-X11/Xtrans/Xtrans.h>
#include <nx-X11/Xmd.h>
#include <errno.h>
-#if !defined(__UNIXOS2__) && !defined(WIN32)
+#if !defined(WIN32)
#ifndef Lynx
#include <sys/uio.h>
#else
@@ -92,7 +92,6 @@ CallbackListPtr FlushCallback;
/* check for both EAGAIN and EWOULDBLOCK, because some supposedly POSIX
* systems are broken and return EWOULDBLOCK when they should return EAGAIN
*/
-#ifndef __UNIXOS2__
#ifndef WIN32
#if defined(EAGAIN) && defined(EWOULDBLOCK)
#define ETEST(err) (err == EAGAIN || err == EWOULDBLOCK)
@@ -106,9 +105,6 @@ CallbackListPtr FlushCallback;
#else /* WIN32 The socket errorcodes differ from the normal errors*/
#define ETEST(err) (err == EAGAIN || err == WSAEWOULDBLOCK)
#endif
-#else /* __UNIXOS2__ Writing to full pipes may return ENOSPC */
-#define ETEST(err) (err == EAGAIN || err == EWOULDBLOCK || err == ENOSPC)
-#endif
Bool CriticalOutputPending;
int timesThisConnection = 0;
diff --git a/nx-X11/programs/Xserver/os/log.c b/nx-X11/programs/Xserver/os/log.c
index e964896d7..d82f545a0 100644
--- a/nx-X11/programs/Xserver/os/log.c
+++ b/nx-X11/programs/Xserver/os/log.c
@@ -214,9 +214,6 @@ LogInit(const char *fname, const char *backup)
sprintf(suffix, backup, display);
sprintf(oldLog, "%s%s", logFileName, suffix);
free(suffix);
-#ifdef __UNIXOS2__
- remove(oldLog);
-#endif
if (rename(logFileName, oldLog) == -1) {
FatalError("Cannot move old log file (\"%s\" to \"%s\"\n",
logFileName, oldLog);
diff --git a/nx-X11/programs/Xserver/os/oscolor.c b/nx-X11/programs/Xserver/os/oscolor.c
index 32f8a4b23..88b243d65 100644
--- a/nx-X11/programs/Xserver/os/oscolor.c
+++ b/nx-X11/programs/Xserver/os/oscolor.c
@@ -397,7 +397,6 @@ OsInitColors(void)
if (!was_here)
{
-#ifndef __UNIXOS2__
#ifdef NX_TRANS_SOCKET
/*
* Add the trailing '.txt' if a
@@ -418,12 +417,6 @@ OsInitColors(void)
strcpy(path, rgbPath);
strcat(path, ".txt");
#endif
-#else
- char *tmp = (char*)__XOS2RedirRoot(rgbPath);
- path = (char*)ALLOCATE_LOCAL(strlen(tmp) +5);
- strcpy(path, tmp);
- strcat(path, ".txt");
-#endif
if (!(rgb = fopen(path, "r")))
{
#ifdef NX_TRANS_SOCKET
@@ -438,11 +431,7 @@ OsInitColors(void)
while(fgets(line, sizeof(line), rgb))
{
lineno++;
-#ifndef __UNIXOS2__
if (sscanf(line,"%d %d %d %[^\n]\n", &red, &green, &blue, name) == 4)
-#else
- if (sscanf(line,"%d %d %d %[^\n\r]\n", &red, &green, &blue, name) == 4)
-#endif
{
if (red >= 0 && red <= 0xff &&
green >= 0 && green <= 0xff &&
diff --git a/nx-X11/programs/Xserver/os/osdep.h b/nx-X11/programs/Xserver/os/osdep.h
index 9ad267a36..3215b017e 100644
--- a/nx-X11/programs/Xserver/os/osdep.h
+++ b/nx-X11/programs/Xserver/os/osdep.h
@@ -91,7 +91,7 @@ SOFTWARE.
#if defined(NOFILE) && !defined(NOFILES_MAX)
#define OPEN_MAX NOFILE
#else
-#if !defined(__UNIXOS2__) && !defined(WIN32)
+#if !defined(WIN32)
#define OPEN_MAX NOFILES_MAX
#else
#define OPEN_MAX 256
diff --git a/nx-X11/programs/Xserver/os/osinit.c b/nx-X11/programs/Xserver/os/osinit.c
index 5f097f89a..81429a462 100644
--- a/nx-X11/programs/Xserver/os/osinit.c
+++ b/nx-X11/programs/Xserver/os/osinit.c
@@ -133,7 +133,7 @@ OsInit(void)
dup2 (fileno (err), 2);
fclose (err);
}
-#if defined(SYSV) || defined(SVR4) || defined(__UNIXOS2__) || defined(WIN32) || defined(__CYGWIN__)
+#if defined(SYSV) || defined(SVR4) || defined(WIN32) || defined(__CYGWIN__)
{
static char buf[BUFSIZ];
setvbuf (stderr, buf, _IOLBF, BUFSIZ);
diff --git a/nx-X11/programs/Xserver/os/utils.c b/nx-X11/programs/Xserver/os/utils.c
index 9584dadd3..fca5ae2fd 100644
--- a/nx-X11/programs/Xserver/os/utils.c
+++ b/nx-X11/programs/Xserver/os/utils.c
@@ -318,9 +318,7 @@ OsSignal(sig, handler)
* server at a time. This keeps the servers from stomping on each other
* if the user forgets to give them different display numbers.
*/
-#ifndef __UNIXOS2__
#define LOCK_DIR "/tmp"
-#endif
#define LOCK_TMP_PREFIX "/.tX"
#define LOCK_PREFIX "/.X"
#define LOCK_SUFFIX "-lock"
@@ -330,10 +328,6 @@ OsSignal(sig, handler)
#include <sys/param.h>
#endif
-#ifdef __UNIXOS2__
-#define link rename
-#endif
-
#ifndef PATH_MAX
#ifndef Lynx
#include <sys/param.h>
@@ -372,14 +366,7 @@ LockServer(void)
/*
* Path names
*/
-#ifndef __UNIXOS2__
tmppath = LOCK_DIR;
-#else
- /* OS/2 uses TMP directory, must also prepare for 8.3 names */
- tmppath = getenv("TMP");
- if (!tmppath)
- FatalError("No TMP dir found\n");
-#endif
sprintf(port, "%d", atoi(display));
len = strlen(LOCK_PREFIX) > strlen(LOCK_TMP_PREFIX) ? strlen(LOCK_PREFIX) :
@@ -422,13 +409,11 @@ LockServer(void)
if (write(lfd, pid_str, 11) != 11)
FatalError("Could not write pid to lock file in %s\n", tmp);
-#ifndef __UNIXOS2__
#ifndef USE_CHMOD
(void) fchmod(lfd, 0444);
#else
(void) chmod(tmp, 0444);
#endif
-#endif
(void) close(lfd);
/*
@@ -507,9 +492,6 @@ UnlockServer(void)
if (!StillLocking){
-#ifdef __UNIXOS2__
- (void) chmod(LockFile,S_IREAD|S_IWRITE);
-#endif /* __UNIXOS2__ */
(void) unlink(LockFile);
}
}
@@ -928,7 +910,7 @@ ProcessCommandLine(int argc, char *argv[])
#ifdef SERVER_LOCK
else if ( strcmp ( argv[i], "-nolock") == 0)
{
-#if !defined(WIN32) && !defined(__UNIXOS2__) && !defined(__CYGWIN__)
+#if !defined(WIN32) && !defined(__CYGWIN__)
if (getuid() != 0)
ErrorF("Warning: the -nolock option can only be used by root\n");
else
@@ -1260,7 +1242,7 @@ ExpandCommandLine(int *pargc, char ***pargv)
{
int i;
-#if !defined(WIN32) && !defined(__UNIXOS2__) && !defined(__CYGWIN__)
+#if !defined(WIN32) && !defined(__CYGWIN__)
if (getuid() != geteuid())
return;
#endif
@@ -1609,7 +1591,7 @@ OsReleaseSignals (void)
#endif
}
-#if !defined(WIN32) && !defined(__UNIXOS2__)
+#if !defined(WIN32)
/*
* "safer" versions of system(3), popen(3) and pclose(3) which give up
* all privs before running a command.
@@ -1964,7 +1946,7 @@ Fclose(void * iop)
#endif
}
-#endif /* !WIN32 && !__UNIXOS2__ */
+#endif /* !WIN32 */
/*
diff --git a/nx-X11/programs/Xserver/xkb/ddxConfig.c b/nx-X11/programs/Xserver/xkb/ddxConfig.c
index 1ecabd108..2fd5e7610 100644
--- a/nx-X11/programs/Xserver/xkb/ddxConfig.c
+++ b/nx-X11/programs/Xserver/xkb/ddxConfig.c
@@ -128,9 +128,6 @@ XkbConfigRtrnPtr rtrn;
sprintf(buf,"X%s-config%s%s",display,(dName[0]?".":""),dName);
}
#endif
-#ifdef __UNIXOS2__
- strcpy(buf,(char*)__XOS2RedirRoot(buf));
-#endif
#ifdef DEBUG
ErrorF("Looking for keyboard configuration in %s...",buf);
#endif
diff --git a/nx-X11/programs/Xserver/xkb/ddxLoad.c b/nx-X11/programs/Xserver/xkb/ddxLoad.c
index 53bae44df..89f777d58 100644
--- a/nx-X11/programs/Xserver/xkb/ddxLoad.c
+++ b/nx-X11/programs/Xserver/xkb/ddxLoad.c
@@ -82,7 +82,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define POST_ERROR_MSG1 "\"Errors from xkbcomp are not fatal to the X server\""
#define POST_ERROR_MSG2 "\"End of messages from xkbcomp\""
-#if defined(__UNIXOS2__) || defined(WIN32)
+#if defined(WIN32)
#define PATHSEPARATOR "\\"
#else
#define PATHSEPARATOR "/"
@@ -558,8 +558,6 @@ char *cmd = NULL,file[PATH_MAX],xkm_output_dir[PATH_MAX],*map,*outFile;
#endif
-#ifndef __UNIXOS2__
-
#ifdef NXAGENT_SERVER
char *xkbbasedir = _NXGetXkbBasePath(XkbBaseDirectory);
char *xkbbindir = _NXGetXkbCompPath(XkbBinDirectory);
@@ -568,23 +566,6 @@ char *cmd = NULL,file[PATH_MAX],xkm_output_dir[PATH_MAX],*map,*outFile;
char *xkbbindir = XkbBinDirectory;
#endif
-#else
- /* relocate the basedir and replace the slashes with backslashes */
-#ifdef NXAGENT_SERVER
- char *xkbbasedir = (char*)__XOS2RedirRoot(_NXGetXkbBasePath(XkbBaseDirectory));
- char *xkbbindir = (char*)__XOS2RedirRoot(_NXGetXkbCompPath(XkbBinDirectory));
-#else
- char *xkbbasedir = (char*)__XOS2RedirRoot(XkbBaseDirectory);
- char *xkbbindir = (char*)__XOS2RedirRoot(XkbBinDirectory);
-#endif
- int i;
-
- for (i=0; i<strlen(xkbbasedir); i++)
- if (xkbbasedir[i]=='/') xkbbasedir[i]='\\';
- for (i=0; i<strlen(xkbbindir); i++)
- if (xkbbindir[i]=='/') xkbbindir[i]='\\';
-#endif
-
cmd = Xprintf("\"%s" PATHSEPARATOR "xkbcomp\" -w %d \"-R%s\" -xkm %s%s -em1 %s -emp %s -eml %s keymap/%s \"%s%s.xkm\"",
xkbbindir,
((xkbDebugFlags<2)?1:((xkbDebugFlags>10)?10:(int)xkbDebugFlags)),
@@ -675,7 +656,6 @@ char tmpname[PATH_MAX];
for xkbcomp. xkbcomp does not read from stdin. */
char *xkmfile = tmpname;
#endif
-#ifndef __UNIXOS2__
#ifdef NXAGENT_SERVER
char *xkbbasedir = _NXGetXkbBasePath(XkbBaseDirectory);
char *xkbbindir = _NXGetXkbCompPath(XkbBinDirectory);
@@ -683,20 +663,6 @@ char tmpname[PATH_MAX];
char *xkbbasedir = XkbBaseDirectory;
char *xkbbindir = XkbBinDirectory;
#endif
-#else
- int i;
-#ifdef NXAGENT_SERVER
- char *xkbbasedir = (char*)__XOS2RedirRoot(_NXGetXkbBasePath(XkbBaseDirectory));
- char *xkbbindir = (char*)__XOS2RedirRoot(_NXGetXkbCompPath(XkbBinDirectory));
-#else
- char *xkbbasedir = (char*)__XOS2RedirRoot(XkbBaseDirectory);
- char *xkbbindir = (char*)__XOS2RedirRoot(XkbBinDirectory);
-#endif
- for (i=0; i<strlen(xkbbasedir); i++)
- if (xkbbasedir[i]=='/') xkbbasedir[i]='\\';
- for (i=0; i<strlen(xkbbindir); i++)
- if (xkbbindir[i]=='/') xkbbindir[i]='\\';
-#endif
buf = Xprintf(
"\"%s" PATHSEPARATOR "xkbcomp\" -w %d \"-R%s\" -xkm \"%s\" -em1 %s -emp %s -eml %s \"%s%s.xkm\"",
diff --git a/nx-X11/programs/Xserver/xkb/xkbInit.c b/nx-X11/programs/Xserver/xkb/xkbInit.c
index 1d8283ffe..42e6812d7 100644
--- a/nx-X11/programs/Xserver/xkb/xkbInit.c
+++ b/nx-X11/programs/Xserver/xkb/xkbInit.c
@@ -914,7 +914,7 @@ XkbProcessArguments(int argc,char *argv[],int i)
}
else if (strncmp(argv[i], "-xkbdir", 7) == 0) {
if(++i < argc) {
-#if !defined(WIN32) && !defined(__UNIXOS2__) && !defined(__CYGWIN__)
+#if !defined(WIN32) && !defined(__CYGWIN__)
if (getuid() != geteuid()) {
LogMessage(X_WARNING, "-xkbdir is not available for setuid X servers\n");
return -1;