I'm using 5.x-1.x-dev (2007-Aug-24) and I'm seeing in my server's logs :
PHP Fatal error: Call to undefined function url() in httpbl.module on line 76

CommentFileSizeAuthor
#4 greylist2.pdf290.12 KBicenogle

Comments

icenogle’s picture

Version: 5.x-1.x-dev » 5.x-0.9

Ditto, except one of my users is seeing the same for 5.x-0.9, on line 73.

The module is running from my sites/all/modules directory, but that shouldn't be unusual these days, right?

Also, I'm running Drupal 5.1

I haven't changed anything, recently. Strange that this would just start to occur...

praseodym’s picture

This happens when the Drupal url() function (defined in common.inc) has not been loaded yet when httpbl_init() is called. I'm not sure why this problem occurs so suddenly - did you make any changes to the system recently, e.g. upgrade PHP or enable aggressive caching?

icenogle’s picture

It just occurred for me again with another user.

I haven't changed a thing, Drupal-wise.

You're right. It's strange these things would happen all in one day. The unfortunate thing is that it seems to short-circuit the user's opportunity to get de-listed, or access the site in any other way.

icenogle’s picture

StatusFileSize
new290.12 KB

I'm attaching a .pdf that shows a view of my log, with a burst of greylist/blacklist activity starting yesterday, from a number of different IP's. The only thing I did in that vicinity was to update a comment. Is this a project honeypot problem?

praseodym’s picture

Maybe your ISP changed their servers and upgraded PHP or something?
You could try replacing the url() call by something else. The problem with this workaround is that the module can't determine where it's installed any more so that it can't provide a proper link. If Drupal is installed in the root of your site this shouldn't cause a problem.

praseodym’s picture

Assigned: Unassigned » praseodym

Answer to your second comment: since it's a Drupal/PHP error it has almost certainly nothing to do with Project Honeypot.

icenogle’s picture

Aha! My web host moved me to a different server and IP address yesterday. Is it possible all I need to do is flush the cache?

Thanks!

praseodym’s picture

You could try, but I don't think that will resolve the issue. I do think that the move caused the issue to appear in some way.

jwolf’s picture

Version: 5.x-0.9 » 5.x-1.x-dev

Just to follow up...

I'm running PHP 5.24, Apache 1.3.9, and MySQL 5.027.
PHPSuexec and Suexec are not enabled.
I am using PHP opcode caching with eAccelerator and "normal" Drupal caching is enabled.

This is happening across the board for all Drupal sites/installs on the server.
The various installs of Drupal consists of a mixture of multi-site installs and as individual installs.

The errors are not sudden as I have server logs dating back two months which show the PHP error: Call to undefined function url()

I can confirm what icenogle mentioned above that

it seems to short-circuit the user's opportunity to get de-listed

The blacklisting and greylisting pages do not display at all - getting a blank page.
I tested this out by editing the httpbl table so that my IP status is either 1 or 2.

I am suspecting the combo of PHP5 + eAccelerator to be the culprit.

Note:

changing reported version back to 5.x-1.x-dev since the original bug reported occurs with the current dev snapshot

praseodym’s picture

Status: Active » Fixed

I switched from hook_init() to hook_menu() in HEAD which should solve this issue. Unfortunately this means that the blacklist check will be executed later in the bootstrap, but that's the way it is.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.