Commit Graph

285 Commits

Author SHA1 Message Date
Sara Golemon
d516184885 Fail loudly, silence bogus bugs. 2003-12-16 19:41:26 +00:00
Wez Furlong
bf033aa5a8 Fix ftp build when openssl is built as a shared extension. 2003-12-06 16:12:10 +00:00
Wez Furlong
dbb152b96a Detect and enable IPv6 support under win32.
The ws2tcpip.h header links to IPv6 functions dynamically
and the generated binary will run on win98 and later.
2003-12-06 00:00:31 +00:00
Wez Furlong
05b9b20ed8 Add new (optional!) win32 build infrastructure.
Will follow up to internals@ shortly.
2003-12-02 23:17:04 +00:00
Ilia Alshanetsky
046904f2b1 Fixed bug #26113 (remove leftover local file when ftp_get/ftp_nb_get fails) 2003-11-04 20:56:47 +00:00
Sara Golemon
0a3bc21c5c Manageability 2003-09-18 17:51:55 +00:00
Sara Golemon
c553af47e0 Add ftp_alloc() for servers which require client to predeclare filesize to be sent. 2003-09-18 17:36:08 +00:00
Sara Golemon
4e6672eadd Fix Bug #25294 LIST/NLST can cause segfault because ftp->data not cleaned properly 2003-09-09 21:12:49 +00:00
Sara Golemon
4936234fd8 MFB(r-1.74.2.13) Bug #25314 ASCII mode transfers behaving like binary when initiated from windows. 2003-09-08 22:40:12 +00:00
Ilia Alshanetsky
07f864d06b Make sure that ftp->data is nulled after it's freed. This may fix bug
#25294 & bug #25296.
2003-08-31 21:07:01 +00:00
Ilia Alshanetsky
9d9727aac5 Fixed compiler warnings. 2003-08-28 19:17:34 +00:00
Ilia Alshanetsky
93bcd55eaf emalloc -> safe_emalloc 2003-08-12 00:58:52 +00:00
Zeev Suraski
23f08b9a2f fix another broken prototype 2003-08-07 16:03:17 +00:00
Zeev Suraski
2e869c7cb3 Fix prototype 2003-08-07 16:02:28 +00:00
foobar
3a7ca909be - HAVE_OPENSSL_EXT is not defined always. 2003-06-27 16:41:41 +00:00
Andrey Hristov
eb33adf139 proto fixes 2003-06-15 15:29:46 +00:00
James Cox
f68c7ff249 updating license information in the headers. 2003-06-10 20:04:29 +00:00
Moriyoshi Koizumi
08bf402440 Fixed bug #23683 2003-05-19 13:26:28 +00:00
Sara Golemon
c9651182c6 MFB(r-1.74.2.8) Bug #14369. ftp extension allows circumvention of safe_mode restrictions. HEAD version of this patch uses the simpler open_wrapper approach to applying safe mode restrictions. Also allows writting to/from wrappers this way. 2003-05-17 04:21:57 +00:00
Ilia Alshanetsky
6965f229a6 MFH 2003-04-03 00:55:56 +00:00
Sebastian Bergmann
5ca078779a Eliminate some TSRMLS_FETCH() calls. Tested with Win32 build of SAPI/CGI and SAPI/CLI on Win32. 2003-03-25 08:07:13 +00:00
foobar
d0ac3d0646 Fixed bug #22765 2003-03-18 17:30:32 +00:00
David Hill
4f8ae7b111 fixing missed int to long with zend_parse_parameters 2003-03-10 15:52:10 +00:00
David Hill
5c90216d2c 64-bit correction to variables passed to zend_parse_parameters
@64-bit correction to variables passed to zend_parse_parameters (Dave)
2003-03-06 23:07:28 +00:00
Wez Furlong
349ce76f96 Tidy up stupid signed/unsigned issues with win32 by introducing a php_socket_t typedef. 2003-02-28 21:03:36 +00:00
Wez Furlong
1b53a2d12e New user-space functions:
. stream_socket_client() - similar to fsockopen(), but more powerful.
  . stream_socket_server() - Creates a server socket.
  . stream_socket_accept() - Accept a client connection.
  . stream_socket_get_name() - Get local or remote name of socket.

