wez Mon Sep 23 14:12:39 2002 EDT
Modified files:
/php4 php.ini-dist php.ini-recommended
/php4/ext/standard basic_functions.h file.c file.h
http_fopen_wrapper.c
/php4/main network.c streams.c
Log:
Implement a default_socket_timeout and auto_detect_line_endings ini options.
Also move user_agent from BG to FG.
Index: php4/php.ini-dist
diff -u php4/php.ini-dist:1.154 php4/php.ini-dist:1.155
--- php4/php.ini-dist:1.154 Sat Sep 7 11:43:08 2002
+++ php4/php.ini-dist Mon Sep 23 14:12:38 2002
@@ -215,7 +215,6 @@
max_execution_time = 30 ; Maximum execution time of each script, in seconds
memory_limit = 8M ; Maximum amount of memory a script may consume (8MB)
-
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -468,6 +467,16 @@
; Define the User-Agent string
; user_agent="PHP"
+
+; Default timeout for socket based streams (seconds)
+default_socket_timeout = 60
+
+; If your scripts have to deal with files from Macintosh systems,
+; or you are running on a Mac and need to deal with files from
+; unix or win32 systems, setting this flag will cause PHP to
+; automatically detect the EOL character in those files so that
+; fgets() and file() will work regardless of the source of the file.
+; auto_detect_line_endings = Off
;;;;;;;;;;;;;;;;;;;;;;
Index: php4/php.ini-recommended
diff -u php4/php.ini-recommended:1.106 php4/php.ini-recommended:1.107
--- php4/php.ini-recommended:1.106 Sat Sep 7 11:43:08 2002
+++ php4/php.ini-recommended Mon Sep 23 14:12:38 2002
@@ -483,6 +483,17 @@
; Define the user agent for php to send
;user_agent="PHP"
+; Default timeout for socket based streams (seconds)
+default_socket_timeout = 60
+
+; If your scripts have to deal with files from Macintosh systems,
+; or you are running on a Mac and need to deal with files from
+; unix or win32 systems, setting this flag will cause PHP to
+; automatically detect the EOL character in those files so that
+; fgets() and file() will work regardless of the source of the file.
+; auto_detect_line_endings = Off
+
+
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
Index: php4/ext/standard/basic_functions.h
diff -u php4/ext/standard/basic_functions.h:1.106
php4/ext/standard/basic_functions.h:1.107
--- php4/ext/standard/basic_functions.h:1.106 Sat Sep 7 11:45:29 2002
+++ php4/ext/standard/basic_functions.h Mon Sep 23 14:12:38 2002
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: basic_functions.h,v 1.106 2002/09/07 15:45:29 sterling Exp $ */
+/* $Id: basic_functions.h,v 1.107 2002/09/23 18:12:38 wez Exp $ */
#ifndef BASIC_FUNCTIONS_H
#define BASIC_FUNCTIONS_H
@@ -141,9 +141,6 @@
HashTable sm_protected_env_vars;
char *sm_allowed_env_vars;
-
- /* file.c */
- char *user_agent;
/* pageinfo.c */
long page_uid;
Index: php4/ext/standard/file.c
diff -u php4/ext/standard/file.c:1.255 php4/ext/standard/file.c:1.256
--- php4/ext/standard/file.c:1.255 Sun Sep 22 21:47:01 2002
+++ php4/ext/standard/file.c Mon Sep 23 14:12:38 2002
@@ -21,7 +21,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: file.c,v 1.255 2002/09/23 01:47:01 wez Exp $ */
+/* $Id: file.c,v 1.256 2002/09/23 18:12:38 wez Exp $ */
/* Synced with php 3.0 revision 1.218 1999-06-16 [ssb] */
@@ -157,7 +157,9 @@
PHP_INI_BEGIN()
- STD_PHP_INI_ENTRY("user_agent", NULL, PHP_INI_ALL, OnUpdateString, user_agent,
php_basic_globals, basic_globals)
+ STD_PHP_INI_ENTRY("user_agent", NULL, PHP_INI_ALL, OnUpdateString, user_agent,
+php_file_globals, file_globals)
+ STD_PHP_INI_ENTRY("default_socket_timeout", "60", PHP_INI_ALL, OnUpdateInt,
+default_socket_timeout, php_file_globals, file_globals)
+ STD_PHP_INI_ENTRY("auto_detect_line_endings", "0", PHP_INI_ALL, OnUpdateInt,
+auto_detect_line_endings, php_file_globals, file_globals)
PHP_INI_END()
PHP_MINIT_FUNCTION(file)
Index: php4/ext/standard/file.h
diff -u php4/ext/standard/file.h:1.62 php4/ext/standard/file.h:1.63
--- php4/ext/standard/file.h:1.62 Tue Aug 20 16:47:47 2002
+++ php4/ext/standard/file.h Mon Sep 23 14:12:38 2002
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: file.h,v 1.62 2002/08/20 20:47:47 wez Exp $ */
+/* $Id: file.h,v 1.63 2002/09/23 18:12:38 wez Exp $ */
/* Synced with php 3.0 revision 1.30 1999-06-16 [ssb] */
@@ -115,6 +115,9 @@
int pclose_ret;
HashTable ht_persistent_socks;
size_t def_chunk_size;
+ int auto_detect_line_endings;
+ int default_socket_timeout;
+ char *user_agent;
} php_file_globals;
#ifdef ZTS
Index: php4/ext/standard/http_fopen_wrapper.c
diff -u php4/ext/standard/http_fopen_wrapper.c:1.48
php4/ext/standard/http_fopen_wrapper.c:1.49
--- php4/ext/standard/http_fopen_wrapper.c:1.48 Sun Sep 22 21:47:01 2002
+++ php4/ext/standard/http_fopen_wrapper.c Mon Sep 23 14:12:38 2002
@@ -18,7 +18,7 @@
| Wez Furlong <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: http_fopen_wrapper.c,v 1.48 2002/09/23 01:47:01 wez Exp $ */
+/* $Id: http_fopen_wrapper.c,v 1.49 2002/09/23 18:12:38 wez Exp $ */
#include "php.h"
#include "php_globals.h"
@@ -203,8 +203,8 @@
if (context &&
php_stream_context_get_option(context, "http", "user_agent", &ua_zval) ==
SUCCESS) {
ua_str = Z_STRVAL_PP(ua_zval);
- } else if (BG(user_agent)) {
- ua_str = BG(user_agent);
+ } else if (FG(user_agent)) {
+ ua_str = FG(user_agent);
}
if (ua_str) {
Index: php4/main/network.c
diff -u php4/main/network.c:1.67 php4/main/network.c:1.68
--- php4/main/network.c:1.67 Sun Sep 22 21:47:04 2002
+++ php4/main/network.c Mon Sep 23 14:12:38 2002
@@ -16,11 +16,9 @@
| Streams work by Wez Furlong <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: network.c,v 1.67 2002/09/23 01:47:04 wez Exp $ */
+/* $Id: network.c,v 1.68 2002/09/23 18:12:38 wez Exp $ */
/*#define DEBUG_MAIN_NETWORK 1*/
-#define MAX_CHUNKS_PER_READ 10
-#define SOCKET_DEFAULT_TIMEOUT 60
#include "php.h"
@@ -540,7 +538,7 @@
memset(sock, 0, sizeof(php_netstream_data_t));
sock->is_blocked = 1;
- sock->timeout.tv_sec = SOCKET_DEFAULT_TIMEOUT;
+ sock->timeout.tv_sec = FG(default_socket_timeout);
sock->socket = socket;
stream = php_stream_alloc_rel(&php_stream_socket_ops, sock, persistent, "r+");
Index: php4/main/streams.c
diff -u php4/main/streams.c:1.78 php4/main/streams.c:1.79
--- php4/main/streams.c:1.78 Mon Sep 23 11:21:16 2002
+++ php4/main/streams.c Mon Sep 23 14:12:39 2002
@@ -20,7 +20,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: streams.c,v 1.78 2002/09/23 15:21:16 wez Exp $ */
+/* $Id: streams.c,v 1.79 2002/09/23 18:12:39 wez Exp $ */
#define _GNU_SOURCE
#include "php.h"
@@ -95,6 +95,10 @@
ret->abstract = abstract;
ret->is_persistent = persistent;
ret->chunk_size = FG(def_chunk_size);
+
+ if (FG(auto_detect_line_endings))
+ ret->flags |= PHP_STREAM_FLAG_DETECT_EOL;
+
ret->rsrc_id = ZEND_REGISTER_RESOURCE(NULL, ret, php_file_le_stream());
strlcpy(ret->mode, mode, sizeof(ret->mode));
@@ -514,7 +518,7 @@
eol = memchr(readptr, '\n', avail);
}
- if (eol && ((ptrdiff_t)eol + 1 - (ptrdiff_t)readptr) <= maxlen - 1) {
+ if (eol && (size_t)((ptrdiff_t)eol + 1 - (ptrdiff_t)readptr) <= maxlen
+- 1) {
justread = eol + 1 - readptr;
} else {
eol = NULL;
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php