From owner-freebsd-bugs Sun Jan 26 03:20:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id DAA02336 for bugs-outgoing; Sun, 26 Jan 1997 03:20:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id DAA02330; Sun, 26 Jan 1997 03:20:02 -0800 (PST) Resent-Date: Sun, 26 Jan 1997 03:20:02 -0800 (PST) Resent-Message-Id: <199701261120.DAA02330@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, proff@iq.org Received: from profane.iq.org (profane.iq.org [203.4.184.217]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id DAA02226; Sun, 26 Jan 1997 03:17:10 -0800 (PST) Received: (from proff@localhost) by profane.iq.org (8.8.4/8.8.2) id WAA16474; Sun, 26 Jan 1997 22:17:20 +1100 (EST) Message-Id: <199701261117.WAA16474@profane.iq.org> Date: Sun, 26 Jan 1997 22:17:20 +1100 (EST) From: Julian Assange Reply-To: proff@iq.org To: FreeBSD-gnats-submit@freebsd.org, dyson@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2593: [small] security hole and nfs compatibility bug in rexecd.c Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2593 >Category: bin >Synopsis: [small] security hole and nfs compatibility bug in rexecd.c >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jan 26 03:20:01 PST 1997 >Last-Modified: >Originator: Julian Assange >Organization: >Release: FreeBSD 3.0-CURRENT i386 >Environment: >Description: rexecd.c performs a chdir(home) as root rather than as user, possibly allowing the rexecd.c client access to directories they would have otherwise been barred from. The condition also has the effect of breaking all nfs mounted home directories where root is mapped to non-root, and the home directory is o-x. Additionally the buffer overflow in error() I reported earlier does not exist (I somehow managed (ADD?;) to mixup the order of the arguments in my head, swapping err<->buf). >How-To-Repeat: >Fix: --- src/libexec/rexecd/rexecd.c~ Sun Jan 26 21:48:35 1997 +++ src/libexec/rexecd/rexecd.c Sun Jan 26 22:05:03 1997 @@ -66,9 +66,9 @@ /*VARARGS1*/ int error(); -char username[20] = "USER="; -char homedir[64] = "HOME="; -char shell[64] = "SHELL="; +char username[MAXLOGNAME+5+1] = "USER="; +char homedir[MAXPATHLEN+5+1] = "HOME="; +char shell[MAXPATHLEN+6+1] = "SHELL="; char path[sizeof(_PATH_DEFPATH) + sizeof("PATH=")] = "PATH="; char *envinit[] = {homedir, shell, path, username, 0}; @@ -213,10 +213,6 @@ syslog(LOG_INFO, "login from %s as %s", remote, user); - if (chdir(pwd->pw_dir) < 0) { - error("No remote directory.\n"); - exit(1); - } (void) write(2, "\0", 1); if (port) { (void) pipe(pv); @@ -276,6 +272,10 @@ cp++; else cp = pwd->pw_shell; + if (chdir(pwd->pw_dir) < 0) { + perror("bad remote directory.\n"); + exit(1); + } execl(pwd->pw_shell, cp, "-c", cmdbuf, 0); perror(pwd->pw_shell); exit(1); @@ -289,7 +289,7 @@ char buf[BUFSIZ]; buf[0] = 1; - (void) sprintf(buf+1, fmt, a1, a2, a3); + (void) snprintf(buf+1, sizeof(buf)-1, fmt, a1, a2, a3); (void) write(2, buf, strlen(buf)); } >Audit-Trail: >Unformatted: From owner-freebsd-bugs Sun Jan 26 03:32:13 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id DAA02632 for bugs-outgoing; Sun, 26 Jan 1997 03:32:13 -0800 (PST) Received: from xkis.kis.ru (root@xkis.kis.ru [194.87.66.200]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id DAA02627 for ; Sun, 26 Jan 1997 03:32:06 -0800 (PST) Received: from localhost (dv@localhost) by xkis.kis.ru (8.8.5/8.8.5) with SMTP id OAA00853 for ; Sun, 26 Jan 1997 14:31:34 +0300 (MSK) Date: Sun, 26 Jan 1997 14:31:34 +0300 (MSK) From: Dmitry Valdov To: freebsd-bugs@freebsd.org Subject: uucp ws fifo ports problem Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Hello! There is a problem with UUCP with some types of FIFO COM-ports. Fix: Change #define HAVE_POSIX_TERMIOS to #define HAVE_BSD_TTY in uucp/policy.h Dmitry. From owner-freebsd-bugs Sun Jan 26 04:10:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id EAA04064 for bugs-outgoing; Sun, 26 Jan 1997 04:10:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id EAA04056; Sun, 26 Jan 1997 04:10:02 -0800 (PST) Resent-Date: Sun, 26 Jan 1997 04:10:02 -0800 (PST) Resent-Message-Id: <199701261210.EAA04056@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.EAA04011;Sun; (8.8.5/8.8.5);, 26 Jan 1997 04:09:48.-0800 (PST) Message-Id: <199701261209.EAA04011@freefall.freebsd.org> Date: Sun, 26 Jan 1997 04:09:48 -0800 (PST) From: twells@ucsd.edu To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: bin/2594: floppy install hangs after or on npx driver; cannot proceed w/ sysinstall Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2594 >Category: bin >Synopsis: floppy install hangs after or on npx driver; cannot proceed w/ sysinstall >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jan 26 04:10:00 PST 1997 >Last-Modified: >Originator: Trevor Wells >Organization: >Release: 2.1.5 >Environment: >Description: Installation from floppy cannot proceed due to system hang on or after the npx driver. Installs all other drivers, and have tried disabling all devices not present from boot kernel. Current computer config: AMI 486 EISA mb w/ Intel 486DX2 66 Genoa Phantom 32i w/ 2MB 3com 3c509 ethernet card SIIG EIDE controller card Primary controller 1.6GB Western DIGital 420MB Western digital Secondary Controller 420MB Western digital 2 Com ports mouse on com1 irq 4 open serial on com4 irq 12 1 Parallel port HP Deskjet 820Cse printer Soundblster 16 SCSI NEC 4x internal SCSI CDROM USR Sportster 28.8 Vi modem on Com2 irq 3 USR Sportster 14.4 modem on Com3 irq 2 >How-To-Repeat: boot from floppy gives same results w/o fail >Fix: unknown >Audit-Trail: >Unformatted: From owner-freebsd-bugs Sun Jan 26 05:00:05 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA06704 for bugs-outgoing; Sun, 26 Jan 1997 05:00:05 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA06681; Sun, 26 Jan 1997 05:00:03 -0800 (PST) Date: Sun, 26 Jan 1997 05:00:03 -0800 (PST) Message-Id: <199701261300.FAA06681@freefall.freebsd.org> To: freebsd-bugs Cc: From: Peter Mutsaers Subject: kern/2562: bug seems to be solved Reply-To: Peter Mutsaers Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR kern/2562; it has been noted by GNATS. From: Peter Mutsaers To: freebsd-gnats-submit@freebsd.org Cc: Subject: kern/2562: bug seems to be solved Date: Sun, 26 Jan 1997 13:38:45 +0100 (MET) I submitted bug report kern/2562 a week ago. Today I recompiled my kernel and the problem is gone. I recompiled several times before, 2 weeks ago, with the same kernel config file, and then the bug was still there. Somehow it seems to have been solved in the meantime, but on cvs-all I didn't see any activity related to my bugreport. -- Peter Mutsaers | Abcoude (Utrecht), | Trust is a good quality plm@xs4all.nl | the Netherlands | for other people to have From owner-freebsd-bugs Sun Jan 26 06:14:21 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA10048 for bugs-outgoing; Sun, 26 Jan 1997 06:14:21 -0800 (PST) Received: from kremvax.demos.su (kremvax.demos.su [194.87.0.20]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id GAA10037 for ; Sun, 26 Jan 1997 06:14:16 -0800 (PST) Received: by kremvax.demos.su (8.6.13/D) from 0@megillah.demos.su [194.87.0.21] for with ESMTP id RAA23454; Sun, 26 Jan 1997 17:13:53 +0300 Received: by megillah.demos.su id RAA15111; (8.8.3/D) Sun, 26 Jan 1997 17:14:30 +0300 (MSK) Message-Id: <199701261414.RAA15111@megillah.demos.su> Subject: 2.2-beta's wtmp/utmp's behaviour To: bugs@freebsd.org Date: Sun, 26 Jan 1997 17:14:30 +0300 (MSK) From: "Mikhail A. Sokolov" X-Class: Fast Organization: Demos Company, Ltd. Reply-To: mishania@demos.su X-Mailer: ELM [version 2.4 PL24 ME7a] Content-Type: text Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Hello, as I wrote yesterday to questions@, there's kinda bug in 2.2-BETA's utmp/wtmp(?)As I recall, J. Wunch wrote about the same behaviour in 2.2-ALPHA some months ago, but we still have it broken. Strange thing is that I can't track why does it happend: some machines behave this way, some don't: 0 has logged on from ania205. 56.2 has logged on 205.183. from Äñê2. ^Cðê2 has logged on 56.2 from lÙ¿ïttyp2. 205.166. has logged on clueless from 195.2. LÙ¿ïttyp has logged on éeë2 from 1. {kussi}/usr/home/mishania> w 8:10 up 9:44, 6 users, load averages: 0.07, 0.02, 0.02 USER TTY FROM LOGIN@ IDLE WHAT root v0 - 05ÁÐÒ74 7:25 -csh (csh) r00t v1 - 05ÁÐÒ74 5:13 more mishania205.183. p0 56.4 12ÍÁÊ61 - w r00t p1 56.2 12ÍÁÊ61 40 -su -m (tcsh) r00t p2 56.2 12ÍÁÊ61 7:20 irc yu- irc.stealth.net (ir clueless205.166. p3 195.2 05ÁÐÒ74 5:43 - {kussi}/usr/home/mishania> uname -a FreeBSD kussi.31337.net 2.2-BETA_A FreeBSD 2.2-BETA_A #0: Tue Dec 31 02:31:30 CST 1996 mishania@kussi.31337.net:/usr/src/sys/compile/KUSSI i386 -mishania From owner-freebsd-bugs Sun Jan 26 06:50:05 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA10910 for bugs-outgoing; Sun, 26 Jan 1997 06:50:05 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA10903; Sun, 26 Jan 1997 06:50:03 -0800 (PST) Resent-Date: Sun, 26 Jan 1997 06:50:03 -0800 (PST) Resent-Message-Id: <199701261450.GAA10903@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, jhay@angel.cids.org.za Received: from callisto.cids.org.za (callisto.cids.org.za [146.64.58.43]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id GAA10757 for ; Sun, 26 Jan 1997 06:45:07 -0800 (PST) Received: from angel.cids.org.za (angel.cids.org.za [146.64.84.9]) by callisto.cids.org.za (8.8.5/8.8.5) with ESMTP id QAA17591 for ; Sun, 26 Jan 1997 16:45:01 +0200 (SAT) Received: (from jhay@localhost) by angel.cids.org.za (8.8.4/8.8.2) id QAA29388; Sun, 26 Jan 1997 16:44:59 +0200 (SAT) Message-Id: <199701261444.QAA29388@angel.cids.org.za> Date: Sun, 26 Jan 1997 16:44:59 +0200 (SAT) From: John Hay Reply-To: jhay@angel.cids.org.za To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2595: tzsetup is broken Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2595 >Category: bin >Synopsis: tzsetup don't get all zones right eg. South Africa >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jan 26 06:50:01 PST 1997 >Last-Modified: >Originator: John Hay >Organization: At Home >Release: FreeBSD 3.0-CURRENT i386 >Environment: FreeBSD 2.2-BETA and FreeBSD 3.0-CURRENT >Description: South Africa and some other countries don't feature in tzsetup, although they are in the /usr/share/misc/iso3166 and /usr/share/zoneinfo/zone.tab files, which tzsetup use the get its data. After looking at the code a little, it seems that it is because of the way tzsetup works. tzsetup uses the two letter iso3166 country code to do its indexing, but the zone.tab file have more than one entry with the same country code. The result is that some countries like Spain appear in three continents: Europe, Africa and Atlantic. Its appearance in Africa is axactly where South Africa should have been. --------- angel:/usr/src # grep '^ES' /usr/share/misc/iso3166 ES ESP 724 Spain angel:/usr/src # grep '^ES' /usr/share/zoneinfo/zone.tab ES +4024-00341 Europe/Madrid mainland ES +3553-00519 Africa/Ceuta Ceuta & Melilla ES +2806-01524 Atlantic/Canary Canary Islands angel:/usr/src # -------- >How-To-Repeat: On any 2.2-BETA or 3.0-CURRENT machine go into tzsetup and see if you can find Africa/South Africa or see how many times you can find Spain. :-) >Fix: >Audit-Trail: >Unformatted: From owner-freebsd-bugs Sun Jan 26 06:51:16 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA11011 for bugs-outgoing; Sun, 26 Jan 1997 06:51:16 -0800 (PST) Received: (from joerg@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA10992; Sun, 26 Jan 1997 06:51:11 -0800 (PST) Date: Sun, 26 Jan 1997 06:51:11 -0800 (PST) From: Joerg Wunsch Message-Id: <199701261451.GAA10992@freefall.freebsd.org> To: plm@xs4all.nl, joerg, freebsd-bugs Subject: Re: kern/2562 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: pppd causes system freeze State-Changed-From-To: open-closed State-Changed-By: joerg State-Changed-When: Sun Jan 26 15:50:44 MET 1997 State-Changed-Why: Closed at originator's request. From owner-freebsd-bugs Sun Jan 26 06:55:43 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA11149 for bugs-outgoing; Sun, 26 Jan 1997 06:55:43 -0800 (PST) Received: from sax.sax.de (sax.sax.de [193.175.26.33]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id GAA11144 for ; Sun, 26 Jan 1997 06:55:40 -0800 (PST) Received: (from uucp@localhost) by sax.sax.de (8.6.12/8.6.12-s1) with UUCP id PAA21772; Sun, 26 Jan 1997 15:55:30 +0100 Received: (from j@localhost) by uriah.heep.sax.de (8.8.4/8.6.9) id PAA06508; Sun, 26 Jan 1997 15:52:13 +0100 (MET) Message-ID: Date: Sun, 26 Jan 1997 15:52:13 +0100 From: j@uriah.heep.sax.de (J Wunsch) To: mishania@demos.su Cc: bugs@FreeBSD.org Subject: Re: 2.2-beta's wtmp/utmp's behaviour References: <199701261414.RAA15111@megillah.demos.su> X-Mailer: Mutt 0.55-PL10 Mime-Version: 1.0 X-Phone: +49-351-2012 669 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) In-Reply-To: <199701261414.RAA15111@megillah.demos.su>; from Mikhail A. Sokolov on Jan 26, 1997 17:14:30 +0300 Sender: owner-bugs@FreeBSD.org X-Loop: FreeBSD.org Precedence: bulk As Mikhail A. Sokolov wrote: > as I wrote yesterday to questions@, there's kinda bug in 2.2-BETA's > utmp/wtmp(?)As I recall, J. Wunch wrote about the same behaviour in > 2.2-ALPHA some months ago, but we still have it broken. Strange > thing is that I can't track why does it happend: some machines > behave this way, some don't: You are accidentally using the xterm and xdm binaries that are intended for FreeBSD 3.0-current. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Sun Jan 26 06:56:29 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA11194 for bugs-outgoing; Sun, 26 Jan 1997 06:56:29 -0800 (PST) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id GAA11189 for ; Sun, 26 Jan 1997 06:56:26 -0800 (PST) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.3/8.6.9) id BAA00538; Mon, 27 Jan 1997 01:51:53 +1100 Date: Mon, 27 Jan 1997 01:51:53 +1100 From: Bruce Evans Message-Id: <199701261451.BAA00538@godzilla.zeta.org.au> To: dv@kis.ru, freebsd-bugs@FreeBSD.org Subject: Re: uucp ws fifo ports problem Sender: owner-bugs@FreeBSD.org X-Loop: FreeBSD.org Precedence: bulk >There is a problem with UUCP with some types of FIFO COM-ports. > >Fix: > >Change #define HAVE_POSIX_TERMIOS to #define HAVE_BSD_TTY in uucp/policy.h This is fixed properly in all current versions (2.1.6, 2.2, -current). Some UARTs lose sync when null changes are made to their control registers while input is arriving, and the default uucp configuration apparently results in at least one such change for each packet so almost nothing gets through. Bruce From owner-freebsd-bugs Sun Jan 26 07:00:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id HAA11299 for bugs-outgoing; Sun, 26 Jan 1997 07:00:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id HAA11279; Sun, 26 Jan 1997 07:00:01 -0800 (PST) Date: Sun, 26 Jan 1997 07:00:01 -0800 (PST) Message-Id: <199701261500.HAA11279@freefall.freebsd.org> To: freebsd-bugs Cc: From: j@uriah.heep.sax.de (J Wunsch) Subject: Re: bin/2594: floppy install hangs after or on npx driver; cannot proceed w/ sysinstall Reply-To: j@uriah.heep.sax.de (J Wunsch) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2594; it has been noted by GNATS. From: j@uriah.heep.sax.de (J Wunsch) To: twells@ucsd.edu Cc: freebsd-gnats-submit@freebsd.org Subject: Re: bin/2594: floppy install hangs after or on npx driver; cannot proceed w/ sysinstall Date: Sun, 26 Jan 1997 15:37:39 +0100 As twells@ucsd.edu wrote: > Installation from floppy cannot proceed due to system hang on or after > the npx driver. Installs all other drivers, and have tried disabling > all devices not present from boot kernel. That's either on the attempt to mount the root filesystem, or at system startup. Can you already switch to VTY2 (Alt-F2), and see sysinstall messages there? There used to be a BIOS stack corruption problem in FreeBSD 2.1.5, can you try a more recent boot floppy (2.2-BETA) to see if the problem has been fixed there? -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Sun Jan 26 07:51:00 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id HAA12935 for bugs-outgoing; Sun, 26 Jan 1997 07:51:00 -0800 (PST) Received: from dg-rtp.dg.com (dg-rtp.rtp.dg.com [128.222.1.2]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id HAA12930 for ; Sun, 26 Jan 1997 07:50:57 -0800 (PST) Received: by dg-rtp.dg.com (5.4R3.10/dg-rtp-v02) id AA26611; Sun, 26 Jan 1997 10:50:26 -0500 Received: from ponds by dg-rtp.dg.com.rtp.dg.com; Sun, 26 Jan 1997 10:50 EST Received: from lakes.water.net (lakes [10.0.0.3]) by ponds.water.net (8.8.3/8.7.3) with ESMTP id KAA22532; Sun, 26 Jan 1997 10:24:12 -0500 (EST) Received: (from rivers@localhost) by lakes.water.net (8.8.3/8.6.9) id KAA17512; Sun, 26 Jan 1997 10:28:16 -0500 (EST) Date: Sun, 26 Jan 1997 10:28:16 -0500 (EST) From: Thomas David Rivers Message-Id: <199701261528.KAA17512@lakes.water.net> To: ponds!kis.ru!dv, ponds!freebsd.org!freebsd-bugs Subject: Re: uucp ws fifo ports problem Content-Type: text Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > > Hello! > > There is a problem with UUCP with some types of FIFO COM-ports. > > Fix: > > Change #define HAVE_POSIX_TERMIOS to #define HAVE_BSD_TTY in uucp/policy.h > > Dmitry. > > Could you describe the problem? That is, why is this a problem; what symptoms show up, etc... I've noticed in later versions of FreeBSD my uucp throughput has dropped; and one version began moving bad characters. I have yet to reproduce the bad-character problem (I just get corrupted news feeds, about one every two weeks.) - Dave Rivers - From owner-freebsd-bugs Sun Jan 26 12:59:58 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA23833 for bugs-outgoing; Sun, 26 Jan 1997 12:59:58 -0800 (PST) Received: (from mpp@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA23813; Sun, 26 Jan 1997 12:59:56 -0800 (PST) Date: Sun, 26 Jan 1997 12:59:56 -0800 (PST) From: Mike Pritchard Message-Id: <199701262059.MAA23813@freefall.freebsd.org> To: mpp, freebsd-bugs Subject: Re: docs/2460 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: manpages sometimes appear to be 0 bytes Responsible-Changed-From-To: freebsd-bugs->freebsd-bugs,mpp Responsible-Changed-By: mpp Responsible-Changed-When: Sun Jan 26 12:59:34 PST 1997 Responsible-Changed-Why: I'm investigating. From owner-freebsd-bugs Sun Jan 26 13:00:47 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id NAA23989 for bugs-outgoing; Sun, 26 Jan 1997 13:00:47 -0800 (PST) Received: (from mpp@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id NAA23968; Sun, 26 Jan 1997 13:00:44 -0800 (PST) Date: Sun, 26 Jan 1997 13:00:44 -0800 (PST) From: Mike Pritchard Message-Id: <199701262100.NAA23968@freefall.freebsd.org> To: mpp, freebsd-bugs, mpp Subject: Re: docs/2460 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: manpages sometimes appear to be 0 bytes Responsible-Changed-From-To: freebsd-bugs->mpp Responsible-Changed-By: mpp Responsible-Changed-When: Sun Jan 26 13:00:21 PST 1997 Responsible-Changed-Why: /freebsdTypoed last time... From owner-freebsd-bugs Sun Jan 26 16:10:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA04777 for bugs-outgoing; Sun, 26 Jan 1997 16:10:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA04762; Sun, 26 Jan 1997 16:10:02 -0800 (PST) Date: Sun, 26 Jan 1997 16:10:02 -0800 (PST) Message-Id: <199701270010.QAA04762@freefall.freebsd.org> To: freebsd-bugs Cc: From: john hood Subject: misc/2098: gdb problem in 2.1.6 Reply-To: john hood Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR misc/2098; it has been noted by GNATS. From: john hood To: freebsd-gnats-submit@freebsd.org Cc: Subject: misc/2098: gdb problem in 2.1.6 Date: Sun, 26 Jan 1997 19:07:16 -0500 (EST) John Brann writes: > Hi, > > I've just moved my laptop to 2.1.6. When I try to invoke gdb I get: > > ld.so: Undefined symbol "_vasprintf" called from gdb:gdb at 0x92344 > > This happens both with the installed copy and the one on the CD live > filesystem. I'm guessing that one of my system shared libraries is hosed, > any idea which one? You installed the compatibility libraries, right? I had this problem too; turns out that one of the compat2x libraries stomps on /usr/lib/libc.so.2.2 with an incompatible(!) library missing _vasprintf. The fix is easy: restore that library from the bin distribution. [I've tagged this onto a related PR.] --jh -- John Hood cgull@smoke.marlboro.vt.us Predictably, they all eventually wandered away, rubbing their bruises and brushing mud out of their hair. Some went off to work for the ESA, launching much smaller rockets into low orbits, while others elected to sit on their front porches drinking Jim Beam from the bottle and launching bottle rockets from the empties. [Jordan Hubbard] --SAA20077.854323193/smoke.marlboro.vt.us-- From owner-freebsd-bugs Sun Jan 26 16:40:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA07695 for bugs-outgoing; Sun, 26 Jan 1997 16:40:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA07689; Sun, 26 Jan 1997 16:40:02 -0800 (PST) Resent-Date: Sun, 26 Jan 1997 16:40:02 -0800 (PST) Resent-Message-Id: <199701270040.QAA07689@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, tihor@bsd.org Received: from polya.blah.org (slmel6p29.ozemail.com.au [203.108.201.189]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id QAA07055 for ; Sun, 26 Jan 1997 16:31:58 -0800 (PST) Received: (from root@localhost) by polya.blah.org (8.8.4/8.7.3) id LAA10709; Mon, 27 Jan 1997 11:31:53 +1100 (EST) Message-Id: <199701270031.LAA10709@polya.blah.org> Date: Mon, 27 Jan 1997 11:31:53 +1100 (EST) From: tihor@bsd.org Reply-To: tihor@bsd.org To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: misc/2596: dd refuses to respond to SIGkill Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2596 >Category: misc >Synopsis: dd refuses to respond to SIGkill >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jan 26 16:40:01 PST 1997 >Last-Modified: >Originator: Tihor Lim >Organization: >Release: FreeBSD 2.2-BETA_A i386 >Environment: >Description: Occasionally using dd to write an image to a floppy dies (floppy light doesnt come on, kill -9 fails to kill it). This occurred when comparing write times for various bs arguments to dd. >How-To-Repeat: time dd if=image of=/dev/fd0 bs=4096 this will occasionally die without warning. >Fix: >Audit-Trail: >Unformatted: From owner-freebsd-bugs Sun Jan 26 17:10:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA09070 for bugs-outgoing; Sun, 26 Jan 1997 17:10:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA09057; Sun, 26 Jan 1997 17:10:03 -0800 (PST) Resent-Date: Sun, 26 Jan 1997 17:10:03 -0800 (PST) Resent-Message-Id: <199701270110.RAA09057@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, mi@aldan.ziplink.net Received: from rtfm.ziplink.net ([199.232.255.52]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id QAA08465 for ; Sun, 26 Jan 1997 16:59:57 -0800 (PST) Received: (from mi@localhost) by rtfm.ziplink.net (8.8.4/8.7.3) id UAA00447; Sun, 26 Jan 1997 20:00:42 -0500 (EST) Message-Id: <199701270100.UAA00447@rtfm.ziplink.net> Date: Sun, 26 Jan 1997 20:00:42 -0500 (EST) From: mi@aldan.ziplink.net Reply-To: mi@aldan.ziplink.net To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2597: ld.so broken? Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2597 >Category: bin >Synopsis: everything stops when the new ld.so is installed >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jan 26 17:10:01 PST 1997 >Last-Modified: >Originator: Mikhail Teterin >Organization: >Release: FreeBSD 3.0-970118-SNAP i386 >Environment: No undocumented env-variables set >Description: It all starts when `make world' hits `install ...... ld.so' make, tail, find, vi, some others start giving `Bus error' After that only some programs work, and make is not one of them, so continuing making is impossible. Fortunately, mount, ls, rm, and ln work, so I could mount /cdrom (with 2.2 ?snapshot) and use it's ld.so But that ld.so does not quite work with the ld.so.hints the new ldconfig creates, so I had to flush and refill the file with cdrom's ldconfig as well (to bring up X). >How-To-Repeat: On the older system (mine was 2.2-960801-SNAP) do `make world'... Or, ask me for a copy of non-functioning ld.so (which is available in gzipped form to anyone). >Fix: See Description for work-around, wait for a fix. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Sun Jan 26 17:10:09 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA09091 for bugs-outgoing; Sun, 26 Jan 1997 17:10:09 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA09069; Sun, 26 Jan 1997 17:10:06 -0800 (PST) Date: Sun, 26 Jan 1997 17:10:06 -0800 (PST) Message-Id: <199701270110.RAA09069@freefall.freebsd.org> To: freebsd-bugs Cc: From: j@uriah.heep.sax.de (J Wunsch) Subject: Re: misc/2596: dd refuses to respond to SIGkill Reply-To: j@uriah.heep.sax.de (J Wunsch) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR misc/2596; it has been noted by GNATS. From: j@uriah.heep.sax.de (J Wunsch) To: tihor@bsd.org Cc: FreeBSD-gnats-submit@FreeBSD.ORG Subject: Re: misc/2596: dd refuses to respond to SIGkill Date: Mon, 27 Jan 1997 02:02:33 +0100 As tihor@bsd.org wrote: > Occasionally using dd to write an image to a floppy dies (floppy > light doesnt come on, kill -9 fails to kill it). This occurred when > comparing write times for various bs arguments to dd. Please, log into another terminal on that machine, and see on which event the process is waiting (_before_ trying to kill it). You can see this in the WCHAN field of a ps -alx listing. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Sun Jan 26 17:10:11 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA09109 for bugs-outgoing; Sun, 26 Jan 1997 17:10:11 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA09090; Sun, 26 Jan 1997 17:10:09 -0800 (PST) Resent-Date: Sun, 26 Jan 1997 17:10:09 -0800 (PST) Resent-Message-Id: <199701270110.RAA09090@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, mi@aldan.ziplink.net Received: from rtfm.ziplink.net ([199.232.255.52]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id RAA08868 for ; Sun, 26 Jan 1997 17:07:41 -0800 (PST) Received: (from mi@localhost) by rtfm.ziplink.net (8.8.4/8.7.3) id UAA00560; Sun, 26 Jan 1997 20:08:27 -0500 (EST) Message-Id: <199701270108.UAA00560@rtfm.ziplink.net> Date: Sun, 26 Jan 1997 20:08:27 -0500 (EST) From: mi@aldan.ziplink.net Reply-To: mi@aldan.ziplink.net To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: i386/2598: ep0 in EISA mode hangs if ep0-device (ISA) is enabled Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2598 >Category: i386 >Synopsis: ep0 in EISA mode hangs if ep0-device (ISA) is enabled >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jan 26 17:10:07 PST 1997 >Last-Modified: >Originator: Mikhail Teterin >Organization: >Release: FreeBSD 3.0-970118-SNAP i386 >Environment: kernel has ep-device built in. The card is set into EISA mode (nice feature). >Description: ep-device is recognized as EISA device at the beginning Then, it is probed and (obviously) not found on ISA bus. Attempts to ifconfig it later (from /etc/netstart or manually) hang machine cold... Note, this is not something new, it was happening with the August snapshot as well. >How-To-Repeat: See Description >Fix: Boot into -c, and disable ep0. The card works fine after that. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Mon Jan 27 02:20:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA29459 for bugs-outgoing; Mon, 27 Jan 1997 02:20:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA29444; Mon, 27 Jan 1997 02:20:03 -0800 (PST) Resent-Date: Mon, 27 Jan 1997 02:20:03 -0800 (PST) Resent-Message-Id: <199701271020.CAA29444@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, proff@iq.org Received: from profane.iq.org (profane.iq.org [203.4.184.217]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id CAA29076; Mon, 27 Jan 1997 02:10:00 -0800 (PST) Received: (from proff@localhost) by profane.iq.org (8.8.4/8.8.2) id VAA23979; Mon, 27 Jan 1997 21:10:28 +1100 (EST) Message-Id: <199701271010.VAA23979@profane.iq.org> Date: Mon, 27 Jan 1997 21:10:28 +1100 (EST) From: Julian Assange Reply-To: proff@iq.org To: FreeBSD-gnats-submit@freebsd.org, dyson@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2599: Lite2 merg and critical bugfix for games/larn Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2599 >Category: bin >Synopsis: Lite2 merg and critical bugfix for games/larn >Confidential: no >Severity: critical >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Jan 27 02:20:02 PST 1997 >Last-Modified: >Originator: Julian Assange >Organization: >Release: FreeBSD 3.0-CURRENT i386 >Environment: >Description: >How-To-Repeat: >Fix: --- pathnames.h Fri Apr 28 09:28:37 1995 +++ /usr/src/games/larn/pathnames.h Sun Sep 4 14:03:00 1994 @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * @(#)pathnames.h 5.2 (Berkeley) 4/27/95 + * @(#)pathnames.h 5.1 (Berkeley) 5/2/90 */ #define _PATH_LOG "/var/games/larn/llog12.0" @@ -38,4 +38,4 @@ #define _PATH_HELP "/usr/share/games/larn/larn.help" #define _PATH_LEVELS "/usr/share/games/larn/larnmaze" #define _PATH_FORTS "/usr/share/games/larn/lfortune" -#define _PATH_PLAYERIDS "/var/games/larn/playerids" +#define _PATH_PLAYERIDS "/usr/share/games/larn/playerids" >Audit-Trail: >Unformatted: From owner-freebsd-bugs Mon Jan 27 02:40:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA00333 for bugs-outgoing; Mon, 27 Jan 1997 02:40:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA00315; Mon, 27 Jan 1997 02:40:04 -0800 (PST) Resent-Date: Mon, 27 Jan 1997 02:40:04 -0800 (PST) Resent-Message-Id: <199701271040.CAA00315@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, proff@iq.org Received: from profane.iq.org (profane.iq.org [203.4.184.217]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id CAA29829 for ; Mon, 27 Jan 1997 02:30:15 -0800 (PST) Received: (from proff@localhost) by profane.iq.org (8.8.4/8.8.2) id VAA24164; Mon, 27 Jan 1997 21:30:55 +1100 (EST) Message-Id: <199701271030.VAA24164@profane.iq.org> Date: Mon, 27 Jan 1997 21:30:55 +1100 (EST) From: Julian Assange Reply-To: proff@iq.org To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2600: fortunes : fortunes2 Lite2 merge Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2600 >Category: bin >Synopsis: fortunes & fortunes2 Lite2 merge >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Class: change-request >Submitter-Id: current-users >Arrival-Date: Mon Jan 27 02:40:02 PST 1997 >Last-Modified: >Originator: Julian Assange >Organization: >Release: FreeBSD 3.0-CURRENT i386 >Environment: >Description: >How-To-Repeat: >Fix: --- /usr/src/games/fortune/datfiles/fortunes2 Wed Jan 8 21:39:07 1997 +++ src/games/fortune/datfiles/fortunes2 Mon Jan 3 09:58:38 1994 @@ -12663,6 +12663,8 @@ % Caution: Keep out of reach of children. % +CChheecckk yyoouurr dduupplleexx sswwiittcchh.. +% CCI Power 6/40: one board, a megabyte of cache, and an attitude... % Celebrate Hannibal Day this year. Take an elephant to lunch. @@ -20431,10 +20433,10 @@ Call (511) 338-0959 for an immediate appointment. % -Hier liegt ein Mann ganz ohnegleich; -Im Leibe dick, an Suenden reich. +Hier liegt ein Mann ganz obnegleich; +Im Leibe dick, an Suden reich. Wir haben ihn in das Grab gesteckt, Here lies a man with sundry flaws -Weil es uns duenkt er sei verreckt. And numerous Sins upon his head; +Weil es uns dunkt er sei verreckt. And numerous Sins upon his head; We buried him today because As far as we can tell, he's dead. @@ -36422,6 +36424,26 @@ trivially equivalent, so the only important n are n less than n. We can take n = n (from above), so it's true for n+1 becuase it's just about n. QED. (QED translates from the Latin as "So what?") +% +Proof techniques #2: Proof by Oddity. + SAMPLE: To prove that horses have an infinite number of legs. +[1] Horses have an even number of legs. +[2] They have two legs in back and fore legs in front. +[3] This makes a total of six legs, + which certainly is an odd number of legs for a horse. +[4] But the only number that is both odd and even is infinity. +[5] Therefore, horses must have an infinite number of legs. + +Topics is be covered in future issues include proof by: + intimidation, + gesticulation (handwaving), + "try it; it works", + constipation (I was just sitting there and...), + blatant assertion, + changing all the 2's to n's, + mutual consent, + lack of a counterexample, and, + "it stands to reason". % Proper treatment will cure a cold in seven days, but left to itself, a cold will hang on for a week. --- /usr/src/games/fortune/datfiles/fortunes Sun Jan 26 21:25:54 1997 +++ src/games/fortune/datfiles/fortunes Mon Jan 3 10:14:51 1994 @@ -2518,7 +2518,7 @@ % Caution: breathing may be hazardous to your health. % -CChheecckk yyoouurr dduupplleexx sswwiittcchh.. +CChheecckk yyoouurr dduupplleexx sswwiittcchh.. % Cecil, you're my final hope Of finding out the true Straight Dope @@ -5320,10 +5320,10 @@ motto is: 'It is very difficult to disprove certain kinds of pain.'" -- Dave Barry, "Pain and Suffering" % -Hier liegt ein Mann ganz ohnegleich; -Im Leibe dick, an Suenden reich. +Hier liegt ein Mann ganz obnegleich; +Im Leibe dick, an Suden reich. Wir haben ihn in das Grab gesteckt, Here lies a man with sundry flaws -Weil es uns duenkt er sei verreckt. And numerous Sins upon his head; +Weil es uns dunkt er sei verreckt. And numerous Sins upon his head; We buried him today because As far as we can tell, he's dead. -- PDQ Bach's epitaph, as requested by his cousin Betty @@ -8579,8 +8579,8 @@ Malek's Law: Any simple idea will be worded in the most complicated way. % -Man 1: Ask me. "What is the most important thing about telling a good - joke?" +Man 1: Ask me the what the most important thing about telling a good + joke is. Man 2: OK, what is the most impo -- @@ -10547,7 +10547,7 @@ (4) But the only number that is both odd and even is infinity. (5) Therefore, horses must have an infinite number of legs. -Topics to be covered in future issues include proof by: +Topics is be covered in future issues include proof by: Intimidation Gesticulation (handwaving) "Try it; it works" @@ -16278,7 +16278,7 @@ "Yow! Am I having fun yet?" -- Zippy the Pinhead % -YOW!! Everybody out of the GENETIC POOL! +YOW!! Everybody out of the GENETIC POOL!" % Zero Defects, n.: The result of shutting down a production line. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Mon Jan 27 04:12:02 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id EAA02942 for bugs-outgoing; Mon, 27 Jan 1997 04:12:02 -0800 (PST) Received: from selene.sol.cs.ritsumei.ac.jp (selene.sol.cs.ritsumei.ac.jp [133.19.20.15]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id EAA02925 for ; Mon, 27 Jan 1997 04:11:50 -0800 (PST) Received: from localhost by selene.sol.cs.ritsumei.ac.jp (8.8.4+2.7Wbeta4/3.5Wpl1-sol) id VAA04345; Mon, 27 Jan 1997 21:11:40 +0900 (JST) To: bugs@freebsd.org Cc: mouri@sol.cs.ritsumei.ac.jp Subject: ccd and BOUNCE_BUFFER X-Mailer: Mew version 1.54 on Emacs 19.28.1, Mule 2.3 Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-Id: <19970127211139N.mouri@sol.cs.ritsumei.ac.jp> Date: Mon, 27 Jan 1997 21:11:39 +0900 From: Koichi MOURI X-Dispatcher: impost version 0.96++ (Jan. 13, 1997) Lines: 57 Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I tried to use ccd(Concatenated Disk Driver) on 2.2-BETA. I recompired a kernel for ccd and rebooted. And I executed ccdconfig. But kernel was in a panic. Messages: vm_bounce_alloc: b_bufsize(0x0) < b_bcount(0x200) !! panic: vm_bounce_alloc When I comment out "options BOUNCE_BUFFER" and recompile kernel, ccd works fine (but memory size is only 16MB). help me... My kernel configure file: ---------------------------- machine "i386" cpu "I486_CPU" ident SFX maxusers 8 options INET options FFS options NFS options PROCFS options "COMPAT_43" options SCSI_DELAY=5 options BOUNCE_BUFFERS options FAILSAFE options USERCONFIG options MAXCONS=2 config kernel root on wd0 controller isa0 controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr disk fd0 at fdc0 drive 0 controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr disk wd0 at wdc0 drive 0 controller aha0 at isa? port "IO_AHA0" bio irq ? drq 5 vector ahaintr controller scbus0 device sd0 device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr device npx0 at isa? port "IO_NPX" irq 13 vector npxintr device ed0 at isa? port 0x280 net irq 9 iomem 0xd8000 vector edintr pseudo-device loop pseudo-device ether pseudo-device log pseudo-device pty 4 pseudo-device ccd 1 ---------------------------- Koichi MOURI From owner-freebsd-bugs Mon Jan 27 04:39:15 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id EAA04432 for bugs-outgoing; Mon, 27 Jan 1997 04:39:15 -0800 (PST) Received: from oxtody.wias-berlin.de (oxtody.wias-berlin.de [192.124.249.175]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id EAA04404 for ; Mon, 27 Jan 1997 04:38:48 -0800 (PST) From: griepent@wias-berlin.de Received: from pascal.wias-berlin.de by oxtody.wias-berlin.de (5.65v3.2/1.1.10.5/06Jan97-0122PM) id AA08130; Mon, 27 Jan 1997 13:38:27 +0100 Received: by pascal.wias-berlin.de (5.65v3.2/1.1.10.5/19Dec96-0827AM) id AA32085; Mon, 27 Jan 1997 13:38:23 +0100 Date: Mon, 27 Jan 1997 13:38:23 +0100 Message-Id: <9701271238.AA32085@pascal.wias-berlin.de> Subject: FreeBSD 2.1.5 ci command interpreter test failed Apparently-To: bugs@FreeBSD.org Sender: owner-bugs@FreeBSD.org X-Loop: FreeBSD.org Precedence: bulk Hello, bugs@FreeBSD.org ! I am going to use numerical applications on a X11 Window desktop and I do not want to miss the nice and stable FreeBSD system, because I like it so much, much more than Linux. To stay compatible with our institute I want to work with our self-written command interpreter ci. To compile a test version tci there are necessary the following three files ci.h, ci.c and tci.c: ------------------------------------------------------------------------------ ----------------------------------- ci.h ------------------------------------- ------------------------------------------------------------------------------ /* * $Id: ci.h,v 2.1 1996/09/04 09:19:21 fuhrmann Exp $ */ /*--------------------------------------------------------------------- CI 2.0 Command Interpreter Interface Author: Juergen Fuhrmann Weierstrass-Institut fuer Angewandte Analysis und Stochastik Mohrenstrasse 39 10117 Berlin -------------------------------------------------------------------------*/ #ifndef CI #define CI #include #define DEFAULT_CI #ifndef PARM #ifdef NOPROTO #define PARM(list) () #else #define PARM(list) list #endif #endif #ifndef STRING #ifdef NOACPP #define STRING(x) "x" #define CONCAT(x,y) x/* */y #else #define STRING(x) #x #define CONCAT(x,y) x##y #endif #endif #define CMD(cmd) CONCAT(c_,cmd) #define CI_BUFSIZE 512 #define CI_LINSIZE 256 #define CI_IDTSIZE 32 #define CI_MAXARGS 8 /* Common procedures - always active */ typedef struct tdsc *ciType; ciType ciDefineType PARM(( char * name, int(* xtos ) PARM((char* ,void* )), int(* stox ) PARM((void* ,char* )) )); extern ciType ciString, ciIdent, ciDec, ciHex, ciOct, ciDouble, ciFloat; void ciInit PARM((void)); void ciReInit PARM((void)); void ciBreak PARM((char * prompt)); int ciDummy PARM((void)); /* default ci prototypes */ typedef int (*dciCommandProc) PARM((void)); typedef struct { char * name; dciCommandProc proc; } dciCommandList; int dciGetArguments PARM((void)); void dciDefineModule PARM(( char * name, dciCommandList *commands, int qualify)); void dciDefineArgument PARM(( char * name, void * address, ciType type)); int dciExecute PARM(( FILE * input, FILE * output, char *prompt)); /*-----------------------------------------------------------*/ #ifdef PYTHON #undef DEFAULT_CI /* includes */ #define HAVE_STDLIB_H #include "allobjects.h" #include "modsupport.h" /* interface prototypes */ typedef struct methodlist pyciCommandList; void pyciDefineArgument PARM(( char * name,void * address, ciType type)); int pyciGetArguments PARM(( object *self, object *args)); /* interface definition */ #define ciCommandList pyciCommandList #define ciDefineArgument(name,address,type) pyciDefineArgument(name,address,type) #define ciDefineModule(name,list,qual) initmodule(name,list) #define ciReturn(i) return newintobject(i) #define ciCommand(cmd) object * CMD(cmd) (pyciSelf,pyciArgs) object *pyciSelf,*pyciArgs; #define ciGetArguments if(!pyciGetArguments(pyciSelf,pyciArgs)) ciReturn(1);ciDummy #define ciExecute(in,out,prompt) run(in,prompt) #endif /*-----------------------------------------------------------*/ #ifdef LISSI #undef DEFAULT_CI /* includes */ #include "fp.h" #include "xinterf.h" /* interface prototypes */ typedef int (*xciCommandProc) PARM((int ex)); typedef struct { char * name; xciCommandProc proc; } xciCommandList; int xciGetArguments PARM(( int ex)); void xciDefineArgument PARM(( char * name,void * address, ciType type)); void xciDefineModule PARM(( char * name, xciCommandList *commands,int qualify)); /* interface definition */ #define ciCommandList xciCommandList #define ciDefineArgument(name,address,type) xciDefineArgument(name,address,type) #define ciDefineModule(name,list,qual) xciDefineModule(name,list,qual); #define ciReturn(i) return (!i) #define ciCommand(cmd) int CMD(cmd)(ex) int ex; #define ciGetArguments if(!xciGetArguments(ex)) ciReturn(1);ciDummy #define ciExecute(in,out,prompt) xInterpret(1,prompt,"xxx",in,out,out); #endif /*-----------------------------------------------------------*/ #ifdef TCL #undef DEFAULT_CI typedef int (*tclciCommandProc) PARM((int argc ,char *argv[])); typedef struct { char * name; tclciCommandProc proc; } tclciCommandList int tclciGetArguments PARM(( int argc, char *argv[])) /* interface definition */ #define ciCommandList tclciCommandList #define ciDefineArgument(name,address,type) xDefine(xVariable,name,address,type,1) #define ciDefineModule(name,list,qual) xciDefineModule(name,list,qual); #define ciReturn(i) return (i) #define ciCommand(cmd) int CMD(cmd) (argc,argv) int argc; char*argv[]; #define ciGetArguments() if(!xciGetArguments(argc,argv)ciReturn(1);ciDummy #endif /*-------------------------------------------------------------*/ #ifdef DEFAULT_CI /* interface definition */ #define ciCommandList dciCommandList #define ciDefineArgument(name,address,type) dciDefineArgument(name,address,type) #define ciDefineModule(name,list,qual) dciDefineModule(name,list,qual); #define ciReturn(i) return (i) #define ciCommand(cmd) int CMD(cmd) PARM((void)) #define ciGetArguments if (!dciGetArguments()) ciReturn(1);ciDummy #define ciExecute(in,out,prompt) dciExecute(in,out,prompt) #endif /*--------------------------------------------------------------*/ /* the dummy declarations are for forcing ';'s at the end of variable definitions */ #define ciDoubleVariable(var,inival,callback)\ double var=(inival); static ciCommand(var)\ { ciDefineArgument("value",&var,ciDouble);ciGetArguments();\ printf("ci: %s:=%e\n",STRING(var),var);ciReturn(callback());}int ciDummy PARM((void)) #define ciIntegerVariable(var,inival,callback)\ int var=(inival); static ciCommand(var)\ { ciDefineArgument("value",&var,ciDec);ciGetArguments();\ printf("ci: %s:=%d\n",STRING(var),var);ciReturn(callback());}int ciDummy PARM((void)) #define ciIdentVariable(var,inival,callback)\ char var[32]; static ciCommand(var)\ { static char init=0; if(!init) {strcpy(var,inival);init=1;}\ ciDefineArgument("value",var,ciIdent);ciGetArguments();\ printf("ci: %s:=%s\n",STRING(var),var);ciReturn(callback());}int ciDummy PARM((void)) #define ciDeclareVariable(var) {STRING(var),CMD(var)} #define ciDeclareCommand(cmd) {STRING(cmd),CMD(cmd)} #define ciDeclareEnd {NULL,NULL} #endif /* $Log: ci.h,v $ * Revision 2.1 1996/09/04 09:19:21 fuhrmann * ciReInit() introduced * * Revision 2.0 1996/02/15 19:52:37 fuhrmann * First meta-stable distribution * * Revision 1.1 1995/10/20 15:12:40 fuhrmann * Initial revision * */ ------------------------------------------------------------------------------ ---------------------------------- ci.c -------------------------------------- ------------------------------------------------------------------------------ static char *rcsid= "$Id: ci.c,v 2.1 1996/09/04 09:19:09 fuhrmann Exp $"; /*--------------------------------------------------------------------- CI 2.0 Command Interpreter ----------------------------------------------------------------------*/ #include #include #include #include #include #include "ci.h" #define str2double xstr2double #define TRUE 1 #define FALSE 0 #define lst_new(top,typ) {typ * c;\ c=(typ *)ciAlloc( sizeof(typ) );\ c->prv=top;\ top=c;} #define lst_dsp(top,typ) {typ * c;\ c=top->prv;\ free(top);\ top=c;} typedef struct tdsc typ_dsc; struct tdsc { struct tdsc *prv; char *idt; int (*xtos)PARM((char*,void*)); int (*stox)PARM((void *,char *)); }; typedef struct pdsc{ struct pdsc *prv; char *idt; void *val; typ_dsc *typ; } par_dsc; typedef struct mdsc { struct mdsc *prv; char *idt; } mnu_dsc; typedef struct cdsc { struct cdsc *prv; char *idt; dciCommandProc cmd; par_dsc *par; mnu_dsc *mnu; } cmd_dsc; typedef struct ddsc { struct ddsc *prv; char *idt; char *rpl; } def_dsc; static cmd_dsc *cmd_top=NULL; static def_dsc *def_top=NULL; static mnu_dsc *mnu_top=NULL; static typ_dsc *typ_top=NULL; static FILE *ciIn =NULL, *ciOut =NULL, *hlp_file=NULL, *pro_file=NULL; static int echo =1, is_end =0; int ciBreaked=0; static char ciBuf[CI_BUFSIZE], inp_buf[CI_BUFSIZE]; /*--------------------------------------------------------------*/ /* private */ /*--------------------------------------------------------------*/ #ifndef NOPROTO static void * ciAlloc(int n); static void ciDebug(void); static cmd_dsc *str2cmd(char *s); static int ciPar(cmd_dsc *c); static void readln(char * b); static char * def_replace(char *s); static int get_buf(void); static int get_par(char *ci,char *par,char *val,typ_dsc *typ,char*s); static int ciExecute0(void); #endif static void * ciAlloc(n) int n; { void * p; p=malloc((unsigned)n); if (p==NULL) { printf("ci: FATAL ERROR - cannot xallocate\n"); abort(); }; return p; } static void ciDebug() {;} int ciDummy() {return 1;} static void readln(b) char * b; { fgets(b,CI_LINSIZE,ciIn); if (feof(ciIn)) { /* fputs("%CI: End of file reached in command input\n",ciOut); fflush(ciOut); exit(1); */ *b='\0'; is_end=TRUE; } while (1) { if (*b=='\n') { *b='\0'; return; } if (*b=='\0') { *b='\0'; return; } if (*b=='#') { *b='\0'; return; } b++; } } /*--------------------------------------------------------------*/ static int noalias=0; /*Abschaltung des Alias-Mechanismus */ static char * def_replace(s) char *s; { def_dsc * d; if (noalias) return NULL; d=def_top; while(d!=NULL) { if (strcmp(s,d->idt)==0) return d->rpl; d=d->prv; }; return NULL; } /*--------------------------------------------------------------*/ static int get_buf() { char *tok, *rpl, *bpos; int l; for(bpos=inp_buf; (bpos!=NULL)&&((bpos-inp_buf)stox)(val,s); else if (echo>0) { rc=(*typ->xtos)(id,val); fprintf(ciOut,"_%-8s%10s.%-10s[=%10s]=",typ->idt,ci,par,id); fflush(ciOut); get_buf(); s=strtok(ciBuf," "); if (s!=NULL) rc=(*typ->stox)(val,s); } else { (*typ->xtos)(id,val); fprintf(ciOut,"\nci: The parameter %10s %10s.%-10s=%10s remains unchanged\n",typ->idt,ci,par,id); fflush(ciOut); }; if (rc!=0) fprintf(ciOut,"\nci: type conversion failed for type %s.\n", typ->idt); fflush(ciOut); return rc; } /*--------------------------------------------------------------------*/ /* Belegung der Parameter */ static int ciPar(c) cmd_dsc *c; { int rc; par_dsc *p; char * tok; rc=0; for (p=c->par; p!=NULL; p=p->prv) if (p->typ==ciString) { if ((tok=strtok(NULL,""))==NULL) strcpy(p->val,""); else strcpy(p->val,tok); } else { rc=get_par(c->idt,p->idt,p->val,p->typ,strtok(NULL," ")); if (rc!=0) return rc; } return 0; } /*--------------------------------------------------------------------*/ static cmd_dsc * str2cmd(name) char *name; { cmd_dsc *c=cmd_top,*xc; int len=strlen(name); while (strncmp(name,c->idt,len)!=0) { c=c->prv; if (c==NULL) { fprintf(ciOut,"\nci: No such command : \"%s\"\n",name); fflush(ciOut); return NULL; } } xc=c->prv; if (xc!=NULL) while (strncmp(name,xc->idt,len)!=0) { xc=xc->prv; if (xc==NULL) return c; } else return c; fprintf(ciOut,"\nci: Ambiguous command : \"%s\", try \"%s\" or \"%s\"\n", name,c->idt,xc->idt); fflush(ciOut); return NULL; } /* Test, ob Kommando vorhanden, Ausfuehrung */ static int ciExecute0() { char * tok; cmd_dsc *c; int rc; tok=strtok(ciBuf," "); if (tok==NULL) return 0; c=str2cmd(tok); if (c==NULL) return 1; rc=ciPar(c); if (rc!=0) { fprintf(ciOut,"\nci: Conversion error,no Execution of %s.\n",c->idt); fflush(ciOut); return rc; } rc=(*c->cmd)(); if (!rc) fprintf(ciOut,"\nci: Error in command \"%s\".\n",c->idt); fflush(ciOut); return rc; fflush(ciOut); return rc; } /*--------------------------------------------------------------*/ /* public */ /*--------------------------------------------------------------*/ /* Definition eines Moduls */ int ciArgs(int self,int args) { return args; } static int inCdef=0; int ciCdef(name,proc) char *name; dciCommandProc proc; { int rc; cmd_dsc *c; for(c=cmd_top;c!=NULL;c=c->prv) if ( (strncmp(c->idt,name,strlen(c->idt))* strncmp(c->idt,name,strlen(name)))==0) break; if (c!=NULL) { printf("ci: new command \"%s\" would be ambiguous with \"%s\"\n", name,c->idt); return 1; } lst_new(cmd_top,cmd_dsc); cmd_top->cmd=proc; cmd_top->idt=malloc(strlen(name)); strcpy(cmd_top->idt,name); cmd_top->par=NULL; cmd_top->mnu=mnu_top; inCdef=1; rc=(*proc)(); inCdef=0; if (!rc) printf("ci: initialization of command \"%s\" failed\n",name); return rc; } void dciDefineModule(name,commands,qualify) char *name; dciCommandList commands[]; int qualify; { int i; lst_new(mnu_top,mnu_dsc); mnu_top->idt=name; i=0; while (commands[i].name!=NULL) { if (qualify) { sprintf(ciBuf,"%s.%s",name,commands[i].name); ciCdef(ciBuf,commands[i].proc); } else ciCdef(commands[i].name,commands[i].proc); i++; } return; } /*--------------------------------------------------------------*/ void ciAlias(idt,rpl) char * idt, * rpl; { def_dsc * d=def_top; while(d!=NULL) { if (strcmp(idt,d->idt)==0) { free(d->rpl); d->rpl=(char *)ciAlloc(strlen(rpl)+1); strcpy(d->rpl,rpl); return; } d=d->prv; } lst_new(def_top,def_dsc); def_top->rpl=(char *)ciAlloc(strlen(rpl)+1); strcpy(def_top->rpl,rpl); def_top->idt=(char *)ciAlloc(strlen(idt)+1); strcpy(def_top->idt,idt); return; } /*--------------------------------------------------------------*/ /* Start des Interpreters */ int dciExecute(in,out,pr) FILE *in,*out; char *pr; { int rc; if (in==stdin) echo=1; else echo=0; is_end=FALSE; do { ciIn=in; ciOut=out; ciBreaked=0; if (ciIn==stdin) echo=1; else echo=0; if ((echo>0)&(!is_end)) { fprintf(ciOut,"\n%s>",pr);fflush(ciOut);}; get_buf(); if (!is_end) rc=ciExecute0(); } while (!is_end); is_end=FALSE; return 0; } /* Definition eines Stellungsparameters */ void dciDefineArgument(name,address,type) char *name; void *address; typ_dsc *type; { par_dsc * pnew,*p; cmd_dsc *c; if (!inCdef) return; c=cmd_top; p=c->par; for (;;) { if (p==NULL) break; if (p->prv==NULL) break; p=p->prv; } pnew=(par_dsc *)ciAlloc( sizeof(par_dsc) ); pnew->prv=NULL; if (p==NULL) c->par=pnew; else p->prv=pnew; pnew->idt=name; pnew->val=address; pnew->typ=type; } int dciGetArguments() { if (inCdef) return 0; else return 1; } /*--------------------------------------------------------------*/ /* Definition eines Typs */ ciType ciDefineType(name,_xtos,_stox) char *name; int (*_xtos) PARM ((char * ss,void * xx)); int (*_stox) PARM((void * x, char * s)); { lst_new(typ_top,typ_dsc); typ_top->idt=name; typ_top->xtos=_xtos; typ_top->stox=_stox; return typ_top; } /*--------------------------------------------------------------------*/ /* predefined */ /*--------------------------------------------------------------*/ /* types */ /*--------------------------------------------------------------*/ #ifndef NOPROTO static int dec2str(char *s, void *x); static int str2dec(void *x,char *s); static int oct2str(char *s,void *x); static int str2oct(void *x,char *s); static int hex2str(char *s,void *x); static int str2hex( void *x,char *s); static int double2str(char *s,void *x); static int str2double(void *x,char *s); static int float2str(char *s,void *x); static int str2float(void *x,char *s); static int ident2str(char *s,void *x); static int str2ident(void *x,char *s); #endif static int dec2str(s,x) char *s; void *x; { sprintf(s,"%d",*(int *)x); return 0; } static int str2dec(x,s) char *s; void *x; { *(int*)x=atoi(s); return 0; } /*--------------------------------------------------------------*/ static int oct2str(s,x) char *s;void *x; { sprintf(s,"%o",*(int*)x); return 0; } static int str2oct(x,s) char *s; void *x; { sscanf(s,"%o",(int*)x); return 0; } /*--------------------------------------------------------------*/ static int hex2str(s,x) char *s; void *x; { sprintf(s,"%x",*(int*)x); return 0; } static int str2hex(x,s) char *s; void *x; { sscanf(s,"%x",(int*)x); return 0; } /*--------------------------------------------------------------*/ static int double2str(s,x) char *s; void *x; { sprintf(s,"%e",*(double*)x); return 0; } static int str2double(x,s) char *s; void *x; { *(double*)x=atof(s); return 0; } /*--------------------------------------------------------------*/ static int float2str(s,x) char *s; void *x; { sprintf(s,"%e",*(float*)x); return 0; } static int str2float(x,s) char *s; void *x; { *(float*)x=(float)atof(s); return 0; } /*--------------------------------------------------------------*/ static int ident2str(s,x) char *s; void *x; { strcpy(s,(char *)x); return 0; } static int str2ident(x,s) char *s; void *x; { strcpy((char *)x,s); return 0; } /*--------------------------------------------------------------*/ /*--------------------------------------------------------------*/ /*--------------------------------------------------------------*/ /* commands */ /*--------------------------------------------------------------*/ static char def_lin_buf[CI_LINSIZE]; static char def_idt_buf[CI_IDTSIZE]; ciCommand(alias) { def_dsc * d; int j; ciDefineArgument("string",def_idt_buf,ciIdent); ciDefineArgument("replace",def_lin_buf,ciString); ciGetArguments(); if (strcmp(def_idt_buf,"?")==0) { fputs("%CI : Alias list:\n",ciOut); for(d=def_top,j=10; d!=NULL;j++,d=d->prv) fprintf(ciOut,"%15s = %-s\n",d->idt,d->rpl); if (noalias) fputs("%CI : Alias is off\n",ciOut); else fputs("%CI : Alias is on \n",ciOut); fflush(ciOut); ciReturn(1); } if (strcmp(def_idt_buf,"off")==0) { noalias=1; ciReturn(1); } if (strcmp(def_idt_buf,"on")==0) { noalias=0; ciReturn(1); } ciAlias(def_idt_buf,def_lin_buf); ciReturn(1); } /*--------------------------------------------------------------*/ static char fname[CI_LINSIZE]={'\0'}; static char prompt[CI_LINSIZE]={'\0'}; ciCommand(source) { FILE *in=ciIn; FILE *out=ciOut; ciDefineArgument("file",fname,ciIdent); ciDefineArgument("prompt",prompt,ciString); ciGetArguments(); if (strcmp(fname,"tty")==0) ciIn=stdin; else { if( (ciIn=fopen(fname,"r"))==NULL) { fprintf(ciOut, "\nci: file %s not found.\n", fname); fflush(ciOut); ciIn=in; ciReturn(0); } } if (prompt[0]=='\0') strcpy(prompt,fname); ciExecute(ciIn,ciOut,prompt); if (ciIn!=stdin) fclose(ciIn); ciIn=in; ciOut=out; fname[0]='\0'; prompt[0]='\0'; ciReturn(1); } /*--------------------------------------------------------------*/ ciCommand(quit) { ciGetArguments(); is_end=TRUE; ciReturn(1);} ciCommand(exit) { ciGetArguments(); is_end=TRUE; ciReturn(1);} char hlp_idt_buf[CI_IDTSIZE]={'?','\0'}; ciCommand(help) { int i,j; char locked; cmd_dsc * c; par_dsc * p; mnu_dsc * m; char id[CI_IDTSIZE]; ciDefineArgument("command",hlp_idt_buf,ciIdent); ciGetArguments(); if (strcmp("?",hlp_idt_buf)==0) { for(j=1,c=cmd_top;c!=NULL;j++) { m=c->mnu; printf("\nmodule %s:\n",m->idt); for(;(c!=NULL)&&(c->mnu==m);) { for(i=0;(i<4)&&(c!=NULL)&&(c->mnu==m);i++,c=c->prv) { printf("%-18s",c->idt); } fputs("\n",ciOut); } } fflush(ciOut); goto exit; } else { c=str2cmd(hlp_idt_buf); if(c!=NULL) { fprintf(ciOut,"\nCOMMAND = %s\n",c->idt); fprintf(ciOut, "PARAMETERS : \n"); p=c->par; if (p==NULL) fprintf(ciOut,"none\n"); while(p!=NULL) {if (p->typ==ciString) fprintf(ciOut,"string %-12s %-30s\n",p->idt,p->val); else { (*p->typ->xtos)(id,p->val); fprintf(ciOut,"%-10s %-20s = %s\n", p->typ->idt,p->idt,id); } p=p->prv; } } fprintf(ciOut,"You will get a command list by typing \"help ? \"\n"); goto exit; } exit: fflush(ciOut); ciReturn(1); } /*--------------------------------------------------------------*/ ciCommand(halt) { ciGetArguments(); { fprintf(ciOut,"ci: halt\n"); fflush(ciOut); exit(1); } ciReturn(1); } /*--------------------------------------------------------------*/ static char msg_lin_buf[CI_LINSIZE]={'\0','\0'}; ciCommand(echo) { ciDefineArgument("msg",msg_lin_buf,ciString); ciGetArguments(); fprintf(ciOut,"%s\n",msg_lin_buf); fflush(ciOut); ciReturn(1); } ciCommand(system) { ciDefineArgument("command",msg_lin_buf,ciString); ciGetArguments(); if (strcmp(msg_lin_buf,"")==0) fprintf(ciOut,"ci: system\n"); fflush(ciOut); system(msg_lin_buf); if (strcmp(msg_lin_buf,"")==0) fprintf(ciOut,"ci: back\n"); fflush(ciOut); ciReturn(1); } /*--------------------------------------------------------------*/ /*--------- INTERRUPT HANDLING ---------------------------------*/ ciCommand(break) { ciGetArguments(); ciBreaked=1; is_end=TRUE; ciReturn(1); } void handle_interrupt(isig)int isig; { signal(isig,handle_interrupt); ciExecute(stdin,stdout,"interrupt::ci"); if (ciBreaked) fprintf(ciOut,"\n\nci: break\n"); else fprintf(ciOut,"\n\nci: continue\n"); fflush(ciOut); } void ciBreak(prompt) char * prompt; { ciExecute(stdin,stdout,prompt); } void ci_() { fflush(ciOut); ciExecute(stdin,stdout,"debug::ci"); fflush(ciOut); } ciCommand(debug) { ciGetArguments(); fprintf(ciOut,"ci: debugger\n"); fflush(ciOut); ciDebug(); fprintf(ciOut,"ci: back\n") ; fflush(ciOut); ciReturn(1); } /*-----------------------------------------------------------------------*/ #ifdef PYTHON static char argstr[CI_MAXARGS+3]; static void* argaddr[CI_MAXARGS+1]; static char* stringaddr[CI_MAXARGS+1]; static char* xstringaddr[CI_MAXARGS+1]; int iarg=1; void pyciDefineArgument(name,address,type) char *name; void *address; typ_dsc *type; {int i; if (iarg>=CI_MAXARGS) { printf("ci: define arg: too many args\n"); return; } stringaddr[iarg]=NULL; argaddr[iarg]=address; if (type==ciDec) { argstr[iarg]='i'; argaddr[iarg]=address; } else if (type==ciDouble) { argstr[iarg]='d'; argaddr[iarg]=address; } else if (type==ciFloat) { argstr[iarg]='f'; argaddr[iarg]=address; } else if (type==ciString) { argstr[iarg]='s'; argaddr[iarg]=&xstringaddr[iarg]; stringaddr[iarg]=address; } else if (type==ciIdent) { argstr[iarg]='s'; argaddr[iarg]=&xstringaddr[iarg]; stringaddr[iarg]=address; } else { printf("ci: type not defined\n"); } iarg++; } int pyciGetArguments(self,args) object * self,*args; { register int i,j; if (iarg==1) return 1; if (iarg==2) { argstr[iarg]='\0'; } else { argstr[0]='('; argstr[iarg]=')'; argstr[iarg+1]='\0'; } switch(iarg-1) { case 1: if (!getargs(args,argstr+1,argaddr[1])) goto error; break; case 2: if (!getargs(args,argstr,argaddr[1],argaddr[2])) goto error; break; case 3: if (!getargs(args,argstr,argaddr[1],argaddr[2],argaddr[3])) goto error; break; default: printf("ci: too many args\n"); } for(i=1;i<=iarg;i++) if (stringaddr[i]!=NULL) { strcpy(stringaddr[i],xstringaddr[i]); } iarg=1; return 1; error: printf("ci: python argument conversion error\n"); iarg=1; return 0; } #endif /*--------------------------------------------------------------------------*/ #ifdef LISSI int xciGetArguments PARM(( int ex)) { if (ex<1) return 0; else return 1; } void xciDefineArgument( char * name,void * address, ciType type) { if (inCdef) { if (type==ciDec) { xDefine(xVariable,name,address,1,xInteger); } else if (type==ciDouble) { xDefine(xVariable,name,address,1,xReal); } else if (type==ciString) { xDefine(xVariable,name,address,CI_LINSIZE,xCharacter); } else if (type==ciIdent) { xDefine(xVariable,name,address,CI_IDTSIZE,xCharacter); } else { printf("ci: lissi type not defined\n"); } } } void xciDefineModule ( char * name, xciCommandList *commands, int qualify) { int i; if (qualify) xDefineStructure(name); i=0; while (commands[i].name!=NULL) { xDefineCommand(commands[i].name,commands[i].proc); inCdef=1; commands[i].proc(0); inCdef=0; xEndDefinition(); i++; } if (qualify) xEndDefinition(); return; } #endif /*--------------------------------------------------------------------------*/ ciType ciString, ciIdent, ciDec, ciOct, ciHex, ciDouble, ciFloat, ciFloat_array, ciDouble_array; static ciCommandList systemlist[]={ ciDeclareCommand(echo), ciDeclareCommand(debug), ciDeclareCommand(halt), ciDeclareCommand(break), ciDeclareCommand(system), #ifndef PYTHON ciDeclareCommand(help), ciDeclareCommand(quit), ciDeclareCommand(exit), ciDeclareCommand(alias), ciDeclareCommand(source), #endif ciDeclareEnd}; static void read_profile() { #ifdef PYTHON pro_file=fopen(".pyrc","r"); if(pro_file!=NULL) { run_script(pro_file,"init"); } #endif #ifdef DEFAULT_CI pro_file=fopen(".circ","r"); if(pro_file!=NULL) { ciExecute(pro_file,stdout,"init"); } #endif } static int init_flag=0; void ciInit() { if (init_flag) return; ciString=NULL; ciDouble = ciDefineType("double", double2str, str2double); ciDec = ciDefineType("dec", dec2str, str2dec); ciOct = ciDefineType("oct", oct2str, str2oct); ciHex = ciDefineType("hex", hex2str, str2hex); ciIdent = ciDefineType("ident", ident2str, str2ident); #ifdef PYTHON initall(); #endif #ifdef LISSI xinterfInit(); #endif ciDefineModule("ci",systemlist,0); ciIn=stdin; ciOut=stdout; signal(SIGINT,handle_interrupt); read_profile(); init_flag=1; } void ciReInit() { def_dsc *d=def_top; ciInit(); fprintf(stdout,"ci: reinitialization, alias list cleared\n"); while (def_top!=NULL) { free(def_top->idt); free(def_top->rpl); d=def_top; def_top=d->prv; free(d); } read_profile(); } /* * $Log: ci.c,v $ * Revision 2.1 1996/09/04 09:19:09 fuhrmann * ciReInit() introduced * * Revision 2.0 1996/02/15 19:52:37 fuhrmann * First meta-stable distribution * * Revision 1.2 1995/10/23 20:14:27 fuhrmann * strdup 'rausgenommen * * Revision 1.1 1995/10/20 15:12:12 fuhrmann * Initial revision * */ --------------------------------------------------------------------------- ----------------------------- tci.c --------------------------------------- --------------------------------------------------------------------------- #include "ci.h" void main(int argc, char* argv[]) { ciInit(); ciExecute(stdin,stdout,"tci"); } --------------------------------------------------------------------------- ----------------------------- end of code --------------------------------- --------------------------------------------------------------------------- The command interpreter ci/tci was successfully GCC compiled on several architectures like Linux, DEC UNIX, SunOS 4.1.x and IRIX 5.x, for instance, and it works flawlessly. On my i486/FreeBSD 2.1.5 machine I was also able to compile tci with gcc-2.6.3, but the executable code does not work at all, some of the command interpreter functions are not available. It seems to be a memory allocation problem, because the listing of the interpreter commands (you can get it with the help command) shows the strange ascii symbol "o" as an executable interpreter command! Here you can see a terminal dump: bash$ gcc -o tci tci.c ci.c bash$ ls -l tci* -rwxr-xr-x 1 johnny johnny 18842 Oct 15 18:55 tci* -rw------- 1 johnny johnny 102 Oct 15 14:49 tci.c bash$ ./tci ci: new command "quit" would be ambiguous with "" ci: new command "exit" would be ambiguous with "" ci: new command "alias" would be ambiguous with "" ci: new command "source" would be ambiguous with "" tci>help ? module ci: help system break debug o tci>system ci: system ci: back tci>debug ci: debugger ci: back tci>break bash$ I do not know, whether there is a mistake in our code or somewhere in the operating system. Our code seems to be stable on all of the above architectures. Please, extract and try out our code on one of your machines! It would be very nice, if you could give me an answer to my problem! Jens Griepentrog Weierstrass Institute for Applied Analysis and Stochastics Mohrenstrasse 39 D-10117 Berlin Germany griepent@wias-berlin.de From owner-freebsd-bugs Mon Jan 27 06:52:41 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA08538 for bugs-outgoing; Mon, 27 Jan 1997 06:52:41 -0800 (PST) Received: from tfs.com (tfs.com [140.145.250.1]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id GAA08518; Mon, 27 Jan 1997 06:52:38 -0800 (PST) Received: from schizo.dk.tfs.com by tfs.com (smail3.1.28.1) with SMTP id m0vosPj-0003wnC; Mon, 27 Jan 97 06:52 PST Received: from critter.dk.tfs.com (critter.dk.tfs.com [140.145.230.252]) by schizo.dk.tfs.com (8.8.2/8.7.3) with ESMTP id PAA20288; Mon, 27 Jan 1997 15:52:01 +0100 (MET) Received: from critter.dk.tfs.com (localhost [127.0.0.1]) by critter.dk.tfs.com (8.8.2/8.8.2) with ESMTP id PAA09406; Mon, 27 Jan 1997 15:53:39 +0100 (MET) To: current@freebsd.org, bugs@freebsd.org Subject: vx0 receives any and all packets ??? Reply-to: phk@freebsd.org Date: Mon, 27 Jan 1997 15:53:38 +0100 Message-ID: <9404.854376818@critter.dk.tfs.com> From: Poul-Henning Kamp Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I have one of these: vx0 <3COM 3C900 Etherlink XL PCI> rev 0 int a irq 9 on pci0:9 utp/aui/bnc[*bnc*] address 00:60:97:06:ef:c5 and "tcpdump -p" as well as "netstat -s" seems to indicate that any and all packet on my ethernet gets forwarded to my IP stack :-( Anybody else seen this ? -- Poul-Henning Kamp | phk@FreeBSD.ORG FreeBSD Core-team. http://www.freebsd.org/~phk | phk@login.dknet.dk Private mailbox. whois: [PHK] | phk@tfs.com TRW Financial Systems, Inc. Future will arrive by its own means, progress not so. From owner-freebsd-bugs Mon Jan 27 09:10:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA13979 for bugs-outgoing; Mon, 27 Jan 1997 09:10:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA13970; Mon, 27 Jan 1997 09:10:02 -0800 (PST) Date: Mon, 27 Jan 1997 09:10:02 -0800 (PST) Message-Id: <199701271710.JAA13970@freefall.freebsd.org> To: freebsd-bugs Cc: From: Garrett Wollman Subject: bin/2595: tzsetup is broken Reply-To: Garrett Wollman Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2595; it has been noted by GNATS. From: Garrett Wollman To: jhay@angel.cids.org.za Cc: FreeBSD-gnats-submit@FreeBSD.ORG Subject: bin/2595: tzsetup is broken Date: Mon, 27 Jan 1997 12:05:04 -0500 < said: > angel:/usr/src # grep '^ES' /usr/share/zoneinfo/zone.tab > ES +4024-00341 Europe/Madrid mainland > ES +3553-00519 Africa/Ceuta Ceuta & Melilla > ES +2806-01524 Atlantic/Canary Canary Islands > angel:/usr/src # This should not cause a problem; viz., `US' or `RU'. However, I will admit that the absence of `ZA' is a bug. It is not, unfortunately, particularly near the head of my queue, so while this is my program, I am going to leave the PR unclaimed in case any enterprising souls out there care to attempt a fix before I get a chance at it. -GAWollman -- Garrett A. Wollman | O Siem / We are all family / O Siem / We're all the same wollman@lcs.mit.edu | O Siem / The fires of freedom Opinions not those of| Dance in the burning flame MIT, LCS, ANA, or NSA| - Susan Aglukark and Chad Irschick From owner-freebsd-bugs Mon Jan 27 10:33:47 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA19608 for bugs-outgoing; Mon, 27 Jan 1997 10:33:47 -0800 (PST) Received: (from fenner@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA19422; Mon, 27 Jan 1997 10:32:39 -0800 (PST) Date: Mon, 27 Jan 1997 10:32:39 -0800 (PST) From: Bill Fenner Message-Id: <199701271832.KAA19422@freefall.freebsd.org> To: fenner, gnats-admin, freebsd-bugs Subject: Re: bin/2578 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: security hole in resolver routines permits limited reads of files as root Responsible-Changed-From-To: gnats-admin->freebsd-bugs Responsible-Changed-By: fenner Responsible-Changed-When: Mon Jan 27 10:31:52 PST 1997 Responsible-Changed-Why: Clean up misfiled PR From owner-freebsd-bugs Mon Jan 27 10:34:32 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA19683 for bugs-outgoing; Mon, 27 Jan 1997 10:34:32 -0800 (PST) Received: (from fenner@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA19653; Mon, 27 Jan 1997 10:34:23 -0800 (PST) Date: Mon, 27 Jan 1997 10:34:23 -0800 (PST) From: Bill Fenner Message-Id: <199701271834.KAA19653@freefall.freebsd.org> To: fenner, freebsd-bugs, freebsd-bugs Subject: Re: bin/2579 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: potential security hole in rcmd.c Responsible-Changed-From-To: freebsd-bugs->freebsd-bugs Responsible-Changed-By: fenner Responsible-Changed-When: Mon Jan 27 10:31:52 PST 1997 Responsible-Changed-Why: It didn't. From owner-freebsd-bugs Mon Jan 27 10:35:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA19811 for bugs-outgoing; Mon, 27 Jan 1997 10:35:06 -0800 (PST) Received: (from fenner@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA19778; Mon, 27 Jan 1997 10:34:58 -0800 (PST) Date: Mon, 27 Jan 1997 10:34:58 -0800 (PST) From: Bill Fenner Message-Id: <199701271834.KAA19778@freefall.freebsd.org> To: fenner, freebsd-bugs, freebsd-bugs Subject: Re: bin/2580 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: security hole in glob.c Responsible-Changed-From-To: freebsd-bugs->freebsd-bugs Responsible-Changed-By: fenner Responsible-Changed-When: Mon Jan 27 10:31:52 PST 1997 Responsible-Changed-Why: It didn't. From owner-freebsd-bugs Mon Jan 27 10:35:40 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA20009 for bugs-outgoing; Mon, 27 Jan 1997 10:35:40 -0800 (PST) Received: (from fenner@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA19885; Mon, 27 Jan 1997 10:35:24 -0800 (PST) Date: Mon, 27 Jan 1997 10:35:24 -0800 (PST) From: Bill Fenner Message-Id: <199701271835.KAA19885@freefall.freebsd.org> To: fenner, freebsd-bugs, freebsd-bugs Subject: Re: bin/2581 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: security holes in libtermcap Responsible-Changed-From-To: freebsd-bugs->freebsd-bugs Responsible-Changed-By: fenner Responsible-Changed-When: Mon Jan 27 10:31:52 PST 1997 Responsible-Changed-Why: It didn't. From owner-freebsd-bugs Mon Jan 27 10:35:46 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA20073 for bugs-outgoing; Mon, 27 Jan 1997 10:35:46 -0800 (PST) Received: (from fenner@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA19992; Mon, 27 Jan 1997 10:35:37 -0800 (PST) Date: Mon, 27 Jan 1997 10:35:37 -0800 (PST) From: Bill Fenner Message-Id: <199701271835.KAA19992@freefall.freebsd.org> To: fenner, freebsd-bugs, freebsd-bugs Subject: Re: bin/2582 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: security hole in lib/libc/nls/msgcat.c Responsible-Changed-From-To: freebsd-bugs->freebsd-bugs Responsible-Changed-By: fenner Responsible-Changed-When: Mon Jan 27 10:31:52 PST 1997 Responsible-Changed-Why: It didn't. From owner-freebsd-bugs Mon Jan 27 10:36:09 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA20212 for bugs-outgoing; Mon, 27 Jan 1997 10:36:09 -0800 (PST) Received: (from fenner@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA20151; Mon, 27 Jan 1997 10:36:02 -0800 (PST) Date: Mon, 27 Jan 1997 10:36:02 -0800 (PST) From: Bill Fenner Message-Id: <199701271836.KAA20151@freefall.freebsd.org> To: fenner, freebsd-bugs, freebsd-bugs Subject: Re: bin/2583 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: small security hole in localtime.c Responsible-Changed-From-To: freebsd-bugs->freebsd-bugs Responsible-Changed-By: fenner Responsible-Changed-When: Mon Jan 27 10:31:52 PST 1997 Responsible-Changed-Why: It didn't. From owner-freebsd-bugs Mon Jan 27 10:38:52 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA20460 for bugs-outgoing; Mon, 27 Jan 1997 10:38:52 -0800 (PST) Received: (from fenner@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA20273; Mon, 27 Jan 1997 10:36:20 -0800 (PST) Date: Mon, 27 Jan 1997 10:36:20 -0800 (PST) From: Bill Fenner Message-Id: <199701271836.KAA20273@freefall.freebsd.org> To: fenner, freebsd-bugs, freebsd-bugs Subject: Re: bin/2587 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: remote root security hole in rexecd Responsible-Changed-From-To: freebsd-bugs->freebsd-bugs Responsible-Changed-By: fenner Responsible-Changed-When: Mon Jan 27 10:31:52 PST 1997 Responsible-Changed-Why: It didn't. From owner-freebsd-bugs Mon Jan 27 17:27:10 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA04164 for bugs-outgoing; Mon, 27 Jan 1997 17:27:10 -0800 (PST) Received: from who.cdrom.com (who.cdrom.com [204.216.27.3]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id RAA04126 for ; Mon, 27 Jan 1997 17:27:04 -0800 (PST) Received: from sax.sax.de (sax.sax.de [193.175.26.33]) by who.cdrom.com (8.7.5/8.6.11) with SMTP id NAA26905 for ; Mon, 27 Jan 1997 13:24:55 -0800 (PST) Received: (from uucp@localhost) by sax.sax.de (8.6.12/8.6.12-s1) with UUCP id WAA15345; Mon, 27 Jan 1997 22:23:31 +0100 Received: (from j@localhost) by uriah.heep.sax.de (8.8.4/8.6.9) id WAA12665; Mon, 27 Jan 1997 22:00:38 +0100 (MET) Message-ID: Date: Mon, 27 Jan 1997 22:00:38 +0100 From: j@uriah.heep.sax.de (J Wunsch) To: griepent@wias-berlin.de Cc: bugs@freebsd.org Subject: Re: FreeBSD 2.1.5 ci command interpreter test failed References: <9701271238.AA32085@pascal.wias-berlin.de> X-Mailer: Mutt 0.55-PL10 Mime-Version: 1.0 X-Phone: +49-351-2012 669 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) In-Reply-To: <9701271238.AA32085@pascal.wias-berlin.de>; from griepent@wias-berlin.de on Jan 27, 1997 13:38:23 +0100 Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk As griepent@wias-berlin.de wrote: > Hello, bugs@FreeBSD.org ! > ------------------------------------------------------------------------------ > ----------------------------------- ci.h ------------------------------------- > ------------------------------------------------------------------------------ Well, it would have been better to provide at least a shar archive, or a MIME-appended or uuencoded .tar.gz for this. Saves a lot of handwork. Also, a Makefile would make the work easier, it's as simple as: PROG= tci NOMAN= noman SRCS= tci.c ci.c .include > > /* > * $Id: ci.h,v 2.1 1996/09/04 09:19:21 fuhrmann Exp $ > */ > > /*--------------------------------------------------------------------- > CI 2.0 > Command Interpreter Interface > > Author: Juergen Fuhrmann > Weierstrass-Institut fuer Angewandte Analysis und Stochastik > Mohrenstrasse 39 > 10117 Berlin > > -------------------------------------------------------------------------*/ Just for your own safety: better put a copyright notice there if you distribute some work like this on a public mailinglist. This might save your a**. > bash$ ./tci > ci: new command "quit" would be ambiguous with "" > ci: new command "exit" would be ambiguous with "" > ci: new command "alias" would be ambiguous with "" > ci: new command "source" would be ambiguous with "" > > tci>help ? > > module ci: > help system break > debug o I've compiled it on my 3.0-not-very-current system with the default cc (i.e. gcc 2.7.2.1), and it seems to work fine, either with my default CFLAGS (-O2 -pipe), or without any optimization: j@uriah 451% ./tci tci>help ? module ci: source alias exit quit help system break halt debug echo tci>quit -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Mon Jan 27 17:30:09 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA04988 for bugs-outgoing; Mon, 27 Jan 1997 17:30:09 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA04976; Mon, 27 Jan 1997 17:30:05 -0800 (PST) Date: Mon, 27 Jan 1997 17:30:05 -0800 (PST) Message-Id: <199701280130.RAA04976@freefall.freebsd.org> To: freebsd-bugs Cc: From: j@uriah.heep.sax.de (J Wunsch) Subject: Re: bin/2600: fortunes : fortunes2 Lite2 merge Reply-To: j@uriah.heep.sax.de (J Wunsch) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2600; it has been noted by GNATS. From: j@uriah.heep.sax.de (J Wunsch) To: proff@iq.org Cc: FreeBSD-gnats-submit@freebsd.org Subject: Re: bin/2600: fortunes : fortunes2 Lite2 merge Date: Mon, 27 Jan 1997 21:09:27 +0100 As Julian Assange wrote: > >Synopsis: fortunes & fortunes2 Lite2 merge Ick. You've broken the FreeBSD corrections with this. :-( Merges like these should be handled on a vendor-branch, so the local edits can be retained. For example: > @@ -20431,10 +20433,10 @@ > > Call (511) 338-0959 for an immediate appointment. > % > -Hier liegt ein Mann ganz ohnegleich; > -Im Leibe dick, an Suenden reich. > +Hier liegt ein Mann ganz obnegleich; > +Im Leibe dick, an Suden reich. > Wir haben ihn in das Grab gesteckt, Here lies a man with sundry flaws > -Weil es uns duenkt er sei verreckt. And numerous Sins upon his head; > +Weil es uns dunkt er sei verreckt. And numerous Sins upon his head; You're trying to un-germanize this again. Whoever wrote it in the first place didn't have much clues about german. Looking into everything, this one is the only real addition that remains: --- /usr/src/games/fortune/datfiles/fortunes2 Wed Jan 8 21:39:07 1997 +++ src/games/fortune/datfiles/fortunes2 Mon Jan 3 09:58:38 1994 @@ -36422,6 +36424,26 @@ trivially equivalent, so the only important n are n less than n. We can take n = n (from above), so it's true for n+1 becuase it's just about n. QED. (QED translates from the Latin as "So what?") +% +Proof techniques #2: Proof by Oddity. + SAMPLE: To prove that horses have an infinite number of legs. +[1] Horses have an even number of legs. +[2] They have two legs in back and fore legs in front. +[3] This makes a total of six legs, + which certainly is an odd number of legs for a horse. +[4] But the only number that is both odd and even is infinity. +[5] Therefore, horses must have an infinite number of legs. + +Topics is be covered in future issues include proof by: + intimidation, + gesticulation (handwaving), + "try it; it works", + constipation (I was just sitting there and...), + blatant assertion, + changing all the 2's to n's, + mutual consent, + lack of a counterexample, and, + "it stands to reason". % Proper treatment will cure a cold in seven days, but left to itself, a cold will hang on for a week. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Mon Jan 27 21:38:18 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id VAA19737 for bugs-outgoing; Mon, 27 Jan 1997 21:38:18 -0800 (PST) Received: (from mpp@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id VAA19715; Mon, 27 Jan 1997 21:38:12 -0800 (PST) Date: Mon, 27 Jan 1997 21:38:12 -0800 (PST) From: Mike Pritchard Message-Id: <199701280538.VAA19715@freefall.freebsd.org> To: proff@iq.org, mpp, freebsd-bugs Subject: Re: bin/2600 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: fortunes & fortunes2 Lite2 merge State-Changed-From-To: open-closed State-Changed-By: mpp State-Changed-When: Mon Jan 27 21:37:10 PST 1997 State-Changed-Why: The provided diffs remove local FreeBSD fixes or re-add duplicate entries that were removed. From owner-freebsd-bugs Mon Jan 27 21:40:05 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id VAA20012 for bugs-outgoing; Mon, 27 Jan 1997 21:40:05 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id VAA20006; Mon, 27 Jan 1997 21:40:02 -0800 (PST) Date: Mon, 27 Jan 1997 21:40:02 -0800 (PST) Message-Id: <199701280540.VAA20006@freefall.freebsd.org> To: freebsd-bugs Cc: From: Mike Pritchard Subject: Re: bin/2600: fortunes : fortunes2 Lite2 merge Reply-To: Mike Pritchard Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2600; it has been noted by GNATS. From: Mike Pritchard To: proff@iq.org Cc: FreeBSD-gnats-submit@freebsd.org Subject: Re: bin/2600: fortunes : fortunes2 Lite2 merge Date: Mon, 27 Jan 1997 21:32:15 -0800 (PST) Julian Assange wrote: > > > >Number: 2600 > >Category: bin > > --- /usr/src/games/fortune/datfiles/fortunes2 Wed Jan 8 21:39:07 1997 > +++ src/games/fortune/datfiles/fortunes2 Mon Jan 3 09:58:38 1994 > @@ -12663,6 +12663,8 @@ > [patches deleted] These patches actually undo some fixes I have applied over the past month or so. -- Mike Pritchard mpp@FreeBSD.org "Go that way. Really fast. If something gets in your way, turn" From owner-freebsd-bugs Mon Jan 27 22:13:40 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id WAA22466 for bugs-outgoing; Mon, 27 Jan 1997 22:13:40 -0800 (PST) Received: from hydrogen.nike.efn.org (metriclient-10.uoregon.edu [128.223.172.10]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id WAA22441; Mon, 27 Jan 1997 22:13:27 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by hydrogen.nike.efn.org (8.8.4/8.8.4) with SMTP id WAA12501; Mon, 27 Jan 1997 22:12:38 -0800 (PST) Date: Mon, 27 Jan 1997 22:12:37 -0800 (PST) From: John-Mark Gurney Reply-To: John-Mark Gurney To: J Wunsch cc: freebsd-bugs@freefall.freebsd.org, freebsd-gnats-submit@freefall.freebsd.org Subject: Re: bin/2600: fortunes : fortunes2 Lite2 merge In-Reply-To: <199701280130.RAA04976@freefall.freebsd.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Mon, 27 Jan 1997, J Wunsch wrote: > Looking into everything, this one is the only real addition that > remains: > > --- /usr/src/games/fortune/datfiles/fortunes2 Wed Jan 8 21:39:07 1997 > +++ src/games/fortune/datfiles/fortunes2 Mon Jan 3 09:58:38 1994 > @@ -36422,6 +36424,26 @@ > trivially equivalent, so the only important n are n less than n. We can > take n = n (from above), so it's true for n+1 becuase it's just about n. > QED. (QED translates from the Latin as "So what?") > +% > +Proof techniques #2: Proof by Oddity. > + SAMPLE: To prove that horses have an infinite number of legs. > +[1] Horses have an even number of legs. > +[2] They have two legs in back and fore legs in front. > +[3] This makes a total of six legs, > + which certainly is an odd number of legs for a horse. > +[4] But the only number that is both odd and even is infinity. > +[5] Therefore, horses must have an infinite number of legs. > + > +Topics is be covered in future issues include proof by: > + intimidation, > + gesticulation (handwaving), > + "try it; it works", > + constipation (I was just sitting there and...), > + blatant assertion, > + changing all the 2's to n's, > + mutual consent, > + lack of a counterexample, and, > + "it stands to reason". > % > Proper treatment will cure a cold in seven days, > but left to itself, a cold will hang on for a week. but this fortune was removed in r1.3 for fortune2 because it was a duplicate from fortune... plus it has that same mistake that fortune has... it should be "Topics to be covered in ..." instead of "Topic is be converted in ..." John-Mark gurney_j@efn.org http://resnet.uoregon.edu/~gurney_j/ Modem/FAX: (541) 683-6954 (FreeBSD Box) Live in Peace, destroy Micro$oft, support free software, run FreeBSD (unix) From owner-freebsd-bugs Mon Jan 27 22:20:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id WAA23008 for bugs-outgoing; Mon, 27 Jan 1997 22:20:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id WAA22993; Mon, 27 Jan 1997 22:20:02 -0800 (PST) Date: Mon, 27 Jan 1997 22:20:02 -0800 (PST) Message-Id: <199701280620.WAA22993@freefall.freebsd.org> To: freebsd-bugs Cc: From: John-Mark Gurney Subject: Re: bin/2600: fortunes : fortunes2 Lite2 merge Reply-To: John-Mark Gurney Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2600; it has been noted by GNATS. From: John-Mark Gurney To: J Wunsch Cc: freebsd-bugs@freefall.freebsd.org, freebsd-gnats-submit@freefall.freebsd.org Subject: Re: bin/2600: fortunes : fortunes2 Lite2 merge Date: Mon, 27 Jan 1997 22:12:37 -0800 (PST) On Mon, 27 Jan 1997, J Wunsch wrote: > Looking into everything, this one is the only real addition that > remains: > > --- /usr/src/games/fortune/datfiles/fortunes2 Wed Jan 8 21:39:07 1997 > +++ src/games/fortune/datfiles/fortunes2 Mon Jan 3 09:58:38 1994 > @@ -36422,6 +36424,26 @@ > trivially equivalent, so the only important n are n less than n. We can > take n = n (from above), so it's true for n+1 becuase it's just about n. > QED. (QED translates from the Latin as "So what?") > +% > +Proof techniques #2: Proof by Oddity. > + SAMPLE: To prove that horses have an infinite number of legs. > +[1] Horses have an even number of legs. > +[2] They have two legs in back and fore legs in front. > +[3] This makes a total of six legs, > + which certainly is an odd number of legs for a horse. > +[4] But the only number that is both odd and even is infinity. > +[5] Therefore, horses must have an infinite number of legs. > + > +Topics is be covered in future issues include proof by: > + intimidation, > + gesticulation (handwaving), > + "try it; it works", > + constipation (I was just sitting there and...), > + blatant assertion, > + changing all the 2's to n's, > + mutual consent, > + lack of a counterexample, and, > + "it stands to reason". > % > Proper treatment will cure a cold in seven days, > but left to itself, a cold will hang on for a week. but this fortune was removed in r1.3 for fortune2 because it was a duplicate from fortune... plus it has that same mistake that fortune has... it should be "Topics to be covered in ..." instead of "Topic is be converted in ..." John-Mark gurney_j@efn.org http://resnet.uoregon.edu/~gurney_j/ Modem/FAX: (541) 683-6954 (FreeBSD Box) Live in Peace, destroy Micro$oft, support free software, run FreeBSD (unix) From owner-freebsd-bugs Mon Jan 27 22:53:26 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id WAA24148 for bugs-outgoing; Mon, 27 Jan 1997 22:53:26 -0800 (PST) Received: from research.gate.nec.co.jp (research.gate.nec.co.jp [202.32.8.49]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id WAA24139; Mon, 27 Jan 1997 22:53:23 -0800 (PST) Received: from sbl-gw.sbl.cl.nec.co.jp by research.gate.nec.co.jp (8.8.4+2.7Wbeta4/950912) with ESMTP id PAA08446; Tue, 28 Jan 1997 15:53:18 +0900 (JST) Received: from sirius.sbl.cl.nec.co.jp by sbl-gw.sbl.cl.nec.co.jp (8.7.6+2.6Wbeta7/3.3W6) with ESMTP id PAA01264; Tue, 28 Jan 1997 15:53:15 +0900 (JST) Received: by sirius.sbl.cl.nec.co.jp (8.7.5+2.6Wbeta6/3.3W6) with UUCP id PAA05199; Tue, 28 Jan 1997 15:53:10 +0900 (JST) Date: Tue, 28 Jan 1997 15:53:10 +0900 (JST) From: Naoki Hamada Message-Id: <199701280653.PAA05199@sirius.sbl.cl.nec.co.jp> References: <9404.854376818@critter.dk.tfs.com> To: phk@freebsd.org CC: phk@critter.dk.tfs.com, current@freebsd.org, bugs@freebsd.org In-reply-to: Poul-Henning Kamp's message of "Mon, 27 Jan 1997 15:53:38 +0100" <9404.854376818@critter.dk.tfs.com> Subject: Re: vx0 receives any and all packets ??? Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Paul writes: >vx0 <3COM 3C900 Etherlink XL PCI> rev 0 int a irq 9 on pci0:9 >utp/aui/bnc[*bnc*] address 00:60:97:06:ef:c5 > >and "tcpdump -p" as well as "netstat -s" seems to indicate that >any and all packet on my ethernet gets forwarded to my IP stack :-( > >Anybody else seen this ? Yeah. I encountered this odd phenomenon when I tested my 3C900 adapter. Several testers also reports this. 3C590 and 3C595 adapters work completely fine. Technical documentations for 3C900 adapters are not yet available from 3COM, so I cannot tell whether it is a bug or a feature. Anyway, we have to treat symptoms. I will test Paul's patch, which seems to be hopeful. - nao From owner-freebsd-bugs Mon Jan 27 23:53:34 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id XAA28702 for bugs-outgoing; Mon, 27 Jan 1997 23:53:34 -0800 (PST) Received: from ghpc6.ihf.rwth-aachen.de (ghpc6.ihf.RWTH-Aachen.DE [134.130.90.6]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id XAA28694 for ; Mon, 27 Jan 1997 23:53:30 -0800 (PST) Received: (from thomas@localhost) by ghpc6.ihf.rwth-aachen.de (8.6.12/8.6.9) id IAA03249; Tue, 28 Jan 1997 08:52:45 +0100 From: Thomas Gellekum Message-Id: <199701280752.IAA03249@ghpc6.ihf.rwth-aachen.de> Subject: Re: FreeBSD 2.1.5 ci command interpreter test failed To: joerg_wunsch@uriah.heep.sax.de Date: Tue, 28 Jan 1997 08:52:44 +0100 (MET) Cc: griepent@wias-berlin.de, bugs@freebsd.org In-Reply-To: from J Wunsch at "Jan 27, 97 10:00:38 pm" Organization: Institut f. Hochfrequenztechnik, RWTH Aachen X-Mailer: ELM [version 2.4ME+ PL11 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk J Wunsch wrote: > > I've compiled it on my 3.0-not-very-current system with the default cc > (i.e. gcc 2.7.2.1), and it seems to work fine, either with my default > CFLAGS (-O2 -pipe), or without any optimization: This fails on 2.1.0, with gcc-2.6.3, but works fine on 2.2-BETA, gcc-2.7.2.1. tg From owner-freebsd-bugs Tue Jan 28 01:40:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id BAA02977 for bugs-outgoing; Tue, 28 Jan 1997 01:40:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id BAA02971; Tue, 28 Jan 1997 01:40:02 -0800 (PST) Resent-Date: Tue, 28 Jan 1997 01:40:02 -0800 (PST) Resent-Message-Id: <199701280940.BAA02971@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.BAA02700;Tue; (8.8.5/8.8.5);, 28 Jan 1997 01:32:54.-0800 (PST) Message-Id: <199701280932.BAA02700@freefall.freebsd.org> Date: Tue, 28 Jan 1997 01:32:54 -0800 (PST) From: w.knowles@niwa.cri.nz To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: misc/2602: NFS installation does not mount remote partition for 2.2-GAMMA? boot disk Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2602 >Category: misc >Synopsis: NFS installation does not mount remote partition for 2.2-GAMMA? boot disk >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jan 28 01:40:01 PST 1997 >Last-Modified: >Originator: Wayne Knowles >Organization: National Inst of Water & Atmosphere >Release: 2.2-BETA >Environment: FreeBSD zl2bkc.ppp.niwa.cri.nz 2.2-RELEASE FreeBSD 2.2-RELEASE #2: Sun Jan 19 20:56:03 NZDT 1997 wdk@zl2bkc.ppp.niwa.cri.nz:/home/FreeBSD/3.0-current/src/sys/compile/ZL2BKC i386 >Description: Due to high tariff costs on international traffic I have been doing several "make release" builds of RELENG_2_2 Boot floppy of Jan-26ish does not mount the requested NFS partition and the distribution files are not found. "Couldn't extract the following distributions. This could be because they are not available on the installation media You've chosen: bin doc manpages proflibs dict" Both the 2.2-BETA and an early Jan boot floppy have worked correctly. With debug option turned on, there is no message to say that the filesystem has been mounted. In fact it looks like mediaInitNFS() is never called If you specify a totally invalid NFS partition to mount, no error is given. >How-To-Repeat: make release a RELENG_2_2 boot floppy Start an express installation, select minimal Distribution Select NFS as media and give the correct path for the distribution Start the Extract >Fix: This is probably caused as a side effect of other changes. I am capable of finding the cause & fix myself, but it is probably a 5 minute fix for someone who is familiar with the sysinstall internals. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Tue Jan 28 02:00:05 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA03577 for bugs-outgoing; Tue, 28 Jan 1997 02:00:05 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA03558; Tue, 28 Jan 1997 02:00:03 -0800 (PST) Resent-Date: Tue, 28 Jan 1997 02:00:03 -0800 (PST) Resent-Message-Id: <199701281000.CAA03558@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, jau@jau.thunderbolt.fi Received: from jau.thunderbolt.fi (root@jukkonen.dial.tele.fi [194.89.253.78]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id BAA03279 for ; Tue, 28 Jan 1997 01:51:17 -0800 (PST) Received: (from jau@localhost) by jau.thunderbolt.fi (8.7.5/8.6.12+CSC-2.1) id LAA13914; Tue, 28 Jan 1997 11:50:44 +0200 (EET) Message-Id: <199701280950.LAA13914@jau.thunderbolt.fi> Date: Tue, 28 Jan 1997 11:50:44 +0200 (EET) From: Jukka Ukkonen Reply-To: jau@jau.thunderbolt.fi To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2603: Added POSIX.4/POSIX.1b constants in unistd.h Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2603 >Category: bin >Synopsis: Added POSIX.4/POSIX.1b constants in unistd.h >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Jan 28 02:00:01 PST 1997 >Last-Modified: >Originator: Jukka Ukkonen >Organization: Private person >Release: FreeBSD 2.1-STABLE i386 >Environment: OS version and hardware are not important in this context. >Description: The system could define POSIX.4/POSIX.1b style constants in describing the supported services. >How-To-Repeat: Nothing to repeat - a new feature. >Fix: The attached patch assumes that the system will include either my own or someone else's implementations of POSIX.4 style shm_*() and sched_*() interfaces. If either of these interfaces is not included you should drop the related #define from the following patch. All the other defines are supported by any 4.4BSD system by default. --- /usr/include/unistd.h.orig Tue Dec 24 12:39:59 1996 +++ /usr/include/unistd.h Sat Dec 28 16:41:42 1996 @@ -48,6 +48,13 @@ #define NULL 0 /* null pointer constant */ #endif +#define _POSIX_SHARED_MEMORY_OBJECTS /* shm_*() interface */ +#define _POSIX_PRIORITY_SCHEDULING /* sched_*() interface */ +#define _POSIX_FSYNC +#define _POSIX_MAPPED_FILES +#define _POSIX_MEMORY_PROTECTION +#define _POSIX_MEMLOCK_RANGE + __BEGIN_DECLS __dead void _exit __P((int)) __dead2; >Audit-Trail: >Unformatted: From owner-freebsd-bugs Tue Jan 28 02:00:08 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA03593 for bugs-outgoing; Tue, 28 Jan 1997 02:00:08 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA03574; Tue, 28 Jan 1997 02:00:05 -0800 (PST) Resent-Date: Tue, 28 Jan 1997 02:00:05 -0800 (PST) Resent-Message-Id: <199701281000.CAA03574@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, jau@jau.thunderbolt.fi Received: from jau.thunderbolt.fi (root@jukkonen.dial.tele.fi [194.89.253.78]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id BAA03286 for ; Tue, 28 Jan 1997 01:51:25 -0800 (PST) Received: (from jau@localhost) by jau.thunderbolt.fi (8.7.5/8.6.12+CSC-2.1) id LAA13781; Tue, 28 Jan 1997 11:33:24 +0200 (EET) Message-Id: <199701280933.LAA13781@jau.thunderbolt.fi> Date: Tue, 28 Jan 1997 11:33:24 +0200 (EET) From: Jukka Ukkonen Reply-To: jau@jau.thunderbolt.fi To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2604: Added POSIX.4/POSIX.1b shm_open()/shm_unlink() Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2604 >Category: bin >Synopsis: Added POSIX.4/POSIX.1b shm_open()/shm_unlink() >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Jan 28 02:00:04 PST 1997 >Last-Modified: >Originator: Jukka Ukkonen >Organization: Private person >Release: FreeBSD 2.1-STABLE i386 >Environment: This is a new feature to the system library. The exact version or release of the operating system as well as the hardware environment are meaningless in this context. >Description: This is a minimal implementation of the shared memory objects library interface required by POSIX.4. Using the normal files as the objects to mmap() has been supported for quite a long time in BSD environments, and I saw no practical reason to change the file descriptor used by shm_* interface to refer to something else. POSIX requires only mmap(), ftruncate(), and close() to work with the descriptors returned by shm_open(), though. >How-To-Repeat: Share and enjoy. >Fix: See the attached shar package below... # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # shm_open.c # shm_unlink.c # echo x - shm_open.c sed 's/^X//' >shm_open.c << 'END-of-shm_open.c' X/* X * Copyright (c) 1995-1997 Jukka Ukkonen X * X * Redistribution and use in source and binary forms, with or without X * modification, are permitted provided that the following conditions X * are met: X * 1. Redistributions of source code must retain the above copyright X * notice, this list of conditions and the following disclaimer. X * 2. Redistributions in binary form must reproduce the above copyright X * notice, this list of conditions and the following disclaimer in the X * documentation and/or other materials provided with the distribution. X * 3. All advertising materials mentioning features or use of this software X * must display the following acknowledgement: X * This product includes software developed by Jukka Antero Ukkonen. X * 4. Neither the names of the authors nor the names of contributors X * may be used to endorse or promote products derived from this software X * without specific prior written permission. X * 5. The source code must be available for anyone who wishes to have it. X * X * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND X * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE X * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE X * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE X * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL X * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS X * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) X * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT X * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY X * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF X * SUCH DAMAGE. X * X * %W% (Jukka Ukkonen) %E% X */ X X#ifndef lint Xstatic const char sccsid[] = "%W%\t(Jukka Ukkonen)\t%E%"; X#endif X X/* X * usage/example: X * X * fd = shm_open (name, O_RDWR|O_CREAT|O_EXCL, 0600); X * X * shm = mmap (NULL, pagesize, PROT_READ | PROT_WRITE, X * MAP_INHERIT | MAP_SHARED, fd, (off_t) 0); X */ X X#include X#include X#include X#include X#include X Xint Xshm_open (name, flags, mode) X char *name; X int flags; X mode_t mode; X{ X struct stat st; X register int fd; X X if (! name) { X errno = EINVAL; X X return (-1); X } X X if ((fd = open (name, flags, mode)) < 0) X return (-1); X X if (fstat (fd, &st) < 0) X return (-1); X X /* X * The whole difference to the plain open(2) is here. X * X * We check that the file descriptor we just opened X * refers to a regular file. We also report invalid X * parameter, if the file name did not give us just X * a plain regular file. X * This is to guarantee that the opened descriptor X * really can be mmap()ed later on. X */ X X if (! S_ISREG (st.st_mode)) { X close (fd); X X errno = EINVAL; X X return (-1); X } X X return (fd); X} END-of-shm_open.c echo x - shm_unlink.c sed 's/^X//' >shm_unlink.c << 'END-of-shm_unlink.c' X/* X * Copyright (c) 1995-1997 Jukka Ukkonen X * X * Redistribution and use in source and binary forms, with or without X * modification, are permitted provided that the following conditions X * are met: X * 1. Redistributions of source code must retain the above copyright X * notice, this list of conditions and the following disclaimer. X * 2. Redistributions in binary form must reproduce the above copyright X * notice, this list of conditions and the following disclaimer in the X * documentation and/or other materials provided with the distribution. X * 3. All advertising materials mentioning features or use of this software X * must display the following acknowledgement: X * This product includes software developed by Jukka Antero Ukkonen. X * 4. Neither the names of the authors nor the names of contributors X * may be used to endorse or promote products derived from this software X * without specific prior written permission. X * 5. The source code must be available for anyone who wishes to have it. X * X * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND X * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE X * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE X * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE X * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL X * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS X * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) X * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT X * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY X * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF X * SUCH DAMAGE. X * X * %W% (Jukka Ukkonen) %E% X */ X X#ifndef lint Xstatic const char sccsid[] = "%W%\t(Jukka Ukkonen)\t%E%"; X#endif X X X#include X#include X#include X#include X#include X Xint Xshm_unlink (name) X char *name; X{ X struct stat st; X X if (! name) { X errno = EINVAL; X return (-1); X } X X if (stat (name, &st) < 0) X return (-1); X X /* X * Try to protect against unlinking something that X * never was a potential candidate for being mmap()'ed X * for shared memory access. X */ X X if (! S_ISREG (st.st_mode)) { X errno = EINVAL; X X return (-1); X } X X return (unlink (name)); X} X END-of-shm_unlink.c exit >Audit-Trail: >Unformatted: From owner-freebsd-bugs Tue Jan 28 02:00:13 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA03612 for bugs-outgoing; Tue, 28 Jan 1997 02:00:13 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA03591; Tue, 28 Jan 1997 02:00:08 -0800 (PST) Resent-Date: Tue, 28 Jan 1997 02:00:08 -0800 (PST) Resent-Message-Id: <199701281000.CAA03591@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, jau@iki.fi Received: from jau.thunderbolt.fi (root@jukkonen.dial.tele.fi [194.89.253.78]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id BAA03290 for ; Tue, 28 Jan 1997 01:51:39 -0800 (PST) Received: (from jau@localhost) by jau.thunderbolt.fi (8.7.5/8.6.12+CSC-2.1) id KAA13618; Tue, 28 Jan 1997 10:46:00 +0200 (EET) Message-Id: <199701280846.KAA13618@jau.thunderbolt.fi> Date: Tue, 28 Jan 1997 10:46:00 +0200 (EET) From: Jukka Ukkonen Reply-To: jau@iki.fi To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2605: Buffer overflow in Paul Vixie's cron Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2605 >Category: bin >Synopsis: Buffer overflow in Paul Vixie's cron >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jan 28 02:00:06 PST 1997 >Last-Modified: >Originator: Jukka Ukkonen >Organization: Private person >Release: FreeBSD 2.1-STABLE i386 >Environment: This is a system software problem which is independent of the hardware environment in which the program is running. >Description: There was a possibility to cause an overflow of a string buffer in Vixie's cron implementation by defining very long names for environment variables. This erroneous behaviour could create a security problem unless fixed ASAP. The bug was found after a similar bug was reported in Linux, which uses a different version of Vixie's cron. >How-To-Repeat: Make a crontab entry using an environment variable definition of the form A_VERY_LONG_ENVIRONMENT_ ... _VARIABLE_NAME=some_value >Fix: See the attached patch... --- cron/lib/env.c.orig Sat Aug 27 16:43:02 1994 +++ cron/lib/env.c Tue Dec 24 11:45:40 1996 @@ -117,6 +117,8 @@ int fileline; char name[MAX_TEMPSTR], val[MAX_ENVSTR]; int fields; + size_t envlen; + char *ptr; filepos = ftell(f); fileline = LineNumber; @@ -125,6 +127,20 @@ return (ERR); Debug(DPARS, ("load_env, read <%s>\n", envstr)) + + ptr = strpbrk (envstr, "=\n"); + + if (! ptr) + envlen = strlen (envstr); + else + envlen = ptr - envstr; + + if (envlen >= MAX_TEMPSTR) { + Debug(DPARS, ("load_env, var name too long\n")) + fseek(f, filepos, 0); + Set_LineNum(fileline); + return (FALSE); + } name[0] = val[0] = '\0'; fields = sscanf(envstr, "%[^ =] = %[^\n#]", name, val); >Audit-Trail: >Unformatted: From owner-freebsd-bugs Tue Jan 28 02:20:42 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA04368 for bugs-outgoing; Tue, 28 Jan 1997 02:20:42 -0800 (PST) Received: from mail.crl.com (mail.crl.com [165.113.1.22]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id CAA04314; Tue, 28 Jan 1997 02:20:26 -0800 (PST) Received: from nanguo.chalmers.com.au (chalmers.com.au) by mail.crl.com with SMTP id AA21426 (5.65c/IDA-1.5); Tue, 28 Jan 1997 02:19:52 -0800 Received: (from robert@localhost) by nanguo.chalmers.com.au (8.7.6/8.7.3) id UAA00874; Tue, 28 Jan 1997 20:02:03 +1000 (EST) From: Robert Chalmers Message-Id: <199701281002.UAA00874@nanguo.chalmers.com.au> Subject: progress report on connection problems To: freebsd-questions@freebsd.org (bsd) Date: Tue, 28 Jan 1997 20:02:02 +1000 (EST) Cc: freebsd-isp@freebsd.org (FreeBSD ISP), hackers@freebsd.org X-Mailer: ELM [version 2.4ME+ PL22 (25)] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk In the hopes that someone more knowledgable than I may have an explanation. I realise this is not in bug report format. FreeBSD nanguo.chalmers.com.au 2.2-961014-SNAP FreeBSD 2.2-961014-SNAP #0: Tue Jan 28 14:23:53 EST 1997 root@nanguo.chalmers.com.au:/usr/src/sys/compile/MYKERNEL i386 I am connected to the carrier (ISP) through my Stallion EasyServer 8 Port. This is an Annex the same as the XYLogics Annex. Running V9.xx software erpcd. The problem that has surfaced; Some, not all, sites around the world are not able to connect to any of my FreeBSD servers to exchange information. Let me rephrase that: They can connect, but not exchange information past that point. I have no idea what OSs the other sites are using. The number of sites is not large, but significant. I am currently logging over 4000 connections a month from individual places. Well over 1GB of data transferred. the Problem. examples: 1. mail (sendmail) to some sites can only deliver 1 line messages. To other sites not at all. The sites report back with timeout and other messages indicating a failure to complete transactions with my site 2. ftp from other sites into the ftp server will connect then hang, and the connection is reset. Most interestingly, one freebsd site changed to a Linux server, and connected fine, and completed the transfer. 3. http/web servers will connect and hang, others will go so slowly that they are as good as unusable. Most notable are yahoo.com and linkexchange.com. All the other search engines connect and exchange data with no worries. It should be noted that linkexchange.com will talk happily to this site, EXCEPT when it is required to SUBMIT my banner for its archive. It connects, then I get a server error from Linkexchanges server. Yahoo simply fails all together. The error returned is a timeout. Systems known to work with my site with no worries. SCO Unix BSDI NT '95 I can connect to, and be connected to these OSs with no worries. I have tried setting tcp_extensions NO and YES. If set to YES, I am unable to ftp to another FBSD site that also has tcp_extensions set YES (on). The connection simply 'hung'. If I set rfc1323 to 0 (off) the ftp connection worked fine, the other end being (on). The same happened at the other end, when they tried to ftp to me. set tcp_extension on, fail, set it off, fine. The only constant is the Annex. However, why does it pass _most_ traffic, if it is the fault of the Annex, and only fail on some.? If FreeBSD is going to be so fussy about its tcp/ip flow, shouldn't it be reworked. The world is still full of less than leading edge hardware! Some of it brand new... If anyone wants to comment or offer help, I'mm happy to keep trying to track this bug(ger) down. cheers, Robert -- Triple-W: P.O. Box 2003. Mackay. 4740 +61-0412-079025 robert@chalmers.com.au for Whirled Peas http://www.chalmers.com.au Location: Whitsunday Web Works. 21'7" S, 149'14" E. From owner-freebsd-bugs Tue Jan 28 03:20:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id DAA07160 for bugs-outgoing; Tue, 28 Jan 1997 03:20:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id DAA07150; Tue, 28 Jan 1997 03:20:02 -0800 (PST) Date: Tue, 28 Jan 1997 03:20:02 -0800 (PST) Message-Id: <199701281120.DAA07150@freefall.freebsd.org> To: freebsd-bugs Cc: From: Bruce Evans Subject: Re: bin/2603: Added POSIX.4/POSIX.1b constants in unistd.h Reply-To: Bruce Evans Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2603; it has been noted by GNATS. From: Bruce Evans To: FreeBSD-gnats-submit@freebsd.org, jau@jau.thunderbolt.fi Cc: Subject: Re: bin/2603: Added POSIX.4/POSIX.1b constants in unistd.h Date: Tue, 28 Jan 1997 22:04:56 +1100 > The system could define POSIX.4/POSIX.1b style constants in > describing the supported services. They should be in with the other POSIX macros... > The attached patch assumes that the system will include either my > own or someone else's implementations of POSIX.4 style shm_*() and > sched_*() interfaces. > If either of these interfaces is not included you should drop the > related #define from the following patch. ...mainly because some of them are system-dependent or configuration- dependent. Configuration-dependent options are handled poorly by compile-time macros. I plan to remove some of the optional ones, starting with the bogus ones in . Bruce From owner-freebsd-bugs Tue Jan 28 04:54:19 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id EAA12760 for bugs-outgoing; Tue, 28 Jan 1997 04:54:19 -0800 (PST) Received: from news.IAEhv.nl (root@news.IAEhv.nl [194.151.64.4]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id EAA12753 for ; Tue, 28 Jan 1997 04:54:15 -0800 (PST) Received: from truk.brandinnovators.com (uucp@localhost) by news.IAEhv.nl (8.6.13/1.63) with IAEhv.nl; pid 937 on Tue, 28 Jan 1997 13:44:34 +0100; id NAA00937 efrom: hans@truk.brandinnovators.com; eto: bugs@FreeBSD.ORG Received: by truk.brandinnovators.com (8.7.5/BI96070101) for id NAA04205; Tue, 28 Jan 1997 13:41:29 +0100 (MET) Message-Id: <199701281241.NAA04205@truk.brandinnovators.com> From: hans@brandinnovators.com (Hans Zuidam) Subject: Re: FreeBSD 2.1.5 ci command interpreter test failed To: bugs@FreeBSD.ORG Date: Tue, 28 Jan 1997 13:41:29 +0100 (MET) In-Reply-To: from J Wunsch at "Jan 27, 97 10:00:38 pm" X-Mailer: ELM [version 2.4ME+ PL22 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > J Wunsch wrote: > As griepent@wias-berlin.de wrote: > > Hello, bugs@FreeBSD.org ! > > > ------------------------------------------------------------------------------ > > ----------------------------------- ci.h ------------------------------------- > > ------------------------------------------------------------------------------ > > Well, it would have been better to provide at least a shar archive, or > a MIME-appended or uuencoded .tar.gz for this. Saves a lot of > handwork. You're expecting too much from someone who gets his strlen()/malloc()/strcpy() wrong ;-). Hans -- H. Zuidam E-Mail: hans@brandinnovators.com Brand Innovators B.V. P-Mail: P.O. Box 1377 de Pinckart 54 5602 BJ Eindhoven, The Netherlands 5674 CC Nuenen Tel. +31 40 2631134, Fax. +31 40 2831138 From owner-freebsd-bugs Tue Jan 28 05:23:43 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA13775 for bugs-outgoing; Tue, 28 Jan 1997 05:23:43 -0800 (PST) Received: (from wosch@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA13753; Tue, 28 Jan 1997 05:23:32 -0800 (PST) Date: Tue, 28 Jan 1997 05:23:32 -0800 (PST) From: Wolfram Schneider Message-Id: <199701281323.FAA13753@freefall.freebsd.org> To: thomas@lemur.nord.de, wosch, freebsd-bugs Subject: Re: bin/1105 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: Bug in find command State-Changed-From-To: analyzed-closed State-Changed-By: wosch State-Changed-When: Tue Jan 28 05:22:31 PST 1997 State-Changed-Why: Fixed in src/usr.bin/find/function.c rev 1.11; Thanks! From owner-freebsd-bugs Tue Jan 28 09:00:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA23876 for bugs-outgoing; Tue, 28 Jan 1997 09:00:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA23864; Tue, 28 Jan 1997 09:00:02 -0800 (PST) Resent-Date: Tue, 28 Jan 1997 09:00:02 -0800 (PST) Resent-Message-Id: <199701281700.JAA23864@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.IAA23776;Tue; (8.8.5/8.8.5);, 28 Jan 1997 08:57:53.-0800 (PST) Message-Id: <199701281657.IAA23776@freefall.freebsd.org> Date: Tue, 28 Jan 1997 08:57:53 -0800 (PST) From: pgiffuni@fps.biblos.unal.edu.co To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: misc/2606: FPE error on certain ports Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2606 >Category: misc >Synopsis: FPE error on certain ports >Confidential: no >Severity: serious >Priority: low >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jan 28 09:00:01 PST 1997 >Last-Modified: >Originator: Pedro Giffuni S. >Organization: Universidad Nacional de Colombia >Release: 2.1.5 >Environment: FreeBSD apolo.biblos.unal.edu.co 2.1.5-RELEASE FreeBSD 2.1.5-RELEASE #0: Fri No6 >Description: To port felt I had to mask the NaN due to FreeBSD's non-standard behaviour of cumping this programs. Velvet, the graphical interface in felt's port, will block because it expects a NaN. patch-ac is not a solution. >How-To-Repeat: Compare our felt with any other's (I compared with SGI's). The bug is also described in Martin Cracauer's web page. >Fix: I reported the problem to the author, but it's since the problem is in the kernel, I would suggest a configuration flag that will let the end user decide if he wants coredumps. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Tue Jan 28 10:39:48 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA00657 for bugs-outgoing; Tue, 28 Jan 1997 10:39:48 -0800 (PST) Received: from george.lbl.gov (george.lbl.gov [128.3.196.93]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id KAA00650 for ; Tue, 28 Jan 1997 10:39:45 -0800 (PST) Received: (jin@localhost) by george.lbl.gov (8.6.10/8.6.5) id KAA20167; Tue, 28 Jan 1997 10:39:02 -0800 Date: Tue, 28 Jan 1997 10:39:02 -0800 From: "Jin Guojun[ITG]" Message-Id: <199701281839.KAA20167@george.lbl.gov> To: bugs@freebsd.org Subject: pkg_add (failed) / pkg_delete (core dumped) Cc: questionsfreebsd.org@george.lbl.gov Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I tried to install xemacs-19.14.tgz from sysinstall. It failed. So, I pulled xemacs-19.14.tgz to my local disk and performed # pkg_add -v xemacs-19.14.tgz Requested space: 53957744 bytes, free space: 828093440 bytes in /usr/tmp/instmp.001428 Somehow, pkg_add extracted following things, but without install them: # ls -l /usr/tmp/instmp.001428 total 239 -rw-r--r-- 1 root wheel 28 Aug 8 19:08 +COMMENT -rw-r--r-- 1 root wheel 227871 Aug 8 19:08 +CONTENTS -rw-r--r-- 1 root wheel 991 Aug 8 19:08 +DESC -r--r--r-- 1 root wheel 2025 Jul 16 1996 +MTREE_DIRS drwxrwxrwx 2 bin bin 512 Jan 28 09:40 bin drwxrwxrwx 4 root bin 512 Jan 28 09:40 lib drwxrwxrwx 3 bin bin 512 Jan 28 09:43 man There are errors as many as the number of files in the package. It looks like this package trying to delete everything instead of installing it. Here are some lines at the end of the entire message: ... File `/usr/local/lib/xemacs-19.14/i386--freebsd/DOC-19.14-XEmacs' doesn't really exist. Delete file /usr/local/man/man1/ctags.1 File `/usr/local/man/man1/ctags.1' doesn't really exist. Delete file /usr/local/man/man1/etags.1 File `/usr/local/man/man1/etags.1' doesn't really exist. Delete file /usr/local/man/man1/gnuattach.1 File `/usr/local/man/man1/gnuattach.1' doesn't really exist. Delete file /usr/local/man/man1/gnuclient.1 File `/usr/local/man/man1/gnuclient.1' doesn't really exist. Delete file /usr/local/man/man1/gnudoit.1 File `/usr/local/man/man1/gnudoit.1' doesn't really exist. Delete file /usr/local/man/man1/gnuserv.1 File `/usr/local/man/man1/gnuserv.1' doesn't really exist. Delete file /usr/local/man/man1/xemacs.1 File `/usr/local/man/man1/xemacs.1' doesn't really exist. Change working directory to . # So, I tried to use MASTER/SLAVE mode, and it seems not working either. It creates anonymous package, but bin/lib go nowhere. --------------------------------------------- Information for anonymous: Comment: XEmacs text editor binaries Description: XEmacs is a self-documenting, customizable, extensible real-time display editor. Users new to XEmacs will be able to use basic features fairly rapidly by studying the tutorial and using the self-documentation features. XEmacs also has an extensive interactive manual browser. It is easily extensible since its editing commands are written in Lisp. XEmacs's many special packages handle mail reading (RMail) and sending (Mail), outline editing (Outline), compiling (Compile), running subshells within Emacs windows (Shell), running a Lisp read-eval-print loop (Lisp-Interaction-Mode), automated psychotherapy (Doctor :-) and many more. There is a WWW browsing mode written fully in elisp that looks and behaves much like the netscape WWW browser. XEmacs has similar functionality to GNU Emacs. It uses a different display model, including support for Motif menu and scroll bars and the ability to run as a widget inside other applications. Many people say it looks nicer than GNU Emacs. --------------------------------------------- I cannot delete this anonymous package: # pkg_delete -f anonymous Segmentation fault (core dumped) Would some one please tell me what I can do to delete it? Has any one installed xemacs-19.14.tgz successfully? This is under 2.1.6-RELEASE. 2.1.5-RELEASE has no problem on it. -Jin From owner-freebsd-bugs Tue Jan 28 19:05:49 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id TAA03058 for bugs-outgoing; Tue, 28 Jan 1997 19:05:49 -0800 (PST) Received: (from gpalmer@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id TAA03019; Tue, 28 Jan 1997 19:05:15 -0800 (PST) Date: Tue, 28 Jan 1997 19:05:15 -0800 (PST) From: Gary Palmer Message-Id: <199701290305.TAA03019@freefall.freebsd.org> To: gpalmer, gnats-admin, freebsd-bugs Subject: Re: bin/2609 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: Problem receiving more than 1688835 bytes with fetch Responsible-Changed-From-To: gnats-admin->freebsd-bugs Responsible-Changed-By: gpalmer Responsible-Changed-When: Tue Jan 28 19:05:05 PST 1997 Responsible-Changed-Why: Misfiled PR From owner-freebsd-bugs Tue Jan 28 23:40:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id XAA16341 for bugs-outgoing; Tue, 28 Jan 1997 23:40:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id XAA16335; Tue, 28 Jan 1997 23:40:02 -0800 (PST) Resent-Date: Tue, 28 Jan 1997 23:40:02 -0800 (PST) Resent-Message-Id: <199701290740.XAA16335@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Thomas.Traylor@mci.com Received: from vulture.cs.mci.com ([166.41.208.13]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id XAA15941 for ; Tue, 28 Jan 1997 23:33:49 -0800 (PST) Received: (from tst@localhost) by vulture.cs.mci.com (8.8.2/8.8.2) id AAA02051; Wed, 29 Jan 1997 00:26:56 -0700 (MST) Message-Id: <199701290726.AAA02051@vulture.cs.mci.com> Date: Wed, 29 Jan 1997 00:26:56 -0700 (MST) From: Thomas S Traylor Reply-To: Thomas.Traylor@mci.com To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: gnu/2610: strdup will cause you app to core if passed a NULL string Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2610 >Category: gnu >Synopsis: strdup will cause you app to core if passed a NULL string >Confidential: no >Severity: serious >Priority: low >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jan 28 23:40:01 PST 1997 >Last-Modified: >Originator: Thomas S Traylor >Organization: >Release: FreeBSD 2.2-ALPHA i386 >Environment: Normal user environment. >Description: The library function strdup does not handle a NULL string being passed to it. When you do the application cores. >How-To-Repeat: Pass strdup a NULL string. >Fix: Have strdup check for a NULL string and then return a NULL string. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Wed Jan 29 01:30:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id BAA21498 for bugs-outgoing; Wed, 29 Jan 1997 01:30:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id BAA21492; Wed, 29 Jan 1997 01:30:02 -0800 (PST) Date: Wed, 29 Jan 1997 01:30:02 -0800 (PST) Message-Id: <199701290930.BAA21492@freefall.freebsd.org> To: freebsd-bugs Cc: From: j@uriah.heep.sax.de (J Wunsch) Subject: Re: gnu/2610: strdup will cause you app to core if passed a NULL string Reply-To: j@uriah.heep.sax.de (J Wunsch) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR gnu/2610; it has been noted by GNATS. From: j@uriah.heep.sax.de (J Wunsch) To: Thomas.Traylor@mci.com Cc: FreeBSD-gnats-submit@FreeBSD.ORG Subject: Re: gnu/2610: strdup will cause you app to core if passed a NULL string Date: Wed, 29 Jan 1997 10:05:36 +0100 As Thomas S Traylor wrote: > >Number: 2610 > >Category: gnu Well, `gnu' is the wrong category, but nevermind. > The library function strdup does not handle a NULL string being > passed to it. When you do the application cores. Then don't do it. It's not supposed to `duplicate' a NULL pointer, i think. What would you exect from it? Another NULL pointer? How do you distinguish it from ``Out of memory''? Neither of the strxxx() functions accept NULL pointers, so i won't see a reason for strdup(). -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Wed Jan 29 02:48:43 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id CAA23923 for bugs-outgoing; Wed, 29 Jan 1997 02:48:43 -0800 (PST) Received: from aloha.com (root@aloha.com [206.126.0.1]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id CAA23918 for ; Wed, 29 Jan 1997 02:48:39 -0800 (PST) Received: from aloha.com (danyboy@aloha.com [206.126.0.1]) by aloha.com (8.8.4/8.6.5) with SMTP id AAA03629 for ; Wed, 29 Jan 1997 00:48:32 -1000 (HST) Date: Wed, 29 Jan 1997 00:48:32 -1000 (HST) From: DannyBoy!! To: bugs@FreeBSD.org Subject: lists of known bugs on 2.1R Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-bugs@FreeBSD.org X-Loop: FreeBSD.org Precedence: bulk hi, i'm about to install 2.1R and i was wondering if there was a site that carries a list of all the known bugs thats was fixed in 2.1.6. Before i install 2.1R, i would like to play around a bit with the known bugs and try to patch them myself. Thanks!! From owner-freebsd-bugs Wed Jan 29 06:30:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA02444 for bugs-outgoing; Wed, 29 Jan 1997 06:30:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA02438; Wed, 29 Jan 1997 06:30:02 -0800 (PST) Date: Wed, 29 Jan 1997 06:30:02 -0800 (PST) Message-Id: <199701291430.GAA02438@freefall.freebsd.org> To: freebsd-bugs Cc: From: Kazutaka YOKOTA Subject: Re: bin/2539: keyboard lock with Toshiba laptop Reply-To: Kazutaka YOKOTA Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2539; it has been noted by GNATS. From: Kazutaka YOKOTA To: jbrann@freebie.brann.org Cc: FreeBSD-gnats-submit@freebsd.org, yokota@zodiac.mech.utsunomiya-u.ac.jp Subject: Re: bin/2539: keyboard lock with Toshiba laptop Date: Wed, 29 Jan 1997 23:23:30 +0900 >>>Number: 2539 >>>Category: bin >>>Synopsis: keyboard lock with Toshiba laptop >>>Confidential: no >>>Severity: serious >>>Priority: high >The `psm' driver in 2.2-BETA is very new, and several problems have >been reported and corrected so far. > >Would you possibly check the following? > >1. Any error messages logged during the boot process. The lines > you should look for are marked with either "sc0:...", "psm:...", or > "kbdio:...". >2. If you can bother, put > options "PSM_DEBUG=2" > options "KBDIO_DEBUG=2" > in your kernel configuration file, rebuild the kernel and reboot. > You should see a lot more messages this time. >3. Please don't use `moused' for now. The `psm' driver and `moused' in > 2.2-BETA just don't work together (this problem has been correced > for the next release.) > >>The mouse works correctly with 2.1.6 and 2.2-960612-SNAP > >Hmmm. > >Kazu. Since you reported the problem, I haven't heard from you. I, as the programmer of the psm driver, am rather concerned that you may have abandoned to use the PS/2 mouse device all together. Several problems with the psm driver in 2.2-BETA have been reported by other people as well, and a fix has been issued. Please find patch at the end of this mail. I would be very grateful if you could try this patch and see if it works for you. The patch will modify psm.c, kbdio.c, and kbdio.h in /usr/src/sys/i386/isa. Thank you, in advance, for your cooperation. Kazu =================================================================== RCS file: /home/ncvs/src/sys/i386/isa/psm.c,v retrieving revision 1.25.2.3 retrieving revision 1.25.2.5 diff -u -r1.25.2.3 -r1.25.2.5 --- src/sys/i386/isa/psm.c 1996/12/03 10:47:24 1.25.2.3 +++ src/sys/i386/isa/psm.c 1997/01/15 12:03:33 1.25.2.5 @@ -19,7 +19,7 @@ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: psm.c,v 1.25.2.3 1996/12/03 10:47:24 phk Exp $ + * $Id: psm.c,v 1.25.2.5 1997/01/15 12:03:33 sos Exp $ */ /* @@ -435,6 +435,11 @@ int i; switch((i = test_aux_port(port))) { + case 1: /* ignore this error */ + if (verbose) + log(LOG_DEBUG, "psm%d: strange result for test aux port (%d).\n", + PSM_UNIT(dev), i); + /* fall though */ case 0: /* no error */ break; case -1: /* time out */ @@ -478,10 +483,14 @@ } /* just check the status of the mouse */ + i = get_mouse_status(port, stat); if (verbose) { - get_mouse_status(port, stat); - log(LOG_DEBUG, "psm%d: status %02x %02x %02x (reinitialized)\n", - PSM_UNIT(dev), stat[0], stat[1], stat[2]); + if (i) + log(LOG_DEBUG, "psm%d: status %02x %02x %02x\n", + PSM_UNIT(dev), stat[0], stat[1], stat[2]); + else + log(LOG_DEBUG, "psm%d: failed to get mouse status\n", + PSM_UNIT(dev)); } return TRUE; @@ -508,6 +517,8 @@ if (unit >= NPSM) return (0); + psm_softc[unit] = NULL; + sc = malloc(sizeof *sc, M_DEVBUF, M_NOWAIT); bzero(sc, sizeof *sc); @@ -556,6 +567,7 @@ */ /* save the current command byte; it will be used later */ + empty_both_buffers(ioport, 20); if (!write_controller_command(ioport,KBDC_GET_COMMAND_BYTE)) { /* CONTROLLER ERROR */ printf("psm%d: failed to get the current command byte value.\n", @@ -604,8 +616,18 @@ * supporsed to return with an error code or simply time out. In any * case, we have to continue probing the port even when the controller * passes this test. + * + * XXX: some controllers erroneously return the error code 1 when + * it has the perfectly functional aux port. We have to ignore this + * error code. Even if the controller HAS error with the aux port, + * it will be detected later... */ switch ((i = test_aux_port(ioport))) { + case 1: /* ignore this error */ + if (verbose) + printf("psm%d: strange result for test aux port (%d).\n", + unit, i); + /* fall though */ case 0: /* no error */ break; case -1: /* time out */ @@ -693,6 +715,7 @@ /* set mouse parameters */ /* FIXME:XXX should we set them in `psmattach()' rather than here? */ +#if 0 if (setparams) { if (sc->mode.rate > 0) sc->mode.rate = set_mouse_sampling_rate(ioport, sc->mode.rate); @@ -703,12 +726,25 @@ /* FIXME:XXX I don't know if these parameters are reasonable */ set_mouse_scaling(ioport); /* 1:1 scaling */ set_mouse_mode(ioport); /* stream mode */ +#else + i = send_aux_command(ioport, PSMC_SET_DEFAULTS); + if (verbose >= 2) + log(LOG_DEBUG, "psm%d: SET_DEFAULTS return code:%04x\n", unit, i); +#endif /* just check the status of the mouse */ + /* + * XXX there are some arcane controller/mouse combinations out there, + * which hung the controller unless there is data transmission + * after ACK from the mouse. + */ + i = get_mouse_status(ioport, stat); if (verbose) { - get_mouse_status(ioport, stat); - log(LOG_DEBUG, "psm%d: status %02x %02x %02x\n", - unit, stat[0], stat[1], stat[2]); + if (i) + log(LOG_DEBUG, "psm%d: status %02x %02x %02x\n", + unit, stat[0], stat[1], stat[2]); + else + log(LOG_DEBUG, "psm%d: failed to get mouse status\n", unit); } /* disable the aux port for now... */ @@ -745,6 +781,9 @@ int unit = dvp->id_unit; struct psm_softc *sc = psm_softc[unit]; + if (sc == NULL) /* shouldn't happen */ + return (0); + /* initial operation mode */ sc->mode.accelfactor = PSM_ACCEL; sc->mode.protocol = MOUSE_PROTO_PS2; @@ -763,8 +802,11 @@ DV_CHR, 0, 0, 0666, "npsm%d", unit); #endif - printf("psm%d: device ID %d, %d buttons?\n", - unit, sc->hw.hwid, sc->hw.buttons); + if (verbose) + printf("psm%d: device ID %d, %d buttons?\n", + unit, sc->hw.hwid, sc->hw.buttons); + else + printf("psm%d: device ID %d\n", unit, sc->hw.hwid); if (bootverbose) --verbose; @@ -779,6 +821,7 @@ int ioport; struct psm_softc *sc; int stat[3]; + int ret; /* Validate unit number */ if (unit >= NPSM) @@ -786,7 +829,7 @@ /* Get device data */ sc = psm_softc[unit]; - if ((sc->state & PSM_VALID) == 0) + if ((sc == NULL) || (sc->state & PSM_VALID) == 0) /* the device is no longer valid/functioning */ return (ENXIO); ioport = sc->addr; @@ -849,10 +892,14 @@ return (EIO); } + ret = get_mouse_status(ioport, stat); if (verbose >= 2) { - get_mouse_status(ioport, stat); - log(LOG_DEBUG, "psm%d: status %02x %02x %02x\n", - unit, stat[0], stat[1], stat[2]); + if (ret) + log(LOG_DEBUG, "psm%d: status %02x %02x %02x (psmopen)\n", + unit, stat[0], stat[1], stat[2]); + else + log(LOG_DEBUG, "psm%d: failed to get mouse status (psmopen).\n", + unit); } /* enable the aux port and interrupt */ @@ -877,6 +924,8 @@ { struct psm_softc *sc = psm_softc[PSM_UNIT(dev)]; int ioport = sc->addr; + int stat[3]; + int ret; /* disable the aux interrupt */ if (!set_controller_command_byte(ioport, sc->command_byte, @@ -905,6 +954,17 @@ log(LOG_ERR, "psm%d: failed to disable the device (psmclose).\n", PSM_UNIT(dev)); } + + ret = get_mouse_status(ioport, stat); + if (verbose >= 2) { + if (ret) + log(LOG_DEBUG, "psm%d: status %02x %02x %02x (psmclose)\n", + PSM_UNIT(dev), stat[0], stat[1], stat[2]); + else + log(LOG_DEBUG, "psm%d: failed to get mouse status (psmclose).\n", + PSM_UNIT(dev)); + } + if (!set_controller_command_byte(ioport, sc->command_byte, KBD_DISABLE_AUX_PORT | KBD_DISABLE_AUX_INT)) { /* CONTROLLER ERROR; =================================================================== RCS file: /home/ncvs/src/sys/i386/isa/kbdio.c,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -u -r1.1.2.2 -r1.1.2.3 --- src/sys/i386/isa/kbdio.c 1996/12/04 16:11:39 1.1.2.2 +++ src/sys/i386/isa/kbdio.c 1997/01/15 12:03:38 1.1.2.3 @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: kbdio.c,v 1.1.2.2 1996/12/04 16:11:39 phk Exp $ + * $Id: kbdio.c,v 1.1.2.3 1997/01/15 12:03:38 sos Exp $ */ #include @@ -295,64 +295,76 @@ /* discard data from the keyboard */ void -empty_kbd_buffer(int port, int t) +empty_kbd_buffer(int port, int wait) { + int t; int b; int c = 0; int delta = 2; - for (; t > 0; t -= delta) { + for (t = wait; t > 0; ) { if ((inb(port + KBD_STATUS_PORT) & KBDS_BUFFER_FULL) == KBDS_KBD_BUFFER_FULL) { DELAY(KBDD_DELAYTIME); - b = inb(port + KBD_DATA_PORT); - ++c; - } + b = inb(port + KBD_DATA_PORT); + ++c; + t = wait; + } else { + t -= delta; + } DELAY(delta*1000); } if ((verbose >= 2) && (c > 0)) - log(LOG_DEBUG,"kbdio: %d char read (empty_kbd_buffer)\n",c); + log(LOG_DEBUG,"kbdio: %d char read (empty_kbd_buffer)\n",c); } /* discard data from the aux device */ void -empty_aux_buffer(int port, int t) +empty_aux_buffer(int port, int wait) { + int t; int b; int c = 0; int delta = 2; - for (; t > 0; t -= delta) { + for (t = wait; t > 0; ) { if ((inb(port + KBD_STATUS_PORT) & KBDS_BUFFER_FULL) == KBDS_AUX_BUFFER_FULL) { DELAY(KBDD_DELAYTIME); - b = inb(port + KBD_DATA_PORT); - ++c; - } + b = inb(port + KBD_DATA_PORT); + ++c; + t = wait; + } else { + t -= delta; + } DELAY(delta*1000); } if ((verbose >= 2) && (c > 0)) - log(LOG_DEBUG,"kbdio: %d char read (empty_aux_buffer)\n",c); + log(LOG_DEBUG,"kbdio: %d char read (empty_aux_buffer)\n",c); } /* discard any data from the keyboard or the aux device */ void -empty_both_buffers(int port, int t) +empty_both_buffers(int port, int wait) { + int t; int b; int c = 0; int delta = 2; - for (; t > 0; t -= delta) { + for (t = wait; t > 0; ) { if (inb(port + KBD_STATUS_PORT) & KBDS_ANY_BUFFER_FULL) { DELAY(KBDD_DELAYTIME); - b = inb(port + KBD_DATA_PORT); - ++c; - } + b = inb(port + KBD_DATA_PORT); + ++c; + t = wait; + } else { + t -= delta; + } DELAY(delta*1000); } if ((verbose >= 2) && (c > 0)) - log(LOG_DEBUG,"kbdio: %d char read (empty_both_buffers)\n",c); + log(LOG_DEBUG,"kbdio: %d char read (empty_both_buffers)\n",c); } /* keyboard and mouse device control */ =================================================================== RCS file: /home/ncvs/src/sys/i386/isa/kbdio.h,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -u -r1.1.2.2 -r1.1.2.3 --- src/sys/i386/isa/kbdio.h 1996/12/04 16:11:45 1.1.2.2 +++ src/sys/i386/isa/kbdio.h 1997/01/15 12:03:41 1.1.2.3 @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: kbdio.h,v 1.1.2.2 1996/12/04 16:11:45 phk Exp $ + * $Id: kbdio.h,v 1.1.2.3 1997/01/15 12:03:41 sos Exp $ */ #ifndef _I386_ISA_KBDIO_H_ @@ -93,6 +93,7 @@ #define PSMC_RESET_DEV 0x00ff #define PSMC_ENABLE_DEV 0x00f4 #define PSMC_DISABLE_DEV 0x00f5 +#define PSMC_SET_DEFAULTS 0x00f6 #define PSMC_SEND_DEV_ID 0x00f2 #define PSMC_SEND_DEV_STATUS 0x00e9 #define PSMC_SEND_DEV_DATA 0x00eb From owner-freebsd-bugs Wed Jan 29 06:32:33 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA02605 for bugs-outgoing; Wed, 29 Jan 1997 06:32:33 -0800 (PST) Received: (from jkh@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA02586; Wed, 29 Jan 1997 06:32:28 -0800 (PST) Date: Wed, 29 Jan 1997 06:32:28 -0800 (PST) From: "Jordan K. Hubbard" Message-Id: <199701291432.GAA02586@freefall.freebsd.org> To: Thomas.Traylor@mci.com, jkh, freebsd-bugs Subject: Re: gnu/2610 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: strdup will cause you app to core if passed a NULL string State-Changed-From-To: open-closed State-Changed-By: jkh State-Changed-When: Wed Jan 29 06:29:31 PST 1997 State-Changed-Why: I don't believe that strdup() is supposed to do anything else when receiving a NULL argument, and returning NULL would cause the error to be indistinguishable from "out of memory", which is what anyone checking the return value of strdup() is going to flag in their failure case. Just as with other routines like strcpy() core when getting NULL (and their behavior is mandated by the ISO 9899 spec), so should I believe strdup(). From owner-freebsd-bugs Wed Jan 29 06:50:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA03233 for bugs-outgoing; Wed, 29 Jan 1997 06:50:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA03227; Wed, 29 Jan 1997 06:50:03 -0800 (PST) Resent-Date: Wed, 29 Jan 1997 06:50:03 -0800 (PST) Resent-Message-Id: <199701291450.GAA03227@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.GAA02910;Wed; (8.8.5/8.8.5);, 29 Jan 1997 06:43:39.-0800 (PST) Message-Id: <199701291443.GAA02910@freefall.freebsd.org> Date: Wed, 29 Jan 1997 06:43:39 -0800 (PST) From: mike@outerware.com To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: bin/2611: User PPP hangs machine hard periodically Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2611 >Category: bin >Synopsis: User PPP hangs machine hard periodically >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jan 29 06:50:01 PST 1997 >Last-Modified: >Originator: Mike Shappell >Organization: Outerware, Inc. >Release: 2.2Beta >Environment: FreeBSD gw 2.2-BETA_A >Description: Since I started using FreeBSD as a dial on demand internet router, we have experienced problems with the user PPP daemon. It appears the more the daemon dials, the more likely it is to fail. When our link was in use as a full time connection we rarely had problems with PPP failing. When the link was modified to connect a couple of times a day the link fails approximately every day or two. The first symptom of the failure is that we are not connnected and cannot connect. Generally when we look at the state of PPP it believe we are connected, when in fact the connection no longer exists. If under these circumstances we attempt to close the link or reboot the machine, FreeBSD hangs hard (CTRL- ALT-DEL does not reset the machine). At this point our only recourse seems to be to power-cycle the machine. This problem occurs with the GENERIC kernel. We have built our own kernel with normal serial support (the one we currently use) and with the Hayes ESP support enabled. Both cause the failure (although I think it may have been more frequent with the ESP kernel). The link is using a Hayes ESP card configured as COM1. Some times the PPP process runs for days (up to a week) others it dies within a day. We also found that if we start using the link as soon as it establishes its connection with the ISP, there is a good chance that the PPP process with die with a message to the screen that it has failed. In this case the machine is not hung and we can restart the process. Given the state of PPP after the failure, it may be possible that the ISP has terminated our connection confusing the PPP process? But this does not explain the hard hang of the FreeBSD machine. >How-To-Repeat: >Fix: >Audit-Trail: >Unformatted: From owner-freebsd-bugs Wed Jan 29 08:30:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id IAA08629 for bugs-outgoing; Wed, 29 Jan 1997 08:30:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id IAA08622; Wed, 29 Jan 1997 08:30:02 -0800 (PST) Date: Wed, 29 Jan 1997 08:30:02 -0800 (PST) Message-Id: <199701291630.IAA08622@freefall.freebsd.org> To: freebsd-bugs Cc: From: Bruce Evans Subject: Re: bin/2611: User PPP hangs machine hard periodically Reply-To: Bruce Evans Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2611; it has been noted by GNATS. From: Bruce Evans To: freebsd-gnats-submit@FreeBSD.ORG, mike@outerware.com Cc: Subject: Re: bin/2611: User PPP hangs machine hard periodically Date: Thu, 30 Jan 1997 03:15:48 +1100 >This problem occurs with the GENERIC kernel. We have built our own kernel with normal serial support (the one we currently use) and with the Hayes ESP support enabled. Both cause the failure (although I think it may have been more frequent with the ES P kernel). The link is using a Hayes ESP card configured as COM1. Please use lines shorter than 80 characters. Changes made a couple of months ago trigger a hardware bug in the ESP. See PR 2270. For the sumbmitter of PR 2270, it hangs after every close. Apparently there is a problem even if ESP support is not configured. This should be fixed in 2.2R. Meanwhile, don't configure ESP support (it doesn't really work), and delete the 2 outb() statements in siostop() in /usr/src/sys/i386/isa/sio.c. Bruce From owner-freebsd-bugs Wed Jan 29 11:13:15 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA15903 for bugs-outgoing; Wed, 29 Jan 1997 11:13:15 -0800 (PST) Received: from vex.net (root@shell.vex.net [207.107.242.162]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id LAA15880; Wed, 29 Jan 1997 11:13:04 -0800 (PST) Received: from vex.net(really [207.107.242.162]) by vex.net via sendmail with smtp id for ; Wed, 29 Jan 1997 14:12:59 -0500 (EST) (Smail-3.2.0.90 1996-Dec-4 #4 built 1997-Jan-8) Date: Wed, 29 Jan 1997 14:12:59 -0500 (EST) From: Brian Tao To: phk@freebsd.org cc: current@freebsd.org, bugs@freebsd.org Subject: Re: vx0 receives any and all packets ??? In-Reply-To: <9404.854376818@critter.dk.tfs.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk On Mon, 27 Jan 1997, Poul-Henning Kamp wrote: > > vx0 <3COM 3C900 Etherlink XL PCI> rev 0 int a irq 9 on pci0:9 > utp/aui/bnc[*bnc*] address 00:60:97:06:ef:c5 vx0 <3COM 3C900 Etherlink XL PCI> rev 0 int a irq 9 on pci0:10:0 utp[*utp*]: disable 'auto select' with DOS util! address 00:a0:24:dd:ca:a3 vx0: flags=8843 mtu 1500 inet 10.35.5.203 netmask 0xff000000 broadcast 10.255.255.255 ether 00:a0:24:dd:ca:a3 > and "tcpdump -p" as well as "netstat -s" seems to indicate that > any and all packet on my ethernet gets forwarded to my IP stack :-( I think I'm seeing this here as well. On what should otherwise be a completely network-quiet workstation, I'm seeing this with `netstat 1': input (Total) output packets errs bytes packets errs bytes colls 18 0 2713 0 0 0 0 7 0 1684 0 0 0 0 14 0 841 0 0 0 0 14 0 852 0 0 0 0 15 0 1166 0 0 0 0 11 0 1405 0 0 0 0 24 0 1774 0 0 0 0 32 0 3164 0 0 0 0 47 0 11969 0 0 0 0 49 0 19136 0 0 0 0 59 0 22704 0 0 0 0 58 0 21506 0 0 0 0 63 0 25942 0 0 0 0 45 0 19668 0 0 0 0 45 0 19237 0 0 0 0 40 0 18072 0 0 0 0 21 0 1534 0 0 0 0 22 0 1606 0 0 0 0 15 0 1127 0 0 0 0 27 0 2551 0 0 0 0 15 0 1209 0 0 0 0 I just got this machine in yesterday, and it's the first time I've used the EtherLink XL 3C900-TPO controller. This is a "Rev A' card, according to the traces on the board. I'll try your patch on 3.0-970124 and see what happens. -- Brian Tao (BT300, taob@risc.org) "Though this be madness, yet there is method in't" From owner-freebsd-bugs Wed Jan 29 12:00:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA18085 for bugs-outgoing; Wed, 29 Jan 1997 12:00:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA18078; Wed, 29 Jan 1997 12:00:03 -0800 (PST) Resent-Date: Wed, 29 Jan 1997 12:00:03 -0800 (PST) Resent-Message-Id: <199701292000.MAA18078@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, hsu@clinet.fi Received: from hauki.clinet.fi (root@hauki.clinet.fi [194.100.0.1]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id LAA18008 for ; Wed, 29 Jan 1997 11:59:16 -0800 (PST) Received: from katiska.clinet.fi (root@katiska.clinet.fi [194.100.0.4]) by hauki.clinet.fi (8.8.5/8.6.4) with ESMTP id VAA29585 for ; Wed, 29 Jan 1997 21:58:56 +0200 (EET) Received: (root@localhost) by katiska.clinet.fi (8.8.4/8.6.4) id VAA13179; Wed, 29 Jan 1997 21:58:55 +0200 (EET) Message-Id: <199701291958.VAA13179@katiska.clinet.fi> Date: Wed, 29 Jan 1997 21:58:55 +0200 (EET) From: Heikki Suonsivu Reply-To: hsu@clinet.fi To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2612: Illegal domain names trouble (gethostbyname fails?) Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2612 >Category: bin >Synopsis: Illegal domain names trouble (gethostbyname fails?) >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jan 29 12:00:01 PST 1997 >Last-Modified: >Originator: Heikki Suonsivu >Organization: Clinet, Espoo, Finland >Release: FreeBSD 2.2-CURRENT i386 >Environment: 2.2-? from about three weeks back. >Description: hsu#hauki.clinet.fi Wed 23: nslookup www.crystal.com Server: hauki.clinet.fi Address: 194.100.0.1 Non-authoritative answer: Name: cs_web.crystal.com Address: 199.184.191.34 Aliases: www.crystal.com hsu#hauki.clinet.fi Wed 24: ping www.crystal.com ping: unknown host www.crystal.com hsu#hauki.clinet.fi Wed 25: hsu#hauki.clinet.fi Wed 25: grep check /etc/named.boot check-names primary ignore check-names secondary ignore check-names response ignore hsu#hauki.clinet.fi Wed 26: named seems to ignore check-names, or something else fails (gethostbyname?) Even though the "correct" fix is fixing bad names, named/whatever should not enforce it this hard, or at least it should be possible work around ? >How-To-Repeat: See description. >Fix: >Audit-Trail: >Unformatted: From owner-freebsd-bugs Wed Jan 29 13:30:05 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id NAA22575 for bugs-outgoing; Wed, 29 Jan 1997 13:30:05 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id NAA22559; Wed, 29 Jan 1997 13:30:02 -0800 (PST) Date: Wed, 29 Jan 1997 13:30:02 -0800 (PST) Message-Id: <199701292130.NAA22559@freefall.freebsd.org> To: freebsd-bugs Cc: From: j@uriah.heep.sax.de (J Wunsch) Subject: Re: bin/2612: Illegal domain names trouble (gethostbyname fails?) Reply-To: j@uriah.heep.sax.de (J Wunsch) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2612; it has been noted by GNATS. From: j@uriah.heep.sax.de (J Wunsch) To: hsu@clinet.fi Cc: FreeBSD-gnats-submit@freebsd.org Subject: Re: bin/2612: Illegal domain names trouble (gethostbyname fails?) Date: Wed, 29 Jan 1997 22:08:39 +0100 As Heikki Suonsivu wrote: > Name: cs_web.crystal.com This has been discussed to death already. Aren't you reading the mailing lists? > named seems to ignore check-names, or something else fails (gethostbyname?) > Even though the "correct" fix is fixing bad names, named/whatever should > not enforce it this hard, or at least it should be possible work around ? You can recompile your resolver lib. We won't ship something that hasn't got the authority stamp by ISC (even though i personally disagree with this). I gonna close that PR, since it's nothing we could `fix'. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Wed Jan 29 13:50:45 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id NAA24276 for bugs-outgoing; Wed, 29 Jan 1997 13:50:45 -0800 (PST) Received: (from joerg@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id NAA24238; Wed, 29 Jan 1997 13:50:36 -0800 (PST) Date: Wed, 29 Jan 1997 13:50:36 -0800 (PST) From: Joerg Wunsch Message-Id: <199701292150.NAA24238@freefall.freebsd.org> To: hsu@clinet.fi, joerg, freebsd-bugs Subject: Re: bin/2612 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: Illegal domain names trouble (gethostbyname fails?) State-Changed-From-To: open-closed State-Changed-By: joerg State-Changed-When: Wed Jan 29 22:49:35 MET 1997 State-Changed-Why: This has been discussed to death already, and we aren't going to change anything against the wills of the ISC. From owner-freebsd-bugs Wed Jan 29 14:20:08 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id OAA25680 for bugs-outgoing; Wed, 29 Jan 1997 14:20:08 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id OAA25673; Wed, 29 Jan 1997 14:20:03 -0800 (PST) Resent-Date: Wed, 29 Jan 1997 14:20:03 -0800 (PST) Resent-Message-Id: <199701292220.OAA25673@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, gclarkii@gbdata.com Received: from main.gbdata.com (tel_ppp0001.livingston.net [207.22.211.10]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id OAA25460 for ; Wed, 29 Jan 1997 14:15:38 -0800 (PST) Received: (from gclarkii@localhost) by main.gbdata.com (8.7.5/8.6.9) id QAA00345; Wed, 29 Jan 1997 16:16:54 -0600 (CST) Message-Id: <199701292216.QAA00345@main.gbdata.com> Date: Wed, 29 Jan 1997 16:16:54 -0600 (CST) From: gclarkii@gbdata.com Reply-To: gclarkii@gbdata.com To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: kern/2613: bug in syscons (mis-sense of MONO vice MONO VGA) Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2613 >Category: kern >Synopsis: syscons mistakes MONO for MONO VGA >Confidential: yes >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jan 29 14:20:01 PST 1997 >Last-Modified: >Originator: Gary Clark II >Organization: GB Data Systems (ISP, ICP and FreeBSD consulting) >Release: FreeBSD 2.2-CURRENT i386 >Environment: >Description: I've got a mono monitor and card I use. My curses think that I have color. Dmesg reports mono vga. >How-To-Repeat: ???? >Fix: ???? >Audit-Trail: >Unformatted: From owner-freebsd-bugs Wed Jan 29 15:00:36 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id PAA28048 for bugs-outgoing; Wed, 29 Jan 1997 15:00:36 -0800 (PST) Received: (from gpalmer@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id OAA27951; Wed, 29 Jan 1997 14:59:05 -0800 (PST) Date: Wed, 29 Jan 1997 14:59:05 -0800 (PST) From: Gary Palmer Message-Id: <199701292259.OAA27951@freefall.freebsd.org> To: gpalmer, gnats-admin, freebsd-bugs Subject: Re: misc/2614 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: make reinstall does not work Responsible-Changed-From-To: gnats-admin->freebsd-bugs Responsible-Changed-By: gpalmer Responsible-Changed-When: Wed Jan 29 14:58:48 PST 1997 Responsible-Changed-Why: Misfiled PR From owner-freebsd-bugs Wed Jan 29 18:00:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id SAA09929 for bugs-outgoing; Wed, 29 Jan 1997 18:00:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id SAA09895; Wed, 29 Jan 1997 18:00:03 -0800 (PST) Resent-Date: Wed, 29 Jan 1997 18:00:03 -0800 (PST) Resent-Message-Id: <199701300200.SAA09895@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.RAA09161;Wed; (8.8.5/8.8.5);, 29 Jan 1997 17:50:28.-0800 (PST) Message-Id: <199701300150.RAA09161@freefall.freebsd.org> Date: Wed, 29 Jan 1997 17:50:28 -0800 (PST) From: tony.m.giroux@email.moore.com To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: bin/2616: Installs very irratically from the same cdrom to the same system Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2616 >Category: bin >Synopsis: Installs very irratically from the same cdrom to the same system >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jan 29 18:00:01 PST 1997 >Last-Modified: >Originator: tony giroux >Organization: Moore BCS >Release: 2.1.5 (Aug 96) from Walnut Creek >Environment: haven't gotten this far >Description: I'm using a micropolis 2217 (1.6GB) scsi drive with an Adaptec 2940 controller I have yet to get a clean install. When installing packages, different ones fail at different attempts. Trying to redo the configuration without a full re-install just reboots the machine. The CPU is an intel '486DX/4-100 with PCI & 32 MB. Graphics is a TSEUNS ET4000. CDROM is a NEC SCSI Quad speed. I have an Exabyte 8200 tape drive but I would like to get a clean install before trying to back anything up. I do not want to use the 'ports' interface -- I often want to read other cdroms. >How-To-Repeat: Try to re-install >Fix: nore yet -- it chooses different packages to load every time. Very irratic on the ones it can't find on the CDROM; that it may have found the last time. I've done the CDROM & CDROM Drive cleaning routine. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Wed Jan 29 19:20:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id TAA14929 for bugs-outgoing; Wed, 29 Jan 1997 19:20:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id TAA14923; Wed, 29 Jan 1997 19:20:03 -0800 (PST) Resent-Date: Wed, 29 Jan 1997 19:20:03 -0800 (PST) Resent-Message-Id: <199701300320.TAA14923@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, gil@limbic.gc2.kloepfer.org Received: from limbic.gc2.kloepfer.org (limbic.gc2.kloepfer.org [206.225.39.2]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id TAA14711 for ; Wed, 29 Jan 1997 19:16:35 -0800 (PST) Received: (from gil@localhost) by limbic.gc2.kloepfer.org (8.8.5/8.8.5) id VAA07446; Wed, 29 Jan 1997 21:16:32 -0600 (CST) Message-Id: <199701300316.VAA07446@limbic.gc2.kloepfer.org> Date: Wed, 29 Jan 1997 21:16:32 -0600 (CST) From: "Gil Kloepfer Jr." Reply-To: gil@limbic.gc2.kloepfer.org To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: misc/2617: upsmon - UPS monitor utility submission Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2617 >Category: misc >Synopsis: Utility submission - upsmon - UPS monitor program >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Jan 29 19:20:02 PST 1997 >Last-Modified: >Originator: Gil Kloepfer Jr. >Organization: None >Release: FreeBSD 2.1-STABLE i386 >Environment: FreeBSD 2.1.5-RELEASE (and likely all 2.*.* versions) TrippLite UPS system with LAN 2.1 interface >Description: Utility provides the capability to monitor the UPS and send users/administrators status messgages as well as semi-gracefully shut the system down when battery power is low. >How-To-Repeat: N/A >Fix: The following is a shar of the code, makefile, and manual page, and a message I originally sent to Jordan Hubbard originally submitting the program. He recommended I submit it in this way with a followup e-mail to the -hackers list. See the manual page for electrical details. Yes, I know it isn't as flexible as it should be as far as support for other UPS systems. This is a good start though, and if someone sends me the specs for other UPS systems, I may be able to write the code and cabling for that UPS, and I'll build up the code to something more extensible. To: jkh@freebsd.org From: Gil Kloepfer Jr. Date: Mon, 27 Jan 1997 21:35:06 -0600 (CST) Subject: Software submission: upsmon.c Jordan- I'm not sure what the best way to submit software to the FreeBSD project is, and you're the release coordinator... I figure you'll probably know who should look at this. That said, this may or may not be useful for the project. I seem to recall linux has something called powerd that allows UPS systems to be monitored. I had some of my own ideas in mind and decided to write a UPS monitor program for my Tripp Lite UPS without looking at any of it. I could have wasted my time... In any case, I wrote a man page and a makefile for it. I thought someone may find it useful. Please let me know whether or not this makes sense to put into FreeBSD in some form. Constructive comments welcome, of course! I included the whole thing as a shar file since it wasn't very big... --- Gil Kloepfer gil@gc2.kloepfer.org http://www.gc2.kloepfer.org/ -- Cut Here -- # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # Makefile # upsmon.c # upsmon.8 # echo x - Makefile sed 's/^X//' >Makefile << 'END-of-Makefile' X# X# Makefile for upsmon X# X# Copyright (c) 1997 Gilbert C. Kloepfer, Jr. X# All rights reserved. X# X# Redistribution and use in source and binary forms, with or without X# modification, are permitted provided that the following conditions X# are met: X# X# 1. Redistributions of source code must retain the above copyright X# notice, this list of conditions and the following disclaimer. X# X# 2. Redistributions in binary form must reproduce the above copyright X# notice, this list of conditions and the following disclaimer in the X# documentation and/or other materials provided with the distribution. X# X# 3. All advertising materials mentioning features or use of this software X# in products other than the FreeBSD operating system must display X# the following acknowledgement: X# X# This product includes software developed by Gilbert C. Kloepfer, Jr. X# X# 4. The name of the author may not be used to endorse or promote products X# derived from this software without specific prior written permission. X# X# THIS SOFTWARE IS PROVIDED BY GILBERT C. KLOEPFER, JR. (THE AUTHOR) X# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT X# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS X# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE X# AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, X# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, X# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR X# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY X# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING X# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS X# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. X# X# $Id: Makefile,v 1.1 1997/01/28 03:20:55 gil Exp $ X# X XPROG= upsmon XSRCS= upsmon.c XMAN8= upsmon.8 XNOSHARED= true XBINDIR= /sbin X X.include END-of-Makefile echo x - upsmon.c sed 's/^X//' >upsmon.c << 'END-of-upsmon.c' X/* X * Copyright (c) 1997 Gilbert C. Kloepfer, Jr. X * All rights reserved. X * X * Redistribution and use in source and binary forms, with or without X * modification, are permitted provided that the following conditions X * are met: X * X * 1. Redistributions of source code must retain the above copyright X * notice, this list of conditions and the following disclaimer. X * X * 2. Redistributions in binary form must reproduce the above copyright X * notice, this list of conditions and the following disclaimer in the X * documentation and/or other materials provided with the distribution. X * X * 3. All advertising materials mentioning features or use of this software X * in products other than the FreeBSD operating system must display X * the following acknowledgement: X * X * This product includes software developed by Gilbert C. Kloepfer, Jr. X * X * 4. The name of the author may not be used to endorse or promote products X * derived from this software without specific prior written permission. X * X * THIS SOFTWARE IS PROVIDED BY GILBERT C. KLOEPFER, JR. (THE AUTHOR) X * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT X * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS X * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE X * AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, X * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, X * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR X * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY X * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING X * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS X * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. X * X * $Id: upsmon.c,v 1.2 1997/01/28 03:26:38 gil Exp $ X * X */ X X#include X#include X#include X#include X#include X#include X#include X#include X#include X#include X Xint get_serstat(int); Xvoid delay(int), sys_shutdown(), runit(char *,...); X X#define STATE_ONLINE 1 X#define STATE_TRANSBATT 2 X#define STATE_BATTERY 3 X#define STATE_TRANSLINE 4 X#define STATE_LOWBATT 5 X X#define ON 1 X#define OFF 0 X#define forever for(;;) X X#define set_dtr(FD,STA) { int bits = TIOCM_DTR; \ X if (STA == ON) \ X (void)ioctl(FD, TIOCMBIS, &bits); \ X else \ X (void)ioctl(FD, TIOCMBIC, &bits); \ X } X X#define set_rts(FD,STA) { int bits = TIOCM_RTS; \ X if (STA == ON) \ X (void)ioctl(FD, TIOCMBIS, &bits); \ X else \ X (void)ioctl(FD, TIOCMBIC, &bits); \ X } X X#define set_td(FD,STA) { if (STA == ON) \ X (void)ioctl(FD, TIOCSBRK, 0); \ X else \ X (void)ioctl(FD, TIOCCBRK, 0); \ X } X X Xmain(argc, argv) Xint argc; Xchar *argv[]; X{ X int fd, savstat, statemach; X char *ctltty; X struct termios tioblk; X X X if (argc != 2 || *argv[1] == '\0') { X (void)fprintf(stderr, "usage: %s {tty port}\n", argv[0]); X exit(1); X } X ctltty = argv[1]; X X openlog("upsmon", LOG_CONS | LOG_NDELAY | LOG_PID, LOG_DAEMON); X X fd = open(ctltty, O_RDWR|O_NONBLOCK|O_EXCL); X if (fd < 0) { X syslog(LOG_ALERT, "cannot open %s: %m (aborting)", ctltty); X exit(2); X } X X /* X * Set the tty port in raw mode and turn off any flow control or X * other modem signalling that may interfere with the monitor's X * ability to directly control the tty port's control lines X */ X X if (tcgetattr(fd, &tioblk) < 0) { X syslog(LOG_ALERT, "cannot tcgetattr %s: %m (aborting)", ctltty); X exit(2); X } X X cfmakeraw(&tioblk); X tioblk.c_cflag |= CLOCAL; X tioblk.c_cflag &= ~(CRTS_IFLOW | CDTR_IFLOW | X CCTS_OFLOW | CDSR_OFLOW | CCAR_OFLOW); X X if (tcsetattr(fd, TCSAFLUSH, &tioblk) < 0) { X syslog(LOG_ALERT, "cannot tcgetattr %s: %m (aborting)", ctltty); X exit(2); X } X X /* X * Everything passing OK, we should now make ourself a daemon X */ X X if (daemon(0,0) < 0) { X syslog(LOG_ALERT, "daemon library call failed: %m (aborting)"); X exit(2); X } X X /* X * X * Quick review of control signals: X * X * CTS = Common for line fail relay. Common also feeds emitter X * of low battery NPN phototransistor X * X * TD = anode of inverter cutoff LED (usually off (-)) X * X * RTS = Positive pull-up supply for DCD, NO input of line fail X * relay. Almost always ON (+) except when testing line fail X * relay reading integrity. X * X * GND = cathode of inverter cutoff LED X * X * DTR = NC input of line fail relay. Usually OFF (-) except when X * testing line fail relay signal integrity (pulsed) X * X * DCD = Follows state of line fail relay. Line fail relay signal. X * Since low battery is only valid on line fail closed, we X * can pulse DTR on battery power to test this signal. X */ X X /* X * Initial check to see if we are communicating with the UPS. X * X * A good basic check is to see that DCD is asserted (+) when X * RTS is asserted and vice versa. We can also simulate some X * activity on some of the signal lines to make sure that the X * cable is functioning. X * X * If the cable is bad, or we're already on battery power for X * some reason, print a message explaining the problem and X * exit the monitor. We don't want to monitor a system X * already on battery since that would be a truly odd X * situation, in addition to being a possible cable fault X * that could bring down a bunch of systems already running. X */ X X set_td(fd, OFF); X set_rts(fd, ON); X set_dtr(fd, OFF); X X delay(10); X savstat = get_serstat(fd); X if (!(savstat & TIOCM_CTS)) { X syslog(LOG_ALERT, "CTS not on - Bad cable connection or already on battery power (aborting)"); X exit(2); X } X X if (!(savstat & TIOCM_CAR)) { X syslog(LOG_ALERT, "DCD not on - Probable bad UPS monitor cable (aborting)"); X exit(2); X } X X set_rts(fd, OFF); X delay(10); X if (get_serstat(fd) & TIOCM_CTS) { X syslog(LOG_ALERT, "CTS not off - Bad cable connection (aborting)"); X exit(2); X } X X syslog(LOG_NOTICE, "UPS monitoring started"); X X statemach = STATE_ONLINE; X X forever { X /* X * Reset monitoring lines to initial values X * X * TD = off (-) X * DTR = off (-) X * RTS = on (+) X */ X X set_td(fd, OFF); X set_dtr(fd, OFF); X set_rts(fd, ON); X delay(10); X X switch(statemach) { X case STATE_ONLINE: /* On AC line power */ X savstat = get_serstat(fd); X if (!(savstat & TIOCM_CTS)) { X delay(500); X if (get_serstat(fd) & TIOCM_CTS) X break; X statemach = STATE_TRANSBATT; X break; X } X X if (!(savstat & TIOCM_CAR)) { X syslog(LOG_ALERT, "DCD not on in Online state - Possible cable fault (aborting)"); X exit(2); X } X X delay(1000); X break; X X case STATE_TRANSBATT: /* Transition to battery power */ X set_dtr(fd, ON); X delay(10); X if (!(get_serstat(fd) & TIOCM_CTS)) { X syslog(LOG_ALERT, "Battery Transition CTS sanity check identified cable fault (aborting)"); X exit(2); X } X set_dtr(fd, OFF); X syslog(LOG_CRIT, "On battery power"); X delay(1000); X statemach = STATE_BATTERY; X break; X X case STATE_BATTERY: /* On battery power */ X if (get_serstat(fd) & TIOCM_CTS) { X delay(500); X if (get_serstat(fd) & TIOCM_CTS) { X statemach = STATE_TRANSLINE; X break; X } X } X X /* X * Check for DCD off. This means that battery X * power is low. Note the ridiculous number of X * sanity checks is a very paranoid precaution X * against unnecessary shutdowns. There'd be nothing X * worse than having a battery backup system which X * basically shutdown everything without reason! X * X * We could identify cable faults here, but I'm X * going to assume transient failure and be a little X * lazy. X */ X X if (!(get_serstat(fd) & TIOCM_CAR)) { X delay(500); X if (get_serstat(fd) & TIOCM_CAR) X break; X set_dtr(fd, ON); X delay(50); X if (get_serstat(fd) & TIOCM_CAR) { X set_dtr(fd, OFF); X if (!(get_serstat(fd) & TIOCM_CAR)) { X statemach = STATE_LOWBATT; X break; X } X } X } X X /* X * We're gonna do a little cable check here though. X * Briefly toggle DTR to see if CTS follows it. If X * it doesn't, it means the cable fell out, because X * even if a race condition put the UPS back online, X * RTS is still ON so it wouldn't make a difference. X * We will take another reading a few ms apart on X * a failure to make sure the bad reading isn't X * due to relay contact bounce. X * X * It would be nice to do something more intelligent X * than just aborting the monitor on a cable fault, X * but if there IS a cable fault, then we can't be X * positively sure that the transition to battery X * power wasn't a manifestation of a bad cable also. X */ X X set_dtr(fd, ON); X delay(10); X if (!(get_serstat(fd) & TIOCM_CTS)) { X delay(10); X if (!(get_serstat(fd) & TIOCM_CTS)) { X syslog(LOG_ALERT, "Battery mode cable check noted cable fault (aborting)\n"); X exit(2); X } X } X set_dtr(fd, OFF); X X delay(1000); X break; X X case STATE_TRANSLINE: /* Transition back to AC line power */ X syslog(LOG_WARNING, "AC Power restored"); X delay(1000); X statemach = STATE_ONLINE; X break; X X case STATE_LOWBATT: /* Low battery -- Shut down the system */ X syslog(LOG_EMERG, "UPS low battery power detected - Shutting down the system!!"); X delay(2000); X sys_shutdown(); X set_td(fd, ON); X delay(5000); X X /* X * If we get here, it means the power did NOT shut X * off. This could mean the AC power got restored X * while we were shutting down the system. It could X * also mean there is a cable or UPS problem. X * X * If the AC power looks like it came back, reboot X * the system. If it looks like a cable problem, X * halt the system and wait for a manual X * reboot. X */ X X set_dtr(fd, OFF); X set_rts(fd, ON); X if (get_serstat(fd) & TIOCM_CTS) X runit("/sbin/reboot", NULL); X else X runit("/sbin/halt", NULL); X break; X X /* If we get here, give up...just die... */ X X exit(2); X } X } X X /* NOTREACHED */ X} X X Xint Xget_serstat(fd) Xint fd; X{ X int ttsigs; X X if (ioctl(fd, TIOCMGET, &ttsigs) < 0) { X syslog(LOG_ALERT, "get_serstat TIOCMGET failed - %m (aborting)"); X exit(2); X } X X return(ttsigs); X} X Xvoid Xdelay(ms_time) Xint ms_time; X{ X int ret; X struct timeval sto; X X sto.tv_sec = ms_time / 1000; X sto.tv_usec = (ms_time % 1000) * 1000; X ret = select(0, NULL, NULL, NULL, &sto); X if (ret < 0) { X syslog(LOG_ALERT, "select failed in delay() - %m (aborting)"); X exit(2); X } X} X X X/* X * This shutdown routine is not the best nor is it the safest, but it only X * gets called under the most extreme of circumstances. X * X * The reason we shut the system down in this way is because it is extremely X * hardware-dependent to shut down the power as part of the boot system X * call, as well as requiring some tricky modifications to the kernel code. X * Rather than embed this kind of magic in the kernel, we will perform as X * graceful a shutdown as possible under the circumstances, with the X * understanding that this should not get called unless we are ready to lose X * AC power and would otherwise trash the system in some unpredictable way. X */ X Xvoid Xsys_shutdown() X{ X (void)kill(1, SIGTSTP); /* Tell init to stop respawning gettys */ X delay(500); X (void)kill(-1, SIGTERM); /* Send termination signal to all */ X delay(5000); X (void)kill(-1, SIGTERM); /* Send it again, just to make sure */ X delay(2000); X (void)kill(-1, SIGHUP); /* Force interactive users off */ X delay(2000); X (void)kill(-1, SIGKILL); /* Forcefully kick everything else */ X delay(5000); X X runit("/sbin/umount", "-a", NULL); /* Unmount all disks */ X X sync(); sync(); sync(); /* Sync root fs */ X delay(500); X X /* System is shut down for all cases and purposes */ X} X X X/* X * This is an alternative to the system(3) library routine that doesn't X * invoke the shell for each command. This is preferable under the X * circumstances in which it will get run -- namely to perform X * housekeeping tasks before killing the system X * X * Number of args limited to 50. It's quick and dirty. X */ X Xvoid Xrunit(char *prog, ...) X{ X int narg = 0, status; X va_list ap; X char *argvec[51], *arg; X X argvec[narg++] = prog; X X va_start(ap, prog); X arg = va_arg(ap, char *); X while (arg) { X argvec[narg++] = arg; X arg = va_arg(ap, char *); X } X argvec[narg++] = NULL; X X va_end(ap); X X switch(fork()) { X case -1: /* Error */ X syslog(LOG_ALERT, "cannot fork %s in run(): %m", prog); X return; X X case 0: /* Child */ X (void)execv(prog, argvec); X exit(1); X X default: /* Parent */ X (void)wait(&status); X } X X return; X} END-of-upsmon.c echo x - upsmon.8 sed 's/^X//' >upsmon.8 << 'END-of-upsmon.8' X.\" Copyright (c) 1997 Gilbert C. Kloepfer, Jr. X.\" All rights reserved. X.\" X.\" Redistribution and use in source and binary forms, with or without X.\" modification, are permitted provided that the following conditions X.\" are met: X.\" X.\" 1. Redistributions of source code must retain the above copyright X.\" notice, this list of conditions and the following disclaimer. X.\" X.\" 2. Redistributions in binary form must reproduce the above copyright X.\" notice, this list of conditions and the following disclaimer in the X.\" documentation and/or other materials provided with the distribution. X.\" X.\" 3. All advertising materials mentioning features or use of this software X.\" in products other than the FreeBSD operating system must display X.\" the following acknowledgement: X.\" X.\" This product includes software developed by Gilbert C. Kloepfer, Jr. X.\" X.\" 4. The name of the author may not be used to endorse or promote products X.\" derived from this software without specific prior written permission. X.\" X.\" THIS SOFTWARE IS PROVIDED BY GILBERT C. KLOEPFER, JR. (THE AUTHOR) X.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT X.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS X.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE X.\" AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, X.\" EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, X.\" PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR X.\" PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY X.\" OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING X.\" NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS X.\" SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. X.\" X.\" $Id: upsmon.8,v 1.1 1997/01/28 03:20:55 gil Exp $ X.\" X.Dd January 27, 1997 X.Dt UPSMON 8 X.Os BSD X.Sh NAME X.Nm upsmon X.Nd monitor uninterruptable power systems (UPS) X.Sh SYNOPSIS X.Nm upsmon X.Ar tty_device X.Sh DESCRIPTION XThe X.Nm upsmon Xutility monitors the status of a battery-powered Uninterruptable XPower System (UPS) and notifies system users of power-related alerts Xgenerated by the UPS when available. When batteries are dangerously Xdrained (as indicated by the UPS), X.Nm upsmon Xwill also automatically bring the system to a quiescent state and Xinterrupt backup power. X.Pp X.Nm upsmon Xutilizes (abuses?) a serial X.Xr tty 4 Xdevice in such a manner as to be able to examine and manipulate Xindividual bits on the UPS status/control interface. The serial X.Xr tty 4 Xdevice was used due to its low cost and relatively standard device Xcontrol functions. X.Pp X.Nm upsmon Xmakes checks of the UPS monitor interface cable to assure that the Xsignals it receives are valid in order to avoid spirious system Xshutdowns and false warnings. X.Sh INTERFACE DESCRIPTION XThe X.Ar Tripp Lite LAN 2.1 Xinterface was used in the design of this software. Serial I/O Xconnections were made as follows: X.Pp X.Bd -literal -offset left X X RS232 Tripp Lite XSignal Name LAN 2.1 Sig/Pin Description X X CTS Common (1) Common relay & X Low Battery NPN collector X X TxD Inv Shut + (2) Inverter shutdown LED anode X X RTS Line Fail (3) Disconnected from Common when X Relay NO AC line fails or UPS power is off. X This signal is also used by this X application to provide positive X pull-up power for the low battery X phototransistor. X X GND Inv Shut - (4) Inverter shutdown LED cathode X X DTR Line Fail (5) Connected to Common when AC line X Relay NC fails or UPS power is off X X DCD Low Battery (6) Emitter of NPN phototransistor X conducts to Common when on X battery power and battery is low X X RxD, DSR (no connection) X XCable requires 6.2K ohm resistor between pins #3 and #6 (RS232 RTS Xand DCD). This acts as a pull-up resistor for the low battery Xphototransistor output. X X.Ed X.Sh CAVEATS X.Nm upsmon Xwas designed to function with the X.Ar Tripp Lite LAN 2.1 Xspecification. However, porting (via hardware or modification of Xthis software) can be performed to make this function with other Xvendors' UPS systems. Different vendors support different levels Xof functionality on their status ports. X.Pp XEmergency system shutdown before poweroff is handled as well Xas possible by a user-mode program. Since embedding Xhardware-specific kernel code to perform the poweroff function Xwould make this software more sloppy than it already is, a Xcompromise was made when shutting the system down. Before triggering Xthe X.Ar inverter-off Xfunction, all X.Xr getty 8 Xrespawns are stopped by sending a SIGTSTP to X.Xr init 8 , Xall user processes are killed much like is done in X.Xr shutdown 8 , Xall filesystems (except root) are unmounted by performing a X.Xr umount 8 Xcommand, the root filesystem is flushed through X.Xr sync 2 , Xand power is then interrupted. This is better than shutting off the Xpower with all the filesystems mounted and the system active, but Xisn't as good as shutting it down with the standard system shutdown Xcommands. X.Pp XBecause of the previous paragraph, X.Nm upsmon Xmust be compiled static (no shared libraries), and must reside Xsomewhere on the root filesystem (probably /sbin). X.Sh SEE ALSO X.Xr tty 4 , X.Xr init 8 , X.Xr shutdown 8 , X.Xr umount 8 X.Sh BUGS XThe tty device interface was never meant to be used in this way. X.Pp XShutdown is less than perfect, and could theoretically corrupt a Xroot filesystem under extremely rare circumstances. X.Pp XThere is no protection against rabid UPS or serial port failures. X.Sh AUTHOR XGil Kloepfer, Jr., ngk@gc2.kloepfer.org END-of-upsmon.8 exit >Audit-Trail: >Unformatted: From owner-freebsd-bugs Thu Jan 30 11:10:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA25360 for bugs-outgoing; Thu, 30 Jan 1997 11:10:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA25352; Thu, 30 Jan 1997 11:10:01 -0800 (PST) Resent-Date: Thu, 30 Jan 1997 11:10:01 -0800 (PST) Resent-Message-Id: <199701301910.LAA25352@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.LAA25239;Thu; (8.8.5/8.8.5);, 30 Jan 1997 11:06:04.-0800 (PST) Message-Id: <199701301906.LAA25239@freefall.freebsd.org> Date: Thu, 30 Jan 1997 11:06:04 -0800 (PST) From: jeffe@ichips.intel.com To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: kern/2621: Patch to support Cogent EM110 fast-ethernet card. Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2621 >Category: kern >Synopsis: Patch to support Cogent EM110 fast-ethernet card. >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Class: change-request >Submitter-Id: current-users >Arrival-Date: Thu Jan 30 11:10:00 PST 1997 >Last-Modified: >Originator: Jeff Eaton >Organization: Intel Corporation >Release: 2.2-BETA >Environment: FreeBSD netm-test.jf.intel.com 2.2-BETA_A FreeBSD 2.2-BETA_A #2: Tue Jan 21 14:07:05 PST 1997 root@netm-test.jf.intel.com:/usr/src/sys/compile/NETM i386 >Description: I submitted this patch to the hackers list, and was told it was a better idea to submit a bug report, even though this is new functionality, and not really a bug. The provided patch will allow the Cogent EM110 to work. All it does is check for the ID number, and then uses the existing EM100 code. This works for 2.1.5-RELEASE, 2.1.6-RELEASE, and 2.2-BETA. >How-To-Repeat: Boot with an EM110. >Fix: patch in /usr/src/sys/pci. It would not surprise me if tabs got turned into spaces when I cut and pasted this. *** dc21040.h.bak Tue Dec 3 02:52:45 1996 --- dc21040.h Tue Jan 21 13:17:56 1997 *************** *** 294,299 **** --- 294,300 ---- #define TULIP_OUI_COGENT_1 0x00 #define TULIP_OUI_COGENT_2 0x92 #define TULIP_COGENT_EM100_ID 0x12 + #define TULIP_COGENT_EM110_ID 0x14 /* *** if_de.c.bak Tue Jan 21 13:30:49 1997 --- if_de.c Tue Jan 21 13:20:28 1997 *************** *** 1593,1598 **** --- 1593,1607 ---- tulip_21140_cogent_em100_media_select, tulip_21140_nomii_100only_media_preset }; + + /* The cogent 110 acts just like the em100, but the ID is different */ + static const tulip_boardsw_t tulip_21140_cogent_em110_boardsw = { + TULIP_21140_COGENT_EM100, + "Cogent EM110 ", + tulip_21140_cogent_em100_media_probe, + tulip_21140_cogent_em100_media_select, + tulip_21140_nomii_100only_media_preset + }; ^L static int *************** *** 3255,3260 **** --- 3264,3271 ---- if (sc->tulip_chipid == TULIP_21140 || sc->tulip_chipid == TULIP_21140A) { if (sc->tulip_rombuf[32] == TULIP_COGENT_EM100_ID) sc->tulip_boardsw = &tulip_21140_cogent_em100_boardsw; + if (sc->tulip_rombuf[32] == TULIP_COGENT_EM110_ID) + sc->tulip_boardsw = &tulip_21140_cogent_em110_boardsw; } } else if (sc->tulip_hwaddr[0] == TULIP_OUI_ZNYX_0 && sc->tulip_hwaddr[1] == TULIP_OUI_ZNYX_1 >Audit-Trail: >Unformatted: From owner-freebsd-bugs Thu Jan 30 12:40:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA29813 for bugs-outgoing; Thu, 30 Jan 1997 12:40:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA29795; Thu, 30 Jan 1997 12:40:04 -0800 (PST) Resent-Date: Thu, 30 Jan 1997 12:40:04 -0800 (PST) Resent-Message-Id: <199701302040.MAA29795@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, dlowe@sirius.com Received: from news3.sirius.com (news3.sirius.com [205.134.226.201]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id MAA29541 for ; Thu, 30 Jan 1997 12:35:14 -0800 (PST) Received: (from root@localhost) by news3.sirius.com (8.8.5/Sirius-97.01.23) id MAA19289; Thu, 30 Jan 1997 12:37:58 -0800 (PST) Message-Id: <199701302037.MAA19289@news3.sirius.com> Date: Thu, 30 Jan 1997 12:37:58 -0800 (PST) From: dlowe@sirius.com Reply-To: dlowe@sirius.com To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2622: syslogd '-s' behavior either broken or poorly documented Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2622 >Category: bin >Synopsis: syslogd '-s' behavior either broken or poorly documented >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Jan 30 12:40:02 PST 1997 >Last-Modified: >Originator: David Lowe >Organization: Sirius Communications >Release: FreeBSD 2.2-BETA_A i386 >Environment: FreeBSD 2.2-BETA running 'syslogd -s' and attempting to log to a Solaris 2.5.1 machine. >Description: This may be either a problem with syslogd, or a problem with the syslogd man page. Running syslogd with the '-s' switch disables incoming *and* outgoing network syslogs, whereas the man page says: --- -s Operate in secure mode. Do not open a UDP socket to listen for log message from remote machines. --- When run with this switch, however, syslogd also won't open a UDP socket to send log messages, and (as far as I could tell) generates no explanation or debugging output. >How-To-Repeat: on client machine: run syslogd with -s add a 'facility.level @loghost' line to your /etc/syslog.conf logger -p user.crit testing syslogd -s on log host: syslogd should be running (without -s) check logs.. nothing! >Fix: Workaround by running syslogd without -s on client machines. Fix by either updating the man page so I don't tear my hair out all morning trying to figure out why it's broken, or updating the code so -s does what it says it's going to. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Thu Jan 30 15:40:13 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id PAA10746 for bugs-outgoing; Thu, 30 Jan 1997 15:40:13 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id PAA10705; Thu, 30 Jan 1997 15:40:07 -0800 (PST) Resent-Date: Thu, 30 Jan 1997 15:40:07 -0800 (PST) Resent-Message-Id: <199701302340.PAA10705@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, mpp@freebsd.org Received: (from mpp@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id PAA10632; Thu, 30 Jan 1997 15:37:27 -0800 (PST) Message-Id: <199701302337.PAA10632@freefall.freebsd.org> Date: Thu, 30 Jan 1997 15:37:27 -0800 (PST) From: mpp@freebsd.org Reply-To: mpp@freebsd.org To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: docs/2623: ipfirewall(4) man page is way out of date Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2623 >Category: docs >Synopsis: ipfirewall(4) man page is way out of date >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Class: doc-bug >Submitter-Id: current-users >Arrival-Date: Thu Jan 30 15:40:02 PST 1997 >Last-Modified: >Originator: Mike Pritchard >Organization: >Release: FreeBSD-current >Environment: >Description: The man page ipfirewall(4) is totally out of date. Whoever is maintaining ipfirewall should update the manual page. >How-To-Repeat: man 4 ipfirewall >Fix: Update the man page. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Thu Jan 30 18:40:07 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id SAA24626 for bugs-outgoing; Thu, 30 Jan 1997 18:40:07 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id SAA24605; Thu, 30 Jan 1997 18:40:04 -0800 (PST) Resent-Date: Thu, 30 Jan 1997 18:40:04 -0800 (PST) Resent-Message-Id: <199701310240.SAA24605@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, ghelmer Received: (from ghelmer@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id SAA23487; Thu, 30 Jan 1997 18:31:39 -0800 (PST) Message-Id: <199701310231.SAA23487@freefall.freebsd.org> Date: Thu, 30 Jan 1997 18:31:39 -0800 (PST) From: Guy Helmer Reply-To: ghelmer To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2624: kdump unaware of semsys and several other system calls Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2624 >Category: bin >Synopsis: kdump unaware of semsys and several other system calls >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Jan 30 18:40:01 PST 1997 >Last-Modified: >Originator: Guy Helmer >Organization: Iowa State University Department of Computer Science >Release: FreeBSD 2.1.5-RELEASE i386 >Environment: >Description: kdump(1) fails to recognize syssem, msgsys, shmsys, lfs, and nfs system calls >How-To-Repeat: ktrace(1) a process that uses SYSV semaphores, SYSV messages, SYSV shared memory, or lfs or nfs system calls, then use kdump(1) to output the ktrace data file; kdump(1) will not output names of semsys, msgsys, shmsys, nfssvc, getfh, or lfs_* sys calls. >Fix: Define NFS, SYSVSEM, SYSVMSG, SYSVSHM, and LFS before the line where sys/kern/syscalls.c is included in kdump.c: *** kdump.c.ORIG Thu Jan 30 20:07:47 1997 --- kdump.c Thu Jan 30 20:11:20 1997 *************** *** 232,239 **** --- 232,250 ---- #include #define KTRACE + #define NFS + #define SYSVSEM + #define SYSVMSG + #define SYSVSHM + #define LFS #include #undef KTRACE + #undef NFS + #undef SYSVSEM + #undef SYSVMSG + #undef SYSVSHM + #undef LFS + int nsyscalls = sizeof (syscallnames) / sizeof (syscallnames[0]); static char *ptrace_ops[] = { >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 07:20:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id HAA26747 for bugs-outgoing; Fri, 31 Jan 1997 07:20:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id HAA26712; Fri, 31 Jan 1997 07:20:03 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 07:20:03 -0800 (PST) Resent-Message-Id: <199701311520.HAA26712@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, proff@iq.org Received: from profane.iq.org (profane.iq.org [203.4.184.217]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id HAA26497; Fri, 31 Jan 1997 07:13:51 -0800 (PST) Received: (from proff@localhost) by profane.iq.org (8.8.4/8.8.2) id CAA23809; Sat, 1 Feb 1997 02:15:09 +1100 (EST) Message-Id: <199701311515.CAA23809@profane.iq.org> Date: Sat, 1 Feb 1997 02:15:09 +1100 (EST) From: Julian Assange Reply-To: proff@iq.org To: FreeBSD-gnats-submit@freebsd.org, dyson@freebsd.org X-Send-Pr-Version: 3.2 Subject: misc/2625: fixed broken src/includes Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2625 >Category: misc >Synopsis: fixed broken src/includes >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 07:20:01 PST 1997 >Last-Modified: >Originator: Julian Assange >Organization: >Release: FreeBSD 3.0-CURRENT i386 >Environment: >Description: A number of include files do not self-resolve. This is shoddy encapsulation practice and invariably causes great difficulty when porting code from other OS's. >How-To-Repeat: >Fix: Index: src/include/fts.h diff -c src/include/fts.h:1.1.1.1 src/include/fts.h:1.1.1.1.10.1 *** src/include/fts.h:1.1.1.1 Tue May 24 19:57:22 1994 --- src/include/fts.h Sat Feb 1 02:02:43 1997 *************** *** 36,41 **** --- 36,44 ---- #ifndef _FTS_H_ #define _FTS_H_ + #include + #include + typedef struct { struct _ftsent *fts_cur; /* current node */ struct _ftsent *fts_child; /* linked list of children */ Index: src/include/grp.h diff -c src/include/grp.h:1.1.1.1 src/include/grp.h:1.1.1.1.10.1 *** src/include/grp.h:1.1.1.1 Tue May 24 19:57:21 1994 --- src/include/grp.h Sat Feb 1 02:02:43 1997 *************** *** 41,46 **** --- 41,48 ---- #ifndef _GRP_H_ #define _GRP_H_ + #include + #ifndef _POSIX_SOURCE #define _PATH_GROUP "/etc/group" #endif *************** *** 48,54 **** struct group { char *gr_name; /* group name */ char *gr_passwd; /* group password */ ! int gr_gid; /* group id */ char **gr_mem; /* group members */ }; --- 50,56 ---- struct group { char *gr_name; /* group name */ char *gr_passwd; /* group password */ ! gid_t gr_gid; /* group id */ char **gr_mem; /* group members */ }; Index: src/include/link.h diff -c src/include/link.h:1.10 src/include/link.h:1.10.2.1 *** src/include/link.h:1.10 Tue Jan 14 16:59:44 1997 --- src/include/link.h Sat Feb 1 02:02:43 1997 *************** *** 41,46 **** --- 41,49 ---- #ifndef _LINK_H_ #define _LINK_H_ + #include + #include + /* * A `Shared Object Descriptor' describes a shared object that is needed * to complete the link edit process of the object containing it. *************** *** 81,86 **** --- 84,90 ---- * of shared objects. An array of these live in the shared object's * text segment and is addressed by the `sdt_nzlist' field. */ + struct nzlist { struct nlist nlist; u_long nz_size; Index: src/include/login_cap.h diff -c src/include/login_cap.h:1.5 src/include/login_cap.h:1.5.2.1 *** src/include/login_cap.h:1.5 Tue Jan 14 16:59:45 1997 --- src/include/login_cap.h Sat Feb 1 02:02:43 1997 *************** *** 27,32 **** --- 27,34 ---- #ifndef _LOGIN_CAP_H_ #define _LOGIN_CAP_H_ + #include + #define LOGIN_DEFCLASS "default" #define LOGIN_DEFSTYLE "passwd" #define LOGIN_DEFSERVICE "login" Index: src/include/mpool.h diff -c src/include/mpool.h:1.3 src/include/mpool.h:1.3.4.1 *** src/include/mpool.h:1.3 Wed Feb 28 06:42:44 1996 --- src/include/mpool.h Sat Feb 1 02:02:44 1997 *************** *** 36,42 **** --- 36,44 ---- #ifndef _MPOOL_H_ #define _MPOOL_H_ + #include #include + #include /* * The memory pool scheme is a simple one. Each in-memory page is referenced Index: src/include/pthread_np.h diff -c src/include/pthread_np.h:1.2 src/include/pthread_np.h:1.2.2.1 *** src/include/pthread_np.h:1.2 Mon Nov 11 20:21:19 1996 --- src/include/pthread_np.h Sat Feb 1 02:02:44 1997 *************** *** 33,38 **** --- 33,40 ---- #ifndef _PTHREAD_NP_H_ #define _PTHREAD_NP_H_ + #include + /* * Non-POSIX thread function prototype definitions: */ Index: src/include/pwd.h diff -c src/include/pwd.h:1.5 src/include/pwd.h:1.5.4.1 *** src/include/pwd.h:1.5 Tue Apr 16 10:22:41 1996 --- src/include/pwd.h Sat Feb 1 02:02:44 1997 *************** *** 71,78 **** struct passwd { char *pw_name; /* user name */ char *pw_passwd; /* encrypted password */ ! int pw_uid; /* user uid */ ! int pw_gid; /* user gid */ time_t pw_change; /* password change time */ char *pw_class; /* user access class */ char *pw_gecos; /* Honeywell login info */ --- 71,78 ---- struct passwd { char *pw_name; /* user name */ char *pw_passwd; /* encrypted password */ ! uid_t pw_uid; /* user uid */ ! gid_t pw_gid; /* user gid */ time_t pw_change; /* password change time */ char *pw_class; /* user access class */ char *pw_gecos; /* Honeywell login info */ Index: src/include/regex.h diff -c src/include/regex.h:1.1.1.1 src/include/regex.h:1.1.1.1.10.1 *** src/include/regex.h:1.1.1.1 Tue May 24 19:57:15 1994 --- src/include/regex.h Sat Feb 1 02:02:44 1997 *************** *** 41,46 **** --- 41,47 ---- #define _REGEX_H_ #include + #include /* types */ typedef off_t regoff_t; Index: src/include/resolv.h diff -c src/include/resolv.h:1.9 src/include/resolv.h:1.9.2.1 *** src/include/resolv.h:1.9 Tue Jan 14 16:59:47 1997 --- src/include/resolv.h Sat Feb 1 02:02:44 1997 *************** *** 62,67 **** --- 62,69 ---- #include #include #include + #include + #include #include /* Index: src/include/utime.h diff -c src/include/utime.h:1.1.1.1 src/include/utime.h:1.1.1.1.10.1 *** src/include/utime.h:1.1.1.1 Tue May 24 19:57:04 1994 --- src/include/utime.h Sat Feb 1 02:02:45 1997 *************** *** 36,41 **** --- 36,43 ---- #ifndef _UTIME_H_ #define _UTIME_H_ + #include + struct utimbuf { time_t actime; /* Access time */ time_t modtime; /* Modification time */ Index: src/include/utmp.h diff -c src/include/utmp.h:1.4 src/include/utmp.h:1.4.2.1 *** src/include/utmp.h:1.4 Tue Jan 14 16:59:49 1997 --- src/include/utmp.h Sat Feb 1 02:02:45 1997 *************** *** 42,47 **** --- 42,49 ---- #ifndef _UTMP_H_ #define _UTMP_H_ + #include + #define _PATH_UTMP "/var/run/utmp" #define _PATH_WTMP "/var/log/wtmp" #define _PATH_LASTLOG "/var/log/lastlog" Index: src/include/arpa/inet.h diff -c src/include/arpa/inet.h:1.6 src/include/arpa/inet.h:1.6.2.1 *** src/include/arpa/inet.h:1.6 Tue Jan 14 16:59:54 1997 --- src/include/arpa/inet.h Sat Feb 1 02:02:47 1997 *************** *** 61,67 **** #include #include ! struct in_addr; __BEGIN_DECLS int ascii2addr __P((int, const char *, void *)); --- 61,67 ---- #include #include ! #include __BEGIN_DECLS int ascii2addr __P((int, const char *, void *)); Index: src/include/protocols/dumprestore.h diff -c src/include/protocols/dumprestore.h:1.2 src/include/protocols/dumprestore.h:1.2.10.1 *** src/include/protocols/dumprestore.h:1.2 Sun Aug 21 14:05:01 1994 --- src/include/protocols/dumprestore.h Sat Feb 1 02:02:49 1997 *************** *** 41,46 **** --- 41,48 ---- #ifndef _PROTOCOLS_DUMPRESTORE_H_ #define _PROTOCOLS_DUMPRESTORE_H_ + #include + #include /* * TP_BSIZE is the size of file blocks on the dump tapes. * Note that TP_BSIZE must be a multiple of DEV_BSIZE. Index: src/include/protocols/routed.h diff -c src/include/protocols/routed.h:1.8 src/include/protocols/routed.h:1.8.2.1 *** src/include/protocols/routed.h:1.8 Wed Nov 20 08:22:18 1996 --- src/include/protocols/routed.h Sat Feb 1 02:02:50 1997 *************** *** 40,46 **** #ifdef __cplusplus extern "C" { #endif ! #ident "$Revision: 1.8 $" /* * Routing Information Protocol --- 40,49 ---- #ifdef __cplusplus extern "C" { #endif ! #ident "$Revision: 1.8.2.1 $" ! ! #include ! #include /* * Routing Information Protocol Index: src/include/protocols/talkd.h diff -c src/include/protocols/talkd.h:1.2 src/include/protocols/talkd.h:1.2.10.1 *** src/include/protocols/talkd.h:1.2 Sun Aug 21 14:05:04 1994 --- src/include/protocols/talkd.h Sat Feb 1 02:02:50 1997 *************** *** 36,41 **** --- 36,44 ---- #ifndef _PROTOCOLS_TALKD_H_ #define _PROTOCOLS_TALKD_H_ + #include + #include + /* * This describes the protocol used by the talk server and clients. * Index: src/include/protocols/timed.h diff -c src/include/protocols/timed.h:1.3 src/include/protocols/timed.h:1.3.8.1 *** src/include/protocols/timed.h:1.3 Tue May 30 14:55:06 1995 --- src/include/protocols/timed.h Sat Feb 1 02:02:50 1997 *************** *** 36,41 **** --- 36,45 ---- #ifndef _PROTOCOLS_TIMED_H_ #define _PROTOCOLS_TIMED_H_ + #include + #include + #include + /* * Time Synchronization Protocol */ Index: src/include/rpc/auth.h diff -c src/include/rpc/auth.h:1.7 src/include/rpc/auth.h:1.7.2.1 *** src/include/rpc/auth.h:1.7 Tue Jan 14 16:59:56 1997 --- src/include/rpc/auth.h Sat Feb 1 02:02:56 1997 *************** *** 44,49 **** --- 44,51 ---- #ifndef _RPC_AUTH_H #define _RPC_AUTH_H #include + #include + #include #define MAX_AUTH_BYTES 400 #define MAXNETNAMELEN 255 /* maximum length of network user's name */ Index: src/include/rpc/auth_unix.h diff -c src/include/rpc/auth_unix.h:1.5 src/include/rpc/auth_unix.h:1.5.2.1 *** src/include/rpc/auth_unix.h:1.5 Tue Jan 14 16:59:57 1997 --- src/include/rpc/auth_unix.h Sat Feb 1 02:02:56 1997 *************** *** 47,52 **** --- 47,55 ---- #ifndef _RPC_AUTH_UNIX_H #define _RPC_AUTH_UNIX_H #include + #include + #include + #include /* The machine name is part of a credential; it may not exceed 255 bytes */ #define MAX_MACHINE_NAME 255 Index: src/include/rpc/clnt.h diff -c src/include/rpc/clnt.h:1.6 src/include/rpc/clnt.h:1.6.2.1 *** src/include/rpc/clnt.h:1.6 Tue Jan 14 16:59:57 1997 --- src/include/rpc/clnt.h Sat Feb 1 02:02:57 1997 *************** *** 40,45 **** --- 40,48 ---- #ifndef _RPC_CLNT_H_ #define _RPC_CLNT_H_ #include + #include + #include + #include /* * Rpc calls return an enum clnt_stat. This should be looked at more, Index: src/include/rpc/pmap_clnt.h diff -c src/include/rpc/pmap_clnt.h:1.6 src/include/rpc/pmap_clnt.h:1.6.2.1 *** src/include/rpc/pmap_clnt.h:1.6 Tue Jan 14 16:59:58 1997 --- src/include/rpc/pmap_clnt.h Sat Feb 1 02:02:57 1997 *************** *** 63,68 **** --- 63,71 ---- #ifndef _RPC_PMAPCLNT_H #define _RPC_PMAPCLNT_H #include + #include + #include + #include __BEGIN_DECLS extern bool_t pmap_set __P((u_long, u_long, int, int)); Index: src/include/rpc/pmap_prot.h diff -c src/include/rpc/pmap_prot.h:1.5 src/include/rpc/pmap_prot.h:1.5.2.1 *** src/include/rpc/pmap_prot.h:1.5 Tue Jan 14 16:59:58 1997 --- src/include/rpc/pmap_prot.h Sat Feb 1 02:02:57 1997 *************** *** 71,76 **** --- 71,78 ---- #ifndef _RPC_PMAPPROT_H #define _RPC_PMAPPROT_H #include + #include + #include #define PMAPPORT ((u_short)111) #define PMAPPROG ((u_long)100000) Index: src/include/rpc/pmap_rmt.h diff -c src/include/rpc/pmap_rmt.h:1.5 src/include/rpc/pmap_rmt.h:1.5.2.1 *** src/include/rpc/pmap_rmt.h:1.5 Tue Jan 14 16:59:59 1997 --- src/include/rpc/pmap_rmt.h Sat Feb 1 02:02:57 1997 *************** *** 41,46 **** --- 41,48 ---- #ifndef _RPC_PMAPRMT_H #define _RPC_PMAPRMT_H #include + #include + #include struct rmtcallargs { u_long prog, vers, proc, arglen; Index: src/include/rpc/rpc_msg.h diff -c src/include/rpc/rpc_msg.h:1.7 src/include/rpc/rpc_msg.h:1.7.2.1 *** src/include/rpc/rpc_msg.h:1.7 Tue Jan 14 17:00:00 1997 --- src/include/rpc/rpc_msg.h Sat Feb 1 02:02:57 1997 *************** *** 40,45 **** --- 40,48 ---- #ifndef _RPC_RPCMSG_H #define _RPC_RPCMSG_H + #include + #include + #include #define RPC_MSG_VERSION ((u_long) 2) #define RPC_SERVICE_PORT ((u_short) 2048) Index: src/include/rpc/svc.h diff -c src/include/rpc/svc.h:1.8 src/include/rpc/svc.h:1.8.2.1 *** src/include/rpc/svc.h:1.8 Tue Jan 14 17:00:01 1997 --- src/include/rpc/svc.h Sat Feb 1 02:02:58 1997 *************** *** 40,45 **** --- 40,50 ---- #ifndef _RPC_SVC_H #define _RPC_SVC_H #include + #include + #include + #include + #include + #include /* * This interface must manage two items concerning remote procedure calling: Index: src/include/rpc/svc_auth.h diff -c src/include/rpc/svc_auth.h:1.5 src/include/rpc/svc_auth.h:1.5.2.1 *** src/include/rpc/svc_auth.h:1.5 Tue Jan 14 17:00:02 1997 --- src/include/rpc/svc_auth.h Sat Feb 1 02:02:58 1997 *************** *** 39,44 **** --- 39,48 ---- #ifndef _RPC_SVCAUTH_H #define _RPC_SVCAUTH_H + #include + #include + #include + #include /* * Server side authenticator Index: src/include/rpc/xdr.h diff -c src/include/rpc/xdr.h:1.6 src/include/rpc/xdr.h:1.6.2.1 *** src/include/rpc/xdr.h:1.6 Tue Jan 14 17:00:05 1997 --- src/include/rpc/xdr.h Sat Feb 1 02:02:58 1997 *************** *** 40,45 **** --- 40,46 ---- #ifndef _RPC_XDR_H #define _RPC_XDR_H #include + #include /* * XDR provides a conventional way for converting between C data Index: src/include/rpcsvc/yp_prot.h diff -c src/include/rpcsvc/yp_prot.h:1.5 src/include/rpcsvc/yp_prot.h:1.5.2.1 *** src/include/rpcsvc/yp_prot.h:1.5 Tue Jan 14 17:00:18 1997 --- src/include/rpcsvc/yp_prot.h Sat Feb 1 02:03:01 1997 *************** *** 32,37 **** --- 32,39 ---- #ifndef _RPCSVC_YP_PROT_H_ #define _RPCSVC_YP_PROT_H_ + #include + /* * YPSERV PROTOCOL: * Index: src/include/rpcsvc/ypclnt.h diff -c src/include/rpcsvc/ypclnt.h:1.5 src/include/rpcsvc/ypclnt.h:1.5.2.1 *** src/include/rpcsvc/ypclnt.h:1.5 Tue Jan 14 17:00:19 1997 --- src/include/rpcsvc/ypclnt.h Sat Feb 1 02:03:01 1997 *************** *** 32,37 **** --- 32,40 ---- #ifndef _RPCSVC_YPCLNT_H_ #define _RPCSVC_YPCLNT_H_ + #include + #include + #define YPERR_BADARGS 1 /* args to function are bad */ #define YPERR_RPC 2 /* RPC failure */ #define YPERR_DOMAIN 3 /* can't bind to a server for domain */ >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 08:20:06 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id IAA29012 for bugs-outgoing; Fri, 31 Jan 1997 08:20:06 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id IAA28973; Fri, 31 Jan 1997 08:20:02 -0800 (PST) Date: Fri, 31 Jan 1997 08:20:02 -0800 (PST) Message-Id: <199701311620.IAA28973@freefall.freebsd.org> To: freebsd-bugs Cc: From: okkun@mickey.ai.kyutech.ac.jp (Masaru Okumura) Subject: Re: i386/2395: 2.2-BETA installation problem on ICL ErgoPro s450 Reply-To: okkun@mickey.ai.kyutech.ac.jp (Masaru Okumura) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR i386/2395; it has been noted by GNATS. From: okkun@mickey.ai.kyutech.ac.jp (Masaru Okumura) To: freebsd-gnats-submit@freebsd.org, j@uriah.heep.sax.de Cc: okkun@mickey.ai.kyutech.ac.jp (Masaru Okumura) Subject: Re: i386/2395: 2.2-BETA installation problem on ICL ErgoPro s450 Date: Sat, 1 Feb 1997 01:20:05 +0900 Same problem here on my notebook. >From: j@uriah.heep.sax.de (J Wunsch) > To: jtp@iki.fi > Cc: FreeBSD-gnats-submit@freebsd.org, jtp@iki.fi > Subject: Re: i386/2395: 2.2-BETA installation problem on ICL ErgoPro >s450 > Date: Wed, 8 Jan 1997 00:49:32 +0100 > > As jtp@iki.fi wrote: > > > I tried to install 2.2-BETA, but the kernel from the boot > > floppy hangs right after printing > > > > npx0 on motherboard > > npx0: INT 16 interface > > apm0: disabled, not probed > > Can you switch to the second screen (Alt-F2), and see if there are > some messages already? > > -- > cheers, J"org I made a try to swich the second screen (Alt-F2), but PC had completely freezed and no message appeared. Now, I'm using the 2.1.6-RELEASE, and I had no trouble in this version. Release FreeBSD 2.2-BETA Environment Panasonic AL-N1T513J5(laptop) P5-133MHz 32M memory 1G IDE disk C&T 65550 VGA controller From owner-freebsd-bugs Fri Jan 31 08:22:12 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id IAA29080 for bugs-outgoing; Fri, 31 Jan 1997 08:22:12 -0800 (PST) Received: from visitor-4.sp.cs.cmu.edu (VISITOR-4.SP.CS.CMU.EDU [128.2.198.195]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id IAA29072 for ; Fri, 31 Jan 1997 08:22:04 -0800 (PST) Message-Id: <199701311622.IAA29072@freefall.freebsd.org> Received: from localhost by visitor-4.sp.cs.cmu.edu id aa10523; 31 Jan 97 11:21 EST To: freebsd-bugs@freebsd.org Reply-To: th+@cs.cmu.edu Subject: mount_mfs Date: Fri, 31 Jan 1997 11:21:26 -0500 From: tatsuya Hagino Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I am currently developing a 4.4BSD Lite Server for RT-Mach and making it to work with FreeBSD 2.2-BETA. I found a bug in mount_mfs command (whith is the same as newfs). When it creates a memory file system, it issues a mount system call but the size field is twice as small as it should be. In /usr/src/sbin/newfs/mkfs.c line 460, fssize is converted from sector size to file system block size (which is tipically 1024 byte). sblock.fs_size = fssize = dbtofsb(&sblock, fssize); However, mount system call argument is caliculated in /usr/src/sbin/newfs/newfs.c line 554 args.size = fssize * sectorsize; where it uses the sector size (512 byte). This confusion of sector size and file system block size is causing the problem. The reason why FreeBSD mount_mfs works is that FreeBSD kernel does not check the size limit in mfs_vnops.c. I have found this bug when I was implementing the memory file system for Lites and Lites hanged because of illegal memory accesses. Tatsuya Hagino P.S. Could you also change the fspec name? Since the special file name for a memory file system is "mfs:", the kernel tries to find the host name "mfs" when it shut down (it looks like nfs mount). If the machine is disconnected from the network, the name resolution (which failes) takes quite a time. ---------------------------------------------------------------------------- Tatsuya Hagino th+@cs.cmu.edu hagino@sfc.keio.ac.jp School of Computer Science Fuculty of Environmental Information Carnegie Mellon University Keio University 5000 Forbes Ave. Pittsburgh, PA 15213 5322 Endoh, Fujisawa, Kanagawa 252 From owner-freebsd-bugs Fri Jan 31 09:20:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA01972 for bugs-outgoing; Fri, 31 Jan 1997 09:20:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA01959; Fri, 31 Jan 1997 09:20:02 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 09:20:02 -0800 (PST) Resent-Message-Id: <199701311720.JAA01959@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.JAA01696;Fri; (8.8.5/8.8.5);, 31 Jan 1997 09:14:19.-0800 (PST) Message-Id: <199701311714.JAA01696@freefall.freebsd.org> Date: Fri, 31 Jan 1997 09:14:19 -0800 (PST) From: gilbertd@cs.man.ac.uk To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: kern/2626: Can't NFS export ext2fs due to lack of cookies Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2626 >Category: kern >Synopsis: Can't NFS export ext2fs due to lack of cookies >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 09:20:01 PST 1997 >Last-Modified: >Originator: Dave Gilbert >Organization: University of Manchester >Release: 2.2-Release >Environment: FreeBSD uriah.cs.man.ac.uk 2.2-RELEASE FreeBSD 2.2-RELEASE #5: Fri Jan 31 16:07:07 GMT 1997 root@uriah.cs.man.ac.uk:/usr/src/sys/compile/URIAH i386 >Description: If an ext2fs is exported via nfs the directories are unreadable even though an ls -lagd . on the directories says they should be >How-To-Repeat: set up nfs, mount an ext2fs and export it. Mount that on another system (I have a SunOS 4.1.4 machine) and ls the directory >Fix: Add cookie code to ext2_readdir (I might try this - I'm moderatly desparate!). >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 09:30:05 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA02434 for bugs-outgoing; Fri, 31 Jan 1997 09:30:05 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA02424; Fri, 31 Jan 1997 09:30:02 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 09:30:02 -0800 (PST) Resent-Message-Id: <199701311730.JAA02424@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.JAA02199;Fri; (8.8.5/8.8.5);, 31 Jan 1997 09:25:50.-0800 (PST) Message-Id: <199701311725.JAA02199@freefall.freebsd.org> Date: Fri, 31 Jan 1997 09:25:50 -0800 (PST) From: gilbertd@cs.man.ac.uk To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: bin/2627: Can't shutdown cleanly (1 filesystem?) Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2627 >Category: bin >Synopsis: Can't shutdown cleanly (1 filesystem?) >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 09:30:01 PST 1997 >Last-Modified: >Originator: Dave Gilbert >Organization: University of Manchester >Release: 2.2-BETA (kernel upgraded) to... >Environment: FreeBSD uriah.cs.man.ac.uk 2.2-RELEASE FreeBSD 2.2-RELEASE #5: Fri Jan 31 16:07:07 GMT 1997 root@uriah.cs.man.ac.uk:/usr/src/sys/compile/URIAH i386 >Description: When ever I shutdown (using shutdown -h for example) the filesystems have fsck problems the next time round. Normally there is just one error at the end of the fsck (I can't remember which - perhaps a summary info?) - but sometimes it just doesn't cleanly unmount it. I'm wondering if the problem is due to the fact that I have a combined /,/var,/usr? >How-To-Repeat: >Fix: >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 10:10:07 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA04327 for bugs-outgoing; Fri, 31 Jan 1997 10:10:07 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA04318; Fri, 31 Jan 1997 10:10:02 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 10:10:02 -0800 (PST) Resent-Message-Id: <199701311810.KAA04318@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, proff@iq.org Received: from profane.iq.org (profane.iq.org [203.4.184.217]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id KAA03951; Fri, 31 Jan 1997 10:04:06 -0800 (PST) Received: (from proff@localhost) by profane.iq.org (8.8.4/8.8.2) id FAA02492; Sat, 1 Feb 1997 05:04:58 +1100 (EST) Message-Id: <199701311804.FAA02492@profane.iq.org> Date: Sat, 1 Feb 1997 05:04:58 +1100 (EST) From: Julian Assange Reply-To: proff@iq.org To: FreeBSD-gnats-submit@freebsd.org, dyson@freebsd.org X-Send-Pr-Version: 3.2 Subject: kern/2628: code clean up of sys/sys Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2628 >Category: kern >Synopsis: code clean up of sys/sys >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 10:10:01 PST 1997 >Last-Modified: >Originator: Julian Assange >Organization: >Release: FreeBSD 3.0-CURRENT i386 >Environment: >Description: sys/sys (usr/include/sys) contains unresolved dependencies and sloppy use (or non-use) of -DKERNEL. >How-To-Repeat: >Fix: (you also need to apply my vnode_if.sh fix.. see next pr) Index: src/sys/sys/acct.h diff -c src/sys/sys/acct.h:1.7 src/sys/sys/acct.h:1.7.2.1 *** src/sys/sys/acct.h:1.7 Tue Jan 14 17:54:32 1997 --- src/sys/sys/acct.h Sat Feb 1 04:49:22 1997 *************** *** 42,47 **** --- 42,51 ---- #ifndef _SYS_ACCT_H_ #define _SYS_ACCT_H_ + #ifndef KERNEL + #include + #endif + /* * Accounting structures; these use a comp_t type which is a 3 bits base 8 * exponent, 13 bit fraction ``floating point'' number. Units are 1/AHZ Index: src/sys/sys/buf.h diff -c src/sys/sys/buf.h:1.37 src/sys/sys/buf.h:1.37.2.1 *** src/sys/sys/buf.h:1.37 Tue Jan 14 17:54:34 1997 --- src/sys/sys/buf.h Sat Feb 1 04:49:22 1997 *************** *** 42,47 **** --- 42,50 ---- #ifndef _SYS_BUF_H_ #define _SYS_BUF_H_ + #include + #include + #include #include #define NOLIST ((struct buf *)0x87654321) Index: src/sys/sys/callout.h diff -c src/sys/sys/callout.h:1.5 src/sys/sys/callout.h:1.5.2.1 *** src/sys/sys/callout.h:1.5 Tue Jan 14 17:54:35 1997 --- src/sys/sys/callout.h Sat Feb 1 04:49:22 1997 *************** *** 42,47 **** --- 42,49 ---- #ifndef _SYS_CALLOUT_H_ #define _SYS_CALLOUT_H_ + #include + struct callout { struct callout *c_next; /* next callout in queue */ void *c_arg; /* function argument */ Index: src/sys/sys/ccdvar.h diff -c src/sys/sys/ccdvar.h:1.5 src/sys/sys/ccdvar.h:1.5.2.1 *** src/sys/sys/ccdvar.h:1.5 Tue Jan 14 17:54:36 1997 --- src/sys/sys/ccdvar.h Sat Feb 1 04:49:22 1997 *************** *** 85,90 **** --- 85,93 ---- * Moffett Field, CA 94035 */ + #include + #include + /* * A concatenated disk is described at initialization time by this structure. */ Index: src/sys/sys/clist.h diff -c src/sys/sys/clist.h:1.6 src/sys/sys/clist.h:1.6.2.1 *** src/sys/sys/clist.h:1.6 Tue Jan 14 17:54:39 1997 --- src/sys/sys/clist.h Sat Feb 1 04:49:23 1997 *************** *** 37,42 **** --- 37,44 ---- #ifndef _SYS_CLIST_H_ #define _SYS_CLIST_H_ + #include + struct cblock { struct cblock *c_next; /* next cblock in queue */ unsigned char c_quote[CBQSIZE]; /* quoted characters */ Index: src/sys/sys/conf.h diff -c src/sys/sys/conf.h:1.32 src/sys/sys/conf.h:1.32.2.1 *** src/sys/sys/conf.h:1.32 Tue Jan 14 17:54:40 1997 --- src/sys/sys/conf.h Sat Feb 1 04:49:23 1997 *************** *** 42,47 **** --- 42,51 ---- #ifndef _SYS_CONF_H_ #define _SYS_CONF_H_ + #ifndef KERNEL + #include + #endif + /* * Definitions of device driver entry switches */ Index: src/sys/sys/devfsext.h diff -c src/sys/sys/devfsext.h:1.14 src/sys/sys/devfsext.h:1.14.2.1 *** src/sys/sys/devfsext.h:1.14 Tue Jan 14 17:54:41 1997 --- src/sys/sys/devfsext.h Sat Feb 1 04:49:23 1997 *************** *** 7,12 **** --- 7,13 ---- #ifndef _SYS_DEVFSECT_H_ #define _SYS_DEVFSECT_H_ 1 + #ifdef KERNEL void *devfs_add_devswf(void *devsw, int minor, int chrblk, *************** *** 22,27 **** --- 23,29 ---- /* remove the device the cookie represents */ void devfs_remove_dev(void *devnmp); + #endif #define DV_CHR 0 #define DV_BLK 1 Index: src/sys/sys/device.h diff -c src/sys/sys/device.h:1.5 src/sys/sys/device.h:1.5.2.1 *** src/sys/sys/device.h:1.5 Tue Jan 14 17:54:42 1997 --- src/sys/sys/device.h Sat Feb 1 04:49:23 1997 *************** *** 46,51 **** --- 46,56 ---- #ifndef _SYS_DEVICE_H_ #define _SYS_DEVICE_H_ + #include + #ifndef KERNEL + #include + #endif + /* * Minimal device structures. * Note that all ``system'' device types are listed here. *************** *** 133,138 **** --- 138,144 ---- int pdev_count; }; + #ifdef KERNEL extern struct device *alldevs; /* head of list of all devices */ extern struct evcnt *allevents; /* head of list of all events */ *************** *** 142,145 **** --- 148,152 ---- int config_rootfound __P((char *, void *)); void config_attach __P((struct device *, struct cfdata *, void *, cfprint_t)); void evcnt_attach __P((struct device *, const char *, struct evcnt *)); + #endif #endif /* !_SYS_DEVICE_H_ */ Index: src/sys/sys/dirent.h diff -c src/sys/sys/dirent.h:1.6 src/sys/sys/dirent.h:1.6.2.1 *** src/sys/sys/dirent.h:1.6 Tue Jan 14 17:54:44 1997 --- src/sys/sys/dirent.h Sat Feb 1 04:49:24 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_DIRENT_H_ #define _SYS_DIRENT_H_ + #ifndef KERNEL + #include + #endif + /* * The dirent structure defines the format of directory entries returned by * the getdirentries(2) system call. Index: src/sys/sys/disk.h diff -c src/sys/sys/disk.h:1.6 src/sys/sys/disk.h:1.6.2.1 *** src/sys/sys/disk.h:1.6 Tue Jan 14 17:54:45 1997 --- src/sys/sys/disk.h Sat Feb 1 04:49:24 1997 *************** *** 47,52 **** --- 47,58 ---- #ifndef _SYS_DISK_H_ #define _SYS_DISK_H_ + #ifndef KERNEL + #include + #endif + #include + #include + /* * Disk device structures. * Index: src/sys/sys/dkbad.h diff -c src/sys/sys/dkbad.h:1.8 src/sys/sys/dkbad.h:1.8.2.1 *** src/sys/sys/dkbad.h:1.8 Tue Jan 14 17:54:48 1997 --- src/sys/sys/dkbad.h Sat Feb 1 04:49:24 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_DKBAD_H_ #define _SYS_DKBAD_H_ + #ifndef KERNEL + #include + #endif + /* * Definitions needed to perform bad sector revectoring ala DEC STD 144. * Index: src/sys/sys/dmap.h diff -c src/sys/sys/dmap.h:1.4 src/sys/sys/dmap.h:1.4.2.1 *** src/sys/sys/dmap.h:1.4 Tue Jan 14 17:54:49 1997 --- src/sys/sys/dmap.h Sat Feb 1 04:49:24 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_DMAP_H_ #define _SYS_DMAP_H_ + #ifndef KERNEL + #include + #endif + /* * Definitions for the mapping of vitual swap space to the physical swap * area - the disk map. Index: src/sys/sys/domain.h diff -c src/sys/sys/domain.h:1.8 src/sys/sys/domain.h:1.8.2.1 *** src/sys/sys/domain.h:1.8 Tue Jan 14 17:54:50 1997 --- src/sys/sys/domain.h Sat Feb 1 04:49:24 1997 *************** *** 37,42 **** --- 37,44 ---- #ifndef _SYS_DOMAIN_H_ #define _SYS_DOMAIN_H_ + #include + /* * Structure per communications domain. */ Index: src/sys/sys/fbio.h diff -c src/sys/sys/fbio.h:1.4 src/sys/sys/fbio.h:1.4.2.1 *** src/sys/sys/fbio.h:1.4 Tue Jan 14 17:54:53 1997 --- src/sys/sys/fbio.h Sat Feb 1 04:49:25 1997 *************** *** 42,47 **** --- 42,51 ---- #ifndef _SYS_FBIO_H_ #define _SYS_FBIO_H_ + #ifndef KERNEL + #include + #endif + /* * Frame buffer ioctls (from Sprite, trimmed to essentials for X11). */ Index: src/sys/sys/filedesc.h diff -c src/sys/sys/filedesc.h:1.10 src/sys/sys/filedesc.h:1.10.2.1 *** src/sys/sys/filedesc.h:1.10 Tue Jan 14 17:54:56 1997 --- src/sys/sys/filedesc.h Sat Feb 1 04:49:25 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_FILEDESC_H_ #define _SYS_FILEDESC_H_ + #ifndef KERNEL + #include + #endif + /* * This structure is used for the management of descriptors. It may be * shared by multiple processes. Index: src/sys/sys/gmon.h diff -c src/sys/sys/gmon.h:1.10 src/sys/sys/gmon.h:1.10.2.1 *** src/sys/sys/gmon.h:1.10 Tue Jan 14 17:54:58 1997 --- src/sys/sys/gmon.h Sat Feb 1 04:49:25 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_GMON_H_ #define _SYS_GMON_H_ + #ifndef KERNEL + #include + #endif + #include /* Index: src/sys/sys/imgact_elf.h diff -c src/sys/sys/imgact_elf.h:1.3 src/sys/sys/imgact_elf.h:1.3.2.1 *** src/sys/sys/imgact_elf.h:1.3 Tue Jan 14 17:55:01 1997 --- src/sys/sys/imgact_elf.h Sat Feb 1 04:49:25 1997 *************** *** 31,43 **** --- 31,49 ---- #ifndef _IMGACT_ELF_H_ #define _IMGACT_ELF_H_ + #ifndef KERNEL + #include + #endif + typedef u_int32_t Elf32_Addr; typedef u_int32_t Elf32_Off; typedef int32_t Elf32_Sword; typedef u_int32_t Elf32_Word; typedef u_int16_t Elf32_Half; + #ifdef KERNEL extern int elf_trace; + #endif #define EI_NINDENT 16 typedef struct { *************** *** 210,216 **** --- 216,224 ---- #define MAX_BRANDS 8 + #ifdef KERNEL int elf_insert_brand_entry __P((Elf32_Brandinfo *entry)); int elf_remove_brand_entry __P((Elf32_Brandinfo *entry)); + #endif #endif /* _IMGACT_ELF_H_ */ Index: src/sys/sys/ipc.h diff -c src/sys/sys/ipc.h:1.9 src/sys/sys/ipc.h:1.9.2.1 *** src/sys/sys/ipc.h:1.9 Tue Jan 14 17:55:08 1997 --- src/sys/sys/ipc.h Sat Feb 1 04:49:26 1997 *************** *** 50,55 **** --- 50,59 ---- #ifndef _SYS_IPC_H_ #define _SYS_IPC_H_ + #ifndef KERNEL + #include + #endif + struct ipc_perm { ushort cuid; /* creator user id */ ushort cgid; /* creator group id */ Index: src/sys/sys/kernel.h diff -c src/sys/sys/kernel.h:1.24 src/sys/sys/kernel.h:1.24.2.1 *** src/sys/sys/kernel.h:1.24 Tue Jan 14 17:55:09 1997 --- src/sys/sys/kernel.h Sat Feb 1 04:49:26 1997 *************** *** 45,50 **** --- 45,54 ---- #ifndef _SYS_KERNEL_H_ #define _SYS_KERNEL_H_ + #ifndef KERNEL + #include + #endif + /* Global variables for the kernel. */ #ifdef KERNEL Index: src/sys/sys/ktrace.h diff -c src/sys/sys/ktrace.h:1.11 src/sys/sys/ktrace.h:1.11.2.1 *** src/sys/sys/ktrace.h:1.11 Tue Jan 14 17:55:10 1997 --- src/sys/sys/ktrace.h Sat Feb 1 04:49:26 1997 *************** *** 37,42 **** --- 37,49 ---- #ifndef _SYS_KTRACE_H_ #define _SYS_KTRACE_H_ + #ifndef KERNEL + #include + #endif + #include + #include + #include + /* * operations to ktrace system call (KTROP(op)) */ Index: src/sys/sys/lkm.h diff -c src/sys/sys/lkm.h:1.13 src/sys/sys/lkm.h:1.13.2.1 *** src/sys/sys/lkm.h:1.13 Tue Jan 14 17:55:12 1997 --- src/sys/sys/lkm.h Sat Feb 1 04:49:26 1997 *************** *** 40,45 **** --- 40,49 ---- #ifndef _SYS_LKM_H_ #define _SYS_LKM_H_ + #ifndef KERNEL + #include + #endif + /* * Supported module types */ Index: src/sys/sys/lockf.h diff -c src/sys/sys/lockf.h:1.5 src/sys/sys/lockf.h:1.5.2.1 *** src/sys/sys/lockf.h:1.5 Tue Jan 14 17:55:13 1997 --- src/sys/sys/lockf.h Sat Feb 1 04:49:27 1997 *************** *** 40,45 **** --- 40,52 ---- #ifndef _SYS_LOCKF_H_ #define _SYS_LOCKF_H_ + #include + #ifdef KERNEL + #include + #endif + #include + + /* * The lockf structure is a kernel structure which contains the information * associated with a byte range lock. The lockf structures are linked into Index: src/sys/sys/malloc.h diff -c src/sys/sys/malloc.h:1.18 src/sys/sys/malloc.h:1.18.2.1 *** src/sys/sys/malloc.h:1.18 Tue Jan 14 17:55:14 1997 --- src/sys/sys/malloc.h Sat Feb 1 04:49:27 1997 *************** *** 37,42 **** --- 37,47 ---- #ifndef _SYS_MALLOC_H_ #define _SYS_MALLOC_H_ + #ifdef KERNEL + #include + #endif + #include + #define KMEMSTATS /* Index: src/sys/sys/md5.h diff -c src/sys/sys/md5.h:1.7 src/sys/sys/md5.h:1.7.2.1 *** src/sys/sys/md5.h:1.7 Tue Jan 14 17:55:16 1997 --- src/sys/sys/md5.h Sat Feb 1 04:49:27 1997 *************** *** 26,31 **** --- 26,34 ---- #ifndef _SYS_MD5_H_ #define _SYS_MD5_H_ + #ifndef KERNEL + #include + #endif /* MD5 context. */ typedef struct MD5Context { u_int32_t state[4]; /* state (ABCD) */ Index: src/sys/sys/mman.h diff -c src/sys/sys/mman.h:1.16 src/sys/sys/mman.h:1.16.2.1 *** src/sys/sys/mman.h:1.16 Tue Jan 14 17:55:17 1997 --- src/sys/sys/mman.h Sat Feb 1 04:49:27 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_MMAN_H_ #define _SYS_MMAN_H_ + #ifndef KERNEL + #include + #endif + /* * Protections are chosen from these bits, or-ed together */ Index: src/sys/sys/namei.h diff -c src/sys/sys/namei.h:1.12 src/sys/sys/namei.h:1.12.2.1 *** src/sys/sys/namei.h:1.12 Tue Jan 14 17:55:22 1997 --- src/sys/sys/namei.h Sat Feb 1 04:49:28 1997 *************** *** 37,43 **** --- 37,47 ---- #ifndef _SYS_NAMEI_H_ #define _SYS_NAMEI_H_ + #ifndef KERNEL + #include + #endif #include + #include /* * Encapsulation of namei parameters. Index: src/sys/sys/proc.h diff -c src/sys/sys/proc.h:1.31 src/sys/sys/proc.h:1.31.2.1 *** src/sys/sys/proc.h:1.31 Tue Jan 14 17:55:25 1997 --- src/sys/sys/proc.h Sat Feb 1 04:49:28 1997 *************** *** 43,48 **** --- 43,51 ---- #define _SYS_PROC_H_ #include /* Machine-dependent proc substruct. */ + #ifndef KERNEL + #include + #endif #include /* For struct rtprio. */ #include /* For struct selinfo. */ #include /* For structs itimerval, timeval. */ Index: src/sys/sys/protosw.h diff -c src/sys/sys/protosw.h:1.12 src/sys/sys/protosw.h:1.12.2.1 *** src/sys/sys/protosw.h:1.12 Tue Jan 14 17:55:26 1997 --- src/sys/sys/protosw.h Sat Feb 1 04:49:28 1997 *************** *** 37,42 **** --- 37,44 ---- #ifndef _SYS_PROTOSW_H_ #define _SYS_PROTOSW_H_ + #include + struct mbuf; struct sockaddr; struct socket; Index: src/sys/sys/ptrace.h diff -c src/sys/sys/ptrace.h:1.6 src/sys/sys/ptrace.h:1.6.2.1 *** src/sys/sys/ptrace.h:1.6 Tue Jan 14 17:55:27 1997 --- src/sys/sys/ptrace.h Sat Feb 1 04:49:28 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_PTRACE_H_ #define _SYS_PTRACE_H_ + #ifndef KERNEL + #include + #endif + #define PT_TRACE_ME 0 /* child declares it's being traced */ #define PT_READ_I 1 /* read word in child's I space */ #define PT_READ_D 2 /* read word in child's D space */ Index: src/sys/sys/resource.h diff -c src/sys/sys/resource.h:1.6 src/sys/sys/resource.h:1.6.2.1 *** src/sys/sys/resource.h:1.6 Tue Jan 14 17:55:30 1997 --- src/sys/sys/resource.h Sat Feb 1 04:49:29 1997 *************** *** 37,42 **** --- 37,44 ---- #ifndef _SYS_RESOURCE_H_ #define _SYS_RESOURCE_H_ + #include + /* * Process priority specifications to get/setpriority. */ Index: src/sys/sys/rlist.h diff -c src/sys/sys/rlist.h:1.10 src/sys/sys/rlist.h:1.10.2.1 *** src/sys/sys/rlist.h:1.10 Tue Jan 14 17:55:32 1997 --- src/sys/sys/rlist.h Sat Feb 1 04:49:29 1997 *************** *** 22,27 **** --- 22,29 ---- #ifndef _SYS_RLIST_H_ #define _SYS_RLIST_H_ + #include + /* A resource list element. */ struct rlist { unsigned rl_start; /* boundaries of extent - inclusive */ *************** *** 39,47 **** --- 41,51 ---- /* extern struct rlisthdr swaplist; */ + #ifdef KERNEL /* Functions to manipulate resource lists. */ extern void rlist_free __P((struct rlisthdr *, unsigned, unsigned)); int rlist_alloc __P((struct rlisthdr *, unsigned, unsigned *)); extern void rlist_destroy __P((struct rlisthdr *)); + #endif #endif /* _SYS_RLIST_H_ */ Index: src/sys/sys/rtprio.h diff -c src/sys/sys/rtprio.h:1.3 src/sys/sys/rtprio.h:1.3.2.1 *** src/sys/sys/rtprio.h:1.3 Tue Jan 14 17:55:33 1997 --- src/sys/sys/rtprio.h Sat Feb 1 04:49:29 1997 *************** *** 34,39 **** --- 34,43 ---- #ifndef _SYS_RTPRIO_H_ #define _SYS_RTPRIO_H_ + #ifndef KERNEL + #include + #endif + /* * Process realtime-priority specifications to rtprio. */ Index: src/sys/sys/select.h diff -c src/sys/sys/select.h:1.3 src/sys/sys/select.h:1.3.2.1 *** src/sys/sys/select.h:1.3 Tue Jan 14 17:55:35 1997 --- src/sys/sys/select.h Sat Feb 1 04:49:29 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_SELECT_H_ #define _SYS_SELECT_H_ + #ifdef KERNEL + #include + #endif + /* * Used to maintain information about processes that wish to be * notified when I/O becomes possible. Index: src/sys/sys/signal.h diff -c src/sys/sys/signal.h:1.10 src/sys/sys/signal.h:1.10.2.1 *** src/sys/sys/signal.h:1.10 Tue Jan 14 17:55:38 1997 --- src/sys/sys/signal.h Sat Feb 1 04:49:30 1997 *************** *** 201,208 **** --- 201,210 ---- * For historical reasons; programs expect signal's return value to be * defined by . */ + #ifndef KERNEL __BEGIN_DECLS __sighandler_t *signal __P((int, __sighandler_t *)); __END_DECLS + #endif #endif /* !_SYS_SIGNAL_H_ */ Index: src/sys/sys/signalvar.h diff -c src/sys/sys/signalvar.h:1.14 src/sys/sys/signalvar.h:1.14.2.1 *** src/sys/sys/signalvar.h:1.14 Tue Jan 14 17:55:39 1997 --- src/sys/sys/signalvar.h Sat Feb 1 04:49:30 1997 *************** *** 37,42 **** --- 37,47 ---- #ifndef _SYS_SIGNALVAR_H_ /* tmp for user.h */ #define _SYS_SIGNALVAR_H_ + #ifndef KERNEL + #include + #include + #endif + /* * Kernel signal definitions and data structures, * not exported to user programs. Index: src/sys/sys/snoop.h diff -c src/sys/sys/snoop.h:1.10 src/sys/sys/snoop.h:1.10.6.1 *** src/sys/sys/snoop.h:1.10 Thu Dec 14 19:32:35 1995 --- src/sys/sys/snoop.h Sat Feb 1 04:49:30 1997 *************** *** 16,21 **** --- 16,26 ---- #ifndef _SNOOP_H_ #define _SNOOP_H_ + #ifndef KERNEL + #include + #include + #endif + #define SNOOP_MINLEN (4*1024) /* This should be power of 2. * 4K tested to be the minimum * for which on normal tty Index: src/sys/sys/socket.h diff -c src/sys/sys/socket.h:1.16 src/sys/sys/socket.h:1.16.2.1 *** src/sys/sys/socket.h:1.16 Tue Jan 14 17:55:41 1997 --- src/sys/sys/socket.h Sat Feb 1 04:49:30 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_SOCKET_H_ #define _SYS_SOCKET_H_ + #ifndef KERNEL + #include + #endif + /* * Definitions related to sockets: types, address families, options. */ Index: src/sys/sys/sysctl.h diff -c src/sys/sys/sysctl.h:1.49 src/sys/sys/sysctl.h:1.49.2.1 *** src/sys/sys/sysctl.h:1.49 Tue Jan 14 17:55:45 1997 --- src/sys/sys/sysctl.h Sat Feb 1 04:49:31 1997 *************** *** 40,45 **** --- 40,49 ---- #ifndef _SYS_SYSCTL_H_ #define _SYS_SYSCTL_H_ + #ifndef KERNEL + #include + #endif + /* * Definitions for sysctl call. The sysctl call uses a hierarchical name * for objects that can be examined or modified. The name is expressed as Index: src/sys/sys/sysent.h diff -c src/sys/sys/sysent.h:1.12 src/sys/sys/sysent.h:1.12.2.1 *** src/sys/sys/sysent.h:1.12 Tue Jan 14 17:55:45 1997 --- src/sys/sys/sysent.h Sat Feb 1 04:49:31 1997 *************** *** 36,41 **** --- 36,47 ---- #ifndef _SYS_SYSENT_H_ #define _SYS_SYSENT_H_ + #include + #ifndef KERNEL + #include + #endif + #include + typedef int sy_call_t __P((struct proc *, void *, int *)); struct sysent { /* system call table */ Index: src/sys/sys/sysproto.h diff -c src/sys/sys/sysproto.h:1.16 src/sys/sys/sysproto.h:1.16.2.1 *** src/sys/sys/sysproto.h:1.16 Fri Jan 17 02:59:31 1997 --- src/sys/sys/sysproto.h Sat Feb 1 04:49:31 1997 *************** *** 7,14 **** --- 7,18 ---- #ifndef _SYS_SYSPROTO_H_ #define _SYS_SYSPROTO_H_ + #ifndef KERNEL + #include + #endif #include + #include struct nosys_args { int dummy; *************** *** 722,727 **** --- 726,732 ---- struct rfork_args { int flags; }; + #ifdef KERNEL int nosys __P((struct proc *, struct nosys_args *, int [])); void exit __P((struct proc *, struct rexit_args *, int [])) __dead2; int fork __P((struct proc *, struct fork_args *, int [])); *************** *** 891,896 **** --- 896,902 ---- int shmget __P((struct proc *, struct shmget_args *, int [])); int minherit __P((struct proc *, struct minherit_args *, int [])); int rfork __P((struct proc *, struct rfork_args *, int [])); + #endif #ifdef COMPAT_43 *************** *** 1017,1022 **** --- 1023,1029 ---- #ifdef LFS #else #endif + #ifdef KERNEL int ocreat __P((struct proc *, struct ocreat_args *, int [])); int olseek __P((struct proc *, struct olseek_args *, int [])); int ostat __P((struct proc *, struct ostat_args *, int [])); *************** *** 1049,1054 **** --- 1056,1062 ---- int oquota __P((struct proc *, struct oquota_args *, int [])); int ogetsockname __P((struct proc *, struct getsockname_args *, int [])); int ogetdirentries __P((struct proc *, struct ogetdirentries_args *, int [])); + #endif /* !KERNEL */ #endif /* COMPAT_43 */ Index: src/sys/sys/systm.h diff -c src/sys/sys/systm.h:1.49 src/sys/sys/systm.h:1.49.2.1 *** src/sys/sys/systm.h:1.49 Tue Jan 14 17:55:48 1997 --- src/sys/sys/systm.h Sat Feb 1 04:49:32 1997 *************** *** 42,49 **** --- 42,55 ---- #ifndef _SYS_SYSTM_H_ #define _SYS_SYSTM_H_ + #ifndef KERNEL + #include + #endif #include + #include + #include + #ifdef KERNEL extern int securelevel; /* system security level (see init(8)) */ extern int cold; /* nonzero if we are doing a cold boot */ *************** *** 188,192 **** --- 194,199 ---- */ int tsleep __P((void *chan, int pri, char *wmesg, int timo)); void wakeup __P((void *chan)); + #endif #endif /* !_SYS_SYSTM_H_ */ Index: src/sys/sys/time.h diff -c src/sys/sys/time.h:1.10 src/sys/sys/time.h:1.10.2.1 *** src/sys/sys/time.h:1.10 Tue Jan 14 17:55:51 1997 --- src/sys/sys/time.h Sat Feb 1 04:49:32 1997 *************** *** 37,43 **** --- 37,45 ---- #ifndef _SYS_TIME_H_ #define _SYS_TIME_H_ + #ifndef KERNEL #include + #endif /* * Structure returned by gettimeofday(2) system call, Index: src/sys/sys/timeb.h diff -c src/sys/sys/timeb.h:1.4 src/sys/sys/timeb.h:1.4.2.1 *** src/sys/sys/timeb.h:1.4 Tue Jan 14 17:55:52 1997 --- src/sys/sys/timeb.h Sat Feb 1 04:49:32 1997 *************** *** 42,47 **** --- 42,51 ---- #ifndef _SYS_TIMEB_H_ #define _SYS_TIMEB_H_ + #ifndef KERNEL + #include + #endif + /* The ftime(2) system call structure -- deprecated. */ struct timeb { time_t time; /* seconds since the Epoch */ Index: src/sys/sys/tprintf.h diff -c src/sys/sys/tprintf.h:1.4 src/sys/sys/tprintf.h:1.4.2.1 *** src/sys/sys/tprintf.h:1.4 Tue Jan 14 17:55:54 1997 --- src/sys/sys/tprintf.h Sat Feb 1 04:49:33 1997 *************** *** 37,47 **** --- 37,52 ---- #ifndef _SYS_TPRINTF_H_ #define _SYS_TPRINTF_H_ + #include + #include + typedef struct session *tpr_t; + #ifndef KERNEL tpr_t tprintf_open __P((struct proc *)); void tprintf_close __P((tpr_t)); void tprintf __P((tpr_t, const char *fmt, ...)); + #endif #endif Index: src/sys/sys/uio.h diff -c src/sys/sys/uio.h:1.5 src/sys/sys/uio.h:1.5.2.1 *** src/sys/sys/uio.h:1.5 Tue Jan 14 17:56:01 1997 --- src/sys/sys/uio.h Sat Feb 1 04:49:33 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_UIO_H_ #define _SYS_UIO_H_ + #ifndef KERNEL + #include + #endif + /* * XXX * iov_base should be a void *. Index: src/sys/sys/un.h diff -c src/sys/sys/un.h:1.10 src/sys/sys/un.h:1.10.2.1 *** src/sys/sys/un.h:1.10 Tue Jan 14 17:56:03 1997 --- src/sys/sys/un.h Sat Feb 1 04:49:33 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_UN_H_ #define _SYS_UN_H_ + #ifndef KERNEL + #include + #endif + #ifdef KERNEL #include #endif /* KERNEL */ Index: src/sys/sys/unpcb.h diff -c src/sys/sys/unpcb.h:1.4 src/sys/sys/unpcb.h:1.4.2.1 *** src/sys/sys/unpcb.h:1.4 Tue Jan 14 17:56:05 1997 --- src/sys/sys/unpcb.h Sat Feb 1 04:49:34 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_UNPCB_H_ #define _SYS_UNPCB_H_ + #ifndef KERNEL + #include + #endif + /* * Protocol control block for an active * instance of a UNIX internal protocol. Index: src/sys/sys/user.h diff -c src/sys/sys/user.h:1.10 src/sys/sys/user.h:1.10.2.1 *** src/sys/sys/user.h:1.10 Tue Jan 14 17:56:06 1997 --- src/sys/sys/user.h Sat Feb 1 04:49:34 1997 *************** *** 37,42 **** --- 37,45 ---- #ifndef _SYS_USER_H_ #define _SYS_USER_H_ + #ifndef KERNEL + #include + #endif #include #ifndef KERNEL /* stuff that *used* to be included by user.h, or is now needed */ Index: src/sys/sys/vnode.h diff -c src/sys/sys/vnode.h:1.39 src/sys/sys/vnode.h:1.39.2.1 *** src/sys/sys/vnode.h:1.39 Fri Jan 17 00:16:10 1997 --- src/sys/sys/vnode.h Sat Feb 1 04:49:35 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_VNODE_H_ #define _SYS_VNODE_H_ + #ifndef KERNEL + #include + #endif + #include #include /* Index: src/sys/sys/vsio.h diff -c src/sys/sys/vsio.h:1.5 src/sys/sys/vsio.h:1.5.2.1 *** src/sys/sys/vsio.h:1.5 Tue Jan 14 17:56:13 1997 --- src/sys/sys/vsio.h Sat Feb 1 04:49:35 1997 *************** *** 37,42 **** --- 37,46 ---- #ifndef _SYS_VSIO_H_ #define _SYS_VSIO_H_ + #ifndef KERNEL + #include + #endif + /**************************************************************************** * * * Copyright (c) 1983, 1984 by * >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 10:20:07 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA04885 for bugs-outgoing; Fri, 31 Jan 1997 10:20:07 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA04877; Fri, 31 Jan 1997 10:20:04 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 10:20:04 -0800 (PST) Resent-Message-Id: <199701311820.KAA04877@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, proff@iq.org Received: from profane.iq.org (profane.iq.org [203.4.184.217]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id KAA04288; Fri, 31 Jan 1997 10:09:54 -0800 (PST) Received: (from proff@localhost) by profane.iq.org (8.8.4/8.8.2) id FAA02678; Sat, 1 Feb 1997 05:11:20 +1100 (EST) Message-Id: <199701311811.FAA02678@profane.iq.org> Date: Sat, 1 Feb 1997 05:11:20 +1100 (EST) From: Julian Assange Reply-To: proff@iq.org To: FreeBSD-gnats-submit@freebsd.org, dyson@freebsd.org X-Send-Pr-Version: 3.2 Subject: misc/2629: vnode_if.h has no protection against multiple reference Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2629 >Category: misc >Synopsis: vnode_if.h has no protection against multiple reference >Confidential: yes >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 10:20:01 PST 1997 >Last-Modified: >Originator: Julian Assange >Organization: >Release: FreeBSD 3.0-CURRENT i386 >Environment: >Description: vnode_if.h is generated during the make phase by sys/kern/vnode_if.sh. due to the lack of #ifdef _VNODE_IF_H etc, nasty things happen if vnode_if.h is multiply referenced. >How-To-Repeat: >Fix: cd to sys/kern and apply patch. re-config kernel. Index: vnode_if.sh =================================================================== RCS file: /usr/src/cvs/src/sys/kern/vnode_if.sh,v retrieving revision 1.10 diff -u -r1.10 vnode_if.sh --- vnode_if.sh 1997/01/14 06:44:32 1.10 +++ vnode_if.sh 1997/01/31 16:33:57 @@ -70,6 +70,9 @@ * Created from @(#)vnode_if.sh 8.1 (Berkeley) 6/10/93 */ +#ifndef _VNODE_IF_H +#define _VNODE_IF_H + extern struct vnodeop_desc vop_default_desc; END_OF_LEADING_COMMENT @@ -397,6 +400,7 @@ a.a_bp = bp; return (VCALL((bp)->b_vp, VOFFSET(vop_bwrite), &a)); } +#endif /* !_VNODE_IF_H */ END_OF_SPECIAL_CASES cat << END_OF_SPECIAL_CASES >> $CFILE >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 11:20:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA07334 for bugs-outgoing; Fri, 31 Jan 1997 11:20:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA07313; Fri, 31 Jan 1997 11:20:02 -0800 (PST) Date: Fri, 31 Jan 1997 11:20:02 -0800 (PST) Message-Id: <199701311920.LAA07313@freefall.freebsd.org> To: freebsd-bugs Cc: From: Garrett Wollman Subject: kern/2628: code clean up of sys/sys Reply-To: Garrett Wollman Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR kern/2628; it has been noted by GNATS. From: Garrett Wollman To: proff@iq.org Cc: FreeBSD-gnats-submit@freebsd.org, dyson@freebsd.org Subject: kern/2628: code clean up of sys/sys Date: Fri, 31 Jan 1997 14:12:37 -0500 >> Number: 2628 >> Category: kern >> Synopsis: code clean up of sys/sys Fair warning: these patches are likely to prove extremely controversial. BSD tradition has always deprecated nested #includes, and we have worked hard in recent times to eliminate as many of them as we could. -GAWollman -- Garrett A. Wollman | O Siem / We are all family / O Siem / We're all the same wollman@lcs.mit.edu | O Siem / The fires of freedom Opinions not those of| Dance in the burning flame MIT, LCS, ANA, or NSA| - Susan Aglukark and Chad Irschick From owner-freebsd-bugs Fri Jan 31 11:30:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA07681 for bugs-outgoing; Fri, 31 Jan 1997 11:30:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA07674; Fri, 31 Jan 1997 11:30:02 -0800 (PST) Date: Fri, 31 Jan 1997 11:30:02 -0800 (PST) Message-Id: <199701311930.LAA07674@freefall.freebsd.org> To: freebsd-bugs Cc: From: Bruce Evans Subject: Re: misc/2629: vnode_if.h has no protection against multiple reference Reply-To: Bruce Evans Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR misc/2629; it has been noted by GNATS. From: Bruce Evans To: dyson@freebsd.org, FreeBSD-gnats-submit@freebsd.org, proff@iq.org Cc: Subject: Re: misc/2629: vnode_if.h has no protection against multiple reference Date: Sat, 1 Feb 1997 06:18:26 +1100 >vnode_if.h is generated during the make phase by sys/kern/vnode_if.sh. due to the lack >of #ifdef _VNODE_IF_H etc, nasty things happen if vnode_if.h is multiply referenced. Good things. It doesn't work. This tells you that you included vnode_if.h from a bogus place (from somewhere other than ). Please don't use long lines. Bruce From owner-freebsd-bugs Fri Jan 31 11:50:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA08751 for bugs-outgoing; Fri, 31 Jan 1997 11:50:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id LAA08745; Fri, 31 Jan 1997 11:50:01 -0800 (PST) Date: Fri, 31 Jan 1997 11:50:01 -0800 (PST) Message-Id: <199701311950.LAA08745@freefall.freebsd.org> To: freebsd-bugs Cc: From: Bruce Evans Subject: Re: kern/2628: code clean up of sys/sys Reply-To: Bruce Evans Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR kern/2628; it has been noted by GNATS. From: Bruce Evans To: dyson@freebsd.org, FreeBSD-gnats-submit@freebsd.org, proff@iq.org Cc: Subject: Re: kern/2628: code clean up of sys/sys Date: Sat, 1 Feb 1997 06:37:11 +1100 Most of the #include changes are wrong. Most of the headers are only used in the kernel. Kernel sources follow the convention of including or before any other header. Bruce From owner-freebsd-bugs Fri Jan 31 12:55:53 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA11857 for bugs-outgoing; Fri, 31 Jan 1997 12:55:53 -0800 (PST) Received: from alpo.whistle.com (alpo.whistle.com [207.76.204.38]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id MAA11851 for ; Fri, 31 Jan 1997 12:55:50 -0800 (PST) Received: from current1.whistle.com (current1.whistle.com [207.76.205.22]) by alpo.whistle.com (8.8.5/8.8.4) with SMTP id MAA24499; Fri, 31 Jan 1997 12:35:02 -0800 (PST) Message-ID: <32F25712.2781E494@whistle.com> Date: Fri, 31 Jan 1997 12:33:22 -0800 From: Julian Elischer Organization: Whistle Communications X-Mailer: Mozilla 3.0Gold (X11; I; FreeBSD 2.2-CURRENT i386) MIME-Version: 1.0 To: Garrett Wollman CC: freebsd-bugs@freefall.freebsd.org Subject: Re: kern/2628: code clean up of sys/sys References: <199701311920.LAA07313@freefall.freebsd.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Garrett Wollman wrote: > >> Number: 2628 > >> Category: kern > >> Synopsis: code clean up of sys/sys > > Fair warning: these patches are likely to prove extremely > controversial. BSD tradition has always deprecated nested #includes, > and we have worked hard in recent times to eliminate as many of them > as we could. > that's what I was going to say.. I'll defer to Bruce on these suggestions.. he seems to be the one doing most of this stuff. From owner-freebsd-bugs Fri Jan 31 15:50:05 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id PAA19874 for bugs-outgoing; Fri, 31 Jan 1997 15:50:05 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id PAA19868; Fri, 31 Jan 1997 15:50:03 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 15:50:03 -0800 (PST) Resent-Message-Id: <199701312350.PAA19868@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, arnej@imf.unit.no Received: from who.cdrom.com (who.cdrom.com [204.216.27.3]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id PAA19715 for ; Fri, 31 Jan 1997 15:47:01 -0800 (PST) Received: from romberg.imf.unit.no (romberg.imf.unit.no [129.241.15.150]) by who.cdrom.com (8.7.5/8.6.11) with ESMTP id PAA06854 for ; Fri, 31 Jan 1997 15:46:59 -0800 (PST) Received: from frida.imf.unit.no (frida.imf.unit.no [129.241.15.136]) by romberg.imf.unit.no (8.8.3/8.7.3) with ESMTP id AAA02427; Sat, 1 Feb 1997 00:42:47 +0100 (MET) Received: (from arnej@localhost) by frida.imf.unit.no (8.8.4/8.8.4) id AAA07077; Sat, 1 Feb 1997 00:42:46 +0100 (CET) Message-Id: <199701312342.AAA07077@frida.imf.unit.no> Date: Sat, 1 Feb 1997 00:42:46 +0100 (CET) From: Arne Henrik Juul Reply-To: arnej@imf.unit.no To: FreeBSD-gnats-submit@freebsd.org Cc: arnej@imf.unit.no, jarle@runit.sintef.no, he@runit.sintef.no, tegge@idt.unit.no X-Send-Pr-Version: 3.2 Subject: bin/2630: xargs does excessive and inconsistent argument splitting Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2630 >Category: bin >Synopsis: xargs does excessive and inconsistent argument splitting >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 15:50:02 PST 1997 >Last-Modified: >Originator: Arne Henrik Juul >Organization: Norwegian University of Technology and Science >Release: FreeBSD 2.2-GAMMA i386 >Environment: This PR probably applies to most *BSD versions. >Description: I was surprised when some command-line usage of xargs gave me trouble because it generated an empty argument. Further investigation shows that the BSD version of xargs (in net- and freebsd) splits the input in a very different way from everyone else, and it's also a bit inconsistent: Leading blanks, or any double blanks will make xargs generate empty arguments, but a trailing blank will not. I think it should be modified to be more like what everybody else does, and my expections were. At the very least the behaviour should be more consistent. The xargs specification is very loose and informal, but spec1170 says arguments should be 'separated by non-quoted blanks', which I read to support (or at least allow) my preferred behaviour. Even worse is that quoted empty strings will be treated the same way: A trailing "" string will be ignored. >How-To-Repeat: Run these commands (preferrably on different xargs implementations). cat > echoargs << 'eof' #!/bin/sh for x do echo "arg: '$x'"; done eof chmod +x echoargs echo xargs is: which xargs echo test leading, embedded double, and trailing space echo ' 1 2 3 ' | xargs ./echoargs echo test leading, embedded, and trailing quoted empty string echo '"" 2 "" 4 ""' | xargs ./echoargs >Fix: This is a simple patch to make xargs behave like I think it should. It is tested, but not very much. It should be noted that this patch has an analogous effect on leading and double NULLs in the -0 case. The -0 case can be argued both ways, I guess, but I haven't seen anything close to a spec for it, so I left it at this. Index: xargs.c =================================================================== RCS file: /usr/cvs/src/usr.bin/xargs/xargs.c,v retrieving revision 1.3 diff -u -r1.3 xargs.c --- xargs.c 1996/11/01 18:46:05 1.3 +++ xargs.c 1997/01/31 23:03:09 @@ -67,7 +67,7 @@ { register int ch; register char *p, *bbp, *ebp, **bxp, **exp, **xp; - int cnt, indouble, insingle, nargs, nflag, nline, xflag; + int cnt, indouble, insingle, nargs, nflag, nline, xflag, wasquoted; char **av, *argp, **ep = env; /* @@ -172,12 +172,6 @@ if (p == bbp) exit(rval); - /* Nothing since end of last argument. */ - if (argp == p) { - *xp = NULL; - run(av); - exit(rval); - } goto arg1; case ' ': case '\t': @@ -193,24 +187,23 @@ if (zflag) goto addch; - /* Empty lines are skipped. */ - if (argp == p) - continue; - /* Quotes do not escape newlines. */ arg1: if (insingle || indouble) err("unterminated quote"); - -arg2: *p = '\0'; - *xp++ = argp; +arg2: + /* Do not make empty args unless they are quoted */ + if (argp != p || wasquoted) { + *p++ = '\0'; + *xp++ = argp; + } /* * If max'd out on args or buffer, or reached EOF, * run the command. If xflag and max'd out on buffer * but not on args, object. */ - if (xp == exp || p == ebp || ch == EOF) { - if (xflag && xp != exp && p == ebp) + if (xp == exp || p > ebp || ch == EOF) { + if (xflag && xp != exp && p > ebp) err("insufficient space for arguments"); *xp = NULL; run(av); @@ -218,19 +211,21 @@ exit(rval); p = bbp; xp = bxp; - } else - ++p; + } argp = p; + wasquoted = 0; break; case '\'': if (indouble || zflag) goto addch; insingle = !insingle; + wasquoted = 1; break; case '"': if (insingle || zflag) goto addch; indouble = !indouble; + wasquoted = 1; break; case '\\': if (zflag) >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 16:10:09 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA21547 for bugs-outgoing; Fri, 31 Jan 1997 16:10:09 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA21534; Fri, 31 Jan 1997 16:10:04 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 16:10:04 -0800 (PST) Resent-Message-Id: <199702010010.QAA21534@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, arnej@imf.unit.no Received: from romberg.imf.unit.no (0@romberg.imf.unit.no [129.241.15.150]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id QAA21318 for ; Fri, 31 Jan 1997 16:06:47 -0800 (PST) Received: from frida.imf.unit.no (frida.imf.unit.no [129.241.15.136]) by romberg.imf.unit.no (8.8.3/8.7.3) with ESMTP id BAA03799; Sat, 1 Feb 1997 01:06:38 +0100 (MET) Received: (from arnej@localhost) by frida.imf.unit.no (8.8.4/8.8.4) id BAA09221; Sat, 1 Feb 1997 01:06:38 +0100 (CET) Message-Id: <199702010006.BAA09221@frida.imf.unit.no> Date: Sat, 1 Feb 1997 01:06:38 +0100 (CET) From: Arne Henrik Juul Reply-To: arnej@imf.unit.no To: FreeBSD-gnats-submit@freebsd.org Cc: arnej@imf.unit.no, jarle@runit.sintef.no, he@runit.sintef.no, tegge@idt.unit.no X-Send-Pr-Version: 3.2 Subject: bin/2631: kill interprets empty arg as PID 0 Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2631 >Category: bin >Synopsis: kill interprets empty arg as PID 0 >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 16:10:02 PST 1997 >Last-Modified: >Originator: Arne Henrik Juul >Organization: Norwegian University of Technology and Science >Release: FreeBSD 2.2-GAMMA i386 >Environment: This applies to /bin/kill, not the csh kill builtin. >Description: When /bin/kill is given an empty argument, this is converted to PID 0, with unpleasant effects on kill's process group. >How-To-Repeat: /bin/kill -CONT '' Note that you should have got an error. >Fix: A simple typo of !*argv where !**argv was clearly meant. There was another check of the same type, but that one was clearly unneccessary and I've just removed it. Index: kill.c =================================================================== RCS file: /usr/cvs/src/bin/kill/kill.c,v retrieving revision 1.3 diff -u -r1.3 kill.c --- kill.c 1995/03/05 21:52:41 1.3 +++ kill.c 1997/01/31 23:50:26 @@ -87,7 +87,7 @@ nosig(*argv); } else if (isdigit(**argv)) { numsig = strtol(*argv, &ep, 10); - if (!*argv || *ep) + if (*ep) errx(1, "illegal signal number: %s", *argv); if (numsig < 0 || numsig > NSIG) nosig(*argv); @@ -101,7 +101,7 @@ for (errors = 0; *argv; ++argv) { pid = strtol(*argv, &ep, 10); - if (!*argv || *ep) { + if (!**argv || *ep) { warnx("illegal process id: %s", *argv); errors = 1; } else if (kill(pid, numsig) == -1) { >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 17:50:04 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA27969 for bugs-outgoing; Fri, 31 Jan 1997 17:50:04 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id RAA27963; Fri, 31 Jan 1997 17:50:02 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 17:50:02 -0800 (PST) Resent-Message-Id: <199702010150.RAA27963@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, Received:(from nobody@localhost) by.freefall.freebsd.org.id.RAA27655;Fri; (8.8.5/8.8.5);, 31 Jan 1997 17:42:31.-0800 (PST) Message-Id: <199702010142.RAA27655@freefall.freebsd.org> Date: Fri, 31 Jan 1997 17:42:31 -0800 (PST) From: epv@panix.com To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: kern/2632: enabling psm mouse causes keyboard to not work on Toshiba 115CS laptop Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2632 >Category: kern >Synopsis: enabling psm mouse causes keyboard to not work on Toshiba 115CS laptop >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 17:50:01 PST 1997 >Last-Modified: >Originator: Eric Volpe >Organization: >Release: 2.2-BETA >Environment: FreeBSD lemur.snysel.com 2.20-BETA_A #1 >Description: if psm mouse driver is enabled (either from boot floppy or a kernel built on the machine from 2.2-BETA source) the kernel correctly identifies the mouse when booting, but does not respond to the keyboard at all. If the psm device is disabled in userconfig or not compiled into the kernel, the keyboard responds properly. >How-To-Repeat: boot boot floppy on toshiba laptop. enter userconfig. disable microsoft busmouse driver (mse) enable ps/2 mouse support (psm) try to use keyboard >Fix: unknown >Audit-Trail: >Unformatted: From owner-freebsd-bugs Fri Jan 31 18:00:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id SAA28353 for bugs-outgoing; Fri, 31 Jan 1997 18:00:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id SAA28347; Fri, 31 Jan 1997 18:00:02 -0800 (PST) Resent-Date: Fri, 31 Jan 1997 18:00:02 -0800 (PST) Resent-Message-Id: <199702010200.SAA28347@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, shimon@i-connect.net Received: from sendero.i-connect.net ([206.190.144.100]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id RAA28158 for ; Fri, 31 Jan 1997 17:55:00 -0800 (PST) Received: (from shimon@localhost) by sendero.i-connect.net (8.8.5/8.8.4) id SAA16247; Fri, 31 Jan 1997 18:54:38 -0800 (PST) Message-Id: <199702010254.SAA16247@sendero.i-connect.net> Date: Fri, 31 Jan 1997 18:54:38 -0800 (PST) From: shimon@i-connect.net Reply-To: shimon@i-connect.net To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2633: fsck -p in /etc/rc fails with cannot alloc nnnn bytes for lncntp Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2633 >Category: bin >Synopsis: fsck -p in /etc/rc fails with cannot alloc nnnn bytes for lncntp >Confidential: yes >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 31 18:00:01 PST 1997 >Last-Modified: >Originator: Simon Shapiro >Organization: Atlas Telecom >Release: FreeBSD 2.2-BETA_A i386 >Environment: P6-200, 64MB RAM, 32GB disk on AHA-2940w >Description: When booting, fsck -p (in /etc/rc) fails with ``cannot alloc nnnn bytes for lncntp'' error, thus makes it impossible to boot into init level 2. This happens consistently for file systems which are about 4GB large. Does not seem to happen on smaller ones. Reports for more sever behavior under SMP kernels. >How-To-Repeat: Create a file system $GB or more in size Boot the system and enjoy. >Fix: Workaround: Comment out the fsck -p in /etc/rc and pray. >Audit-Trail: >Unformatted: From owner-freebsd-bugs Sat Feb 1 04:21:42 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id EAA16361 for bugs-outgoing; Sat, 1 Feb 1997 04:21:42 -0800 (PST) Received: from sax.sax.de (sax.sax.de [193.175.26.33]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id EAA16355 for ; Sat, 1 Feb 1997 04:21:39 -0800 (PST) Received: (from uucp@localhost) by sax.sax.de (8.6.12/8.6.12-s1) with UUCP id NAA03532; Sat, 1 Feb 1997 13:21:26 +0100 Received: (from j@localhost) by uriah.heep.sax.de (8.8.5/8.6.9) id NAA00460; Sat, 1 Feb 1997 13:20:07 +0100 (MET) Message-ID: Date: Sat, 1 Feb 1997 13:20:06 +0100 From: j@uriah.heep.sax.de (J Wunsch) To: okkun@mickey.ai.kyutech.ac.jp (Masaru Okumura) Cc: freebsd-bugs@freefall.freebsd.org Subject: Re: i386/2395: 2.2-BETA installation problem on ICL ErgoPro s450 References: <199701311620.IAA28973@freefall.freebsd.org> X-Mailer: Mutt 0.55-PL10 Mime-Version: 1.0 X-Phone: +49-351-2012 669 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) In-Reply-To: <199701311620.IAA28973@freefall.freebsd.org>; from Masaru Okumura on Jan 31, 1997 08:20:02 -0800 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk As Masaru Okumura wrote: > Same problem here on my notebook. > I made a try to swich the second screen (Alt-F2), > but PC had completely freezed and no message appeared. > Now, I'm using the 2.1.6-RELEASE, and I had no trouble in this version. That doesn't mean you've got the same reason of the problem however. Either, something loops in an interrupt handler, or your disk is jamming. Btw., you can boot with -v to see more messages. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Sat Feb 1 05:00:02 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA19694 for bugs-outgoing; Sat, 1 Feb 1997 05:00:02 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA19688; Sat, 1 Feb 1997 05:00:01 -0800 (PST) Date: Sat, 1 Feb 1997 05:00:01 -0800 (PST) Message-Id: <199702011300.FAA19688@freefall.freebsd.org> To: freebsd-bugs Cc: From: j@uriah.heep.sax.de (J Wunsch) Subject: Re: bin/2627: Can't shutdown cleanly (1 filesystem?) Reply-To: j@uriah.heep.sax.de (J Wunsch) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2627; it has been noted by GNATS. From: j@uriah.heep.sax.de (J Wunsch) To: gilbertd@cs.man.ac.uk Cc: freebsd-gnats-submit@freebsd.org Subject: Re: bin/2627: Can't shutdown cleanly (1 filesystem?) Date: Sat, 1 Feb 1997 13:33:49 +0100 As gilbertd@cs.man.ac.uk wrote: > When ever I shutdown (using shutdown -h for example) the filesystems > have fsck problems the next time round. Normally there is just one error > at the end of the fsck (I can't remember which - perhaps > a summary info?) - but sometimes it just doesn't > cleanly unmount it. > > I'm wondering if the problem is due to the fact that I have a combined > /,/var,/usr? Certainly not. However, what kind of filesystem is it? ufs, or ext2fs? -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Sat Feb 1 05:24:16 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA20458 for bugs-outgoing; Sat, 1 Feb 1997 05:24:16 -0800 (PST) Received: from mickey.ai.kyutech.ac.jp (mickey.ai.kyutech.ac.jp [131.206.1.21]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id FAA20440 for ; Sat, 1 Feb 1997 05:23:54 -0800 (PST) Received: from [131.206.21.120] (mac-sken1.mickey.ai.kyutech.ac.jp [131.206.21.120]) by mickey.ai.kyutech.ac.jp (8.8.5/3.3W9) with SMTP id WAA08320; Sat, 1 Feb 1997 22:22:50 +0900 (JST) Message-Id: <199702011322.WAA08320@mickey.ai.kyutech.ac.jp> Date: Sat, 1 Feb 1997 22:28:01 +0900 To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) From: okkun@mickey.ai.kyutech.ac.jp (Masaru Okumura) Subject: Re: i386/2395: 2.2-BETA installation problem on ICL ErgoPro s450 Cc: okkun@mickey.ai.kyutech.ac.jp (Masaru Okumura), freebsd-bugs@freefall.freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=iso-2022-jp X-Mailer: Eudora-J(1.3.8.5-J13) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Thank you for answering so quickly, J Wunsch. >As Masaru Okumura wrote: >> Same problem here on my notebook. > >> I made a try to swich the second screen (Alt-F2), >> but PC had completely freezed and no message appeared. >> Now, I'm using the 2.1.6-RELEASE, and I had no trouble in this version. > >That doesn't mean you've got the same reason of the problem however. >Either, something loops in an interrupt handler, or your disk is >jamming. >Btw., you can boot with -v to see more messages. I tried your advice, but can't boot with -v option. The boot process hanged after "apm0: disabled, not probed.", and all key inputs refused. Please, tell me other advice, if you know on this problem. I'll try soon. Thank you. -- Masaru Okumura (Kyushu Institute of Tech.) E-mail: okkun@mickey.ai.kyutech.ac.jp -- Masaru Okumura (Kyushu Institute of Tech.) E-mail: okkun@mickey.ai.kyutech.ac.jp From owner-freebsd-bugs Sat Feb 1 05:30:05 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA20735 for bugs-outgoing; Sat, 1 Feb 1997 05:30:05 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA20698; Sat, 1 Feb 1997 05:30:02 -0800 (PST) Date: Sat, 1 Feb 1997 05:30:02 -0800 (PST) Message-Id: <199702011330.FAA20698@freefall.freebsd.org> To: freebsd-bugs Cc: From: j@uriah.heep.sax.de (J Wunsch) Subject: Re: bin/2633: fsck -p in /etc/rc fails with cannot alloc nnnn bytes for lncntp Reply-To: j@uriah.heep.sax.de (J Wunsch) Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR bin/2633; it has been noted by GNATS. From: j@uriah.heep.sax.de (J Wunsch) To: shimon@i-Connect.Net Cc: FreeBSD-gnats-submit@freebsd.org Subject: Re: bin/2633: fsck -p in /etc/rc fails with cannot alloc nnnn bytes for lncntp Date: Sat, 1 Feb 1997 14:13:09 +0100 As shimon@i-Connect.Net wrote: > When booting, fsck -p (in /etc/rc) fails with ``cannot alloc > nnnn bytes for lncntp'' error, thus makes it impossible to boot into > init level 2. This happens consistently for file systems which are > about 4GB large. Does the error go away if you enable swapping before? -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Sat Feb 1 06:22:19 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id GAA23772 for bugs-outgoing; Sat, 1 Feb 1997 06:22:19 -0800 (PST) Received: from sax.sax.de (sax.sax.de [193.175.26.33]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id GAA23767 for ; Sat, 1 Feb 1997 06:22:16 -0800 (PST) Received: (from uucp@localhost) by sax.sax.de (8.6.12/8.6.12-s1) with UUCP id PAA05875; Sat, 1 Feb 1997 15:20:30 +0100 Received: (from j@localhost) by uriah.heep.sax.de (8.8.5/8.6.9) id OAA23899; Sat, 1 Feb 1997 14:57:25 +0100 (MET) Message-ID: Date: Sat, 1 Feb 1997 14:57:25 +0100 From: j@uriah.heep.sax.de (J Wunsch) To: okkun@mickey.ai.kyutech.ac.jp (Masaru Okumura) Cc: freebsd-bugs@freefall.freebsd.org Subject: Re: i386/2395: 2.2-BETA installation problem on ICL ErgoPro s450 References: <199702011322.WAA08320@mickey.ai.kyutech.ac.jp> X-Mailer: Mutt 0.55-PL10 Mime-Version: 1.0 X-Phone: +49-351-2012 669 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) In-Reply-To: <199702011322.WAA08320@mickey.ai.kyutech.ac.jp>; from Masaru Okumura on Feb 1, 1997 22:28:01 +0900 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk As Masaru Okumura wrote: > I tried your advice, but can't boot with -v option. > The boot process hanged after "apm0: disabled, not probed.", > and all key inputs refused. No, you gotta type the -v at the Boot: prompt already. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) From owner-freebsd-bugs Sat Feb 1 09:07:33 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA00106 for bugs-outgoing; Sat, 1 Feb 1997 09:07:33 -0800 (PST) Received: (from jhay@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id JAA29981; Sat, 1 Feb 1997 09:07:24 -0800 (PST) Date: Sat, 1 Feb 1997 09:07:24 -0800 (PST) From: John Hay Message-Id: <199702011707.JAA29981@freefall.freebsd.org> To: jhay@angel.cids.org.za, jhay, freebsd-bugs Subject: Re: bin/2595 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: tzsetup don't get all zones right eg. South Africa State-Changed-From-To: open-closed State-Changed-By: jhay State-Changed-When: Sat Feb 1 09:04:52 PST 1997 State-Changed-Why: Fixed in v1.5 of tzsetup.c. From owner-freebsd-bugs Sat Feb 1 10:00:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA02210 for bugs-outgoing; Sat, 1 Feb 1997 10:00:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id KAA02204; Sat, 1 Feb 1997 10:00:02 -0800 (PST) Resent-Date: Sat, 1 Feb 1997 10:00:02 -0800 (PST) Resent-Message-Id: <199702011800.KAA02204@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, proff@iq.org Received: from profane.iq.org (profane.iq.org [203.4.184.217]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id JAA02095; Sat, 1 Feb 1997 09:56:06 -0800 (PST) Received: (from proff@localhost) by profane.iq.org (8.8.4/8.8.2) id EAA07388; Sun, 2 Feb 1997 04:57:29 +1100 (EST) Message-Id: <199702011757.EAA07388@profane.iq.org> Date: Sun, 2 Feb 1997 04:57:29 +1100 (EST) From: Julian Assange Reply-To: proff@iq.org To: FreeBSD-gnats-submit@freebsd.org, rms@gnu.ai.mit.edu, dyson@freebsd.org X-Send-Pr-Version: 3.2 Subject: bin/2634: rtld patches for easy creation of chroot enviroments Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2634 >Category: bin >Synopsis: rtld patches for easy creation of chroot enviroments >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sat Feb 1 10:00:01 PST 1997 >Last-Modified: >Originator: Julian Assange >Organization: >Release: FreeBSD 3.0-CURRENT i386 >Environment: >Description: [note to rms: can you bounce this to whoever is responsible for gnu rtld? my distribution doesn't have any contact details :(] Creation of chrooted() enviroments is normally quite a difficult affair and impossible to do securely without source modification of the program to be executed [otherwise you have executeables or shared library images in the chrooted() area]. The following patches allow very easy creation of chrooted areas, without source modification, or unsafe static linking or copying of library images. e.g # export LD_CHROOT=/usr/local/chroot/named # named >How-To-Repeat: >Fix: --- src/gnu/usr.bin/ld/rtld/rtld.c~ Sun Feb 2 04:29:16 1997 +++ src/gnu/usr.bin/ld/rtld/rtld.c Sun Feb 2 04:21:36 1997 @@ -194,6 +194,7 @@ static char *ld_tracing; static char *ld_suppress_warnings; static char *ld_warn_non_pure_code; +static char *ld_chroot; struct so_map *link_map_head; struct so_map *link_map_tail; @@ -411,6 +412,13 @@ (void)close(crtp->crt_ldfd); anon_close(); + if (ld_chroot) { + if (chdir(ld_chroot) !=0 || + chroot(ld_chroot) !=0 || + chdir("/") !=0) + err(1, "LD_CHROOT(%s) failed", ld_chroot); + } + return LDSO_VERSION_HAS_DLEXIT; } @@ -2037,6 +2045,7 @@ L("LD_BIND_NOW=", 0, &ld_bind_now) L("LD_SUPPRESS_WARNINGS=", 0, &ld_suppress_warnings) L("LD_WARN_NON_PURE_CODE=", 0, &ld_warn_non_pure_code) + L("LD_CHROOT=", 1, &ld_chroot) { NULL, 0, NULL } }; #undef L --- src/gnu/usr.bin/ld/rtld/rtld.1~ Sun Feb 2 04:29:10 1997 +++ src/gnu/usr.bin/ld/rtld/rtld.1 Sun Feb 2 04:24:51 1997 @@ -117,6 +117,9 @@ the directories specified by LD_LIBRARY_PATH will be searched first followed by the set of built-in standard directories. This is ignored for set-user-ID and set-group-ID programs. +.It Ev LD_CHROOT +Directory to chroot() to immediately after linking. +This is ignored for set-user-ID and set-group-ID programs. .It Ev LD_BIND_NOW When set to a nonempty string, causes .Nm @@ -219,6 +222,7 @@ .Sh SEE ALSO .Xr ld 1 , .Xr link 5 , -.Xr ldconfig 8 +.Xr ldconfig 8 , +.Xr chroot 2 .Sh HISTORY The shared library model employed first appeared in SunOS 4.0 >Audit-Trail: >Unformatted: From owner-freebsd-bugs Sat Feb 1 16:00:48 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA16397 for bugs-outgoing; Sat, 1 Feb 1997 16:00:48 -0800 (PST) Received: (from mpp@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA16371; Sat, 1 Feb 1997 16:00:43 -0800 (PST) Date: Sat, 1 Feb 1997 16:00:43 -0800 (PST) From: Mike Pritchard Message-Id: <199702020000.QAA16371@freefall.freebsd.org> To: mpp, mpp, freebsd-bugs Subject: Re: kern/876 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: NFS allows bogus accesses to cached data Responsible-Changed-From-To: mpp->freebsd-bugs Responsible-Changed-By: mpp Responsible-Changed-When: Sat Feb 1 16:00:08 PST 1997 Responsible-Changed-Why: I'm not going to get to this anytime soon, so it is up for grabs. From owner-freebsd-bugs Sat Feb 1 16:20:08 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA18684 for bugs-outgoing; Sat, 1 Feb 1997 16:20:08 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id QAA18670; Sat, 1 Feb 1997 16:20:04 -0800 (PST) Resent-Date: Sat, 1 Feb 1997 16:20:04 -0800 (PST) Resent-Message-Id: <199702020020.QAA18670@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, dwmalone@maths.tcd.ie Received: from salmon.maths.tcd.ie (mmdf@salmon.maths.tcd.ie [134.226.81.11]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id QAA18596; Sat, 1 Feb 1997 16:19:22 -0800 (PST) Received: from graves.maths.tcd.ie by salmon.maths.tcd.ie with SMTP id aa22105; 2 Feb 97 0:19 +0000 Message-Id: <9702020019.aa00900@graves.maths.tcd.ie> Date: Sun, 2 Feb 97 0:19:13 +0000 From: dwmalone@maths.tcd.ie Reply-To: dwmalone@maths.tcd.ie To: FreeBSD-gnats-submit@freebsd.org Cc: dwmalone@maths.tcd.ie, iedowse@maths.tcd.ie, mpp@freebsd.org X-Send-Pr-Version: 3.2 Subject: kern/2635: NFS cache and access permissions. Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 2635 >Category: kern >Synopsis: NFS cache doesn't check execute permission on directories >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sat Feb 1 16:20:01 PST 1997 >Last-Modified: >Originator: David Malone >Organization: School of Maths, Trinity College, Dublin. >Release: FreeBSD 2.2-GAMMA i386 >Environment: FreeBSD-2.2-GAMMA and FreeBSD-stable NFS clients. Probably current too ( based on a quick look at nfs_vnops.c ). >Description: This bug is similar, but NOT the same as kern/876. Suppose a user has permission to read the file /a/b/c, but should not be able to because the directory /a/b is not executable by them. If /a/b is in the NFS client cache it will allow them to read the file, as the cache code does't check for executability of the containing directory. This came to note because the web server was stating a file as root, and then serving it as nobody, when it should not have been able to. If you have NFS mounted home directories it means users stand a good chance of being able to view one anothers files. For some reason lstat'ing a file in the directory in question seems to invalidate the cache. >How-To-Repeat: [As nobody] 18:37:salmon 29% cat ~dwmalone/.mail/incoming_mail cat: /u2/system/dwmalone/.mail/incoming_mail: Permission denied [As dwmalone] salmon 7% ls -ld incoming_mail . -rw-r--r-- 1 dwmalone system 32888 Feb 1 17:56 incoming_mail drws------ 18 dwmalone system 1024 Feb 1 16:11 . salmon 8% cat incoming_mail blah blah blah [As nobody] 19:38:salmon 33% cat ~dwmalone/.mail/incoming_mail blah blah blah [As dwmalone] salmon 9% perl -e 'lstat("incoming_mail");' [As nobody] 19:38:salmon 33% cat ~dwmalone/.mail/incoming_mail cat: /u2/system/dwmalone/.mail/incoming_mail: Permission denied >Fix: In sys/nfs/nfs_vops.c we found that nfs_lookup does not check for executability of a directory. Presumably this is OK if you are not looking in the NFS attribute cache, as the NFS server should do the check for you. We made the following patch, following sys/ufs/ufs/ufs_lookup.c as a guideline. It seems to work ( fingers crossed ), and only does the check if we are looking in the cache. On the other hand, there may be locking or stuff to be done we don't know about. *** /FreeBSD/FreeBSD-2.2/src/sys/nfs/nfs_vnops.c Wed Jan 8 23:50:18 1997 --- ./nfs_vnops.c Sat Feb 1 23:10:53 1997 *************** *** 840,845 **** --- 840,849 ---- if ((error = cache_lookup(dvp, vpp, cnp)) && error != ENOENT) { struct vattr vattr; int vpid; + + if (error=VOP_ACCESS(dvp,VEXEC,cnp->cn_cred,cnp->cn_proc)) { + return (error); + } newvp = *vpp; vpid = newvp->v_id; >Audit-Trail: >Unformatted: From owner-freebsd-bugs Sat Feb 1 21:20:03 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id VAA01099 for bugs-outgoing; Sat, 1 Feb 1997 21:20:03 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id VAA01093; Sat, 1 Feb 1997 21:20:02 -0800 (PST) Date: Sat, 1 Feb 1997 21:20:02 -0800 (PST) Message-Id: <199702020520.VAA01093@freefall.freebsd.org> To: freebsd-bugs Cc: From: Kazutaka YOKOTA Subject: Re: kern/2632: enabling psm mouse causes keyboard to not work on Toshiba 115CS laptop Reply-To: Kazutaka YOKOTA Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR kern/2632; it has been noted by GNATS. From: Kazutaka YOKOTA To: epv@panix.com Cc: freebsd-gnats-submit@freebsd.org, yokota@zodiac.mech.utsunomiya-u.ac.jp Subject: Re: kern/2632: enabling psm mouse causes keyboard to not work on Toshiba 115CS laptop Date: Sun, 02 Feb 1997 14:19:53 +0900 >>Number: 2632 >>Category: kern >>Synopsis: enabling psm mouse causes keyboard to not work on Toshiba 115 >CS laptop >>Confidential: no >>Severity: serious >>Priority: medium >>Responsible: freebsd-bugs >>State: open >>Class: sw-bug >>Submitter-Id: current-users >>Arrival-Date: Fri Jan 31 17:50:01 PST 1997 >>Last-Modified: >>Originator: Eric Volpe >>Organization: >>Release: 2.2-BETA >>Environment: >FreeBSD lemur.snysel.com 2.20-BETA_A #1 >>Description: >if psm mouse driver is enabled (either from boot floppy or a kernel >built on the machine from 2.2-BETA source) the kernel correctly >identifies the mouse when booting, but does not respond to the keyboard >at all. If the psm device is disabled in userconfig or not compiled into >the kernel, the keyboard responds properly. >>How-To-Repeat: >boot boot floppy on toshiba laptop. >enter userconfig. >disable microsoft busmouse driver (mse) >enable ps/2 mouse support (psm) >try to use keyboard Several problems have already been reported and fixed, regarding the `psm' driver in 2.2-BETA. Would you please try the following patch and see if it works on your system. The patch will modify psm.c, kbdio.c, and kbdio.h in /usr/src/sys/i386/isa. Kazu =================================================================== RCS file: /home/ncvs/src/sys/i386/isa/psm.c,v retrieving revision 1.25.2.3 retrieving revision 1.25.2.5 diff -u -r1.25.2.3 -r1.25.2.5 --- src/sys/i386/isa/psm.c 1996/12/03 10:47:24 1.25.2.3 +++ src/sys/i386/isa/psm.c 1997/01/15 12:03:33 1.25.2.5 @@ -19,7 +19,7 @@ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: psm.c,v 1.25.2.3 1996/12/03 10:47:24 phk Exp $ + * $Id: psm.c,v 1.25.2.5 1997/01/15 12:03:33 sos Exp $ */ /* @@ -435,6 +435,11 @@ int i; switch((i = test_aux_port(port))) { + case 1: /* ignore this error */ + if (verbose) + log(LOG_DEBUG, "psm%d: strange result for test aux port (%d).\n", + PSM_UNIT(dev), i); + /* fall though */ case 0: /* no error */ break; case -1: /* time out */ @@ -478,10 +483,14 @@ } /* just check the status of the mouse */ + i = get_mouse_status(port, stat); if (verbose) { - get_mouse_status(port, stat); - log(LOG_DEBUG, "psm%d: status %02x %02x %02x (reinitialized)\n", - PSM_UNIT(dev), stat[0], stat[1], stat[2]); + if (i) + log(LOG_DEBUG, "psm%d: status %02x %02x %02x\n", + PSM_UNIT(dev), stat[0], stat[1], stat[2]); + else + log(LOG_DEBUG, "psm%d: failed to get mouse status\n", + PSM_UNIT(dev)); } return TRUE; @@ -508,6 +517,8 @@ if (unit >= NPSM) return (0); + psm_softc[unit] = NULL; + sc = malloc(sizeof *sc, M_DEVBUF, M_NOWAIT); bzero(sc, sizeof *sc); @@ -556,6 +567,7 @@ */ /* save the current command byte; it will be used later */ + empty_both_buffers(ioport, 20); if (!write_controller_command(ioport,KBDC_GET_COMMAND_BYTE)) { /* CONTROLLER ERROR */ printf("psm%d: failed to get the current command byte value.\n", @@ -604,8 +616,18 @@ * supporsed to return with an error code or simply time out. In any * case, we have to continue probing the port even when the controller * passes this test. + * + * XXX: some controllers erroneously return the error code 1 when + * it has the perfectly functional aux port. We have to ignore this + * error code. Even if the controller HAS error with the aux port, + * it will be detected later... */ switch ((i = test_aux_port(ioport))) { + case 1: /* ignore this error */ + if (verbose) + printf("psm%d: strange result for test aux port (%d).\n", + unit, i); + /* fall though */ case 0: /* no error */ break; case -1: /* time out */ @@ -693,6 +715,7 @@ /* set mouse parameters */ /* FIXME:XXX should we set them in `psmattach()' rather than here? */ +#if 0 if (setparams) { if (sc->mode.rate > 0) sc->mode.rate = set_mouse_sampling_rate(ioport, sc->mode.rate); @@ -703,12 +726,25 @@ /* FIXME:XXX I don't know if these parameters are reasonable */ set_mouse_scaling(ioport); /* 1:1 scaling */ set_mouse_mode(ioport); /* stream mode */ +#else + i = send_aux_command(ioport, PSMC_SET_DEFAULTS); + if (verbose >= 2) + log(LOG_DEBUG, "psm%d: SET_DEFAULTS return code:%04x\n", unit, i); +#endif /* just check the status of the mouse */ + /* + * XXX there are some arcane controller/mouse combinations out there, + * which hung the controller unless there is data transmission + * after ACK from the mouse. + */ + i = get_mouse_status(ioport, stat); if (verbose) { - get_mouse_status(ioport, stat); - log(LOG_DEBUG, "psm%d: status %02x %02x %02x\n", - unit, stat[0], stat[1], stat[2]); + if (i) + log(LOG_DEBUG, "psm%d: status %02x %02x %02x\n", + unit, stat[0], stat[1], stat[2]); + else + log(LOG_DEBUG, "psm%d: failed to get mouse status\n", unit); } /* disable the aux port for now... */ @@ -745,6 +781,9 @@ int unit = dvp->id_unit; struct psm_softc *sc = psm_softc[unit]; + if (sc == NULL) /* shouldn't happen */ + return (0); + /* initial operation mode */ sc->mode.accelfactor = PSM_ACCEL; sc->mode.protocol = MOUSE_PROTO_PS2; @@ -763,8 +802,11 @@ DV_CHR, 0, 0, 0666, "npsm%d", unit); #endif - printf("psm%d: device ID %d, %d buttons?\n", - unit, sc->hw.hwid, sc->hw.buttons); + if (verbose) + printf("psm%d: device ID %d, %d buttons?\n", + unit, sc->hw.hwid, sc->hw.buttons); + else + printf("psm%d: device ID %d\n", unit, sc->hw.hwid); if (bootverbose) --verbose; @@ -779,6 +821,7 @@ int ioport; struct psm_softc *sc; int stat[3]; + int ret; /* Validate unit number */ if (unit >= NPSM) @@ -786,7 +829,7 @@ /* Get device data */ sc = psm_softc[unit]; - if ((sc->state & PSM_VALID) == 0) + if ((sc == NULL) || (sc->state & PSM_VALID) == 0) /* the device is no longer valid/functioning */ return (ENXIO); ioport = sc->addr; @@ -849,10 +892,14 @@ return (EIO); } + ret = get_mouse_status(ioport, stat); if (verbose >= 2) { - get_mouse_status(ioport, stat); - log(LOG_DEBUG, "psm%d: status %02x %02x %02x\n", - unit, stat[0], stat[1], stat[2]); + if (ret) + log(LOG_DEBUG, "psm%d: status %02x %02x %02x (psmopen)\n", + unit, stat[0], stat[1], stat[2]); + else + log(LOG_DEBUG, "psm%d: failed to get mouse status (psmopen).\n", + unit); } /* enable the aux port and interrupt */ @@ -877,6 +924,8 @@ { struct psm_softc *sc = psm_softc[PSM_UNIT(dev)]; int ioport = sc->addr; + int stat[3]; + int ret; /* disable the aux interrupt */ if (!set_controller_command_byte(ioport, sc->command_byte, @@ -905,6 +954,17 @@ log(LOG_ERR, "psm%d: failed to disable the device (psmclose).\n", PSM_UNIT(dev)); } + + ret = get_mouse_status(ioport, stat); + if (verbose >= 2) { + if (ret) + log(LOG_DEBUG, "psm%d: status %02x %02x %02x (psmclose)\n", + PSM_UNIT(dev), stat[0], stat[1], stat[2]); + else + log(LOG_DEBUG, "psm%d: failed to get mouse status (psmclose).\n", + PSM_UNIT(dev)); + } + if (!set_controller_command_byte(ioport, sc->command_byte, KBD_DISABLE_AUX_PORT | KBD_DISABLE_AUX_INT)) { /* CONTROLLER ERROR; =================================================================== RCS file: /home/ncvs/src/sys/i386/isa/kbdio.c,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -u -r1.1.2.2 -r1.1.2.3 --- src/sys/i386/isa/kbdio.c 1996/12/04 16:11:39 1.1.2.2 +++ src/sys/i386/isa/kbdio.c 1997/01/15 12:03:38 1.1.2.3 @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: kbdio.c,v 1.1.2.2 1996/12/04 16:11:39 phk Exp $ + * $Id: kbdio.c,v 1.1.2.3 1997/01/15 12:03:38 sos Exp $ */ #include @@ -295,64 +295,76 @@ /* discard data from the keyboard */ void -empty_kbd_buffer(int port, int t) +empty_kbd_buffer(int port, int wait) { + int t; int b; int c = 0; int delta = 2; - for (; t > 0; t -= delta) { + for (t = wait; t > 0; ) { if ((inb(port + KBD_STATUS_PORT) & KBDS_BUFFER_FULL) == KBDS_KBD_BUFFER_FULL) { DELAY(KBDD_DELAYTIME); - b = inb(port + KBD_DATA_PORT); - ++c; - } + b = inb(port + KBD_DATA_PORT); + ++c; + t = wait; + } else { + t -= delta; + } DELAY(delta*1000); } if ((verbose >= 2) && (c > 0)) - log(LOG_DEBUG,"kbdio: %d char read (empty_kbd_buffer)\n",c); + log(LOG_DEBUG,"kbdio: %d char read (empty_kbd_buffer)\n",c); } /* discard data from the aux device */ void -empty_aux_buffer(int port, int t) +empty_aux_buffer(int port, int wait) { + int t; int b; int c = 0; int delta = 2; - for (; t > 0; t -= delta) { + for (t = wait; t > 0; ) { if ((inb(port + KBD_STATUS_PORT) & KBDS_BUFFER_FULL) == KBDS_AUX_BUFFER_FULL) { DELAY(KBDD_DELAYTIME); - b = inb(port + KBD_DATA_PORT); - ++c; - } + b = inb(port + KBD_DATA_PORT); + ++c; + t = wait; + } else { + t -= delta; + } DELAY(delta*1000); } if ((verbose >= 2) && (c > 0)) - log(LOG_DEBUG,"kbdio: %d char read (empty_aux_buffer)\n",c); + log(LOG_DEBUG,"kbdio: %d char read (empty_aux_buffer)\n",c); } /* discard any data from the keyboard or the aux device */ void -empty_both_buffers(int port, int t) +empty_both_buffers(int port, int wait) { + int t; int b; int c = 0; int delta = 2; - for (; t > 0; t -= delta) { + for (t = wait; t > 0; ) { if (inb(port + KBD_STATUS_PORT) & KBDS_ANY_BUFFER_FULL) { DELAY(KBDD_DELAYTIME); - b = inb(port + KBD_DATA_PORT); - ++c; - } + b = inb(port + KBD_DATA_PORT); + ++c; + t = wait; + } else { + t -= delta; + } DELAY(delta*1000); } if ((verbose >= 2) && (c > 0)) - log(LOG_DEBUG,"kbdio: %d char read (empty_both_buffers)\n",c); + log(LOG_DEBUG,"kbdio: %d char read (empty_both_buffers)\n",c); } /* keyboard and mouse device control */ =================================================================== RCS file: /home/ncvs/src/sys/i386/isa/kbdio.h,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -u -r1.1.2.2 -r1.1.2.3 --- src/sys/i386/isa/kbdio.h 1996/12/04 16:11:45 1.1.2.2 +++ src/sys/i386/isa/kbdio.h 1997/01/15 12:03:41 1.1.2.3 @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: kbdio.h,v 1.1.2.2 1996/12/04 16:11:45 phk Exp $ + * $Id: kbdio.h,v 1.1.2.3 1997/01/15 12:03:41 sos Exp $ */ #ifndef _I386_ISA_KBDIO_H_ @@ -93,6 +93,7 @@ #define PSMC_RESET_DEV 0x00ff #define PSMC_ENABLE_DEV 0x00f4 #define PSMC_DISABLE_DEV 0x00f5 +#define PSMC_SET_DEFAULTS 0x00f6 #define PSMC_SEND_DEV_ID 0x00f2 #define PSMC_SEND_DEV_STATUS 0x00e9 #define PSMC_SEND_DEV_DATA 0x00eb From owner-freebsd-bugs Sat Feb 1 23:38:53 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id XAA06691 for bugs-outgoing; Sat, 1 Feb 1997 23:38:53 -0800 (PST) Received: (from mpp@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id XAA06660; Sat, 1 Feb 1997 23:38:50 -0800 (PST) Date: Sat, 1 Feb 1997 23:38:50 -0800 (PST) From: Mike Pritchard Message-Id: <199702020738.XAA06660@freefall.freebsd.org> To: cmf@netins.net, mpp, freebsd-bugs Subject: Re: bin/2461 Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Synopsis: calendar(1) reports surprising results on January 1st. State-Changed-From-To: open-closed State-Changed-By: mpp State-Changed-When: Sat Feb 1 23:38:17 PST 1997 State-Changed-Why: Fixed in rev 1.8 of calendar/day.c.