From: CSBVAX::CSBVAX::MRGATE::"SMTP::CRVAX.SRI.COM::RELAY-INFO-VAX" 1-MAR-1989 13:46 To: MRGATE::"ARISIA::EVERHART" Subj: TCP/IP support for VMS DECWindows Received: From KL.SRI.COM by CRVAX.SRI.COM with TCP; Tue, 28 FEB 89 16:32:56 PDT Received: from ucbvax.Berkeley.EDU by KL.SRI.COM with TCP; Tue, 28 Feb 89 16:23:54 PST Received: by ucbvax.Berkeley.EDU (5.61/1.33) id AA07727; Tue, 28 Feb 89 15:29:43 -0800 Received: from USENET by ucbvax.Berkeley.EDU with netnews for info-vax@kl.sri.com (info-vax@kl.sri.com) (contact usenet@ucbvax.Berkeley.EDU if you have questions) Date: 28 Feb 89 23:12:25 GMT From: quanta.eng.ohio-state.edu!kcgl1.eng.ohio-state.edu!JONESD@tut.cis.ohio-state.edu (David Jones) Organization: Ohio State University Subject: TCP/IP support for VMS DECWindows Message-Id: <1557@quanta.eng.ohio-state.edu> Sender: info-vax-request@kl.sri.com To: info-vax@kl.sri.com I got a chance last week to play with a VAXStation 3100 at a sales demonstra- tion and took advantage of the oportunity to investigate how DECWindows was implemented under VMS. The sales people were nowhere near as useful as TYPE, DIRECTORY, and ANALYZE/IMAGE. Apparently, the DECWindows server is a detached process running the image DECW$SERVER_MAIN. All communication between client applications and the server takes place though a transport layer whose code is isolated into a separate shareable image, DECW$TRANSPORT_COMMON. The DECW$TRANSPORT_COMMON.EXE shareable image defines about 20 routines with either a DECW$XPORT_ or DECW$$XPORT_ prefix. There are routines with I/O sounding names (READ, WRITE, OPEN, CLOSE) and routines that appear to be memory management oriented (ALLOCMEM, DEALLOCMEM, etc). To handle the actual transport protocols, TRANSPORT_COMMON activates additional shareable images of the form DECW$TRANSPORT_xxxx, where 'xxxx' matches the equivalence names of the logical name DECW$TRANSPORT_SERVERS. On the VAXStation I was on, DECW$TRANSPORT_SERVERS translated to "DECNET","LOCAL". A TRANSPORT_xxxx image defines one procedure in its global symbol table, DECW$TRANSPORT_INIT. This procedure returns the address of a data structure that contains, among other things, a list of 8 or 9 procedures within the image. These procedures in turn call the routines in DECW$TRANSPORT_COMMON. It looks to me like the hooks are in place to add additional transports (e.g. TCP/IP, SCS) without any modifications to the existing code. To link DECWindows to your own brand of TCP/IP, all we need is the documentation to the interface. Has anybody out there seen the documentation that comes with DECWindows/VMS, and if so, does it mention user-written transports? (The machines for my site are on order, but I'm impatient to find out). David L. Jones | Phone: (614) 292-6929 Ohio State Unviversity | Internet: 1971 Neil Ave. Rm. 406 | jonesd@kcgl1.eng.ohio-state.edu Columbus, OH 43210 | jones-d@eng.ohio-state.edu Disclaimer: A repudiation of a claim.