Bug 12748 - linux_base-5.2 and linux communicator problem
Summary: linux_base-5.2 and linux communicator problem
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Marcel Moolenaar
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 1999-07-22 01:00 UTC by girgen
Modified: 1999-09-17 20:23 UTC (History)
1 user (show)

See Also:


Attachments
linux_base.diff (1.26 KB, patch)
1999-09-17 19:05 UTC, girgen
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description girgen 1999-07-22 01:00:01 UTC
After installing the fresh linux_base-5.2, using the
linux-communicator-4.61 gives me trouble:

Everthing is smooth, but sending email eats memory at a speed of 3-4
megs/second, until everything is gone (in my case, 256 real + 314 swap!).

It happens when hitting the send button. removing linux_base-5.2 and
reinstalling linux_lib-2.6.1 makes eveything fine again.

When killing netscape, this appears in the /var/log/maillog:
Jul 22 00:55:41 elbas sendmail[18063]: AAA18063: collect: premature EOM: Undefined error: 0
Jul 22 00:55:41 elbas sendmail[18063]: AAA18063: collect: unexpected close on connection from localhost, sender=<girgen@partitur.se>: Undefined error: 0
Jul 22 00:55:41 elbas sendmail[18063]: AAA18063: from=<girgen@partitur.se>, size=0, class=0, pri=0, nrcpts=1, proto=ESMTP, relay=localhost [127.0.0.1]

nothing ever appears in the spool/mqueue

I had to use NEEDLOADLINK= true when installing. Kernel & userland
sources are from July 7:th. Are they too old?

sysctl -n kern.osreldate
320001

Fix: 

- Using the old linux_lib-2.6 fixes it.  

- Adding a LD_LIBRARY_PATH to something?

- Maybe altering the netscape port to use glibc? (don't have time for
  it right now, but this might be an option; not the best solution,
  though, IMHO).

- Apart from that, no idea :(
How-To-Repeat: - install emulators/linux_base-5.2 and www/linux-netscape46-communicator
- try to send an email
Comment 1 marcel 1999-07-22 09:52:35 UTC
I wasn't able to trigger the problem by simply sending mail. Maybe the
problem is also related to specific mails, such as mail with attachment. So
far, NC4.61 works as expected (this mail was sent by it).

-- 
Marcel Moolenaar                                  mailto:marcel@scc.nl
SCC Internetworking & Databases                     http://www.scc.nl/
Amsterdam, The Netherlands                         tel: +31 20 4200655
Comment 2 girgen 1999-07-22 23:30:08 UTC
Marcel Moolenaar wrote:
> 
> I wasn't able to trigger the problem by simply sending mail. Maybe the
> problem is also related to specific mails, such as mail with attachment. So
> far, NC4.61 works as expected (this mail was sent by it).
> 

OK. Sounds good; it's only me having problems. Maybe my system sources
are too old? July 7th... I'll check it on a simpler environment (this
was with the compat dir nfs mounted). I'll check this week-end, and get
back to you.

/Palle
Comment 3 marcel 1999-07-23 07:24:59 UTC
Palle Girgensohn wrote:
> 
> Marcel Moolenaar wrote:
> >
> > I wasn't able to trigger the problem by simply sending mail. Maybe the
> > problem is also related to specific mails, such as mail with attachment. So
> > far, NC4.61 works as expected (this mail was sent by it).
> 
> OK. Sounds good; it's only me having problems. Maybe my system sources
> are too old? July 7th... I'll check it on a simpler environment (this
> was with the compat dir nfs mounted). I'll check this week-end, and get
> back to you.

I don't think your -stable version is too old. If it were, then NC4.61
wouldn't also work with linux_lib. I'm more thinking in the line of
LD_LIBRARY_PATH settings and/or linux_base installation issues (such as
whether /compat/linux was empty or not). I know there can be problems when
nfs behaves badly, so keep that in mind too. As a last remark, Having a
RH5.2 installation mounted under /compat/linux is not exactly the same as
installing linux_base. The conflicting set of libraries/binaries is much
larger for a stock RH5.2 installation (maybe too large)...

Anyway, I'll await your mail.

