Commit Graph

3658 Commits

Author SHA1 Message Date
Zeev Suraski
90c8e2cf75 Fix Win32 build 2001-01-15 10:22:19 +00:00
David Croft
5951b8063a restored vadddomain/vdeldomain to use library functions rather than invoking
vpopmail executables
implemented vaddaliasdomain natively
global variable to store whether vpopmail was used and only vclose() if
 necessary
return the functions to returning true/false for success/failure rather than
 some arbitrary vpopmail return value
return the functions to not doing everything at once as you then lose
 fine-grain control over its operation
change C++ comments to C
2001-01-15 02:14:13 +00:00
Stig Bakken
fcdf6ac680 @- Added odbc_error() and odbc_errormsg() functions (Stig) 2001-01-15 01:11:06 +00:00
David Croft
646e796e5a vpopmail's bin dir is unnecessary as the library exports these functions 2001-01-14 22:21:16 +00:00
Boian Bonev
487f211fcf #added simple minimum survival readme 2001-01-14 17:38:30 +00:00
Boian Bonev
bd92e10213 merged my version with David Croft's
removed unneccessary php.ini calls and defines
removed module_init, shutdown, request_init declarations and references
added request_shutdown to close mysql/other db connection
	(a must in apache module)
added defines for external binaries from vpopmail
changed functions to present more consistent api from user's point of view
	so that in one call more stuff is done