Tidy up some leaks and debug printfs.
Move more streams functions into streamsfuncs.c and streamsfuncs.h.
2003-02-28 19:53:21 +00:00
foobar
08b5f6b2b9 - No need to include the ssl headers elsewhere but in ext/openssl
# ext/ftp doesn't use streams yet so it needs to include them.
2003-02-28 07:25:15 +00:00
Wez Furlong
0a18a9d744 A add much more useful select(2) implementation than is provided by
windows sockets.  The winsock implementation will only work with sockets;
our implementation works with sockets and file descriptors.
By association, stream_select() will now operate correctly with files, pipes and sockets.

This change required linking against the winsock2 library.  In terms of
compatibility, only older versions of windows 95 do not have winsock2
installed by default.  It is available as a redistributable file, and is most likely installed by any OS patches (eg: Internet Explorer) applied by the user.

Also, add a win32 compatible pipe test when opening a stream from a pipe.  This test will only work on NT, win2k and XP platforms.  Without this test, interleaved fread() and select() calls would cause the read buffer to be clobbered.  I will be working on a fix for this issue for win9x.
2003-02-16 03:48:49 +00:00
Ilia Alshanetsky
c59240d599 CS fixes. 2003-02-14 20:15:11 +00:00
Sara Golemon
a9e1b5f641 MFB(r-1.68.2.5) Bug 22052 2003-02-13 22:20:21 +00:00
Sara Golemon
d1d0d0b71a Bug #22059. ftp_chdir() causes segfault. efree(ftp->pwd) was being called without knowing for certain that ftp->pwd
actually pointed anywhere.
2003-02-13 19:48:49 +00:00
Sara Golemon
81797baed4 Add ftp_raw() to send raw command strings to an FTP server. 2003-01-31 04:54:57 +00:00
Sara Golemon
d0cb097c52 Fix potential buffer overflow. 2003-01-27 19:51:50 +00:00
Sara Golemon
761fa96412 Feature Request #21748. Added function ftp_chmod(). 2003-01-27 02:54:12 +00:00
Ilia Alshanetsky
928c260c57 ZTS cleanup. 2003-01-07 13:02:43 +00:00
Ilia Alshanetsky
f0de896ed2 Fixed ZTS build. 2003-01-07 03:44:12 +00:00
Ilia Alshanetsky
34e868d451 MFB + CS 2003-01-07 02:47:24 +00:00
Anantha Kesari H Y
90ba724072 Modified for NetWare. 2003-01-03 14:24:07 +00:00
Sebastian Bergmann
b506f5c8f8 Bump year. 2002-12-31 16:08:15 +00:00
Derick Rethans
f3d3dd5bc8 - MFB 2002-12-26 23:45:05 +00:00
Ilia Alshanetsky
33de9befa1 Fixed bug #20812, ftp_get returned NULL on success instead of TRUE. 2002-12-06 06:07:40 +00:00
Ilia Alshanetsky
b855893b0c Fixed ZTS build
Fixed 2 ZTS related warnings
2002-10-13 01:40:46 +00:00
Stefan Esser
4368b8e4ac some FTP servers return 32bit port numbers. 2002-10-04 22:20:08 +00:00
Stefan Esser
8fae3d7a49 swapped conditions to correct the logic 2002-10-03 12:16:44 +00:00
Stefan Esser
b220b7113f Added ftp_ssl_connect() for FTP over SSL. 2002-10-03 11:33:05 +00:00
Stefan Esser
8827f8eca9 renamed ftp_async_* into ftp_nb_* 2002-10-03 09:10:24 +00:00
Wez Furlong
0141e97052 Make these all work with persistent streams too. 2002-09-25 15:46:47 +00:00
Wez Furlong
ad4afdf827 fix some warnings. 2002-09-23 14:50:21 +00:00
Anantha Kesari H Y
e75aae81fc Removed unnecessary code that was added for NetWare 2002-09-11 10:28:22 +00:00
Anantha Kesari H Y
77e2ed4834 NetWare related additions/modifications into FTP files 2002-09-05 10:13:27 +00:00
Sebastian Bergmann
e8b50bc834 Fix ZTS build. 2002-08-25 22:17:56 +00:00
Wez Furlong
27adb75585 Remove php_stream_error as discussed with Rasmus.
Unify error messages for ext/ftp. (which was using php_stream_error).
2002-08-25 10:10:23 +00:00
Ilia Alshanetsky
a86b1fc275 Fixed compile warning. 2002-08-21 03:59:27 +00:00
Rasmus Lerdorf
fb0c9122c1 Fix typo 2002-08-13 04:19:25 +00:00
Sebastian Bergmann
9abdbd9c29 Fix warnings. 2002-08-08 18:55:19 +00:00
Stefan Esser
a6cf14ac5c ftp_close returns now TRUE on success and FALSE on failure. 2002-07-30 20:37:59 +00:00
Stefan Esser
70d7184624 Do not leak data connection. 2002-07-27 09:18:51 +00:00
Frank M. Kromann
df0bab2c7b Fizing ZTS build 2002-07-26 22:14:55 +00:00
Stefan Esser
80e9724ccc [EXPERIMENTAL] Added functions for asynchronous FTP transfers 2002-07-26 22:00:25 +00:00
Stefan Esser
55c1b3d35b fixed cut & paste typo 2002-07-26 16:26:55 +00:00
Stefan Esser
c9676ccad7 @- FTP extension does support (auto)resuming now.
Added (Auto)Resuming functionality to ftp_(f)get/(f)put via optional 5th parameter.
2002-07-26 13:03:08 +00:00
Jason Greene
a64eceef59 Switch streams socket abstraction to use a timeval structure instead of an
integer to allow subsecond timeouts.