-- 
Marcel Moolenaar                                  mailto:marcel@scc.nl
SCC Internetworking & Databases                     http://www.scc.nl/
Amsterdam, The Netherlands                         tel: +31 20 4200655
Comment 4 girgen 1999-07-26 01:48:17 UTC
Marcel Moolenaar wrote:
> 
...
> 
> Anyway, I'll await your mail.
> 

Hello Marcel!

I guess you can close the PR. It works fine for me at home. I'll try
getting it going at the office next week or so; it'll probably work just
fine; could have been an nfs glitch or something, I'm not sure. Now I
know it works fine on a standalone machine.

Keep up the good work ;-)

/Palle
Comment 5 cpiazza freebsd_committer freebsd_triage 1999-08-01 02:41:36 UTC
State Changed
From-To: open->closed

Submitter asks that the PR be closed; the problem can't be reproduced. 

Comment 6 girgen 1999-08-04 02:56:35 UTC
Hello again,

Unfortunately, the problem *can* be reproduced:

Linux_base doesn't work with NIS/YP, at least not for sending mail with
netscape. The problem described in PR-12748 happens only when the user
running linux-netscape is in the NIS/YP database. Local users can send
mails with no problem, but not when the passwd info is stored in a NIS
database.

I guess you'll have to reopen this PR? :-(

I have tried the obvious nsswitch.conf, and modified it to use nis and
files for everything, but to no avail.

I also tried running the glibc version of netscape, but it gives me a
bus error every time. (I had to install libXpm from an rpm, or it would
complain about missing libs.)

Maybe it's related to pam or the shadow password file?

I someone could help me fix this, I'll be much obliged!

Thanks!

/Palle

PS. There seems that the libc's are somewhat dirfferent, but may not
mean anything? (/usr/local/compat is linux_lib-2.6 and /usr/compat is
linux_base-5.2):

ls -l /usr/compat/linux/usr/i486-linux-libc5/lib/libc.so.5.3.12 \
      /usr/local/compat/linux/lib/libc.so.5.3.12 
-rwxr-xr-x  1 root  wheel  699776 Sep 10  1998
/usr/compat/linux/usr/i486-linux-libc5/lib/libc.so.5.3.12*
-rwxr-xr-x  1 root  569    705995 Oct 25  1996
/usr/local/compat/linux/lib/libc.so.5.3.12*
elbas:~$ file  /usr/compat/linux/usr/i486-linux-libc5/lib/libc.so.5.3.12
\
               /usr/local/compat/linux/lib/libc.so.5.3.12 
/usr/compat/linux/usr/i486-linux-libc5/lib/libc.so.5.3.12: ELF 32-bit
LSB shared object, Intel 80386, version 1, not stripped
/usr/local/compat/linux/lib/libc.so.5.3.12:                ELF 32-bit
LSB shared object, Intel 80386, version 1, not stripped

DS.
Comment 7 cpiazza freebsd_committer freebsd_triage 1999-08-04 04:51:28 UTC
State Changed
From-To: closed->open

The problem has been found to be reproducable 


Comment 8 cpiazza freebsd_committer freebsd_triage 1999-08-04 04:51:28 UTC
Responsible Changed
From-To: freebsd-ports->marcel

Over to maintainer 

Comment 9 onemo 1999-08-14 20:34:03 UTC
I can verify this is a problem. On a freshly installed 3.2-Stable as of
8/13/99, I can't run any of the Linux apps I've tried (Netscape,
WordPerfect) if I'm logged in as a NIS+ user on my company's Solaris
LAN. If I log in as root, everything is fine, haven't tried another
local only user, will on Monday 8/16.
Comment 10 girgen 1999-08-15 00:50:50 UTC
Michael Oski wrote:
> 
> I can verify this is a problem. On a freshly installed 3.2-Stable as of
> 8/13/99, I can't run any of the Linux apps I've tried (Netscape,
> WordPerfect) if I'm logged in as a NIS+ user on my company's Solaris
> LAN. If I log in as root, everything is fine, haven't tried another
> local only user, will on Monday 8/16.

I have, and it works with local users. Not with NIS ditto. 

I have tried to set up nsswitch.conf to try to get the linux to
understand that it should use NIS, but I can't get it to work. 

I'm glad I'm not the only one... How shall we fix this?

