#2755 PHP 6 Errors - Inconsistent class method prototypes

Produces PHP errors
Compose (426)

Fatal error: Declaration of Deliver_SMTP::initStream() must be compatible with that of Deliver::initStream() in D:\AppServ\www\sm\class\deliver\Deliver_SMTP.class.php on line 358

no matter where i try to send to

appserv install
apache 2.2
perl .. uhm yes i have it a very recent one
sq mail 1.4.21

attached is the file in question



    AARON - 2011-05-16
  • Paul Lesniewski

    Paul Lesniewski - 2011-05-17

    Thanks for your report. Please use a better title (and do not use all caps (shouting)) next time.

    This error points out the amateur-hour code that the developers who created these so-called classes wrote many years ago and embarrasses me to see this kind of thing. That said, I'm not going certain we'll be fixing it any time soon since it involves upgrades to an unknown number of plugins, etc. Also, I haven't been testing against PHP 6 yet, but I suspect there may be a error reporting level at which you may be able to make PHP ignore this issue. Maybe not, but if there is, we'd be even less inclined to change this in our *stable* branch. Finally, we're not going to put too much effort into making our code compatible with the moving target that PHP 6 is. We'll see when PHP 6 even sees the light of day.

    Thanks again

  • Paul Lesniewski

    Paul Lesniewski - 2011-05-17
    • summary: WHEN SENDING --> PHP 6 Errors - Inconsistent class method prototypes

    AARON - 2011-05-17

    sorry if i was not clear but it will not allow me to send mail and again im sorry for the caps

  • Paul Lesniewski

    Paul Lesniewski - 2011-05-17

    As I mentioned, check your error reporting levels, which may allow the system to ignore such errors.

    However, PHP 6 is *NOT* something that is recommended for use by anyone except developers and testers. It's very, very far from a stable product.

    If you are testing and want to fix the problem so you can use SquirrelMail in your environment, you can fairly easily change that function's prototype in the Deliver, Deliver_SMTP and Deliver_Sendmail classes to match. Then, just change the calls to that function in src/compose.php and src/read_body.php. It's straight forward, but we won't fix it for now due to the stable nature of this version of SquirrelMail.


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks