Re: [PHP4BETA] cvs: php4 /ext/ftp/ ftp.c php_ftp.c

From: Date: Tue, 23 May 2000 07:30:37 +0000
Subject: Re: [PHP4BETA] cvs: php4 /ext/ftp/ ftp.c php_ftp.c
References: 1  Groups: php.version4 
Request: Send a blank email to php-version4+get-15505@lists.php.net to get a copy of this message
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: php4beta-unsubscribe@lists.php.net For additional commands, e-mail: php4beta-help@lists.php.net To contact the list administrators, e-mail: php4beta-admin@lists.php.net
--- Andi Gutmans <andi@zend.com> http://www.zend.com/

« previous php.version4 (#15505) next »