This supports the previous behavior of fsockopen()
Fixes bug #16261
2002-07-22 18:46:26 +00:00
foobar
c334894a2b ws fix 2002-07-11 20:29:53 +00:00
foobar
4d69e91806 Fix bug: #14052 2002-07-11 02:48:00 +00:00
Derick Rethans
2855b21e1c - Initialize var properly 2002-07-09 21:42:07 +00:00
foobar
b0ed560c95 @- Added optional 3rd parameter 'recursive' to ftp_rawlist() which will
@  do 'LIST -R' instead of 'LIST'. (Jani)
# tested too..and it even works. :)
# (removed that Z_TYPE_P() pollution also..)
2002-07-04 13:48:48 +00:00
Derick Rethans
51dfe5eebe Unify error messages 2002-06-27 06:49:02 +00:00
Markus Fischer
e4d2fa88d7 - Fix #16348. 2002-03-30 01:56:52 +00:00
Vlad Krupin
7139845af9 Fix ftp_size() returning bogus results.
# make sure the server is in BINARY mode before requesting file size.
2002-03-18 22:26:32 +00:00
Wez Furlong
c9d5e13738 TSRMLS related work on streams, as discussed with Zeev.
# Should be the last "broad" commit for a while
# Don't forget to make clean ; make
2002-03-18 18:54:32 +00:00
Wez Furlong
d2d8762267 Streams now make more use of the memory manager, so tracking down
leaking streams should be easier.
# I hate these big commits
2002-03-17 22:50:59 +00:00
Wez Furlong
636829345e Allow php_stream_copy_to_stream to do nothing when used with code
that calculates a max length of zero. (Thanks again Marcus).
2002-03-16 02:48:35 +00:00
Wez Furlong
52982c422e This should help with some build problems/warnings under win32.
Someone still needs to add the streams.c file to the MSVC
project/workspace though (there are so many that I don't really know
what I am doing :-).
2002-03-16 02:33:00 +00:00
Wez Furlong
09213d7bf8 change * formatting 2002-03-16 01:28:57 +00:00
Wez Furlong
0f65280cb5 New PHP streams... 2002-03-15 21:03:08 +00:00
Sascha Schumann
5cba3a99c2 extension converted automatically to PHP_NEW_EXTENSION. Manually confirmed 2002-03-12 16:44:00 +00:00
Jon Parise
822c150636 Correct the header file ordering. From 'man 3 inet' (FreeBSD 4.5):
#include <sys/types.h>
	#include <sys/socket.h>
	#include <netinet/in.h>
	#include <arpa/inet.h>
