You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by "Alan E. Derhaag" <ad...@wolfenet.com> on 2000/09/05 05:33:17 UTC

Can't locate object method "No" via package "such"

I upgraded to openssl-0.9.5a and recompiled apache w/mod_ssl and
mod_perl defining the SSL_BASE to the apache src and now the thing
won't start and complains about:

 Can't locate object method "No" via package "such" at /dev/null line 1.

The compile had no warnings or errors except a `assignment discards
`const' from pointer target type' warning.

I've grepped the source for all (including openssl) and find nothing
that might emit this error.

Can I get a recommendation of where to look next?

-- 
 Alan E. Derhaag                 New Era Software Development
 http://www.wolfenet.com/~aderhaag/           Auburn, WA, USA
 email: aderhaag@wolfenet.com          aderhaag2@wa.freei.net 

Re: Can't locate object method "No" via package "such"

Posted by Ken Williams <ke...@forum.swarthmore.edu>.
aderhaag@wolfenet.com (Alan E. Derhaag) wrote:
>I upgraded to openssl-0.9.5a and recompiled apache w/mod_ssl and
>mod_perl defining the SSL_BASE to the apache src and now the thing
>won't start and complains about:
>
> Can't locate object method "No" via package "such" at /dev/null line 1.
>
>The compile had no warnings or errors except a `assignment discards
>`const' from pointer target type' warning.
>
>I've grepped the source for all (including openssl) and find nothing
>that might emit this error.
>
>Can I get a recommendation of where to look next?

This is pretty funny.  Somehow an error message "No such
something-or-other" is being interpreted as Perl code.  I don't know why
it thinks the file is /dev/null, but I'd grep for "No such" in your code
and see where that error message might be issued/misinterpreted.


  -------------------                            -------------------
  Ken Williams                             Last Bastion of Euclidity
  ken@forum.swarthmore.edu                            The Math Forum



Re: Can't locate object method "No" via package "such"

Posted by Doug MacEachern <do...@covalent.net>.
On 25 Sep 2000, Alan E. Derhaag wrote:
> 
> Good try, but /dev/null is not broken on my machine.

ok, i have seen this happen at least once in the past, glad it's not a
common problem.  looking back now at some other mod_ssl fixes for 'make
test', i'm reading that mod_ssl has some sort of problem with /dev/null.
i don't know the details, but maybe this patch will fix the problem for
you.  however, we had switched from -e0 to /dev/null in mod_perl-1.17,
something todo with suexec/setuid, which i think will still be a problem
looking at perl.c:

	    if (PL_euid != PL_uid || PL_egid != PL_gid)
		Perl_croak(aTHX_ "No -e allowed in setuid scripts");


--- src/modules/perl/mod_perl.c 2000/09/01 05:23:17     1.126
+++ src/modules/perl/mod_perl.c 2000/09/26 17:03:39
@@ -668,7 +668,7 @@
 #ifdef WIN32
     argv[argc++] = "nul";
 #else
-    argv[argc++] = "/dev/null";
+    argv[argc++] = "-e0";
 #endif
 
     MP_TRACE_g(fprintf(stderr, "perl_parse args: "));



RE: Can't locate object method "No" via package "such"

Posted by Rob Bloodgood <ro...@empire2.com>.
Shoulda thought about your answer first, Doug.  :-)

I see this type of message ("error at /dev/null") when my mod_perl scripts
give warnings -w style instead of $r->warn.  For example, HTML::Embperl, or
Apache::Registry both do this.

The nature of the error message sez to me there is a mishandled error
somewhere, like possibly an eval that is turning into a method call:

eval { # read file here
       # file doesn't exist
       # error is
       No such file or directory
       # which is parsed by perl to something like:
       # such->No (file or directory)
     };

Which further tends to suggest that a necessary environment variable for SSL
is either not defined or pointing to the wrong place??

I would suggest *never* disregarding configtest errors... one poorly
indicative error message can be the final gasp of a long string of errors
caused by a simple typo or whatever several layers deep.

Good luck!

L8r,
L V

-----Original Message-----
From: Alan E. Derhaag [mailto:aderhaag@wolfenet.com]
Sent: Monday, September 25, 2000 7:29 PM
To: Doug MacEachern
Cc: modperl@apache.org
Subject: Re: Can't locate object method "No" via package "such"


Doug MacEachern <do...@covalent.net> writes:

> On 4 Sep 2000, Alan E. Derhaag wrote:
>
> > I upgraded to openssl-0.9.5a and recompiled apache w/mod_ssl and
> > mod_perl defining the SSL_BASE to the apache src and now the thing
> > won't start and complains about:
> >
> >  Can't locate object method "No" via package "such" at /dev/null line 1.
>
> looks to me like /dev/null is broken.  if you run:
> % cat /dev/null
>

Good try, but /dev/null is not broken on my machine.

I finally gave up and eliminated the DSO version by compiling two
versions of httpd.  Both include mod_ssl but the Engine is only turned
on with the light server.

I did find a slight problem when running `configtest' but I doubt that
that could have been the problem.

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


Re: Can't locate object method "No" via package "such"

Posted by "Alan E. Derhaag" <ad...@wolfenet.com>.
Doug MacEachern <do...@covalent.net> writes:

> On 4 Sep 2000, Alan E. Derhaag wrote:
> 
> > I upgraded to openssl-0.9.5a and recompiled apache w/mod_ssl and
> > mod_perl defining the SSL_BASE to the apache src and now the thing
> > won't start and complains about:
> > 
> >  Can't locate object method "No" via package "such" at /dev/null line 1.
> 
> looks to me like /dev/null is broken.  if you run:
> % cat /dev/null
> 

Good try, but /dev/null is not broken on my machine.

I finally gave up and eliminated the DSO version by compiling two
versions of httpd.  Both include mod_ssl but the Engine is only turned
on with the light server.

I did find a slight problem when running `configtest' but I doubt that
that could have been the problem.

Re: Can't locate object method "No" via package "such"

Posted by Doug MacEachern <do...@covalent.net>.
On 4 Sep 2000, Alan E. Derhaag wrote:

> I upgraded to openssl-0.9.5a and recompiled apache w/mod_ssl and
> mod_perl defining the SSL_BASE to the apache src and now the thing
> won't start and complains about:
> 
>  Can't locate object method "No" via package "such" at /dev/null line 1.

looks to me like /dev/null is broken.  if you run:
% cat /dev/null

you'll probably see something like "No such file or directory",
but of course /dev/null is always supposed to be empty.  you should be
able to fix with:

% sudo echo > /dev/null

but that may only be a short-term fix if your /dev/null is broken, i'm not
sure how to properly fix it.