/Palle
Comment 11 marcel 1999-09-13 13:47:48 UTC
Nick Sayer <nsayer@FreeBSD.org> found a quick solution to this problem:

	(cat /etc/passwd ; ypcat passwd ) | egrep -v '^+' >
/compat/linux/etc/passwd

But possibly only the user running Netscape needs to be in
{/compat/linux}/etc/passwd.

-- 
Marcel Moolenaar                        mailto:marcel@scc.nl
SCC Internetworking & Databases           http://www.scc.nl/
The FreeBSD project                mailto:marcel@FreeBSD.org
Comment 12 girgen 1999-09-17 17:41:59 UTC
OK! Thanks to Nick Sayer and Marcel Moolenar, we have a fix! NIS has to
be configured for linux by creating an yp.conf file:

$ cat /compat/linux/etc/yp.conf 
# sample yp.conf file
#
# Legal entries are:
#
#       domainname <domain>             Override the default YP domain
#                                       (If not set uses the one from
#                                        the getdomainname() syscall)
#
#       ypserver <grape> [<domain>]     Define which host to contact
#                                       for YP service. If the <domain>
#                                       argument is included then this
#                                       host service the specified YP
#                                       domain.
domainname freedom
ypserver grape

------------


There's no need for copying the passwd file. Once nis is configured for
Linux, it will use the FreeBSD passwd file's "+-records" to get nis
passwords. I think this file could be added to the distribution of
linux_base? This way, people having problems might realize what to do to
fix it. People not running NIS will not be affected, since the "+
records" are what really activates NIS. Maybe the yp.conf file could
created on the fly, using `ypwhich` and `domainname`? I'll see what I
can hack...

/Palle

Marcel Moolenaar wrote:
> 
> Nick Sayer <nsayer@FreeBSD.org> found a quick solution to this problem:
> 
>         (cat /etc/passwd ; ypcat passwd ) | egrep -v '^+' >
> /compat/linux/etc/passwd
> 
> But possibly only the user running Netscape needs to be in
> {/compat/linux}/etc/passwd.
> 
> --
> Marcel Moolenaar                        mailto:marcel@scc.nl
> SCC Internetworking & Databases           http://www.scc.nl/
> The FreeBSD project                mailto:marcel@FreeBSD.org
Comment 13 girgen 1999-09-17 19:05:33 UTC
Hi!

I attach a patch that installs a proper yp.conf. What do you think?
Maybe the comment only part should be in the rpm?

/Palle


Nick Sayer wrote:
> 
> This does work! Cool!
> 
> Perhaps putting a comment-only template yp.conf file in the Linux /etc/
> directory
> would be enough. That, and displaying a note at package installation time
> suggesting
> that folks visit /etc/ and configure stuff. I had trouble at first because
> I had played
> with nsswitch.conf and removed nis at one point. As soon as I restored the
> original
> package's /etc/ directory, though, all became well.
> 
> Palle Girgensohn wrote:
> 
> > OK! Thanks to Nick Sayer and Marcel Moolenar, we have a fix! NIS has to
> > be configured for linux by creating an yp.conf file:
> >
> > $ cat /compat/linux/etc/yp.conf
> > # sample yp.conf file
> > #
> > # Legal entries are:
> > #
> > #       domainname <domain>             Override the default YP domain
> > #                                       (If not set uses the one from
> > #                                        the getdomainname() syscall)
> > #
> > #       ypserver <grape> [<domain>]     Define which host to contact
> > #                                       for YP service. If the <domain>
> > #                                       argument is included then this
> > #                                       host service the specified YP
> > #                                       domain.
> > domainname freedom
> > ypserver grape
> >
> > ------------
> >
> > There's no need for copying the passwd file. Once nis is configured for
> > Linux, it will use the FreeBSD passwd file's "+-records" to get nis
> > passwords. I think this file could be added to the distribution of
> > linux_base? This way, people having problems might realize what to do to
> > fix it. People not running NIS will not be affected, since the "+
> > records" are what really activates NIS. Maybe the yp.conf file could
> > created on the fly, using `ypwhich` and `domainname`? I'll see what I
> > can hack...
> >
> > /Palle
> >
> > Marcel Moolenaar wrote:
> > >
> > > Nick Sayer <nsayer@FreeBSD.org> found a quick solution to this problem:
> > >
> > >         (cat /etc/passwd ; ypcat passwd ) | egrep -v '^+' >
> > > /compat/linux/etc/passwd
> > >
> > > But possibly only the user running Netscape needs to be in
> > > {/compat/linux}/etc/passwd.
> > >
> > > --
> > > Marcel Moolenaar                        mailto:marcel@scc.nl
> > > SCC Internetworking & Databases           http://www.scc.nl/
> > > The FreeBSD project                mailto:marcel@FreeBSD.org
Comment 14 girgen 1999-09-17 19:08:58 UTC
Hmm.. I missed adding yp.conf to the pkg/PLIST.* files.

Probably always including the comment only yp.conf file, and doing the
echoes if domainname is set, is the best way.

/Palle

Nick Sayer wrote:
> 
> This does work! Cool!
> 
> Perhaps putting a comment-only template yp.conf file in the Linux /etc/
> directory
> would be enough. That, and displaying a note at package installation time
> suggesting
> that folks visit /etc/ and configure stuff. I had trouble at first because
> I had played
> with nsswitch.conf and removed nis at one point. As soon as I restored the
> original
> package's /etc/ directory, though, all became well.
> 
> Palle Girgensohn wrote:
> 
> > OK! Thanks to Nick Sayer and Marcel Moolenar, we have a fix! NIS has to
> > be configured for linux by creating an yp.conf file:
> >
> > $ cat /compat/linux/etc/yp.conf
> > # sample yp.conf file
> > #
> > # Legal entries are:
> > #
> > #       domainname <domain>             Override the default YP domain
> > #                                       (If not set uses the one from
> > #                                        the getdomainname() syscall)
> > #
> > #       ypserver <grape> [<domain>]     Define which host to contact
> > #                                       for YP service. If the <domain>
> > #                                       argument is included then this
> > #                                       host service the specified YP
> > #                                       domain.
> > domainname freedom
> > ypserver grape
> >
> > ------------
> >
> > There's no need for copying the passwd file. Once nis is configured for
> > Linux, it will use the FreeBSD passwd file's "+-records" to get nis
> > passwords. I think this file could be added to the distribution of
> > linux_base? This way, people having problems might realize what to do to
> > fix it. People not running NIS will not be affected, since the "+
> > records" are what really activates NIS. Maybe the yp.conf file could
> > created on the fly, using `ypwhich` and `domainname`? I'll see what I
> > can hack...
> >
> > /Palle
> >
> > Marcel Moolenaar wrote:
> > >
> > > Nick Sayer <nsayer@FreeBSD.org> found a quick solution to this problem:
> > >
> > >         (cat /etc/passwd ; ypcat passwd ) | egrep -v '^+' >
> > > /compat/linux/etc/passwd
> > >
> > > But possibly only the user running Netscape needs to be in
> > > {/compat/linux}/etc/passwd.
> > >
> > > --
> > > Marcel Moolenaar                        mailto:marcel@scc.nl
> > > SCC Internetworking & Databases           http://www.scc.nl/
> > > The FreeBSD project                mailto:marcel@FreeBSD.org
Comment 15 marcel 1999-09-17 19:58:50 UTC
Palle Girgensohn wrote:
> Hmm.. I missed adding yp.conf to the pkg/PLIST.* files.
> 
> Probably always including the comment only yp.conf file, and doing the
> echoes if domainname is set, is the best way.

Nick Sayer wrote:
> Perhaps putting a comment-only template yp.conf file in the Linux /etc/
> directory would be enough. That, and displaying a note at package
> installation time suggesting that folks visit /etc/ and configure stuff.

I'll go for the template only option (with a proper note) for now. Creating
a proper yp.conf is simple for any user that previously installed and
configured NIS. Setting up yp.conf on the fly is nice, but only if it works
for both the port and the package. I'll look into that if time permits. In
the mean time, I'll "fix" the port.

-- 
Marcel Moolenaar                        mailto:marcel@scc.nl
SCC Internetworking & Databases           http://www.scc.nl/
The FreeBSD project                mailto:marcel@FreeBSD.org
Comment 16 Marcel Moolenaar freebsd_committer freebsd_triage 1999-09-17 20:22:23 UTC
State Changed
From-To: open->closed

Solution found. Port fixed. Thanks to Palle and Nick.