2002-03-07 20:27:37 +00:00
Sebastian Bergmann
90613d2282 Maintain headers. 2002-02-28 08:29:35 +00:00
Stig Venaas
9e420659ad Added php_sockaddr_size() in network.c (and the header file). This is used
in ftp.c to make sure connect() and bind() is called with size argument
which is exactly the size of the relevant sockaddr_xx structure
2002-02-10 12:35:29 +00:00
Stig Venaas
9a307e4550 Added IPv6 support
@- Added IPv6 support in FTP extension. (Stig Venaas)
2002-01-06 23:10:54 +00:00
Markus Fischer
7603d13733 - Now use ZE's builtin zend_zval_type_name(). 2002-01-03 14:32:36 +00:00
Markus Fischer
84b948a15f - FTP_BINARY is more common instead of FTP_IMAGE. 2002-01-03 07:57:58 +00:00
Egon Schmid
e941df5d1a Please, no punctuation mark at the end of the description. 2002-01-03 05:55:22 +00:00
Markus Fischer
f7bd38413e - Corrected proto for ftp_connect() (new optional parameter for initial
custom timeout).
2002-01-02 15:01:15 +00:00
Markus Fischer
9bde60d148 - Added ftp_set_option(), ftp_get_option() and support for setting a
custom timeout.
# Adding custom buffer size would be next, no promises though.
2002-01-02 14:58:17 +00:00
Markus Fischer
83ccb3e511 - Fixed ftp_fget() and ftp_mkdir() protos. 2002-01-02 01:05:10 +00:00
Markus Fischer
7c197409ae - Corrected proto for ftp_fget(). 2002-01-02 00:42:11 +00:00
Markus Fischer
8559f372fd - Switched to zend_parse_parameters(), unified error/warning messages,
use real resources instead of integers, adjusted prototypes (hope I got
  them all).
