Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!caip!sri-spam!mordor!jdb From: jdb@mordor.ARPA (John Bruner) Newsgroups: net.sources.d,net.unix,net.unix-wizards Subject: Re: Broken software using ULTRIX 1.2 Message-ID: <11406@mordor.ARPA> Date: Thu, 10-Jul-86 17:02:19 EDT Article-I.D.: mordor.11406 Posted: Thu Jul 10 17:02:19 1986 Date-Received: Fri, 11-Jul-86 08:24:44 EDT References: <455@phred.UUCP> <975@decuac.DEC.COM> <698@ihdev.UUCP> Reply-To: jdb@mordor.UUCP (John Bruner) Organization: S-1 Project, LLNL Lines: 35 Xref: watmath net.sources.d:326 net.unix:8573 net.unix-wizards:18782 >>> We recently "upgraded" ... to ULTRIX 1.2. ... the following don't work ... >>> uw (windows program) >> >>Structures in the kernel have changed (you would find the same >>"problems" upgrading to 4.3BSD, I suspect). Recompile. > >This may not work either..... I can't speak for other window programs, but as the author of UW perhaps I can shed a little light on its problems. When I distributed UW v2.10 in November, my VAX was running 4.3BSD. I recoded the server to use the data types and macros defined in 4.3BSD's . Since the FD_SET, FD_ISSET, etc. macros were not defined in 4.2BSD, I added some conditional code to define them. In so doing, I made a stupid incorrect assumption. Since VAX 4.2BSD was limited to 30 file descriptors (because of the layout of bits in page table words), I assumed that no 4.2BSD or 4.2BSD-derived implementation supported more than 30 file descriptors. This is wrong. I tried out the UW server on the only machines available to me (4.2 and 4.3 VAX, Sun, Integrated Solutions) and it worked. I do not know how many file descriptors ULTRIX 1.2 allows, but this is a possible source of problems. One cheap-hack workaround is to replace the call to "getdtablesize()" with the constant 30. A better fix is to recode the definitions of FD_SET, etc. I know that some implementations of 4.2BSD have had trouble with UW's UNIX-domain datagrams (used to pass file descriptors from one process to another). If UNIX-domain sockets aren't implemented (or are buggy), then "uwtool" won't work, but the UW server is still useable. -- John Bruner (S-1 Project, Lawrence Livermore National Laboratory) MILNET: jdb@mordor [jdb@s1-c.ARPA] (415) 422-0758 UUCP: ...!ucbvax!decwrl!mordor!jdb ...!seismo!mordor!jdb