Subject: Object file symbols limited to 8 characters [+FIX] (#164 - #7 of 19) Index: cc,as,ld,ar,ranlib,nm,nlist,adb,... (2.11BSD) Description: For some time now (seem like eons;-)) the object file format used by Unix for the PDP-11 has restricted symbols to 8 significant characters (actually 7 due to the C compiler prefixing symbols with a leading tilde (~) or underscore (_)). Aside from the "creative constraints" this imposes on the programmer there was the continuing problem of 'name collisions', especially when porting applications from machines whose object file format permitted longer symbol names. Numerous workarounds have been employed in the past. The most common one relied on a combination of a name collision detection program ('shortc') and the flexname capability of the C preprocessor ('cpp'). This served to mask the problem while making debugging difficult due to mangled/synthetic symbol names. Repeat-By: Attempt to compile the following program: int this_is_a_long_name; int this_is_a_long_name_too; main() { exit(0)}; Fix: This section is repeated in each of the 19 parts which make up the update kit. You should read it perhaps once or twice, but then skip over it (how to do that is mentioned below). Taking a "hint" from the a.out(5) man page: "The compiler will note name collisions when they occur within a single file... There is really little that can be done about this. Some thought is being given to modifying the loader to flag detectable collisions, but the real solution would be to change over to the 4BSD a.out format. This would involve modifying the compiler, assembler and adb and then simply porting the 4.3BSD ld, nm, ranlib, strip and nlist. Or perhaps simply porting the entire 4.3BSD suite might be best ... Anyone interested in a project?" This I have done. No more volunteers for the project need apply ;-) The new limit on symbol length is 32 characters! There is still a limit (but it is _much_ more reasonable now) simply because of address space constraints - it needs to be possible to hold at least one of the 'symbol' or 'string' tables in memory in many cases (nice to hold both, but - i know, get a 486;-)). It must be noted though that it is almost trivial now to raise the limit if that is desired - the programs which need to know the maximum length of a symbol string all have an easily changed #define statement now (usually MAXSYMLEN but there are a couple exceptions). The 'string table' format itself doesn't care how long the strings are. The actual a.out format won't have to change again to accomodate a higher limit on symbol name length! The "string table" object file format has been ported and all the necessary changes made throughout the entire system. The changes were *massive* and widespread. Programs affected of course included the assembler and compiler. Other programs affected were anything which accessed a symbol table entry either via nlist(3) [ps, pstat, fstat, vmstat, etc] or by reading object files [ld, ranlib, nm, adb, strip, etc]. The actual changes to the compiler and assembler were minor because those programs had already been modified earlier (updates #142, 143, 152, 153). The compiler only needed to have the maximum size of a symbol name raised. The assembler already knew how to generate 'string table' object files - all that needed to be done in 'as' was to flip a bit telling it to generate the new object format instead of the old style. +++++++++++++++ And now for a bit of a narrative about what was done. The detailed instructions for applying this part (#7 of 19) of the update kit follow the 'story' below. This started out as a semi-organized accounting of what was done but then devolved into a semi-rambling tale due to the sheer bulk of the changes. You can skip to the details for applying #164 by searching for the string "=======" below - this header is replicated in all parts of this kit. +++++++++++++++ Alas, the remaining changes were not so simple. Complete replacements for ranlib(1), ar(1), nlist(3) were ported from the Net-2 release. Other programs such as symorder(1) and two new programs 'symcompact' and 'strcompact' (used to compress/compact symbol and string tables) were written from scratch. Perhaps the two hardest parts of the whole effort were rewriting the linker 'ld' and making *large* modifications to the debugger 'adb'. This was a very difficult job. 'ld needed to scan new style ranlib archives, as well as using the "virtual memory" facility (the 'libvmf' routines posted earlier) for symbol table management and so on. 'adb' was a MESS (having been written in a pseudo block structured macro language). Since the new symbol table entry could be so much larger than the old it was no longer possible for adb to hold as much of the symbol table in memory - an alternate method took a while to develope and implement, more on that in the patch which deals with adb (actually the changes to adb are so large there are two substantial parts of this update kit just for adb!). After the basic programs (ar, ld, ranlib, etc) were running the system had to be completely recompiled from sources, beginning with the object libraries. After those were done the process of recompiling the rest of the system could proceed. Guess what happens when you recreate libc.a with a buggy linker? Yep - the system is rendered useless until backup copies of everything can be reloaded. Don't let this happen to you - be sure (and i'll repeat the point later) to back up the system (or at least key executables and .a files) before installing this upgrade. In all there were about 330 files modified during the change of object file format. Some of these were not directly related to the new object file format. There were a number of (obsolete) references to "BSD2_10" lingering in the system. Those have been replaced with "pdp11" and the 'BSD2_10' define has been removed from the C preprocessor (cpp). DO NOT use 'BSD2_10' to #ifdef pdp-11 sensitive code, use "pdp11" instead. During the recompile of the libraries a fairly large number of "shortened" names were lengthened - these included syscall routines such as "gethostname" which no longer had to be munged into "gethname". Also a surprising number of typographical errors were uncovered (mainly in the Fortran libraries) where an extra character (beyond the 7th character) was left off or accidentally added. These were all fixed and eventually, after a couple evenings, the libraries were built and installed. After the libraries were done it was the application programs' turn to be recompiled. This took the better part of a couple weeks to finally make it thru due to (as it turned out) the iterative nature of the task. A symbol would come up undefined and have to be tracked down exactly where the wrong definition/use was coming from. Finally, however, the task was done and it was time to move on to the kernel. The kernel proved to be suprisingly easy - no real complications arose except when it came time to reboot, a bug had been introduced into 'autoconfig' (who uses 'nlist' to scan the kernel symbol table). Ouch! That was another couple late nights. Since the compiler supports unsigned longs now a number of small changes which ifdef'd 'u_long' to 'long' were removed. REMEMBER - you need to recompile 'autoconfig' and install it before rebooting the new kernel ;-) The performance of 'ps' though (and anything else which used nlist(3), 'fstat', 'w' are good examples) was unacceptably slow. So, amidst other delays (real work, the earthquake - which almost tossed the disc drive to the floor, etc) the "symorder" program was written (with ideas borrowed from the Net-2 version). The symorder(1) program rather insists on holding both the symbol and string tables in memory - this was a problem (or could be if the kernel symbol table grows much more) so two new and original programs were written: 'symcompact' and 'strcompact'. The first program compacts the symbol table by removing 'register' local variables (they're of no use to anyone - the debugger doesn't/can't do anything with them) and redundant global text symbols (symbols in an overlaid program which are in the root segment do not need both the '~' and '_' symbols present). The second program 'strcompact' is one that any 'string table' based object file system can use. It implements "shared strings" for symbols - if a program has many references to 'error' as a local symbol, why store the string 'error' more than once? Simply store one instance and then update the symbol table entries to all point to the same string! Using both 'strcompact' and 'symcompact' on the /unix image resulted in a file that was 15kb smaller. Running 'symorder' then puts the most frequently used symbols at the front of the symbol table, the performance of 'w', 'pstat', and other programs which nlist(3) the kernel was now acceptable. Some of the parts of this kit are large. The large patch files have been split into pieces which the 'patch' will handle, other parts (the replacement 'ar' sources) were left as a single 'shar' file rather than split them up. Each part of this kit consists of: a 'patchfile' - this is used with the "patch" program to update files. an optional 'script' - this is run ("sh script") to perform initialization, remove files, create directories and so on. an optional 'new.sources' - this is a "shar" file containing complete sources for a program. ALL pathnames are _absolute_ - this way you do not have to "cd" around the system, you should be able to apply all the patches while you are in /tmp (or /usr/tmp - wherever you have the most free space). Be sure that you have at least 40mb free on /usr before rebuilding the system - if you do not then building in stages will be necessary. Part 19 contains the detailed instructions for rebuilding the system _after_ the previous 18 patches have been applied. The patches (#158 thru #175) should be applied in order following the directions in each part. DO NOT recompile anything once the patching has begun until requested to do so in part 19. Many of the system include files are modified and the object file format is being changed - recompilation will not be possible until the transformation of the system and object libraries is complete. AT A MINIMUM you will want to back up the following files (unless you have a known good backup already made) in case you need to recompile something before part 19 is done: /bin/ar /bin/ld /bin/nm /bin/as /usr/bin/ranlib /lib/c0 /lib/crt0.o /lib/mcrt0.o /lib/libc.a /bin/nm /usr/include/*.h /usr/include/sys/*.h In part 19 there is a *complete* list of all files affected (all 336 of them) - you may wish to back those up also. And now the common header ('boilerplate') is over (at last ;-)), let the installation guide begin. As always, the complete 2.11BSD updates are available via anonymous FTP to 'ftp.iipo.gtegsc.com' in the directory /pub/2.11BSD ========== #164 (Part #7 of 19) This part updates the following files. BACK THESE UP if you have any worries about the proceedure or do not have a bootable backup already at hand. /usr/src/etc/termcap/Makefile /usr/src/etc/getty/gettytab.h /usr/src/etc/routed/af.c /usr/src/etc/routed/defs.h /usr/src/etc/htable/htable.c /usr/src/etc/timed/cmds.c /usr/src/etc/timed/cmdtab.c /usr/src/etc/timed/globals.h /usr/src/etc/timed/timed.c /usr/src/etc/timed/timedc.h /usr/src/etc/named/tools/nslookup/res.h /usr/src/etc/named/tools/nslookup/shortnames.h /usr/src/etc/named/named/db_lookup.c /usr/src/etc/named/named/db_save.c /usr/src/etc/named/named/storage.c /usr/src/etc/named/named/ns.h /usr/src/etc/named/named/shortnames.h /usr/src/etc/named/named/Makefile /usr/src/etc/talkd/talkd.c /usr/src/etc/talkd/announce.c /usr/src/etc/talkd/print.c /usr/src/etc/talkd/process.c /usr/src/etc/talkd/table.c /usr/src/etc/talkd/shortnames.h /usr/src/etc/tftpd/tftpd.c /usr/src/etc/fstat.c /usr/src/etc/shutdown.c 0) Be in a temp directory ("cd /tmp" or "cd /usr/tmp") 1) Save the following shar archive to a file (/tmp/164 for example) 2) Unpack the archive: sh 164 3) Run the script: ./script 4) Patch the files: patch -p0 < patchfile 5) rm 164 script patchfile Part 7 of 19 is done. DO NOT rebuild or compile _anything_ at this point! ===== cut here #! /bin/sh # This is a shell archive, meaning: # 1. Remove everything above the #! /bin/sh line. # 2. Save the resulting text in a file. # 3. Execute the file with /bin/sh (not csh) to create: # script # patchfile # This archive created: Fri Feb 4 22:24:06 1994 export PATH; PATH=/bin:/usr/bin:$PATH if test -f 'script' then echo shar: "will not over-write existing file 'script'" else sed 's/^X//' << \SHAR_EOF > 'script' X#! /bin/sh X Xrm -f /usr/src/etc/named/tools/nslookup/shortnames.h Xrm -f /usr/src/etc/named/named/shortnames.h Xrm -f /usr/src/etc/talkd/shortnames.h SHAR_EOF chmod 755 'script' fi if test -f 'patchfile' then echo shar: "will not over-write existing file 'patchfile'" else sed 's/^X//' << \SHAR_EOF > 'patchfile' X*** /usr/src/etc/termcap/Makefile.old Wed Jan 20 13:59:17 1993 X--- /usr/src/etc/termcap/Makefile Sun Jan 23 01:27:27 1994 X*************** X*** 3,9 **** X # All rights reserved. The Berkeley software License Agreement X # specifies the terms and conditions for redistribution. X # X! # @(#)Makefile 5.2 (Berkeley) 3/3/86 X # X # reorder gives an editor command for most common terminals X # (in reverse order from n'th to 1'st most commonly used) X--- 3,9 ---- X # All rights reserved. The Berkeley software License Agreement X # specifies the terms and conditions for redistribution. X # X! # @(#)Makefile 5.2.1 (2.11BSD GTE) 1/23/94 X # X # reorder gives an editor command for most common terminals X # (in reverse order from n'th to 1'st most commonly used) X*************** X*** 20,26 **** X tabset: FRC X rm -fr ${DESTDIR}/usr/lib/tabset X mkdir ${DESTDIR}/usr/lib/tabset X! cp tabset/* ${DESTDIR}/usr/lib/tabset X X clean: X rm -f termcap X--- 20,27 ---- X tabset: FRC X rm -fr ${DESTDIR}/usr/lib/tabset X mkdir ${DESTDIR}/usr/lib/tabset X! chmod 755 ${DESTDIR}/usr/lib/tabset X! install -c -m 444 tabset/* ${DESTDIR}/usr/lib/tabset X X clean: X rm -f termcap X*** /usr/src/etc/getty/gettytab.h.old Tue Feb 17 00:50:37 1987 X--- /usr/src/etc/getty/gettytab.h Mon Jan 10 21:44:34 1994 X*************** X*** 3,14 **** X * All rights reserved. The Berkeley software License Agreement X * specifies the terms and conditions for redistribution. X * X! * @(#)gettytab.h 5.2 (Berkeley) 1/7/86 X */ X- X- #ifdef BSD2_10 X- #include X- #endif BSD2_10 X X /* X * Getty description definitions. X--- 3,10 ---- X * All rights reserved. The Berkeley software License Agreement X * specifies the terms and conditions for redistribution. X * X! * @(#)gettytab.h 5.2.1 (2.11BSD GTE) 12/31/93 X */ X X /* X * Getty description definitions. X*** /usr/src/etc/routed/af.c.old Mon Jan 18 08:46:51 1993 X--- /usr/src/etc/routed/af.c Mon Jan 10 21:44:55 1994 X*************** X*** 4,12 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)af.c 5.4 (Berkeley) 4/20/86"; X! #endif not lint X X #include "defs.h" X X--- 4,12 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)af.c 5.4.1 (2.11BSD GTE) 1/1/94"; X! #endif X X #include "defs.h" X X*************** X*** 40,55 **** X register struct sockaddr_in *sin; X struct afhash *hp; X { X! register u_long n; X X n = inet_netof(sin->sin_addr); X if (n) X while ((n & 0xff) == 0) { X n >>= 8; X- #ifdef BSD2_10 X- /* 2.10BSD compiler doesn't support unsigned longs */ X- n &= 0x00ffffff; X- #endif X } X hp->afh_nethash = n; X hp->afh_hosthash = ntohl(sin->sin_addr.s_addr); X--- 40,51 ---- X register struct sockaddr_in *sin; X struct afhash *hp; X { X! u_long n; X X n = inet_netof(sin->sin_addr); X if (n) X while ((n & 0xff) == 0) { X n >>= 8; X } X hp->afh_nethash = n; X hp->afh_hosthash = ntohl(sin->sin_addr.s_addr); X*** /usr/src/etc/routed/defs.h.old Mon Sep 5 15:15:32 1988 X--- /usr/src/etc/routed/defs.h Mon Jan 10 21:45:10 1994 X*************** X*** 3,9 **** X * All rights reserved. The Berkeley software License Agreement X * specifies the terms and conditions for redistribution. X * X! * @(#)defs.h 5.3 (Berkeley) 5/30/86 X */ X X /* X--- 3,9 ---- X * All rights reserved. The Berkeley software License Agreement X * specifies the terms and conditions for redistribution. X * X! * @(#)defs.h 5.3.1 (2.11BSD GTE) 1/1/94 X */ X X /* X*************** X*** 12,21 **** X * protocol specs with mods relevant to more X * general addressing scheme. X */ X- #ifdef BSD2_10 X- #define inet_portcheck inet_pcheck X- #define inet_portmatch inet_pmatch X- #endif BSD2_10 X #include X #include X X--- 12,17 ---- X*** /usr/src/etc/htable/htable.c.old Sat Dec 24 23:33:04 1988 X--- /usr/src/etc/htable/htable.c Mon Jan 10 21:45:33 1994 X*************** X*** 4,27 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X char copyright[] = X "@(#) Copyright (c) 1983 Regents of the University of California.\n\ X All rights reserved.\n"; X- #endif not lint X X! #ifndef lint X! static char sccsid[] = "@(#)htable.c 5.5 (Berkeley) 4/15/86"; X! #endif not lint X X /* X * htable - convert NIC host table into a UNIX format. X * NIC format is described in RFC 810, 1 March 1982. X */ X- #ifdef BSD2_10 X- #define connected_nets _cn_net X- #define gatewayto _gtwyto X- #endif BSD2_10 X X #include X #include X--- 4,21 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X char copyright[] = X "@(#) Copyright (c) 1983 Regents of the University of California.\n\ X All rights reserved.\n"; X X! static char sccsid[] = "@(#)htable.c 5.5.1 (2.11BSD GTE) 1/1/94"; X! #endif X X /* X * htable - convert NIC host table into a UNIX format. X * NIC format is described in RFC 810, 1 March 1982. X */ X X #include X #include X*** /usr/src/etc/timed/cmds.c.old Sun Dec 25 00:23:39 1988 X--- /usr/src/etc/timed/cmds.c Mon Jan 10 21:46:09 1994 X*************** X*** 4,12 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)cmds.c 2.2 (Berkeley) 4/21/86"; X! #endif not lint X X #include "timedc.h" X #include X--- 4,12 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)cmds.c 2.2.1 (2.11BSD GTE) 1/1/94"; X! #endif X X #include "timedc.h" X #include X*************** X*** 15,25 **** X #define TSPTYPES X #include X #include X- X- #ifdef BSD2_10 X- #define measure_delta meas_delta X- #define measure_status meas_status X- #endif X X int id; X int sock; X--- 15,20 ---- X*** /usr/src/etc/timed/cmdtab.c.old Sat Aug 29 16:37:11 1987 X--- /usr/src/etc/timed/cmdtab.c Mon Jan 10 21:46:26 1994 X*************** X*** 4,20 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)cmdtab.c 2.3 (Berkeley) 5/28/86"; X! #endif not lint X X #include "timedc.h" X- X- #ifdef BSD2_10 X- #define clockdiffhelp clkd_help X- #define testinghelp test_help X- #define tracinghelp trcg_help X- #endif X X int clockdiff(), help(), msite(), quit(), testing(), tracing(); X X--- 4,14 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)cmdtab.c 2.3.1 (2.11BSD GTE) 1/1/94"; X! #endif X X #include "timedc.h" X X int clockdiff(), help(), msite(), quit(), testing(), tracing(); X X*** /usr/src/etc/timed/globals.h.old Sat Dec 24 23:16:22 1988 X--- /usr/src/etc/timed/globals.h Mon Jan 10 21:46:40 1994 X*************** X*** 4,10 **** X * specifies the terms and conditions for redistribution. X */ X X! /* @(#)globals.h 2.4 (Berkeley) 5/27/86 */ X X #include X #include X--- 4,10 ---- X * specifies the terms and conditions for redistribution. X */ X X! /* @(#)globals.h 2.4.1 (2.11BSD GTE) 1/1/94 */ X X #include X #include X*************** X*** 16,26 **** X #include X #include X X- #ifdef BSD2_10 X- #define measure_delta meas_delta X- #define measure_status meas_status X- #endif X- X extern int errno; X extern int sock; X X--- 16,21 ---- X*************** X*** 40,46 **** X #define GOOD 1 X #define UNREACHABLE 2 X #define NONSTDTIME 3 X! #ifdef BSD2_10 X #define HOSTDOWN 0x7fff X #else X #define HOSTDOWN 0x7fffffff X--- 35,41 ---- X #define GOOD 1 X #define UNREACHABLE 2 X #define NONSTDTIME 3 X! #ifdef pdp11 X #define HOSTDOWN 0x7fff X #else X #define HOSTDOWN 0x7fffffff X*** /usr/src/etc/timed/timed.c.old Sat Dec 24 23:16:20 1988 X--- /usr/src/etc/timed/timed.c Mon Jan 10 21:46:55 1994 X*************** X*** 4,18 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X char copyright[] = X "@(#) Copyright (c) 1985 Regents of the University of California.\n\ X All rights reserved.\n"; X- #endif not lint X X! #ifndef lint X! static char sccsid[] = "@(#)timed.c 2.10 (Berkeley) 6/2/86"; X! #endif not lint X X #include "globals.h" X #define TSPTYPES X--- 4,16 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X char copyright[] = X "@(#) Copyright (c) 1985 Regents of the University of California.\n\ X All rights reserved.\n"; X X! static char sccsid[] = "@(#)timed.c 2.10.1 (2.11BSD GTE) 1/1/94"; X! #endif X X #include "globals.h" X #define TSPTYPES X*************** X*** 296,306 **** X while ((mask & 1) == 0) { X addr >>= 1; X mask >>= 1; X- #ifdef BSD2_10 X- /* 2.10BSD compiler doesn't support u_long */ X- addr &= 0x7fffffff; X- mask &= 0x7fffffff; X- #endif X } X for (n = nets ; n ; n = n->next) X if (addr == n->net) X--- 294,299 ---- X*** /usr/src/etc/timed/timedc.h.old Sat Aug 29 16:35:07 1987 X--- /usr/src/etc/timed/timedc.h Mon Jan 10 21:47:09 1994 X*************** X*** 4,10 **** X * specifies the terms and conditions for redistribution. X */ X X! /* @(#)timedc.h 2.1 (Berkeley) 12/10/85 */ X X #include X #include X--- 4,10 ---- X * specifies the terms and conditions for redistribution. X */ X X! /* @(#)timedc.h 2.1.1 (2.11BSD GTE) 1/1/94 */ X X #include X #include X*************** X*** 26,32 **** X #define GOOD 1 X #define UNREACHABLE 2 X #define NONSTDTIME 3 X! #ifdef BSD2_10 X #define HOSTDOWN 0x7fff X #else X #define HOSTDOWN 0x7fffffff X--- 26,32 ---- X #define GOOD 1 X #define UNREACHABLE 2 X #define NONSTDTIME 3 X! #ifdef pdp11 X #define HOSTDOWN 0x7fff X #else X #define HOSTDOWN 0x7fffffff X*** /usr/src/etc/named/tools/nslookup/res.h.old Mon Apr 26 10:12:29 1993 X--- /usr/src/etc/named/tools/nslookup/res.h Wed Jan 26 22:11:27 1994 X*************** X*** 16,22 **** X * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF X * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. X * X! * @(#)res.h 5.10 (Berkeley) 6/1/90 X */ X X /* X--- 16,22 ---- X * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF X * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. X * X! * @(#)res.h 5.10.1 (2.11BSD GTE) 1/26/94 X */ X X /* X*************** X*** 34,40 **** X ******************************************************************************* X */ X X- #include "shortnames.h" X /* X * This really doesn't belong here and can go away when newer resolver routines X * and include files are ported over. X--- 34,39 ---- X*** /usr/src/etc/named/named/db_lookup.c.old Sun Sep 4 00:14:42 1988 X--- /usr/src/etc/named/named/db_lookup.c Mon Jan 10 21:47:35 1994 X*************** X*** 10,26 **** X * is provided ``as is'' without express or implied warranty. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)db_lookup.c 4.14 (Berkeley) 2/17/88"; X! #endif /* not lint */ X X /* X * Table lookup routines. X */ X- X- #ifdef BSD2_10 X- #include "shortnames.h" X- #endif X X #include X #include X--- 10,22 ---- X * is provided ``as is'' without express or implied warranty. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)db_lookup.c 4.14.1 (2.11BSD GTE) 1/1/94"; X! #endif X X /* X * Table lookup routines. X */ X X #include X #include X*** /usr/src/etc/named/named/db_save.c.old Wed Sep 7 01:18:47 1988 X--- /usr/src/etc/named/named/db_save.c Mon Jan 10 21:47:59 1994 X*************** X*** 10,26 **** X * is provided ``as is'' without express or implied warranty. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)db_save.c 4.13 (Berkeley) 2/17/88"; X! #endif /* not lint */ X X /* X * Buffer allocation and deallocation routines. X */ X- X- #ifdef BSD2_10 X- #include "shortnames.h" X- #endif X X #include X #include X--- 10,22 ---- X * is provided ``as is'' without express or implied warranty. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)db_save.c 4.13.1 (2.11BSD GTE) 1/1/94"; X! #endif X X /* X * Buffer allocation and deallocation routines. X */ X X #include X #include X*** /usr/src/etc/named/named/storage.c.old Sun Sep 4 00:14:28 1988 X--- /usr/src/etc/named/named/storage.c Sat Jan 1 00:35:03 1994 X*************** X*** 21,32 **** X * This software is Copyright (C) 1987 by the United States Army. X * All rights reserved. X */ X! #ifndef lint X! static char RCSstorage[] = "@(#)$Header: /us1/cr/work/named/named/RCS/storage.c,v 1.1 88/09/04 03:13:33 cr Exp Locker: cr $"; X! #endif X! X! #ifdef BSD2_10 X! #include "shortnames.h" X #endif X X #include X--- 21,28 ---- X * This software is Copyright (C) 1987 by the United States Army. X * All rights reserved. X */ X! #if defined(DOSCCS) && !defined(lint) X! static char RCSstorage[] = "@(#)$Header: /us1/cr/work/named/named/RCS/storage.c,v 1.1 94/01/01 03:13:33 cr Exp Locker: cr $"; X #endif X X #include X*** /usr/src/etc/named/named/ns.h.old Sun Sep 4 00:39:47 1988 X--- /usr/src/etc/named/named/ns.h Mon Jan 10 21:48:24 1994 X*************** X*** 9,24 **** X * software without specific prior written permission. This software X * is provided ``as is'' without express or implied warranty. X * X! * @(#)ns.h 4.21 (Berkeley) 2/28/88 X */ X X /* X * Global definitions and variables for the name server. X */ X- X- #ifdef BSD2_10 X- #include "shortnames.h" X- #endif X X #include X #include X--- 9,20 ---- X * software without specific prior written permission. This software X * is provided ``as is'' without express or implied warranty. X * X! * @(#)ns.h 4.21.1 (2.11BSD GTE) 1/1/94 X */ X X /* X * Global definitions and variables for the name server. X */ X X #include X #include X*** /usr/src/etc/named/named/Makefile.old Tue Jan 19 22:24:05 1993 X--- /usr/src/etc/named/named/Makefile Sun Jan 2 17:09:42 1994 X*************** X*** 59,164 **** X # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. X X db_dump.o: db_dump.c /usr/include/sys/param.h /usr/include/sys/localopts.h X! db_dump.o: /usr/include/machine/machparam.h /usr/include/signal.h X! db_dump.o: /usr/include/sys/types.h /usr/include/sys/time.h /usr/include/time.h X! db_dump.o: /usr/include/sys/stat.h /usr/include/netinet/in.h X! db_dump.o: /usr/include/short_names.h /usr/include/netdb.h X! db_dump.o: /usr/include/short_names.h /usr/include/stdio.h X! db_dump.o: /usr/include/syslog.h /usr/include/arpa/nameser.h ns.h shortnames.h X! db_dump.o: /usr/include/strings.h /usr/include/arpa/inet.h X! db_dump.o: /usr/include/short_names.h db.h X db_load.o: db_load.c /usr/include/sys/param.h /usr/include/sys/localopts.h X! db_load.o: /usr/include/machine/machparam.h /usr/include/signal.h X! db_load.o: /usr/include/sys/types.h /usr/include/sys/time.h /usr/include/time.h X! db_load.o: /usr/include/sys/stat.h /usr/include/netinet/in.h X! db_load.o: /usr/include/short_names.h /usr/include/stdio.h X! db_load.o: /usr/include/syslog.h /usr/include/ctype.h /usr/include/netdb.h X! db_load.o: /usr/include/short_names.h /usr/include/arpa/nameser.h ns.h X! db_load.o: shortnames.h /usr/include/strings.h /usr/include/arpa/inet.h X! db_load.o: /usr/include/short_names.h db.h X! db_lookup.o: db_lookup.c shortnames.h /usr/include/sys/types.h X! db_lookup.o: /usr/include/stdio.h /usr/include/arpa/nameser.h db.h X db_reload.o: db_reload.c /usr/include/sys/types.h /usr/include/sys/time.h X! db_reload.o: /usr/include/time.h /usr/include/netinet/in.h X! db_reload.o: /usr/include/short_names.h /usr/include/stdio.h X db_reload.o: /usr/include/syslog.h /usr/include/arpa/nameser.h ns.h X! db_reload.o: shortnames.h /usr/include/strings.h /usr/include/arpa/inet.h X! db_reload.o: /usr/include/short_names.h db.h X! db_save.o: db_save.c shortnames.h /usr/include/sys/types.h /usr/include/stdio.h X db_save.o: /usr/include/syslog.h /usr/include/arpa/nameser.h db.h X db_update.o: db_update.c /usr/include/sys/types.h /usr/include/sys/socket.h X! db_update.o: /usr/include/short_names.h /usr/include/sys/time.h X! db_update.o: /usr/include/time.h /usr/include/netinet/in.h X! db_update.o: /usr/include/short_names.h /usr/include/stdio.h X db_update.o: /usr/include/syslog.h /usr/include/arpa/nameser.h ns.h X! db_update.o: shortnames.h /usr/include/strings.h /usr/include/arpa/inet.h X! db_update.o: /usr/include/short_names.h db.h X ns_forw.o: ns_forw.c /usr/include/stdio.h /usr/include/sys/param.h X ns_forw.o: /usr/include/sys/localopts.h /usr/include/machine/machparam.h X! ns_forw.o: /usr/include/signal.h /usr/include/sys/types.h X! ns_forw.o: /usr/include/sys/time.h /usr/include/time.h X! ns_forw.o: /usr/include/sys/socket.h /usr/include/short_names.h X! ns_forw.o: /usr/include/netinet/in.h /usr/include/short_names.h X! ns_forw.o: /usr/include/syslog.h /usr/include/arpa/nameser.h ns.h shortnames.h X! ns_forw.o: /usr/include/strings.h /usr/include/arpa/inet.h X! ns_forw.o: /usr/include/short_names.h db.h X ns_init.o: ns_init.c /usr/include/sys/types.h /usr/include/sys/socket.h X! ns_init.o: /usr/include/short_names.h /usr/include/sys/time.h X! ns_init.o: /usr/include/time.h /usr/include/netinet/in.h X! ns_init.o: /usr/include/short_names.h /usr/include/stdio.h /usr/include/errno.h X ns_init.o: /usr/include/signal.h /usr/include/syslog.h /usr/include/ctype.h X! ns_init.o: /usr/include/arpa/nameser.h ns.h shortnames.h /usr/include/strings.h X! ns_init.o: /usr/include/arpa/inet.h /usr/include/short_names.h db.h X ns_main.o: ns_main.c /usr/include/sys/param.h /usr/include/sys/localopts.h X! ns_main.o: /usr/include/machine/machparam.h /usr/include/signal.h X! ns_main.o: /usr/include/sys/types.h /usr/include/sys/file.h X! ns_main.o: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/wait.h X! ns_main.o: /usr/include/sys/resource.h /usr/include/sys/ioctl.h X! ns_main.o: /usr/include/sys/ttychars.h /usr/include/sys/ttydev.h X! ns_main.o: /usr/include/sys/socket.h /usr/include/short_names.h X! ns_main.o: /usr/include/netinet/in.h /usr/include/short_names.h X! ns_main.o: /usr/include/net/if.h /usr/include/net/if_arp.h /usr/include/stdio.h X! ns_main.o: /usr/include/syslog.h /usr/include/errno.h /usr/include/signal.h X! ns_main.o: /usr/include/netdb.h /usr/include/short_names.h X ns_main.o: /usr/include/arpa/nameser.h /usr/include/arpa/inet.h X! ns_main.o: /usr/include/short_names.h /usr/include/resolv.h ns.h shortnames.h X! ns_main.o: /usr/include/strings.h /usr/include/arpa/inet.h X! ns_main.o: /usr/include/short_names.h db.h X ns_maint.o: ns_maint.c /usr/include/sys/param.h /usr/include/sys/localopts.h X! ns_maint.o: /usr/include/machine/machparam.h /usr/include/signal.h X! ns_maint.o: /usr/include/sys/types.h /usr/include/sys/socket.h X! ns_maint.o: /usr/include/short_names.h /usr/include/sys/time.h X! ns_maint.o: /usr/include/time.h /usr/include/netinet/in.h X! ns_maint.o: /usr/include/short_names.h /usr/include/stdio.h X ns_maint.o: /usr/include/syslog.h /usr/include/signal.h /usr/include/errno.h X! ns_maint.o: /usr/include/arpa/nameser.h ns.h shortnames.h X! ns_maint.o: /usr/include/strings.h /usr/include/arpa/inet.h X! ns_maint.o: /usr/include/short_names.h db.h X ns_req.o: ns_req.c /usr/include/stdio.h /usr/include/sys/param.h X ns_req.o: /usr/include/sys/localopts.h /usr/include/machine/machparam.h X! ns_req.o: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/uio.h X ns_req.o: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/socket.h X! ns_req.o: /usr/include/short_names.h /usr/include/netinet/in.h X! ns_req.o: /usr/include/short_names.h /usr/include/syslog.h X! ns_req.o: /usr/include/sys/file.h /usr/include/arpa/nameser.h ns.h shortnames.h X! ns_req.o: /usr/include/strings.h /usr/include/arpa/inet.h X! ns_req.o: /usr/include/short_names.h db.h X ns_resp.o: ns_resp.c /usr/include/stdio.h /usr/include/sys/param.h X ns_resp.o: /usr/include/sys/localopts.h /usr/include/machine/machparam.h X! ns_resp.o: /usr/include/signal.h /usr/include/sys/types.h X! ns_resp.o: /usr/include/sys/time.h /usr/include/time.h X! ns_resp.o: /usr/include/sys/socket.h /usr/include/short_names.h X! ns_resp.o: /usr/include/sys/file.h /usr/include/netinet/in.h X! ns_resp.o: /usr/include/short_names.h /usr/include/syslog.h X! ns_resp.o: /usr/include/arpa/nameser.h ns.h shortnames.h /usr/include/strings.h X! ns_resp.o: /usr/include/arpa/inet.h /usr/include/short_names.h db.h X ns_sort.o: ns_sort.c /usr/include/stdio.h /usr/include/sys/types.h X ns_sort.o: /usr/include/sys/time.h /usr/include/time.h X! ns_sort.o: /usr/include/sys/socket.h /usr/include/short_names.h X! ns_sort.o: /usr/include/sys/file.h /usr/include/netinet/in.h X! ns_sort.o: /usr/include/short_names.h /usr/include/syslog.h X! ns_sort.o: /usr/include/arpa/nameser.h ns.h shortnames.h /usr/include/strings.h X! ns_sort.o: /usr/include/arpa/inet.h /usr/include/short_names.h db.h X ns_stats.o: ns_stats.c X X # IF YOU PUT ANYTHING HERE IT WILL GO AWAY X--- 59,147 ---- X # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. X X db_dump.o: db_dump.c /usr/include/sys/param.h /usr/include/sys/localopts.h X! db_dump.o: /usr/include/machine/machparam.h /usr/include/sys/types.h X! db_dump.o: /usr/include/signal.h /usr/include/sys/types.h X! db_dump.o: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/stat.h X! db_dump.o: /usr/include/netinet/in.h /usr/include/netdb.h /usr/include/stdio.h X! db_dump.o: /usr/include/syslog.h /usr/include/arpa/nameser.h ns.h X! db_dump.o: /usr/include/strings.h /usr/include/arpa/inet.h db.h X db_load.o: db_load.c /usr/include/sys/param.h /usr/include/sys/localopts.h X! db_load.o: /usr/include/machine/machparam.h /usr/include/sys/types.h X! db_load.o: /usr/include/signal.h /usr/include/sys/types.h X! db_load.o: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/stat.h X! db_load.o: /usr/include/netinet/in.h /usr/include/stdio.h /usr/include/syslog.h X! db_load.o: /usr/include/ctype.h /usr/include/netdb.h X! db_load.o: /usr/include/arpa/nameser.h ns.h /usr/include/strings.h X! db_load.o: /usr/include/arpa/inet.h db.h X! db_lookup.o: db_lookup.c /usr/include/sys/types.h /usr/include/stdio.h X! db_lookup.o: /usr/include/arpa/nameser.h db.h X db_reload.o: db_reload.c /usr/include/sys/types.h /usr/include/sys/time.h X! db_reload.o: /usr/include/time.h /usr/include/netinet/in.h /usr/include/stdio.h X db_reload.o: /usr/include/syslog.h /usr/include/arpa/nameser.h ns.h X! db_reload.o: /usr/include/strings.h /usr/include/arpa/inet.h db.h X! db_save.o: db_save.c /usr/include/sys/types.h /usr/include/stdio.h X db_save.o: /usr/include/syslog.h /usr/include/arpa/nameser.h db.h X db_update.o: db_update.c /usr/include/sys/types.h /usr/include/sys/socket.h X! db_update.o: /usr/include/sys/time.h /usr/include/time.h X! db_update.o: /usr/include/netinet/in.h /usr/include/stdio.h X db_update.o: /usr/include/syslog.h /usr/include/arpa/nameser.h ns.h X! db_update.o: /usr/include/strings.h /usr/include/arpa/inet.h db.h X ns_forw.o: ns_forw.c /usr/include/stdio.h /usr/include/sys/param.h X ns_forw.o: /usr/include/sys/localopts.h /usr/include/machine/machparam.h X! ns_forw.o: /usr/include/sys/types.h /usr/include/signal.h X! ns_forw.o: /usr/include/sys/types.h /usr/include/sys/time.h /usr/include/time.h X! ns_forw.o: /usr/include/sys/socket.h /usr/include/netinet/in.h X! ns_forw.o: /usr/include/syslog.h /usr/include/arpa/nameser.h ns.h X! ns_forw.o: /usr/include/strings.h /usr/include/arpa/inet.h db.h X ns_init.o: ns_init.c /usr/include/sys/types.h /usr/include/sys/socket.h X! ns_init.o: /usr/include/sys/time.h /usr/include/time.h X! ns_init.o: /usr/include/netinet/in.h /usr/include/stdio.h /usr/include/errno.h X ns_init.o: /usr/include/signal.h /usr/include/syslog.h /usr/include/ctype.h X! ns_init.o: /usr/include/arpa/nameser.h ns.h /usr/include/strings.h X! ns_init.o: /usr/include/arpa/inet.h db.h X ns_main.o: ns_main.c /usr/include/sys/param.h /usr/include/sys/localopts.h X! ns_main.o: /usr/include/machine/machparam.h /usr/include/sys/types.h X! ns_main.o: /usr/include/signal.h /usr/include/sys/types.h X! ns_main.o: /usr/include/sys/file.h /usr/include/sys/time.h /usr/include/time.h X! ns_main.o: /usr/include/sys/wait.h /usr/include/sys/resource.h X! ns_main.o: /usr/include/sys/ioctl.h /usr/include/sys/ttychars.h X! ns_main.o: /usr/include/sys/ttydev.h /usr/include/sys/socket.h X! ns_main.o: /usr/include/netinet/in.h /usr/include/net/if.h X! ns_main.o: /usr/include/net/if_arp.h /usr/include/stdio.h /usr/include/syslog.h X! ns_main.o: /usr/include/errno.h /usr/include/signal.h /usr/include/netdb.h X ns_main.o: /usr/include/arpa/nameser.h /usr/include/arpa/inet.h X! ns_main.o: /usr/include/resolv.h ns.h /usr/include/strings.h X! ns_main.o: /usr/include/arpa/inet.h db.h X ns_maint.o: ns_maint.c /usr/include/sys/param.h /usr/include/sys/localopts.h X! ns_maint.o: /usr/include/machine/machparam.h /usr/include/sys/types.h X! ns_maint.o: /usr/include/signal.h /usr/include/sys/types.h X! ns_maint.o: /usr/include/sys/socket.h /usr/include/sys/time.h X! ns_maint.o: /usr/include/time.h /usr/include/netinet/in.h /usr/include/stdio.h X ns_maint.o: /usr/include/syslog.h /usr/include/signal.h /usr/include/errno.h X! ns_maint.o: /usr/include/arpa/nameser.h ns.h /usr/include/strings.h X! ns_maint.o: /usr/include/arpa/inet.h db.h X ns_req.o: ns_req.c /usr/include/stdio.h /usr/include/sys/param.h X ns_req.o: /usr/include/sys/localopts.h /usr/include/machine/machparam.h X! ns_req.o: /usr/include/sys/types.h /usr/include/signal.h X! ns_req.o: /usr/include/sys/types.h /usr/include/sys/uio.h X ns_req.o: /usr/include/sys/time.h /usr/include/time.h /usr/include/sys/socket.h X! ns_req.o: /usr/include/netinet/in.h /usr/include/syslog.h X! ns_req.o: /usr/include/sys/file.h /usr/include/arpa/nameser.h ns.h X! ns_req.o: /usr/include/strings.h /usr/include/arpa/inet.h db.h X ns_resp.o: ns_resp.c /usr/include/stdio.h /usr/include/sys/param.h X ns_resp.o: /usr/include/sys/localopts.h /usr/include/machine/machparam.h X! ns_resp.o: /usr/include/sys/types.h /usr/include/signal.h X! ns_resp.o: /usr/include/sys/types.h /usr/include/sys/time.h /usr/include/time.h X! ns_resp.o: /usr/include/sys/socket.h /usr/include/sys/file.h X! ns_resp.o: /usr/include/netinet/in.h /usr/include/syslog.h X! ns_resp.o: /usr/include/arpa/nameser.h ns.h /usr/include/strings.h X! ns_resp.o: /usr/include/arpa/inet.h db.h X ns_sort.o: ns_sort.c /usr/include/stdio.h /usr/include/sys/types.h X ns_sort.o: /usr/include/sys/time.h /usr/include/time.h X! ns_sort.o: /usr/include/sys/socket.h /usr/include/sys/file.h X! ns_sort.o: /usr/include/netinet/in.h /usr/include/syslog.h X! ns_sort.o: /usr/include/arpa/nameser.h ns.h /usr/include/strings.h X! ns_sort.o: /usr/include/arpa/inet.h db.h X ns_stats.o: ns_stats.c X X # IF YOU PUT ANYTHING HERE IT WILL GO AWAY X*** /usr/src/etc/talkd/talkd.c.old Sun Jun 12 20:26:27 1988 X--- /usr/src/etc/talkd/talkd.c Mon Jan 10 21:48:49 1994 X*************** X*** 4,21 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X char copyright[] = X "@(#) Copyright (c) 1983 Regents of the University of California.\n\ X All rights reserved.\n"; X- #endif not lint X X! #ifndef lint X! static char sccsid[] = "@(#)talkd.c 5.2 (Berkeley) 3/13/86"; X! #endif not lint X! X! #ifdef BSD2_10 X! #include "shortnames.h" X #endif X X /* X--- 4,15 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X char copyright[] = X "@(#) Copyright (c) 1983 Regents of the University of California.\n\ X All rights reserved.\n"; X X! static char sccsid[] = "@(#)talkd.c 5.2.1 (2.11BSD GTE) 1/1/94"; X #endif X X /* X*** /usr/src/etc/talkd/announce.c.old Sun Jun 12 20:17:42 1988 X--- /usr/src/etc/talkd/announce.c Mon Jan 10 21:49:17 1994 X*************** X*** 4,15 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)announce.c 5.3 (Berkeley) 3/13/86"; X! #endif not lint X! X! #ifdef BSD2_10 X! #include "shortnames.h" X #endif X X #include X--- 4,11 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)announce.c 5.3.1 (2.11BSD GTE) 1/1/94"; X #endif X X #include X*** /usr/src/etc/talkd/print.c.old Sat Dec 24 23:28:50 1988 X--- /usr/src/etc/talkd/print.c Mon Jan 10 21:49:36 1994 X*************** X*** 4,15 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)print.c 5.2 (Berkeley) 3/13/86"; X! #endif not lint X! X! #ifdef BSD2_10 X! #include "shortnames.h" X #endif X X /* debug print routines */ X--- 4,11 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)print.c 5.2.1 (2.11BSD GTE) 1/1/94"; X #endif X X /* debug print routines */ X*** /usr/src/etc/talkd/process.c.old Sun Jun 12 20:26:27 1988 X--- /usr/src/etc/talkd/process.c Mon Jan 10 21:49:50 1994 X*************** X*** 4,15 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)process.c 5.4 (Berkeley) 3/13/86"; X! #endif not lint X! X! #ifdef BSD2_10 X! #include "shortnames.h" X #endif X X /* X--- 4,11 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)process.c 5.4.1 (2.11BSD GTE) 1/1/94"; X #endif X X /* X*** /usr/src/etc/talkd/table.c.old Sat Dec 24 23:28:50 1988 X--- /usr/src/etc/talkd/table.c Mon Jan 10 21:50:11 1994 X*************** X*** 4,15 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X! static char sccsid[] = "@(#)table.c 5.2 (Berkeley) 3/13/86"; X! #endif not lint X! X! #ifdef BSD2_10 X! #include "shortnames.h" X #endif X X /* X--- 4,11 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X! static char sccsid[] = "@(#)table.c 5.2.1 (2.11BSD GTE) 1/1/94"; X #endif X X /* X*** /usr/src/etc/tftpd/tftpd.c.old Wed May 15 21:37:45 1991 X--- /usr/src/etc/tftpd/tftpd.c Mon Jan 10 21:50:38 1994 X*************** X*** 17,35 **** X * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. X */ X X! #ifndef lint X char copyright[] = X "@(#) Copyright (c) 1983 Regents of the University of California.\n\ X All rights reserved.\n"; X- #endif /* not lint */ X X! #ifndef lint X! static char sccsid[] = "@(#)tftpd.c 5.12 (Berkeley) 6/1/90"; X #endif /* not lint */ X- X- #ifdef BSD2_10 X- #define timeoutbuf to_buf X- #endif X X /* X * Trivial file transfer protocol server. X--- 17,29 ---- X * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. X */ X X! #if defined(DOSCCS) && !defined(lint) X char copyright[] = X "@(#) Copyright (c) 1983 Regents of the University of California.\n\ X All rights reserved.\n"; X X! static char sccsid[] = "@(#)tftpd.c 5.12.1 (2.11BSD GTE) 1/1/94"; X #endif /* not lint */ X X /* X * Trivial file transfer protocol server. X*** /usr/src/etc/fstat.c.old Thu Dec 24 15:00:38 1992 X--- /usr/src/etc/fstat.c Mon Jan 10 21:51:13 1994 X*************** X*** 10,37 **** X * is provided ``as is'' without express or implied warranty. X */ X X! #ifndef lint X char copyright[] = X "@(#) Copyright (c) 1987 Regents of the University of California.\n\ X All rights reserved.\n"; X- #endif /* not lint */ X X! #ifndef lint X! static char sccsid[] = "@(#)fstat.c 5.11 (Berkeley) 2/22/88"; X! #endif /* not lint */ X X /* X * fstat X */ X- #ifndef BSD2_10 X- #include X- #else X- #include X- #endif X #include X- #ifndef BSD2_10 X- #include X- #endif X #include X #include X #include X--- 10,27 ---- X * is provided ``as is'' without express or implied warranty. X */ X X! #if defined(DOSCCS) && !defined(lint) X char copyright[] = X "@(#) Copyright (c) 1987 Regents of the University of California.\n\ X All rights reserved.\n"; X X! static char sccsid[] = "@(#)fstat.c 5.11.1 (2.11BSD GTE) 12/31/93"; X! #endif X X /* X * fstat X */ X #include X #include X #include X #include X*************** X*** 80,86 **** X } DEVS; X DEVS *devs; X X! #ifdef BSD2_10 X static struct nlist nl[] = { X { "_proc" }, X #define X_PROC 0 X--- 70,76 ---- X } DEVS; X DEVS *devs; X X! #ifdef pdp11 X static struct nlist nl[] = { X { "_proc" }, X #define X_PROC 0 X*************** X*** 105,117 **** X #endif X X struct proc *mproc; X! #ifndef BSD2_10 X struct pte *Usrptma, *usrpt; X #endif X X union { X struct user user; X! #ifdef BSD2_10 X char upages[ctob(USIZE)]; X #else X char upages[UPAGES][NBPG]; X--- 95,107 ---- X #endif X X struct proc *mproc; X! #ifndef pdp11 X struct pte *Usrptma, *usrpt; X #endif X X union { X struct user user; X! #ifdef pdp11 X char upages[ctob(USIZE)]; X #else X char upages[UPAGES][NBPG]; X*************** X*** 122,128 **** X static int fflg, vflg; X static int kmem, mem, nproc, swap; X static char *uname; X! #ifdef BSD2_10 X static off_t netdata; X long lgetw(); X #endif X--- 112,118 ---- X static int fflg, vflg; X static int kmem, mem, nproc, swap; X static char *uname; X! #ifdef pdp11 X static off_t netdata; X long lgetw(); X #endif X*************** X*** 187,193 **** X fprintf(stderr, "%s: No namelist\n", N_UNIX); X exit(1); X } X! #ifdef BSD2_10 X if (nl[X_NETDATA].n_type) { X netdata = lgetw((off_t)nl[X_NETDATA].n_value); X netdata = ctob(netdata); X--- 177,183 ---- X fprintf(stderr, "%s: No namelist\n", N_UNIX); X exit(1); X } X! #ifdef pdp11 X if (nl[X_NETDATA].n_type) { X netdata = lgetw((off_t)nl[X_NETDATA].n_value); X netdata = ctob(netdata); X*************** X*** 198,204 **** X #endif X nproc = (int)lgetw((off_t)nl[X_NPROC].n_value); X X! #ifdef BSD2_10 X (void)lseek(kmem, (off_t)nl[X_PROC].n_value, L_SET); X #else X (void)lseek(kmem, lgetw((off_t)nl[X_PROC].n_value), L_SET); X--- 188,194 ---- X #endif X nproc = (int)lgetw((off_t)nl[X_NPROC].n_value); X X! #ifdef pdp11 X (void)lseek(kmem, (off_t)nl[X_PROC].n_value, L_SET); X #else X (void)lseek(kmem, lgetw((off_t)nl[X_PROC].n_value), L_SET); X*************** X*** 233,239 **** X exit(0); X } X X! #ifndef BSD2_10 X static X getu() X { X--- 223,229 ---- X exit(0); X } X X! #ifndef pdp11 X static X getu() X { X*************** X*** 306,312 **** X { X struct text text; X X! #ifdef BSD2_10 X if (!mproc->p_textp) X return; X #endif X--- 296,302 ---- X { X struct text text; X X! #ifdef pdp11 X if (!mproc->p_textp) X return; X #endif X*************** X*** 341,347 **** X } X if (mproc->p_pid == 0) X comm = "swapper"; X! #ifndef BSD2_10 X else if (mproc->p_pid == 2) X comm = "pagedaemon"; X #endif X--- 331,337 ---- X } X if (mproc->p_pid == 0) X comm = "swapper"; X! #ifndef pdp11 X else if (mproc->p_pid == 2) X comm = "pagedaemon"; X #endif X*************** X*** 365,377 **** X X switch(ftype) { X case DTYPE_INODE: X! #ifdef BSD2_10 X case DTYPE_PIPE: X #endif X printf("\t%2d, %2d\t%5lu\t%6ld\t%3s %s\n", major(inode.i_dev), X minor(inode.i_dev), (long)inode.i_number, X inode.i_mode == IFSOCK ? 0L : inode.i_size, X! #ifdef BSD2_10 X ftype == DTYPE_PIPE ? "pip" : X #endif X itype(inode.i_mode), name ? name : ""); X--- 355,367 ---- X X switch(ftype) { X case DTYPE_INODE: X! #ifdef pdp11 X case DTYPE_PIPE: X #endif X printf("\t%2d, %2d\t%5lu\t%6ld\t%3s %s\n", major(inode.i_dev), X minor(inode.i_dev), (long)inode.i_number, X inode.i_mode == IFSOCK ? 0L : inode.i_size, X! #ifdef pdp11 X ftype == DTYPE_PIPE ? "pip" : X #endif X itype(inode.i_mode), name ? name : ""); X*************** X*** 434,440 **** X char dname[32], *strcpy(); X X /* fill in socket */ X! #ifdef BSD2_10 X (void)lseek(mem, (off_t)sock + netdata, L_SET); X if (read(mem, (char *)&so, sizeof(struct socket)) X #else X--- 424,430 ---- X char dname[32], *strcpy(); X X /* fill in socket */ X! #ifdef pdp11 X (void)lseek(mem, (off_t)sock + netdata, L_SET); X if (read(mem, (char *)&so, sizeof(struct socket)) X #else X*************** X*** 447,453 **** X } X X /* fill in protosw entry */ X! #ifdef BSD2_10 X (void)lseek(mem, (off_t)so.so_proto + netdata, L_SET); X if (read(mem, (char *)&proto, sizeof(struct protosw)) X #else X--- 437,443 ---- X } X X /* fill in protosw entry */ X! #ifdef pdp11 X (void)lseek(mem, (off_t)so.so_proto + netdata, L_SET); X if (read(mem, (char *)&proto, sizeof(struct protosw)) X #else X*************** X*** 460,466 **** X } X X /* fill in domain */ X! #ifdef BSD2_10 X (void)lseek(mem, (off_t)proto.pr_domain + netdata, L_SET); X if (read(mem, (char *)&dom, sizeof(struct domain)) X #else X--- 450,456 ---- X } X X /* fill in domain */ X! #ifdef pdp11 X (void)lseek(mem, (off_t)proto.pr_domain + netdata, L_SET); X if (read(mem, (char *)&dom, sizeof(struct domain)) X #else X*************** X*** 479,485 **** X if (dom.dom_family == AF_INET) X (void)strcpy(dname, "inet"); X else { X! #ifdef BSD2_10 X (void)lseek(mem, (off_t)dom.dom_name + netdata, L_SET); X if ((len = read(mem, dname, sizeof(dname) - 1)) < 0) { X #else X--- 469,475 ---- X if (dom.dom_family == AF_INET) X (void)strcpy(dname, "inet"); X else { X! #ifdef pdp11 X (void)lseek(mem, (off_t)dom.dom_name + netdata, L_SET); X if ((len = read(mem, dname, sizeof(dname) - 1)) < 0) { X #else X*************** X*** 515,521 **** X getinetproto(proto.pr_protocol); X if (proto.pr_protocol == IPPROTO_TCP ) { X if (so.so_pcb) { X! #ifdef BSD2_10 X (void)lseek(mem,(off_t)so.so_pcb+netdata,L_SET); X if (read(mem, &inpcb, sizeof(struct inpcb)) X #else X--- 505,511 ---- X getinetproto(proto.pr_protocol); X if (proto.pr_protocol == IPPROTO_TCP ) { X if (so.so_pcb) { X! #ifdef pdp11 X (void)lseek(mem,(off_t)so.so_pcb+netdata,L_SET); X if (read(mem, &inpcb, sizeof(struct inpcb)) X #else X*************** X*** 536,542 **** X /* print address of pcb and connected pcb */ X if (so.so_pcb) { X printf(" %x", (int)so.so_pcb); X! #ifdef BSD2_10 X (void)lseek(mem, (off_t)so.so_pcb + netdata, L_SET); X if (read(mem, (char *)&unpcb, sizeof(struct unpcb)) X #else X--- 526,532 ---- X /* print address of pcb and connected pcb */ X if (so.so_pcb) { X printf(" %x", (int)so.so_pcb); X! #ifdef pdp11 X (void)lseek(mem, (off_t)so.so_pcb + netdata, L_SET); X if (read(mem, (char *)&unpcb, sizeof(struct unpcb)) X #else X*************** X*** 710,716 **** X lgetw(loc) X off_t loc; X { X! #ifdef BSD2_10 X u_short word; X #else X long word; X--- 700,706 ---- X lgetw(loc) X off_t loc; X { X! #ifdef pdp11 X u_short word; X #else X long word; X*** /usr/src/etc/shutdown.c.old Sun Jul 3 17:56:59 1988 X--- /usr/src/etc/shutdown.c Fri Dec 31 22:27:51 1993 X*************** X*** 4,21 **** X * specifies the terms and conditions for redistribution. X */ X X! #ifndef lint X char copyright[] = X "@(#) Copyright (c) 1983,1986 Regents of the University of California.\n\ X All rights reserved.\n"; X- #endif not lint X X! #ifndef lint X! static char sccsid[] = "@(#)shutdown.c 5.6 (Berkeley) 5/26/86"; X! #endif not lint X! X! #ifdef BSD2_10 X! #include X #endif X X #include X--- 4,15 ---- X * specifies the terms and conditions for redistribution. X */ X X! #if defined(DOSCCS) && !defined(lint) X char copyright[] = X "@(#) Copyright (c) 1983,1986 Regents of the University of California.\n\ X All rights reserved.\n"; X X! static char sccsid[] = "@(#)shutdown.c 5.6.1 (2.11BSD GTE) 12/31/93"; X #endif X X #include SHAR_EOF chmod 640 'patchfile' fi exit 0 # End of shell archive