2002-01-01 22:15:22 +00:00
Egon Schmid
adee5f9451 Fixed a proto. 2001-12-30 08:21:58 +00:00
Hartmut Holzgraefe
052d5fc85d proto fix 2001-12-15 14:23:07 +00:00
Sebastian Bergmann
38933514e1 Update headers. 2001-12-11 15:32:16 +00:00
Andi Gutmans
288d96229e - Missed one 2001-12-03 20:55:59 +00:00
foobar
f1397d5339 Unified the configure messages. 2001-11-30 19:00:13 +00:00
Alex Waugh
bc26250413 Included header files needed by RISC OS 2001-11-04 12:35:49 +00:00
Stig Bakken
689252082c * zend_module_entry change: apino, debug and zts are moved first,
see README.EXTENSIONS file for upgrade help.
@Introduced extension version numbers (Stig)
2001-10-11 23:33:59 +00:00
Jeroen van Wolffelaar
c033288573 Back-substitute for Z_* macro's. If it breaks some extension (the script isn't optimal, it parses for example var->zval.value incorrect) please let me know. 2001-09-25 21:58:48 +00:00
Derick Rethans
78747bd2df - Don't wrap lines... this is annoying while coding. 2001-09-09 13:29:31 +00:00
Zeev Suraski
f6f6c4d7e6 Whitespace 2001-08-11 16:39:07 +00:00
Zeev Suraski
aa1772ca72 More TSRMLS_FETCH annihilation 2001-07-31 05:44:11 +00:00
Zeev Suraski
797a079a95 More TSRMLS_FETCH work, and a bit of cleanup 2001-07-30 06:18:13 +00:00
Zeev Suraski
7b1c400631 More TSRMLS_FETCH annihilation (Zend compatibility patch) 2001-07-30 04:58:07 +00:00
Jason Greene
6034e5161d Forgotten Include.
This should fix the windows build (though I currently don't have a way to test it)
2001-07-17 16:56:51 +00:00
Jason Greene
8eb5a4b856 @Added support for socket and popen file types to ftp_fput (Jason) 2001-07-17 05:53:03 +00:00
Sebastian Bergmann
d926e84e5f Change copyright note. 2001-06-19 21:25:53 +00:00
Rasmus Lerdorf
81e2cf03ac Fix folding and clean up some extensions 2001-06-06 13:06:12 +00:00
Rasmus Lerdorf
25c3a3a39d vim-6 does folding - clean up a bunch of missing folding tags plus
some misguided RINIT and RSHUTDOWN calls in a few fringe extensions
2001-06-05 13:12:10 +00:00
foobar
1ecc932895 Fixed bug: #9707 2001-05-27 19:12:21 +00:00
Stig Bakken
1beda9ee1e * include "config.h" if HAVE_CONFIG_H is defined (for standalone dso build) 2001-05-24 10:07:29 +00:00
Andi Gutmans
4c823e8a89 - Change macros from V_ to VCWD_ because of AIX name clash 2001-04-30 12:45:02 +00:00
Sascha Schumann
3cacf33572 Run through conv_z_macros 2000-11-22 22:05:02 +00:00
Hartmut Holzgraefe
1f6878e912 2nd step towards auto-credits 2000-11-20 10:33:33 +00:00
foobar
1f00cff3ab Fixed ftp_mkdir(). It return the dirname passed to it in case of
braindead ftp server which doesn't put the real path into reply.
PR: 7216
2000-11-03 21:53:24 +00:00
foobar
4c2abe7df4 Both RETR and STOR have also 250 as possible return value 2000-10-31 00:30:37 +00:00
foobar
55ccb5a35b Fix the fix. 2000-10-31 00:00:26 +00:00
foobar
b45d265c54 Fixed PR: 6730. And it is mentioned also in RFC 959 to be this way. 2000-10-27 20:53:04 +00:00
foobar
11af318a62 Fixes PR: 7245 2000-10-27 20:47:36 +00:00
Andrei Zmievski
f1dcb32c9f Use zend_register_list_destructors_ex() instead. 2000-10-25 17:44:02 +00:00
Andrei Zmievski
7b4983c8f8 Mega-patch to get better resource information for modules.
* Fixed a bug in zend_rsrc_list_get_rsrc_type()
  * Switched register_list_destructors() to use
    zend_register_list_destructors_ex() instead
  * Updated all relevant modules to provide the resource type name
    to register_list_destructors() call
  * Updated var_dump() to output resource type name instead of number

@- Made resource type names visible, e.g. var_dump() and
@  get_resource_type() display "file" for file resources. (Andrei)
2000-10-20 18:25:16 +00:00
Daniel Beulshausen
d667e05543 more cleanup of info code 2000-10-08 11:45:18 +00:00
Andi Gutmans
9ece8612b8 - Add FTP extension to default Win32 build 2000-10-05 23:25:41 +00:00
Derick Rethans
c7d31495bf - Added ftp_exec to the ftp functions (thanks to <jhennebicq@i-d.net>)
@ Added ftp_exec to the ftp functions (thanks to <jhennebicq@i-d.net>)
@ (Derick)
2000-09-13 22:00:31 +00:00
Daniel Beulshausen
b6f0d041f9 deleted a few unnecceasary defines and added the Release_TS_Inline path to the libpath 2000-08-24 17:48:30 +00:00
foobar
d6f2f2c396 @- Fixed FTP module to accept multiline server replies (Jani)
# This fixed bug #4546.
2000-08-10 21:13:08 +00:00
Egon Schmid
3bc8b9dc9c Beautified some protos. 2000-08-08 20:28:19 +00:00
Egon Schmid
411280eb9d The description for protos need no period. 2000-07-13 20:55:22 +00:00
Sascha Schumann
16017f6d78 Change header protection macros to conform to standard.
Draft 3 of IEEE 1003.1 200x, "2.2 The Compilation Environment"

  All identifiers that begin with an underscore and either an uppercase
  letter or another underscore are always reserved for any use by the
  implementation.
2000-07-02 23:46:51 +00:00
Zeev Suraski
da66298659 - Fix a couple of wranings in the FTP code and in parsedate.y
- Be safer with LC_MESSAGES
- Align with the latest Zend change in call_user_function_ex()
2000-06-17 16:49:03 +00:00
Frank M. Kromann
66a172c9b4 making ftp module compile on win32 with new directory structure 2000-06-12 20:32:23 +00:00
Andi Gutmans
2b0a8049db - Update module project files to include:
- HAVE_MODULE=1
- ZEND_WIN32
- PHP_WIN32
- COMPILE_DL_MODULE
- ZTS=1
2000-06-10 09:00:31 +00:00
Andi Gutmans
a9d4cf9023 - Nuke COMPILE_DL. Modules that need to be compiled as dll's in Windows
- need to define both COMPILE_DL_MODULE and HAVE_MODULE=1
2000-06-10 08:48:01 +00:00
Andi Gutmans
3701bc4207 - ARG_COUNT(ht) -> ZEND_NUM_ARGS() mega patch 2000-06-05 19:47:54 +00:00
Andrew Skalski
6d51f4a788 Changed the #ifdefs around "errno = ETIMEDOUT;" to include the rest
of the statement ["if (n == 0)"]
2000-05-23 13:56:04 +00:00
Andi Gutmans
32dffec0f8 - PHP_WIN32 macro should be used with #ifdef/#ifndef
- Always use PHP_WIN32 instead of WIN32/WINNT values
2000-05-23 13:49:55 +00:00
Frank M. Kromann
c9158aec30 fixing type 2000-05-23 11:52:04 +00:00
Frank M. Kromann
34e74f8afe chang #if to #ifdef 2000-05-23 10:36:48 +00:00
Thies C. Arntzen
f51150584c even better check for netinet/in.h 2000-05-23 10:12:42 +00:00
Thies C. Arntzen
30b43665e8 make ftp compile on unix again 2000-05-23 10:11:09 +00:00
Sascha Schumann
0236982d6d s/COMPILE_DL/COMPILE_DL_EXTNAME/ for Windows build files. 2000-05-23 09:22:01 +00:00
Frank M. Kromann
08bd9586fb making ftp module compile and work on win32 2000-05-23 08:05:22 +00:00
Andrew Skalski
3ac4c96641 applied Luca Montecchiani's win32 fixes (open files in binary mode
using the "b" fopen flag, and use closesocket rather than close
when closing sockets)
2000-05-22 21:16:58 +00:00
Sascha Schumann
fa254b6267 executor_globals is always passed to MINIT functions 2000-05-07 03:20:37 +00:00
Sascha Schumann
d0f3764ee2 Change reentrancy API to always use the php prefix.
Check for the declaration of reentrant functions, so that we can use
them in non-ZTS mode on all platforms.
2000-05-04 10:38:17 +00:00
Sascha Schumann
dbf959d04d Make ftp buildable as shared module 2000-05-02 02:02:18 +00:00
Sascha Schumann
7613e064f8 Remove trailing empty lines 2000-05-01 22:38:42 +00:00
Sascha Schumann
0d36199cf9 Large test commit IV 2000-05-01 22:04:52 +00:00
Sascha Schumann
de2cea47c0 Large commit test III 2000-05-01 22:00:09 +00:00
Sascha Schumann
a493cdc92c Large test commit II 2000-05-01 21:57:01 +00:00
Sascha Schumann
a481fddfb3 Improved in-tree shared libraries build system
The following new/revived shared modules are available now:

  ... MySQL (*)
  ... PCRE (*)
  ... Session
  ... SWF

  (*) capable of using bundled library or external library

All changes:

  The m4 macro PHP_EXTENSION was revamped. Uses LIB_BUILD now.
  This effectively means that all extensions have to use dynlib.

  ext/mysql/config.m4 was revamped.
  Uses LIB_BUILD for building bundled library.

  ext/pcre/config.m4 was revamped.
  Uses LIB_BUILD for building bundled library.

  ext/ext_skel was changed to reflect that more modules should be
  compileable as shared module.

  ext/Makefile.in has been simplified enormously.

  Dependencies are now stored in the build tree.

  Empty dependencies are not generated by buildconf anymore. They
  are now dynamically created during the build process.

  Implicit rules for .S were removed.

  The NO_RECURSION feature was removed.

  "libs.mk" has been added to all cvsignore files in ext.
2000-05-01 02:42:55 +00:00
Sascha Schumann
953fe189da Overall UNIX build system improvements:
* Makefile header is now completely dynamic
* Absolute paths in (top_)?(src|build)dir and VPATH
  (fixes Tru64 support)
* VPATH does not contain variables anymore
  (fixes UnixWare support)
2000-04-30 03:20:09 +00:00
Frank M. Kromann
12e319b091 Moving output modules 2000-04-21 12:26:42 +00:00