From b5bfd3a49503387f1477a58b7c3d76fcdf06fbe5 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Wed, 12 Oct 2016 21:06:36 +0200 Subject: remove DECnet support just as Xorg upstream did --- nx-X11/lib/X11/ConnDis.c | 42 +-- nx-X11/lib/xtrans/Imakefile | 1 - nx-X11/lib/xtrans/Xtrans.c | 22 +- nx-X11/lib/xtrans/Xtrans.h | 2 +- nx-X11/lib/xtrans/Xtransdnet.c | 666 ----------------------------------------- nx-X11/lib/xtrans/Xtransutil.c | 44 +-- nx-X11/lib/xtrans/transport.c | 3 - 7 files changed, 16 insertions(+), 764 deletions(-) delete mode 100644 nx-X11/lib/xtrans/Xtransdnet.c (limited to 'nx-X11/lib') diff --git a/nx-X11/lib/X11/ConnDis.c b/nx-X11/lib/X11/ConnDis.c index 46b71b23f..5d6f85aa7 100644 --- a/nx-X11/lib/X11/ConnDis.c +++ b/nx-X11/lib/X11/ConnDis.c @@ -145,14 +145,15 @@ static char *copystring (const char *src, int len) * * [protocol/] [hostname] : [:] displaynumber [.screennumber] * - * A string with exactly two colons seperating hostname from the display - * indicates a DECnet style name. Colons in the hostname may occur if an - * IPv6 numeric address is used as the hostname. An IPv6 numeric address - * may also end in a double colon, so three colons in a row indicates an - * IPv6 address ending in :: followed by :display. To make it easier for - * people to read, an IPv6 numeric address hostname may be surrounded by - * [ ] in a similar fashion to the IPv6 numeric address URL syntax defined - * by IETF RFC 2732. + * A string with exactly two colons seperating hostname from the + * display indicates a (now unsupported) DECnet style name. Colons in + * the hostname may occur if an IPv6 numeric address is used as the + * hostname. An IPv6 numeric address may also end in a double colon, + * so three colons in a row indicates an IPv6 address ending in :: + * followed by :display. To make it easier for people to read, an + * IPv6 numeric address hostname may be surrounded by [ ] in a similar + * fashion to the IPv6 numeric address URL syntax defined by IETF RFC + * 2732. * * If no hostname and no protocol is specified, the string is interpreted * as the most efficient local connection to a server on the same machine. @@ -188,7 +189,6 @@ _X11TransConnectDisplay ( char *phostname = NULL; /* start of host of display */ char *pdpynum = NULL; /* start of dpynum of display */ char *pscrnum = NULL; /* start of screen of display */ - Bool dnet = False; /* if true, then DECnet format */ int idisplay = 0; /* required display number */ int iscreen = 0; /* optional screen number */ /* int (*connfunc)(); */ /* method to create connection */ @@ -318,6 +318,7 @@ _X11TransConnectDisplay ( * or two colons in the case of DECnet (DECnet Phase V allows a single * colon in the hostname). (See note above regarding IPv6 numeric * addresses with triple colons or [] brackets.) + * FIXME: we do not support DECnet anymore, so maybe remove these checks? */ lastp = p; @@ -335,16 +336,7 @@ _X11TransConnectDisplay ( ) { /* DECnet display specified */ -#ifndef DNETCONN goto bad; -#else - dnet = True; - /* override the protocol specified */ - if (pprotocol) - Xfree (pprotocol); - pprotocol = copystring ("dnet", 4); - hostlen = lastc - 1 - lastp; -#endif } else hostlen = lastc - lastp; @@ -482,7 +474,6 @@ _X11TransConnectDisplay ( * phostname hostname string or NULL * idisplay display number * iscreen screen number - * dnet DECnet boolean * * We can now decide which transport to use based on the ConnectionFlags * build parameter the hostname string. If phostname is NULL or equals @@ -654,7 +645,7 @@ _X11TransConnectDisplay ( original_hostname = NULL; } #endif - len = ((phostname ? strlen(phostname) : 0) + 1 + (dnet ? 1 : 0) + + len = ((phostname ? strlen(phostname) : 0) + 1 + strlen(pdpynum) + 1 + (pscrnum ? strlen(pscrnum) : 1) + 1); *fullnamep = (char *) Xmalloc (len); if (!*fullnamep) goto bad; @@ -663,13 +654,13 @@ _X11TransConnectDisplay ( if (phostname && strlen(phostname) > 11 && !strncmp(phostname, "/tmp/launch", 11)) sprintf (*fullnamep, "%s%s%d", (phostname ? phostname : ""), - (dnet ? "::" : ":"), + ":", idisplay); else #endif sprintf (*fullnamep, "%s%s%d.%d", (phostname ? phostname : ""), - (dnet ? "::" : ":"), + ":", idisplay, iscreen); *dpynump = idisplay; @@ -1419,13 +1410,6 @@ GetAuthorization( break; } #endif /* AF_UNIX */ -#ifdef AF_DECnet - case AF_DECnet: - /* - * What is the defined encoding for this? - */ - break; -#endif /* AF_DECnet */ default: /* * Need to return some kind of errro status here. diff --git a/nx-X11/lib/xtrans/Imakefile b/nx-X11/lib/xtrans/Imakefile index b4b36685d..689bdd989 100644 --- a/nx-X11/lib/xtrans/Imakefile +++ b/nx-X11/lib/xtrans/Imakefile @@ -9,7 +9,6 @@ DEFINES = $(FAILDEFINES) HEADERS = \ Xtrans.h \ Xtrans.c \ - Xtransdnet.c \ Xtransint.h \ Xtranslcl.c \ Xtransos2.c \ diff --git a/nx-X11/lib/xtrans/Xtrans.c b/nx-X11/lib/xtrans/Xtrans.c index d665305bb..e53012e2f 100644 --- a/nx-X11/lib/xtrans/Xtrans.c +++ b/nx-X11/lib/xtrans/Xtrans.c @@ -93,9 +93,6 @@ Xtransport_table Xtransports[] = { #endif /* IPv6 */ { &TRANS(SocketINETFuncs), TRANS_SOCKET_INET_INDEX }, #endif /* TCPCONN */ -#if defined(DNETCONN) - { &TRANS(DNETFuncs), TRANS_DNET_INDEX }, -#endif /* DNETCONN */ #if defined(UNIXCONN) #if !defined(LOCALCONN) { &TRANS(SocketLocalFuncs), TRANS_SOCKET_LOCAL_INDEX }, @@ -206,7 +203,6 @@ TRANS(ParseAddress) (char *address, char **protocol, char **host, char **port) * * If the protocol part is missing, then assume TCP. * If the protocol part and host part are missing, then assume local. - * If a "::" is found then assume DNET. */ char *mybuf, *tmpptr; @@ -289,22 +285,6 @@ TRANS(ParseAddress) (char *address, char **protocol, char **host, char **port) return 0; } - /* Check for DECnet */ - - if ((mybuf != _host) && (*(mybuf - 1) == ':') -#if defined(IPv6) && defined(AF_INET6) - /* An IPv6 address can end in :: so three : in a row is assumed to be - an IPv6 host and not a DECnet node with a : in it's name, unless - DECnet is specifically requested */ - && ( ((mybuf - 1) == _host) || (*(mybuf - 2) != ':') || - ((_protocol != NULL) && (strcmp(_protocol, "dnet") == 0)) ) -#endif - ) - { - _protocol = "dnet"; - *(mybuf - 1) = '\0'; - } - *mybuf ++= '\0'; _host_len = strlen(_host); @@ -420,7 +400,7 @@ TRANS(Open) (int type, char *address) PRMSG (2,"Open(%d,%s)\n", type, address, 0); -#if defined(WIN32) && (defined(TCPCONN) || defined(DNETCONN)) +#if defined(WIN32) && defined(TCPCONN) if (TRANS(WSAStartup)()) { PRMSG (1,"Open: WSAStartup failed\n", 0, 0, 0); diff --git a/nx-X11/lib/xtrans/Xtrans.h b/nx-X11/lib/xtrans/Xtrans.h index 04f4138dd..e68657ef5 100644 --- a/nx-X11/lib/xtrans/Xtrans.h +++ b/nx-X11/lib/xtrans/Xtrans.h @@ -481,7 +481,7 @@ TRANS(GetHostname) ( int /* maxlen */ ); -#if defined(WIN32) && (defined(TCPCONN) || defined(DNETCONN)) +#if defined(WIN32) && defined(TCPCONN) int TRANS(WSAStartup)(); #endif diff --git a/nx-X11/lib/xtrans/Xtransdnet.c b/nx-X11/lib/xtrans/Xtransdnet.c deleted file mode 100644 index a4abf42a4..000000000 --- a/nx-X11/lib/xtrans/Xtransdnet.c +++ /dev/null @@ -1,666 +0,0 @@ -/* - -Copyright 1993, 1994, 1998 The Open Group - -Permission to use, copy, modify, distribute, and sell this software and its -documentation for any purpose is hereby granted without fee, provided that -the above copyright notice appear in all copies and that both that -copyright notice and this permission notice appear in supporting -documentation. - -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 THE OPEN GROUP 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 The Open Group shall -not be used in advertising or otherwise to promote the sale, use or -other dealings in this Software without prior written authorization -from The Open Group. - -*/ - -/* Copyright 1993, 1994 NCR Corporation - Dayton, Ohio, USA - * - * All Rights Reserved - * - * Permission to use, copy, modify, and distribute this software and its - * documentation for any purpose and without fee is hereby granted, provided - * that the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name NCR not be used in advertising - * or publicity pertaining to distribution of the software without specific, - * written prior permission. NCR and makes no representations about the - * suitability of this software for any purpose. It is provided "as is" - * without express or implied warranty. - * - * NCR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN - * NO EVENT SHALL NCR BE LIABLE FOR ANY SPECIAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS - * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, - * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#ifndef WIN32 -#include -#include -#include -#endif /* !WIN32 */ - -#include - -#ifdef WIN32 -#define _WILLWINSOCK_ -#define BOOL wBOOL -#undef Status -#define Status wStatus -#include /* PATHWORKS header normally in %MSTOOLS%\h\pathwork */ -#undef Status -#define Status int -#undef BOOL -#include -#undef close -#define close closesocket -#endif /* WIN32 */ - - -#if defined(X11_t) -#define DNETOBJ "X$X" -#endif -#if defined(XIM_t) -#define DNETOBJ "IMSERVER$" -#endif -#if defined(FS_t) || defined(FONT_t) -#define DNETOBJ "X$FONT" -#endif -#if defined(ICE_t) -#define DNETOBJ "" -#endif -#if defined(TEST_t) -#define DNETOBJ "X$TEST" -#endif - - -/* - * This is the DNET implementation of the X Transport service layer - */ - -/* - * This function gets the local address of the socket and stores it in the - * XtransConnInfo structure for the connection. - */ - -static int -TRANS(DNETGetAddr) (XtransConnInfo ciptr) - -{ - struct sockaddr_dn sockname; - int namelen = sizeof(sockname); - - PRMSG (3,"DNETGetAddr(%x)\n", ciptr, 0, 0); - - if (getsockname (ciptr->fd, (struct sockaddr *) &sockname, &namelen) < 0) - { - PRMSG (1,"DNETGetAddr: getsockname() failed: %d\n", - EGET(), 0, 0); - return -1; - } - - - /* - * Everything looks good: fill in the XtransConnInfo structure. - */ - - if ((ciptr->addr = (char *) malloc (namelen)) == NULL) - { - PRMSG (1, "DNETGetAddr: Can't allocate space for the addr\n", - 0, 0, 0); - return -1; - } - - ciptr->family = sockname.sdn_family; - ciptr->addrlen = namelen; - memcpy (ciptr->addr, &sockname, ciptr->addrlen); - - return 0; -} - - -/* - * This function gets the remote address of the socket and stores it in the - * XtransConnInfo structure for the connection. - */ - -static int -TRANS(DNETGetPeerAddr) (XtransConnInfo ciptr) - -{ - struct sockaddr_dn sockname; - int namelen = sizeof(sockname); - - PRMSG (3,"DNETGetPeerAddr(%x)\n", ciptr, 0, 0); - - if (getpeername (ciptr->fd, (struct sockaddr *) &sockname, &namelen) < 0) - { - PRMSG (1,"DNETGetPeerAddr: getpeername() failed: %d\n", - EGET(), 0, 0); - return -1; - } - - /* - * Everything looks good: fill in the XtransConnInfo structure. - */ - - if ((ciptr->peeraddr = (char *) malloc (namelen)) == NULL) - { - PRMSG (1, - "DNETGetPeerAddr: Can't allocate space for the addr\n", - 0, 0, 0); - return -1; - } - - ciptr->peeraddrlen = namelen; - memcpy (ciptr->peeraddr, &sockname, ciptr->peeraddrlen); - - return 0; -} - - -#ifdef TRANS_CLIENT - -static XtransConnInfo -TRANS(DNETOpenCOTSClient) (Xtransport *thistrans, char *protocol, - char *host, char *port) - -{ - XtransConnInfo ciptr; - - PRMSG (2,"DNETOpenCOTSClient(%s,%s,%s)\n", protocol, host, port); - - if ((ciptr = (XtransConnInfo) calloc ( - 1, sizeof(struct _XtransConnInfo))) == NULL) - { - PRMSG (1, "DNETOpenCOTSClient: malloc failed\n", 0, 0, 0); - return NULL; - } - - ciptr->index = 0; /* only one form of DECnet */ - - /* nothing else to do here */ - - return ciptr; -} - -#endif /* TRANS_CLIENT */ - - -#ifdef TRANS_SERVER - -static XtransConnInfo -TRANS(DNETOpenCOTSServer) (Xtransport *thistrans, char *protocol, - char *host, char *port) - -{ - XtransConnInfo ciptr; - - PRMSG (2,"DNETOpenCOTSServer(%s,%s,%s)\n", protocol, host, port); - - if ((ciptr = (XtransConnInfo) calloc ( - 1, sizeof(struct _XtransConnInfo))) == NULL) - { - PRMSG (1, "DNETOpenCOTSServer: malloc failed\n", 0, 0, 0); - return NULL; - } - - if ((ciptr->fd = socket (AF_DECnet, SOCK_STREAM, 0)) < 0) - { - free ((char *) ciptr); - return NULL; - } - - ciptr->index = 0; /* only one form of DECnet */ - - return (ciptr); -} - -#endif /* TRANS_SERVER */ - - -#ifdef TRANS_CLIENT - -static XtransConnInfo -TRANS(DNETOpenCLTSClient) (Xtransport *thistrans, char *protocol, - char *host, char *port) - -{ - XtransConnInfo ciptr; - - PRMSG (2,"DNETOpenCLTSClient(%s,%s,%s)\n", protocol, host, port); - - if ((ciptr = (XtransConnInfo) calloc ( - 1, sizeof (struct _XtransConnInfo))) == NULL) - { - PRMSG (1, "DNETOpenCLTSClient: malloc failed\n", 0, 0, 0); - return NULL; - } - - ciptr->index = 0; /* only one form of DECnet */ - - /* nothing else to do here */ - - return ciptr; -} - -#endif /* TRANS_CLIENT */ - - -#ifdef TRANS_SERVER - -static XtransConnInfo -TRANS(DNETOpenCLTSServer) (Xtransport *thistrans, char *protocol, - char *host, char *port) - -{ - /* NEED TO IMPLEMENT */ - - PRMSG (2,"DNETOpenCLTSServer(%s,%s,%s)\n", protocol, host, port); - return NULL; -} - -#endif /* TRANS_SERVER */ - - -#ifdef TRANS_REOPEN - -static XtransConnInfo -TRANS(DNETReopenCOTSServer) (Xtransport *thistrans, int fd, char *port) - -{ - XtransConnInfo ciptr; - - PRMSG (2,"DNETReopenCOTSServer(%d,%s)\n", fd, port, 0); - - if ((ciptr = (XtransConnInfo) calloc ( - 1, sizeof(struct _XtransConnInfo))) == NULL) - { - PRMSG (1, "DNETReopenCOTSServer: malloc failed\n", 0, 0, 0); - return NULL; - } - - ciptr->fd = fd; - ciptr->index = 0; /* only one form of DECnet */ - - return (ciptr); -} - -static XtransConnInfo -TRANS(DNETReopenCLTSServer) (Xtransport *thistrans, int fd, char *port) - -{ - XtransConnInfo ciptr; - - PRMSG (2,"DNETReopenCLTSServer(%d,%s)\n", fd, port, 0); - - if ((ciptr = (XtransConnInfo) calloc ( - 1, sizeof(struct _XtransConnInfo))) == NULL) - { - PRMSG (1, "DNETReopenCLTSServer: malloc failed\n", 0, 0, 0); - return NULL; - } - - ciptr->fd = fd; - ciptr->index = 0; /* only one form of DECnet */ - - return (ciptr); -} - -#endif /* TRANS_REOPEN */ - - -static int -TRANS(DNETSetOption) (XtransConnInfo ciptr, int option, int arg) - -{ - PRMSG (2,"DNETSetOption(%d,%d,%d)\n", ciptr->fd, option, arg); - - return -1; -} - - -#ifdef TRANS_SERVER - -static int -TRANS(DNETCreateListener) (XtransConnInfo ciptr, char *port, unsigned int flags) - -{ - struct sockaddr_dn dnsock; - int fd = ciptr->fd; - - PRMSG (3, "DNETCreateListener(%x,%d)\n", ciptr, fd, 0); - - bzero ((char *) &dnsock, sizeof (dnsock)); - dnsock.sdn_family = AF_DECnet; - - if (port && *port ) - sprintf (dnsock.sdn_objname, "%s%s", DNETOBJ, port); - else -#ifdef X11_t - return -1; -#else - sprintf (dnsock.sdn_objname, "%s%d", DNETOBJ, getpid ()); -#endif - - dnsock.sdn_objnamel = strlen (dnsock.sdn_objname); - - if (bind (fd, (struct sockaddr *) &dnsock, sizeof (dnsock))) - { - close (fd); - return -1; - } - - if (listen (fd, 5)) - { - close (fd); - return (-1); - } - - - /* Set a flag to indicate that this connection is a listener */ - - ciptr->flags = 1 | (ciptr->flags & TRANS_KEEPFLAGS); - - return 0; -} - - -static XtransConnInfo -TRANS(DNETAccept) (XtransConnInfo ciptr, int *status) - -{ - XtransConnInfo newciptr; - struct sockaddr_dn sockname; - int namelen = sizeof(sockname); - - PRMSG (2, "DNETAccept(%x,%d)\n", ciptr, ciptr->fd, 0); - - if ((newciptr = (XtransConnInfo) calloc( - 1, sizeof (struct _XtransConnInfo))) == NULL) - { - PRMSG (1, "DNETAccept: malloc failed\n", 0, 0, 0); - *status = TRANS_ACCEPT_BAD_MALLOC; - return NULL; - } - - if((newciptr->fd = accept (ciptr->fd, - (struct sockaddr *) &sockname, &namelen)) < 0) - { - PRMSG (1, "DNETAccept: accept() failed\n", 0, 0, 0); - - free (newciptr); - *status = TRANS_ACCEPT_FAILED; - return NULL; - } - - /* - * Get this address again because the transport may give a more - * specific address now that a connection is established. - */ - - if (TRANS(DNETGetAddr) (newciptr) < 0) - { - PRMSG(1, - "DNETAccept: ...DNETGetAddr() failed:\n", 0, 0, 0); - close (newciptr->fd); - free (newciptr); - *status = TRANS_ACCEPT_MISC_ERROR; - return NULL; - } - - if (TRANS(DNETGetPeerAddr) (newciptr) < 0) - { - PRMSG(1, - "DNETAccept: ...DNETGetPeerAddr() failed:\n", 0, 0, 0); - - close (newciptr->fd); - if (newciptr->addr) free (newciptr->addr); - free (newciptr); - *status = TRANS_ACCEPT_MISC_ERROR; - return NULL; - } - - *status = 0; - - return newciptr; -} - -#endif /* TRANS_SERVER */ - - -#ifdef TRANS_CLIENT - -#define OBJBUFSIZE 64 - -static int -TRANS(DNETConnect) (XtransConnInfo ciptr, char *host, char *port) - -{ - char objname[OBJBUFSIZE]; - - extern int dnet_conn(); - - PRMSG (2,"DNETConnect(%d,%s,%s)\n", ciptr->fd, host, port); - -#ifdef X11_t - /* - * X has a well known port, that is transport dependent. It is easier - * to handle it here, than try and come up with a transport independent - * representation that can be passed in and resolved the usual way. - * - * The port that is passed here is really a string containing the idisplay - * from ConnectDisplay(). - */ - - if (is_numeric (port)) - { - short tmpport = (short) atoi (port); - - sprintf (objname, "X$X%d", tmpport); - } - else -#endif - strncpy(objname, port, OBJBUFSIZE); - - - /* - * Do the connect - */ - - if (!host) host = "0"; - - if ((ciptr->fd = dnet_conn (host, objname, SOCK_STREAM, 0, 0, 0, 0)) < 0) - { - return TRANS_CONNECT_FAILED; - } - - - /* - * Sync up the address fields of ciptr. - */ - - if (TRANS(DNETGetAddr) (ciptr) < 0) - { - PRMSG (1, - "DNETConnect: ...DNETGetAddr() failed:\n", 0, 0, 0); - return TRANS_CONNECT_FAILED; - } - - if (TRANS(DNETGetPeerAddr) (ciptr) < 0) - { - PRMSG (1, - "DNETConnect: ...DNETGetPeerAddr() failed:\n", - 0, 0, 0); - return TRANS_CONNECT_FAILED; - } - - return 0; -} - -#endif /* TRANS_CLIENT */ - - -static int -TRANS(DNETBytesReadable) (XtransConnInfo ciptr, BytesReadable_t *pend) - -{ - PRMSG (2,"DNETBytesReadable(%x,%d,%x)\n", ciptr, ciptr->fd, pend); - -#ifdef WIN32 - { - int ret = ioctlsocket ((SOCKET) ciptr->fd, FIONREAD, (u_long *) pend); - errno = WSAGetLastError(); - return ret; - } -#else - return ioctl(ciptr->fd, FIONREAD, (char *)pend); -#endif /* WIN32 */ -} - - -static int -TRANS(DNETRead) (XtransConnInfo ciptr, char *buf, int size) - -{ - PRMSG (2,"DNETRead(%d,%x,%d)\n", ciptr->fd, buf, size); - -#ifdef WIN32 - { - int ret = recv ((SOCKET)ciptr->fd, buf, size, 0); - errno = WSAGetLastError(); - return ret; - } -#else - return read (ciptr->fd, buf, size); -#endif /* WIN32 */ -} - - -static int -TRANS(DNETWrite) (XtransConnInfo ciptr, char *buf, int size) - -{ - PRMSG (2,"DNETWrite(%d,%x,%d)\n", ciptr->fd, buf, size); - -#ifdef WIN32 - { - int ret = send ((SOCKET)ciptr->fd, buf, size, 0); - errno = WSAGetLastError(); - return ret; - } -#else - return write (ciptr->fd, buf, size); -#endif /* WIN32 */ -} - - -static int -TRANS(DNETReadv) (XtransConnInfo ciptr, struct iovec *buf, int size) - -{ - PRMSG (2,"DNETReadv(%d,%x,%d)\n", ciptr->fd, buf, size); - - return READV (ciptr, buf, size); -} - - -static int -TRANS(DNETWritev) (XtransConnInfo ciptr, struct iovec *buf, int size) - -{ - PRMSG (2,"DNETWritev(%d,%x,%d)\n", ciptr->fd, buf, size); - - return WRITEV (ciptr, buf, size); -} - - -static int -TRANS(DNETDisconnect) (XtransConnInfo ciptr) - -{ - PRMSG (2,"DNETDisconnect(%x,%d)\n", ciptr, ciptr->fd, 0); - -#ifdef WIN32 - { - int ret = shutdown (ciptr->fd, 2); - errno = WSAGetLastError(); - return ret; - } -#else - return shutdown (ciptr->fd, 2); /* disallow further sends and receives */ -#endif -} - - -static int -TRANS(DNETClose) (XtransConnInfo ciptr) - -{ - PRMSG (2,"DNETClose(%x,%d)\n", ciptr, ciptr->fd, 0); - -#ifdef WIN32 - { - int ret = close (ciptr->fd); - errno = WSAGetLastError(); - return ret; - } -#else - return close (ciptr->fd); -#endif -} - - -Xtransport TRANS(DNETFuncs) = { - /* DNET Interface */ - "dnet", - 0, -#ifdef TRANS_CLIENT - TRANS(DNETOpenCOTSClient), -#endif /* TRANS_CLIENT */ -#ifdef TRANS_SERVER - TRANS(DNETOpenCOTSServer), -#endif /* TRANS_SERVER */ -#ifdef TRANS_CLIENT - TRANS(DNETOpenCLTSClient), -#endif /* TRANS_CLIENT */ -#ifdef TRANS_SERVER - TRANS(DNETOpenCLTSServer), -#endif /* TRANS_SERVER */ -#ifdef TRANS_REOPEN - TRANS(DNETReopenCOTSServer), - TRANS(DNETReopenCLTSServer), -#endif /* TRANS_REOPEN */ - TRANS(DNETSetOption), -#ifdef TRANS_SERVER - TRANS(DNETCreateListener), - NULL, /* ResetListener */ - TRANS(DNETAccept), -#endif /* TRANS_SERVER */ -#ifdef TRANS_CLIENT - TRANS(DNETConnect), -#endif /* TRANS_CLIENT */ - TRANS(DNETBytesReadable), - TRANS(DNETRead), - TRANS(DNETWrite), - TRANS(DNETReadv), - TRANS(DNETWritev), - TRANS(DNETDisconnect), - TRANS(DNETClose), - TRANS(DNETClose), -}; diff --git a/nx-X11/lib/xtrans/Xtransutil.c b/nx-X11/lib/xtrans/Xtransutil.c index 03bbce188..99af01747 100644 --- a/nx-X11/lib/xtrans/Xtransutil.c +++ b/nx-X11/lib/xtrans/Xtransutil.c @@ -158,20 +158,6 @@ TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr **addrp) #endif /* IPv6 */ #endif /* defined(TCPCONN) || defined(STREAMSCONN) */ -#if defined(DNETCONN) - case AF_DECnet: - { - struct sockaddr_dn saddr; - - memcpy (&saddr, *addrp, sizeof (struct sockaddr_dn)); - - *familyp=FamilyDECnet; - *addrlenp=sizeof(struct dn_naddr); - memcpy(*addrp,&saddr.sdn_add,*addrlenp); - - break; - } -#endif /* defined(DNETCONN) */ #if defined(UNIXCONN) || defined(LOCALCONN) || defined(OS2PIPECONN) case AF_UNIX: @@ -297,18 +283,6 @@ TRANS(GetMyNetworkId) (XtransConnInfo ciptr) } #endif /* defined(TCPCONN) || defined(STREAMSCONN) */ -#if defined(DNETCONN) - case AF_DECnet: - { - struct sockaddr_dn *saddr = (struct sockaddr_dn *) addr; - - networkId = (char *) malloc ( - 13 + strlen (hostnamebuf) + saddr->sdn_objnamel); - sprintf (networkId, "dnet/%s::%s", - hostnamebuf, saddr->sdn_objname); - break; - } -#endif /* defined(DNETCONN) */ default: break; @@ -429,22 +403,6 @@ TRANS(GetPeerNetworkId) (XtransConnInfo ciptr) #endif /* defined(TCPCONN) || defined(STREAMSCONN) */ -#if defined(DNETCONN) - case AF_DECnet: - { - struct sockaddr_dn *saddr = (struct sockaddr_dn *) peer_addr; - struct nodeent *np; - - if (np = getnodebyaddr(saddr->sdn_add.a_addr, - saddr->sdn_add.a_len, AF_DECnet)) { - sprintf(addrbuf, "%s:", np->n_name); - } else { - sprintf(addrbuf, "%s:", dnet_htoa(&saddr->sdn_add)); - } - addr = addrbuf; - break; - } -#endif /* defined(DNETCONN) */ default: return (NULL); @@ -464,7 +422,7 @@ TRANS(GetPeerNetworkId) (XtransConnInfo ciptr) #endif /* ICE_t */ -#if defined(WIN32) && (defined(TCPCONN) || defined(DNETCONN)) +#if defined(WIN32) && defined(TCPCONN) int TRANS(WSAStartup) (void) { diff --git a/nx-X11/lib/xtrans/transport.c b/nx-X11/lib/xtrans/transport.c index e1a8b45ec..fe0cff24d 100644 --- a/nx-X11/lib/xtrans/transport.c +++ b/nx-X11/lib/xtrans/transport.c @@ -61,9 +61,6 @@ from The Open Group. #include "Xtransint.h" -#ifdef DNETCONN -#include "Xtransdnet.c" -#endif #ifdef LOCALCONN #include "Xtranslcl.c" #endif -- cgit v1.2.3