added more comprehensive MINFO function helping users debug their case
added static int vpopmail_exec(char *cmd) [will change to php_Exec soon]
@ vpopmail extension updated to working alfa. give it a try but keep in
@ mind that it is not ready for production environments (Boian Bonev)
2001-01-14 17:04:22 +00:00
Boian Bonev
f6ad8186d6 updated 2001-01-14 16:47:56 +00:00
Rasmus Lerdorf
e37d304d35 Name this php_Exec instead 2001-01-14 16:41:06 +00:00
Boian Bonev
ef462402f4 rewritten the whole logic of the script
added VPOPMAIL_BIN_DIR to point to ~vpopmail/bin directory
added checks for ALL files needed by the extension
style fixes to the output
2001-01-14 16:40:26 +00:00
Sean Bright
40f3524247 Added localeconv() function. Operates similarly to localeconv() defined in
locale.h.  Should work well under non-ZTS as well as ZTS.
2001-01-14 16:36:30 +00:00
Rasmus Lerdorf
5311bfa5c5 Export _Exec for extensions to use 2001-01-14 16:30:22 +00:00
Thies C. Arntzen
6b84fb1cde fixed readfile() fd-leak.
guys, always remember that every function that *generates output* could cause a
bailout if ignore_user_abort is set to false (and the user _aborts_ the
connection). in this case a longjump will be performed and our function (in
this case readfile) will have no chance to clean-up. having said that it's a
good idea to register all opened files using REGISTER_RESOURCE - that way the
engine will make sure they get closed on request end.
2001-01-14 14:11:38 +00:00
Zeev Suraski
27afea5c6d Don't fetch numeric indices in mysql_fetch_object() 2001-01-14 09:30:17 +00:00
David Croft
d9671d5d49 # restored code for latest vpopmail version
@ New extension for vpopmail - http://www.inter7.com/vpopmail (David Croft)
2001-01-14 09:01:26 +00:00
David Croft
560e218ee6 vpopmail extension 2001-01-14 08:54:01 +00:00
Rui Hirokawa
c61a557808 added iconv_get_encoding and supported initialization from php.ini 2001-01-14 07:40:16 +00:00
David Croft
00db616ac4 reserve space for quoted characters
fixes buffer overrun bug #8694
2001-01-14 05:37:33 +00:00
Zeev Suraski
a85da45a66 Both thread-safe and thread-unsafe builds should be ok now 2001-01-13 23:49:44 +00:00
Zeev Suraski
94ca2181fb Add sybase_get_last_message() from Jan Fedak <J.Fedak@sh.cvut.cz>
@- Added sybase_get_last_message() to the Sybase CT module (Jan Fedak)
2001-01-13 22:47:44 +00:00
Derick Rethans
97510346ed - Removed a stale var that broke the build 2001-01-13 22:00:23 +00:00
Derick Rethans
1104639d0a - There was one ret left, changed it to FG(pclose_ret), this fixes the
build
2001-01-13 21:52:09 +00:00
Colin Viebrock
707e7bd938 Support for perl-compatible blowfish encryption (in libmcrypt CVS and
versions later than 2.4.8)
2001-01-13 20:55:15 +00:00
Zeev Suraski
86624dfad9 - Fix exec() bug
- Merge fsock and file globals
2001-01-13 13:59:22 +00:00
Zeev Suraski
6562e98afa Fix Windows & thread-safe build 2001-01-13 13:02:19 +00:00
Stig Venaas
d9f52a4176 Fixed memory leaks that could happen in some error situations. Also removed
some unnecessary code in ldap_set_option()
2001-01-13 10:00:27 +00:00
Stig Venaas
fe98565b60 Realized that emalloc() never returns NULL, simplified code 2001-01-13 09:16:36 +00:00
Stig Venaas
2d17c57664 Added parallel search when given array of link identifiers
@- Made ldap_list(), ldap_read() and ldap_search() do parallel search when
@  first parameter is an array of link identifiers (Stig Venaas)
2001-01-12 22:08:26 +00:00
Stig Venaas
5cf503b2a9 Follows redirects again, and $http_response_header now contains all headers
with an empty string as delimiter
@- Made fopen() of HTTP URL follow redirects, $http_response_header will
@  contain all headers with empty string as delimiter (Stig Venaas)
2001-01-12 20:49:25 +00:00
foobar
ab6639564c - Fixed a possible crash bug in xmltree().
# PR: #7052
2001-01-12 16:49:06 +00:00
Sterling Hughes
0e6fe30139 Make daniel's changes work in ZTS mode... 2001-01-12 10:49:38 +00:00
Daniel Beulshausen
490cca07de take out emtpy struct
# vc chokes on them
2001-01-12 10:26:29 +00:00
Rasmus Lerdorf
69d16ee1f9 Fix for bug 6073 from Sean R. Bright <elixer@erols.com> 2001-01-12 08:03:24 +00:00
foobar
a8e88c0ddc Fix build. 2001-01-11 18:25:33 +00:00
foobar
1fc035dfa5 If external expat is used, header file is expat.h 2001-01-11 16:19:20 +00:00
Daniel Beulshausen
29714ff530 removed old expat libs 2001-01-11 14:50:52 +00:00
Rui Hirokawa
c2881f7c6b disable directory search for libexpat and disable some macros for libxml-1.95. 2001-01-10 14:41:01 +00:00
Thies C. Arntzen
6871b839b5 exec'd processes now get cleaned up even if the browser connections was
aborted.
fixes: #8143
2001-01-10 13:08:14 +00:00
David Croft
2b3d9d7ec4 fixed swatch internet time (bugs#8242,7106) 2001-01-10 06:48:06 +00:00
David Croft
0afe88cbc6 Allocate buffer in date() for the actual length of the timezone (bug#8292) 2001-01-10 04:01:02 +00:00
Rui Hirokawa
c172daa6d1 added a option to dedine libexpat install directory (by Jani Taskinen) 2001-01-09 22:15:56 +00:00
Sterling Hughes
f058a07915 Move the definition of the xslt_set_encoding to the "proper" place in the file and
fix the prototype.
2001-01-09 20:17:11 +00:00
Sascha Schumann
7eb8469679 Avoid possible memory leak in the URL scanner, if the connection is
interrupted during writing the output.
2001-01-09 16:45:19 +00:00
Egon Schmid
8d5d20500b Sorry, two lines are enough. 2001-01-09 15:53:09 +00:00
Egon Schmid
6aef38f590 Fixed protos. 2001-01-09 15:48:15 +00:00
Rui Hirokawa
187828f2f2 moved to ext/iconv. 2001-01-09 15:40:49 +00:00
Rui Hirokawa
0acff20f38 added test code to iconv. 2001-01-09 15:39:25 +00:00
Rui Hirokawa
4e035d035a move iconv related functions to separate iconv extension. 2001-01-09 15:22:45 +00:00
Rui Hirokawa
0afcb03de3 added iconv extension. 2001-01-09 15:11:23 +00:00
foobar
e247b206e0 If TZ environment variable is changed call tzset().
# Although man page for tzset() says it should be called automaticly
# by some of the time related functions, IRL this doesn't happen.
# PR: 3977, 4732, 5510, 6972, 7203, 8502, 8609
2001-01-09 09:02:21 +00:00
Sascha Schumann
dbb3402c0f php_add_var_hash() uses sizeof(id) in the calls to zend_hash_*, implying
that all bytes in the character array have been set (they are used
to compute the hash value using hashpjw).

The function assumes that sprintf's %p modifier would always prefix
the output with "0x".  On HPUX, this is not the case.  Hence, not
all bytes may be properly initialized before being read.

This has been addressed by using only initialized bytes as the key.
2001-01-09 05:49:37 +00:00
Sascha Schumann
7fbc93d57f WS fix 2001-01-08 23:18:07 +00:00
Sascha Schumann
6a6317a403 Fix ZTS build (broken by iconv-related changes). 2001-01-08 23:13:57 +00:00
Andrei Zmievski
145f60a485 @- Changed extract() to check that prefixed name is a valid one. (Andrei)
Changed extract() to check that prefixed name is a valid one.
Optimized extract() a bit too.

# It'd be nice if someone made regression tests for extract().
2001-01-08 21:57:14 +00:00
Derick Rethans
aff9ff8356 - Fix for bug #8535 - floating point exception on FreeBSD while initializing
crypt random numbers
2001-01-08 21:13:24 +00:00
Andrei Zmievski
74175e429d @- Changed extract() to return the number of variables extracted. (Andrei) 2001-01-08 20:57:59 +00:00
Stanislav Malyshev
b06323cd6e Optimize it a bit - no need to dup empty string (which can be pretty common for .ini) 2001-01-08 20:13:32 +00:00
Stanislav Malyshev
77ebea3a6f Duplicate property value, otherwise parser would free it and we're in bad shape. 2001-01-08 20:10:16 +00:00
Stanislav Malyshev
d812ecb75f Fix undefind filehandle type on INI parsing. 2001-01-08 19:45:12 +00:00
Egon Schmid
40a71cfdc7 Corrected some protos. 2001-01-08 18:31:59 +00:00
Stig Venaas
897f293d13 Added ldap_rename(). Currently requires API with ldap_rename().
@- Added ldap_rename() function (Stig Venaas)
2001-01-08 18:13:08 +00:00
Stanislav Malyshev
c7984660fc Use platform's dir separator 2001-01-08 16:39:39 +00:00
Rui Hirokawa
6368933118 added iconv_set_encoding() to change the encoding setting. 2001-01-08 02:39:52 +00:00
Rui Hirokawa
517b81ad43 added a output handler function ob_iconv_handler which tranforms output encoding using iconv(). 2001-01-08 01:40:33 +00:00
Stig Venaas
7e79846d10 Added OpenSSL 2001-01-07 21:35:20 +00:00
Stig Venaas
0ecaf2eac6 Minor changes to LDAP_OPT constants, and added support for controls to
ldap_set_option.
@- Made ldap_set_option() support controls (Stig Venaas)
2001-01-07 21:18:02 +00:00
Zeev Suraski
c4d673a1f9 Fix possible startup crash 2001-01-07 18:56:40 +00:00
Derick Rethans
62375ba7bd - Fix for bug 7035, regarding PHP_MAX_SALT_LENGTH for OpenBsd 2001-01-07 17:22:17 +00:00
Stig Venaas
1b3385cad8 Added LDAPv3 stuff. ldap_search() now treats LDAP_ADMINLIMIT_EXCEEDED like
LDAP_SIZELIMIT_EXCEEDED and returns referral results.
Added new functions ldap_parse_result(), ldap_first_reference(),
ldap_next_reference() and ldap_parse_reference() that among other things
make referrals and search references accessible.
@- Changed ldap_search() and added functions ldap_parse_result(),
@  ldap_first_reference(), ldap_next_reference() and ldap_parse_reference()
@  to cope with LDAPv3 stuff like referrals and references. (Stig Venaas)
2001-01-07 13:03:11 +00:00
Sascha Schumann
3f2a3a9b01 Fix ZTS build which was broken by the last commit 2001-01-07 12:22:50 +00:00
Thies C. Arntzen
d79071b2da fix small leak in ociexecute()
fixes: #8573
submitted by: tcarroll@chc-chimes.com
2001-01-07 11:43:07 +00:00
Stig Venaas
59fa3f3d04 Made OpenSSL extension work with 0.9.5 and changed version check to 0.9.5 2001-01-07 11:36:15 +00:00
Sascha Schumann
1b15d1f166 Use MAKE_STD_ZVAL/FREE_ZVAL to handle zval memory allocation. 2001-01-07 10:42:15 +00:00
Sascha Schumann
41cd55dd44 Add a new test and refine the fourth test 2001-01-07 10:40:41 +00:00
Sascha Schumann
24c49a21b9 Use zval_ptr_dtor instead of zval_dtor/FREE_ZVAL pair.
Submitted by: Andi Gutmans
2001-01-07 10:32:06 +00:00
foobar
9f68043524 Fixed bug: 8478 2001-01-07 09:22:53 +00:00
foobar
dd2cd995cb imap_user and imap_password were freed too early.
PR: 8424
2001-01-07 07:47:46 +00:00
Rui Hirokawa
337edb9cf4 fixed option name mismatch. 2001-01-06 08:38:07 +00:00
Rui Hirokawa
20aa57ec0d linked with libexpat. it's necessary to use sablot-0.50. added xslt_set_encoding() function. 2001-01-06 08:37:00 +00:00
Frank M. Kromann
e4d1107058 Adding hack to allow odbc_tables to work on Access databases 2001-01-05 22:01:22 +00:00
Daniel Beulshausen
315e790ccc remove stupid ifdef's 2001-01-05 18:09:43 +00:00
Daniel Beulshausen
be5cfa608a fixed date not allocating enough buffer, bug 7963 2001-01-05 17:34:47 +00:00
Daniel Beulshausen
fe8238e6e9 include config.w32.h under win32 2001-01-05 17:07:02 +00:00
Andi Gutmans
5e5c59ebcb - Get rid of C++ comments 2001-01-05 14:34:15 +00:00
Uwe Steinmann
db56ddb36c - fixed potential segmfault in xmldoc() and xmldocfile() 2001-01-05 14:11:19 +00:00
Rui Hirokawa
32c3af8c39 added libxml-1.95 support and some new functions related to namespace support. changed config.m4 to support xml extension as shared module. 2001-01-05 06:36:51 +00:00
Frank M. Kromann
2c3f424e01 Fixing wrong return value when executing statements not returning a record set. 2001-01-04 17:29:50 +00:00
Jan Borsodi
db0be122d2 Added credits. 2001-01-04 12:35:48 +00:00
Jan Borsodi
b849be0b02 Removed some stupid header text.
Implemented functions for returning the error string and starting and stopping the message handler.
Added comments for all functions.
2001-01-04 12:30:20 +00:00
Jan Borsodi
fb9c918f1a Removed some stupid header text.
Added a new struct for handling error logs and Qt Message Handler handles.
Added functions for returning the error string and starting and stopping the message handler.
2001-01-04 12:29:08 +00:00
Jan Borsodi
0798a81739 New function qdom_error which returns the error text from the last qdom operation, or FALSE if none occured.
Fixed the documentation for the qdom_tree function.
Added init and shutdown code for some global variables.
Added code for starting and stopping the Qt Message Handler in qdom_tree.
2001-01-04 12:27:39 +00:00
Jan Borsodi
c178c3b5e4 New function qdom_error which returns the error text from the last qdom operation, or FALSE if none occured. 2001-01-04 12:26:22 +00:00
Jouni Ahto
abcdb47fc2 Changing my email address... 2001-01-04 11:15:35 +00:00
Jon Parise
8dca8f0e69 Make socket support compile under Solaris 8 with the Sun WorkShop compiler.
PR: 8468
2001-01-03 18:06:10 +00:00
foobar
e4a946b3f4 I missed this function.. 2001-01-03 16:53:00 +00:00
foobar
d52824c42d Fix pr #8305. 2001-01-03 16:07:55 +00:00
foobar
31a1c0aca6 Trying to bring pdf extension a bit more up to date. 2001-01-03 16:05:45 +00:00
Daniel Beulshausen
2f6a05ecb8 fix filepath handling 2001-01-03 15:50:20 +00:00
Daniel Beulshausen
795025e0dc fix bug 8341 & 8394 2001-01-03 11:41:31 +00:00
Zeev Suraski
efab051391 Import COM patch from Harald Radi <h.radi@nme.at>
The new code should allow for better international support.
2001-01-02 23:08:20 +00:00
Zeev Suraski
bd0ac7fe14 Many patches. I hope I remember them all:
- Make sapi_module available to external modules (PHPAPI)
- Make the php.ini path reported in phpinfo() always point to
  real full path of the php.ini file
- Optimized the ISAPI module not to read unnecessary server
  variables and read necessary variables at most once.
2001-01-02 22:49:31 +00:00
Chuck Hagenbuch
ba114dc997 Make the generated <input> lower case and terminated with a /,
to be xhtml-compliant.
2001-01-02 20:39:27 +00:00
Rasmus Lerdorf
a35b9c45f5 Fix date('r') overflow
@Fix date('r') overflow
2001-01-02 20:26:51 +00:00
Stig Venaas
c5b11042b0 Hopefully solves some bad behavior in array_unique(), array_intersect()
and array_diff(). Now using SORT_STRING instead of SORT_REGULAR
@- Fixed misbehavior of array_unique(), array_intersect() and array_diff();
@  could in certain cases give wrong result or segfault (Stig Venaas)
2000-12-28 23:50:42 +00:00
Dan Kalowsky
fbbaf5b5b5 it seems one section was missing the HAVE_SOLID_30 section... 2000-12-28 22:01:50 +00:00
Dan Kalowsky
8b2dbfca77 added #define(OPENLINK) to the SDWORD instead of SQLINTEGER line.. this is for bug #5526 to allow compiles. 2000-12-28 19:23:09 +00:00
Dan Kalowsky
68fa8f9b0b config file was missing a new line which seemed to cause the if statement to parse the else into an echo. yuck. 2000-12-28 19:12:28 +00:00
Rasmus Lerdorf
2a926135a9 Fix typo 2000-12-28 17:25:11 +00:00
Stanislav Malyshev
cf66091554 Add license info 2000-12-28 12:13:21 +00:00
Jon Parise
4e384e0073 Make nl2br() output <br /> instead of <br> to be XHTML compliant.
Bug: 8390
2000-12-28 01:02:44 +00:00
Zeev Suraski
338b9b0819 - Make the INI mechanism thread safe (fix necessary API changes from Zend)
- Make the Win32 non-TS configuration build again
2000-12-27 15:43:05 +00:00
Andrei Zmievski
34f5c0c36d Fix argument check (bug #8421). 2000-12-27 13:59:40 +00:00
Zeev Suraski
a697d076bc Add Release_TSDbg support. This mode compiles PHP with the release C runtime,
but with optimizations disabled and with debug info.  Some crashes can only
be debugged using this mode.
2000-12-26 22:15:32 +00:00
Sascha Schumann
60492fa685 Skip mcrypt/gmp tests, if the extensions are not available. 2000-12-24 16:51:04 +00:00
Sascha Schumann
8e22a8a73b Add session_set_save_handler test 2000-12-24 16:33:27 +00:00
Sascha Schumann
3ca8721e99 More instances of s/efree/FREE_ZVAL/ 2000-12-24 16:30:42 +00:00
Sascha Schumann
7574cd4360 Not freeing the zval using FREE_ZVAL caused a segfault in
shutdown_memory_manager.
2000-12-24 16:26:38 +00:00
Sascha Schumann
80ff1a3874 Also call some member functions of the deserialized objects 2000-12-24 16:06:32 +00:00
Sascha Schumann
72f99e668e Add session object deserialization test 2000-12-24 16:01:32 +00:00
Sascha Schumann
5722a0e1ce Add two regression tests for the session module 2000-12-24 15:57:05 +00:00
Sascha Schumann
3a16dc1cac Fix segfault introduced through recent zend_hash_get_current_key* changes. 2000-12-24 15:50:39 +00:00
Thies C. Arntzen
1fb4c6dfe8 revert last fix. the problem is now fixed globally in Zend. 2000-12-24 10:58:44 +00:00
Thies C. Arntzen
009064bc4d fix #8363.
fix call_user_function when parser->object is not set.
2000-12-23 21:46:44 +00:00
Sascha Schumann
92f61634eb (PHP session_unset) Return early, if no session was started.
PR: #8354
2000-12-22 22:53:14 +00:00
Sascha Schumann
0b194cbca6 Support multi-char arg separators.
PR: #8274
2000-12-22 22:52:11 +00:00
Sascha Schumann
9815d5c94c Signal an error condition, if write was unable to perform the complete
operation.
2000-12-22 19:26:02 +00:00
Sascha Schumann
663d426e74 NULL is a valid return value of mmap. Check against (void *) MAP_FAILED. 2000-12-22 16:39:01 +00:00
Sascha Schumann
3c9f50efaf (php_file_copy) Use mmap to map the source file into our address space
and then simply write it out to the target file.  That avoids switching
between user and kernel land too many times.  If that does not work, we
fall back to the read/write method.
2000-12-22 16:34:11 +00:00
Andrei Zmievski
a1614b8411 (PHP preg_replace) Fix to allow proper escaping of captured subpattern
references in the replacement string.
(PHP array_sum) Check that argument is an array.
2000-12-22 16:31:42 +00:00
Zeev Suraski
aa6d2ac5d0 Heads up people!
Updated the get_current_key() API - the relevant authors, please take
a look at the updated code and make sure it's ok...
2000-12-22 12:57:09 +00:00
foobar
c29e24c7e2 @- Changed setlocale() to use LC_* constants. (Jani) 2000-12-21 13:46:50 +00:00
Sascha Schumann
225a08e8dd No need for GCC extensions in non-debugging mode.
PR: #8345
2000-12-21 05:31:18 +00:00
Sascha Schumann
7f96af83b2 Stop automatically passing vars to AC_SUBST through PHP_SUBST.
There are some variables which are needed for Makefiles and files
created by AC_OUTPUT; we use PHP_SUBST_OLD for those now.

genif.sh was moved to an appropiate place.
2000-12-20 17:21:37 +00:00
Andi Gutmans
73c0f4b4c2 - Use memcmp() instead of ugly char-by-char compare 2000-12-20 15:51:16 +00:00
Zak Greant
9e9688d1de Removed unused variable from is_scalar 2000-12-20 11:07:20 +00:00
Zeev Suraski
48b410c41e Add the QA team to the credits 2000-12-19 22:59:14 +00:00
Hartmut Holzgraefe
560a4c1105 @ ctype functions now follow the extension naming conventions (Hartmut)
# removed unneccesary code generated by ext_skel
2000-12-19 11:50:30 +00:00
Stanislav Malyshev
f487f5960a Fix possible crash 2000-12-19 11:23:27 +00:00
foobar
402d60491b wb fix. 2000-12-19 00:14:58 +00:00
foobar
c66c250c41 Fix pr: #7982 2000-12-19 00:12:58 +00:00
Zak Greant
bbf41d2116 Adding test for is_scalar(). 2000-12-18 21:24:25 +00:00
Zak Greant
e4ca57bb57 Added is_scalar() function. 2000-12-18 19:23:50 +00:00
Hartmut Holzgraefe
96ccf69301 fixed BUG #8306: shmat() returns -1 on errors, not NULL 2000-12-18 12:22:28 +00:00
Stanislav Malyshev
8b1377043d No need to link main binary with ODBC libs if we use shared module 2000-12-17 11:17:50 +00:00
Sascha Schumann
2d011afbfd Don't do anything, if the input string has a length of 0.
PR: #7686
2000-12-17 02:09:07 +00:00
Andi Gutmans
9fbd0a24ba - How did CVS let me commit this? Probably it confused with the branch
merge
2000-12-16 21:01:21 +00:00
Andi Gutmans
8518010945 - In PHP we're supposed to only use MAXPATHLEN (defined in php.h) 2000-12-16 20:56:44 +00:00
Andi Gutmans
86a1cace27 - Make all places use MAXPATHLEN in the same way. It includes the
terminating NULL.
2000-12-16 20:52:43 +00:00
Rasmus Lerdorf
808da6dbb5 Attempt by Matt Bonneau to get thumbnail extraction working
(no need to bring this into the 4.0.4 branch)
2000-12-15 17:25:20 +00:00
Derick Rethans
ffd0e06b60 - Added test for bug #8040 2000-12-15 15:59:29 +00:00
Derick Rethans
6caa8c37c2 - Added a patch that changed the checking of which version of libmcrypt is
installed (Thanks to: Anil Madhavapeddy <anil@recoil.org>)
2000-12-15 15:35:48 +00:00