Re: [PHP4BETA] cvs: php4 /ext/ftp/ ftp.c php_ftp.c
[email protected] (Andi Gutmans)
| Newsgroups | php.version4 |
|---|---|
| Message-ID | <[email protected]> |
To check for Windows you should use #ifdef PHP_WIN32
Andi
At 09:16 PM 5/22/00 +0000, Andrew Skalski wrote:
>askalski Mon May 22 23:16:58 2000 EDT
>
> Modified files:
> /php4/ext/ftp ftp.c php_ftp.c
> Log:
> 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)
>
>
>Index: php4/ext/ftp/ftp.c
>diff -u php4/ext/ftp/ftp.c:1.16 php4/ext/ftp/ftp.c:1.17
>--- php4/ext/ftp/ftp.c:1.16 Thu May 4 12:38:13 2000
>+++ php4/ext/ftp/ftp.c Mon May 22 23:16:58 2000
>@@ -28,7 +28,7 @@
> +----------------------------------------------------------------------+
> */
>
>-/* $Id: ftp.c,v 1.16 2000/05/04 10:38:13 sas Exp $ */
>+/* $Id: ftp.c,v 1.17 2000/05/22 21:16:58 askalski Exp $ */
>
> #include "php.h"
>
>@@ -52,6 +52,12 @@
>
> #include "ftp.h"
>
>+/* define closesocket macro for portability */
>+#if !defined(WIN32) && !defined(WINNT)
>+#undef closesocket
>+#define closesocket close
>+#endif
>+
> /* sends an ftp command, returns true on success, false on error.
> * it sends the string "cmd args\r\n" if args is non-null, or
> * "cmd\r\n" if args is null
>@@ -156,7 +162,7 @@
>
> bail:
> if (fd != -1)
>- close(fd);
>+ closesocket(fd);
> free(ftp);
> return NULL;
> }
>@@ -168,7 +174,7 @@
> if (ftp == NULL)
> return NULL;
> if (ftp->fd != -1)
>- close(ftp->fd);
>+ closesocket(ftp->fd);
> ftp_gc(ftp);
> free(ftp);
> return NULL;
>@@ -981,7 +987,7 @@
> sizeof(ftp->pasvaddr)) == -1)
> {
> perror("connect");
>- close(fd);
>+ closesocket(fd);
> free(data);
> return NULL;
> }
>@@ -1034,7 +1040,7 @@
>
> bail:
> if (fd != -1)
>- close(fd);
>+ closesocket(fd);
> free(data);
> return NULL;
> }
>@@ -1051,7 +1057,7 @@
>
> size = sizeof(addr);
> data->fd = my_accept(data->listener, (struct sockaddr*) &addr,
> &size);
>- close(data->listener);
>+ closesocket(data->listener);
> data->listener = -1;
>
> if (data->fd == -1) {
>@@ -1069,9 +1075,9 @@
> if (data == NULL)
> return NULL;
> if (data->listener != -1)
>- close(data->listener);
>+ closesocket(data->listener);
> if (data->fd != -1)
>- close(data->fd);
>+ closesocket(data->fd);
> free(data);
> return NULL;
> }
>Index: php4/ext/ftp/php_ftp.c
>diff -u php4/ext/ftp/php_ftp.c:1.19 php4/ext/ftp/php_ftp.c:1.20
>--- php4/ext/ftp/php_ftp.c:1.19 Sun May 7 05:20:37 2000
>+++ php4/ext/ftp/php_ftp.c Mon May 22 23:16:58 2000
>@@ -28,7 +28,7 @@
> +----------------------------------------------------------------------+
> */
>
>-/* $Id: php_ftp.c,v 1.19 2000/05/07 03:20:37 sas Exp $ */
>+/* $Id: php_ftp.c,v 1.20 2000/05/22 21:16:58 askalski Exp $ */
>
> #include "php.h"
>
>@@ -551,7 +551,11 @@
> RETURN_FALSE;
> }
>
>+#if defined(WIN32) || defined(WINNT)
>+ if ((outfp = V_FOPEN(arg2->value.str.val, "wb")) == NULL) {
>+#else
> if ((outfp = V_FOPEN(arg2->value.str.val, "w")) == NULL) {
>+#endif
> fclose(tmpfp);
> php_error(E_WARNING, "error opening %s",
> arg2->value.str.val);
> RETURN_FALSE;
>@@ -635,7 +639,11 @@
> convert_to_string(arg3);
> XTYPE(xtype, arg4);
>
>+#if defined(WIN32) || defined(WINNT)
>+ if ((infp = V_FOPEN(arg3->value.str.val, "rb")) == NULL) {
>+#else
> if ((infp = V_FOPEN(arg3->value.str.val, "r")) == NULL) {
>+#endif
> php_error(E_WARNING, "error opening %s",
> arg3->value.str.val);
> RETURN_FALSE;
> }
>
>
>
>--
>PHP 4.0 Beta Mailing List <http://www.php.net/version4/>
>To unsubscribe, e-mail: [email protected]
>For additional commands, e-mail: [email protected]
>To contact the list administrators, e-mail: [email protected]
---
Andi Gutmans <[email protected]>
http://www.zend.com/