pop3 patch

From: Date: Fri, 31 Aug 2007 14:26:32 +0000
Subject: pop3 patch
Groups: php.internals 
Request: Send a blank email to internals+get-31999@lists.php.net to get a copy of this message
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 A quick fix to get pop3 working in PHP6, there might be a better way but this solution seemed to work with the least amount of changes, tested in 4.3.10, 4.4.0, 5.1.6, 5.2.3 and 6.0.0-dev all of which worked. link: http://daleenterprise.com/pop3.diff diff file: diff -Naur ext/pop3.orig/pop3.c ext/pop3/pop3.c - --- ext/pop3.orig/pop3.c 2006-10-11 20:23:48.000000000 -0400 +++ ext/pop3/pop3.c 2007-08-31 10:21:21.000000000 -0400 @@ -1,8 +1,8 @@ /* +----------------------------------------------------------------------+ - - | PHP Version
4                                                        |
+  | PHP Version 4, 5, 6                                                  |
   +----------------------------------------------------------------------+
- -  | Copyright (c) 1997-2004 The PHP Group                                |
+  | Copyright (c) 1997-2007 The PHP Group                                |
   +----------------------------------------------------------------------+
   | This source file is subject to version 3 of the PHP license,         |
   | that is bundled with this package in the file LICENSE, and is        |
@@ -14,9 +14,10 @@ +----------------------------------------------------------------------+
   | Authors:    Marco Tabini <marcot@tabini.ca>                          |
   |             Ilia Alshanetsky <ilia@php.net>                          |
+  |             Dale Walsh <buildsmart@daleenterprise.com>               |
   +----------------------------------------------------------------------+
- - $Id: pop3.c,v 1.21 2006/10/12 00:23:48 iliaa Exp $ + $Id: pop3.c,v 1.22 2007/08/31 09:23:48 iliaa Exp $ */ #ifdef HAVE_CONFIG_H @@ -42,7 +43,7 @@ /* {{{ Internal macros */ - -#define POP3_VERSION "1.0.2" +#define POP3_VERSION "1.0.3" #define POP3_RESOURCE_NAME "POP3 Library Session" #define POP3_FETCH_SESSION(session, session_container) \ @@ -100,7 +101,11 @@ char buffer[2048]; size_t fetch_len; +#if PHP_MAJOR_VERSION > 4 + if (!php_stream_get_line(stream, ZSTR(buffer), sizeof(buffer) - 1, &fetch_len)) { +#else if (!php_stream_get_line(stream, buffer, sizeof(buffer) - 1, &fetch_len)) { +#endif php_error_docref(NULL TSRMLS_CC, E_ERROR, "I/O Error when receiving data from the server"); } @@ -583,7 +588,11 @@ do { zval *row; +#if PHP_MAJOR_VERSION > 4 + if (!php_stream_gets(stream, ZSTR(pop3_return_val), sizeof(pop3_return_val) - 1)) { +#else if (!php_stream_gets(stream, pop3_return_val, sizeof(pop3_return_val) - 1)) { +#endif php_error_docref(NULL TSRMLS_CC, E_WARNING, "POP3: Unable to retrieve message list"); zval_dtor(return_value); RETURN_FALSE; @@ -643,7 +652,11 @@ do { +#if PHP_MAJOR_VERSION > 4 + if (!php_stream_gets(stream, ZSTR(pop3_return_val), sizeof(pop3_return_val) - 1)) { +#else if (!php_stream_gets(stream, pop3_return_val, sizeof(pop3_return_val) - 1)) { +#endif php_error_docref(NULL TSRMLS_CC, E_WARNING, "POP3: Unable to retrieve message list"); zval_dtor(return_value); RETURN_FALSE; @@ -758,7 +771,11 @@ length = 0; do { +#if PHP_MAJOR_VERSION > 4 + if (!php_stream_get_line(stream, ZSTR(pop3_return_val), sizeof(pop3_return_val) - 1, &fetch_len)) { +#else if (!php_stream_get_line(stream, pop3_return_val, sizeof(pop3_return_val) - 1, &fetch_len)) { +#endif efree(result); php_error_docref(NULL TSRMLS_CC, E_WARNING, "POP3: I/O failure reading from server"); RETURN_FALSE; -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.2 (Darwin) iD8DBQFG2CUZ0hzWbkf0eKgRAljEAKCWQLRmOxgDjx7RvxUiQQlMypHxQwCeMpuy UVPNfP/veKki0uZKlVodriQ= =c0Vr -----END PGP SIGNATURE-----

« previous php.internals (#31999) next »