Subject: port-i386/4694: Linux Netscape only works once
To: None <gnats-bugs@gnats.netbsd.org>
From: Kevin Sullivan <ksulliva@kludge.psc.edu>
List: netbsd-bugs
Date: 12/15/1997 16:58:58
>Number:         4694
>Category:       port-i386
>Synopsis:       Linux Netscape only works once
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    gnats-admin (GNATS administrator)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Dec 15 14:05:02 1997
>Last-Modified:
>Originator:     Kevin Sullivan
>Organization:
Kevin Sullivan
Pittsburgh Supercomputing Center
>Release:        1.3_BETA
>Environment:
	
System: NetBSD kludge.psc.edu 1.3_BETA NetBSD 1.3_BETA (KLUDGE) #0: Tue Dec 9 16:00:42 EST 1997 ksulliva@sport.psc.edu:/usr/src/sys/arch/i386/compile/KLUDGE i386


>Description:

I'm trying to use the Linux version of Netscape (4.04) on NetBSD
1.3BETA.  I'm using the Linux version since I want strong encryption
and cannot find a non-export FreeBSD version.  Note that the FreeBSD
version does not have this bug.

Whenever I run Netscape it will die with a "Bus Error".  However, if I
first delete ~/.netscape/preferences.js, Netscape will run.  It will
re-create the preferences.js file, which will cause it to die the next
time I run it.

Here is the end of a ktrace when preferences.js exists:

  4412 netscape GIO   fd 8 read 3072 bytes
       "\^A\0\^E\0\^F\0
        \0\^A\0\0\0\0\0\^E\0\^F\0\^F\0\M^?\M^?\0\0\0\0\^F\0\^F\0
        \0\^B\0\0\0\0\0\^D\0\^F\0\a\0\^B\0\0\0\0\0\^D\0\^F\0\a\0\^B\0\0\0\0\0\
        \^E\0"
  4412 netscape RET   read 3072/0xc00
  4412 netscape PSIG  SIGSEGV caught handler=0x85b333c mask=0x0 code=0x6
  4412 netscape CALL  getpid
  4412 netscape RET   getpid 4412/0x113c
  4412 netscape CALL  kill(0x113c,0x7)
  4412 netscape PSIG  SIGBUS SIG_DFL

Here is the same section when preferences.js does not exist (Netscape 
continues to run in this case).

  4407 netscape GIO   fd 8 read 3072 bytes
       "\^A\0\^E\0\^F\0
        \0\^A\0\0\0\0\0\^E\0\^F\0\^F\0\M^?\M^?\0\0\0\0\^F\0\^F\0
        \0\^B\0\0\0\0\0\^D\0\^F\0\a\0\^B\0\0\0\0\0\^D\0\^F\0\a\0\^B\0\0\0\0\0\
        \^E\0"
  4407 netscape RET   read 3072/0xc00
  4407 netscape PSIG  SIGALRM caught handler=0x85b19ec mask=0x0 code=0x0
  4407 netscape CALL  gettimeofday(0xefbfbbbc,0)
  4407 netscape RET   gettimeofday 0
  4407 netscape CALL  sigreturn(0xefbfbc3c)
  4407 netscape RET   sigreturn JUSTRETURN
  4407 netscape CALL  writev(0x8,0xefbfbc20,0x2)



>How-To-Repeat:
Install the Linux netscape.  Run netscape.  Watch it crash.

Remove ~/.netscape/preferences.js.  Run netscape.  Watch it work.

Quit Netscape.  Notice that ~/.netscape/preferences.js was created.
Re-run Netscape.  Watch it crash.

>Fix:

If you don't care about security (or are outside of the US and Canada)
run the FreeBSD version.  If you need better security (for example, if
you do banking via the Web), then you have a problem.
>Audit-Trail:
>Unformatted: