panic: top_env?

Russ Allbery rra at stanford.edu
Sat Feb 1 21:33:57 UTC 2003


Marco d'Itri <md at Linux.IT> writes:

> Today I upgraded INN on my main server, but due to a missing dependancy
> on the appropriate perl package (perl 5.6 was installed, but inn2 on
> debian is compiled against libperl5.8) strict.pm could not be found and
> it kept dieing on start *without logging anything*.

I think it's rather disturbing that Perl, even when called as a shared
library, feels free to kill the entire process rather than just returning
failure.

> I had to use strace to notice this "panic: top_env" message, which is
> not written anywere (not even errlog, to which fd 2 is connected).

INN should have sent any error messages resulting from initializing the
Perl interpreter to errlog, but any error messages that it spits out
during loading of the filter are discarded.  Instead, $@ is checked after
the filter is loaded and that error is reported.

This is a side effect of innd and nnrpd sharing the same initialization
code (since sending error messages across the network to a client with
nnrpd would violate the NNTP protocol).  It's something that can be
cleaned up a lot once the filter API is redone, but is a bit trickier to
fix right now.

-- 
Russ Allbery (rra at stanford.edu)             <http://www.eyrie.org/~eagle/>

    Please send questions to the list rather than mailing me directly.
     <http://www.eyrie.org/~eagle/faqs/questions.html> explains why.


More information about the inn-workers mailing list