ID:               39583
 User updated by:  ts dot serveroperations at wmdata dot com
 Reported By:      ts dot serveroperations at wmdata dot com
-Status:           Feedback
+Status:           Open
 Bug Type:         FTP related
 Operating System: Redhat Enterprise ES version 4
 PHP Version:      4.4.4
 New Comment:

Is this what you wanted? I just breaked at the breakpoints, didn't do
any steps. I did this in command-line php. I recompiled PHP (CVS
version) with the following configure:

./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql
--enable-module=so --enable-ftp --enable-debug


If you want I can redo it with php 4.4.4.


# gdb /usr/local/bin/php
GNU gdb Red Hat Linux (6.1post-1.20040607.62rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host
libthread_db library "/lib/tls/libthread_db.so.1".

(gdb) break ftp_put
Breakpoint 1 at 0x807bd51: file
/usr/local/src/php4-STABLE-200611211330/ext/ftp/ftp.c, line 759.
(gdb) break ftp_type
Breakpoint 2 at 0x807abc4: file
/usr/local/src/php4-STABLE-200611211330/ext/ftp/ftp.c, line 539.
(gdb) run /var/www/html/mupp/index.php
Starting program: /usr/local/bin/php /var/www/html/mupp/index.php
Connected to localhost, for user temp
Breakpoint 1, ftp_put (ftp=0x8628d1c, path=0x8628bfc
"/tempdir/testfile.txt", instream=0x8625f4c, type=FTPTYPE_ASCII,
startpos=140656052)
    at /usr/local/src/php4-STABLE-200611211330/ext/ftp/ftp.c:759
759     {
(gdb) c
Continuing.

Breakpoint 2, ftp_type (ftp=0x0, type=140656052) at
/usr/local/src/php4-STABLE-200611211330/ext/ftp/ftp.c:539
539     {
(gdb) c
Continuing.
Uploaded /var/www/html/testfile.txt to localhost as
/tempdir/testfile.txt

Program exited normally.
(gdb)


Previous Comments:
------------------------------------------------------------------------

[2006-11-22 15:50:36] [EMAIL PROTECTED]

That's right, the default mode is binary, but I don't see any TYPE
commands in your log. 
The ftp_put() function first sends "TYPE <type>" command and STOR after
that.
Can you trace it in gdb and set a breakpoint on "ftp_put" and
"ftp_type" functions to see how exactly they are executed?

------------------------------------------------------------------------

[2006-11-22 15:18:25] ts dot serveroperations at wmdata dot com

This is the transferlog from the ftpserver:
Wed Nov 22 15:08:25 2006 0 drops 83 /site/tempdir/testfile.txt b _ i r
temp ftp 0 *

The ftp server is glftpd 2.01 for i386 Linux

We sniffed the transfer using tcpdump, here's the output, sorry that it
is in HEX but we cut off all numbers to reduce linesize, but it is still
readable and you can make out 150.Opening.BINARY.mode:




547369717(0) win 32767 <mss 16396,sackOK,timestamp 2440911661
0,nop,wscale 2>
..............E.
.<[EMAIL PROTECTED]@.p.......
.......p........
[EMAIL PROTECTED]
[-........
536371407(0) ack 3547369718 win 32767<mss 16396,sackOK,timestamp
2440911661 2440911661,nop,wscale 2>
..............E.
.<[EMAIL PROTECTED]@.<.......
...........p....
[EMAIL PROTECTED]
[-.}[-....
92 <nop,nop,timestamp 2440911661 2440911661>
..............E.
[EMAIL PROTECTED]@.p.......
.......p........
...........}[-.}
[-
3538374111(0) win 32767 <mss 16396,sackOK,timestamp 2440911716
0,nop,wscale 2>
..............E.
.<[EMAIL PROTECTED]@.%.......
.....q..M.......
[EMAIL PROTECTED]
[d........
3538374112 win 0
..............E.
.([EMAIL PROTECTED]@.0.......
...q........M.P.
......
 1 win 8192 <nop,nop,timestamp 2440911721 2440911661>
..............E.
[EMAIL PROTECTED]@.V|......
...........p....
...`.......}[i.}
[-220.localhost.
Dropsite..(glFTP
192 <nop,nop,timestamp 2440911721 2440911721>
..............E.
[EMAIL PROTECTED]@.p.......
.......p........
...........}[i.}
[i
 57 win 8192 <nop,nop,timestamp 2440911722 2440911721>
..............E.
[EMAIL PROTECTED]@.p.......
.......p........
...3.......}[j.}
[iUSER.temp..
192 <nop,nop,timestamp 2440911722 2440911722>
..............E.
[EMAIL PROTECTED]@.V.......
...........p....
...........}[j.}
[j
k 12 win 8192 <nop,nop,timestamp 2440911728 2440911722>
..............E.
[EMAIL PROTECTED]@.V.......
...........p....
...I.......}[p.}
[j331.Password.r
equired.for.temp
k 90 win 8192 <nop,nop,timestamp 2440911728 2440911728>
..............E.
[EMAIL PROTECTED]@.p.......
.......p.....)..
...3.......}[p.}
[pPASS.temp..
ack 23 win 8192 <nop,nop,timestamp 2440911736 2440911728>
..............E.
[EMAIL PROTECTED]@.T.......
.........).p....
...........}[x.}
[p230-..........
................
8192 <nop,nop,timestamp 2440911776 2440911736>
..............E.
[EMAIL PROTECTED]@.p.......
.......p........
...........}[..}
[x
 ack 23 win 8192 <nop,nop,timestamp 2440911782 2440911776>
..............E.
[EMAIL PROTECTED]@.U.......
...........p....
...........}[..}
[.230-.`-=------
----------------
8192 <nop,nop,timestamp 2440911782 2440911782>
..............E.
[EMAIL PROTECTED]@.p.......
.......p........
...........}[..}
[.
k 711 win 8192 <nop,nop,timestamp 2440911783 2440911782>
..............E.
[EMAIL PROTECTED]@.p.......
.......p........
[EMAIL PROTECTED]
[.PORT.127,0,0,1
,138,186..
ack 47 win 8192 <nop,nop,timestamp 2440911787 2440911783>
..............E.
[EMAIL PROTECTED]@.V.......
...........p.$..
...F.......}[..}
[.200.PORT.comma
nd.successful...
k 741 win 8192 <nop,nop,timestamp 2440911787 2440911787>
..............E.
[EMAIL PROTECTED]@.p.......
.......p.$......
...D.......}[..}
[.STOR./tempdir/
testfile.txt..
:3545163343(0) win 32767 <mss 16396,sackOK,timestamp 2440911791
0,nop,wscale 2>
..............E.
.<[EMAIL PROTECTED]@.~.......
..1....N.O......
..,[EMAIL PROTECTED]
[.........
:3537573975(0) ack 3545163344 win 32767 <mss 16396,sackOK,timestamp
2440911791 2440911791,nop,wscale 2>
..............E.
.<[EMAIL PROTECTED]@.<.......
....1....W.N.P..
[EMAIL PROTECTED]
[..}[.....
8192 <nop,nop,timestamp 2440911791 2440911791>
..............E.
[EMAIL PROTECTED]@.~.......
..1....N.P...X..
...........}[..}
[.
ack 75 win 8192 <nop,nop,timestamp 2440911795 2440911787>
..............E.
[EMAIL PROTECTED]@.Vm......
[EMAIL PROTECTED]
...c.......}[..}
[.150.Opening.BI
NARY.mode.data.c
ck 1 win 8192 <nop,nop,timestamp 2440911795 2440911791>
..............E.
[EMAIL PROTECTED]@..w......
....1....X.N.P..
...{.......}[..}
[.blasdjknas..q.
.dqw..dwe......f
 8192 <nop,nop,timestamp 2440911795 2440911795>
..............E.
[EMAIL PROTECTED]@.~.......
..1....N.P......
...........}[..}
[.
ck 1 win 8192 <nop,nop,timestamp 2440911795 2440911795>
..............E.
[EMAIL PROTECTED]@.........
....1......N.P..
...........}[..}
[.
 85 win 8192 <nop,nop,timestamp 2440911800 2440911795>
..............E.
[EMAIL PROTECTED]@.~.......
..1....N.P......
...........}[..}
[.
8192 <nop,nop,timestamp 2440911800 2440911800>
..............E.
[EMAIL PROTECTED]@.........
....1......N.Q..
...........}[..}
[.
8192 <nop,nop,timestamp 2440911835 2440911795>
..............E.
[EMAIL PROTECTED]@.p.......
[EMAIL PROTECTED]
...........}[..}
[.
 ack 75 win 8192 <nop,nop,timestamp 2440911838 2440911835>
..............E.
[EMAIL PROTECTED]@.V/......
[EMAIL PROTECTED]
...........}[..}
[.226-.[Ul:.0.0M
B].[Dl:.0.0MB].[
8192 <nop,nop,timestamp 2440911838 2440911838>
..............E.
[EMAIL PROTECTED]@.p.......
[EMAIL PROTECTED]
...T.......}[..}
[.
 919 win 8192 <nop,nop,timestamp 2440911838 2440911838>
..............E.
.:[EMAIL PROTECTED]@.p.......
[EMAIL PROTECTED]
...........}[..}
[.QUIT..
ack 81 win 8192 <nop,nop,timestamp 2440911847 2440911838>
..............E.
[EMAIL PROTECTED]@.V.......
.........f.p.F..
...6.......}[..}
[.221-.Goodbye..
ack 81 win 8192 <nop,nop,timestamp 2440911851 2440911838>
..............E.
.:[EMAIL PROTECTED]@.V.......
.........t.p.F..
...........}[..}
[.221...
 940 win 8192 <nop,nop,timestamp 2440911851 2440911847>
..............E.
[EMAIL PROTECTED]@.p.......
.......p.F...{..
...".......}[..}
[.
192 <nop,nop,timestamp 2440911851 2440911851>
..............E.
[EMAIL PROTECTED]@.V.......
.........{.p.G..
...........}[..}
[.

------------------------------------------------------------------------

[2006-11-22 13:47:02] [EMAIL PROTECTED]

Is it possible to get a log of this FTP session to see what exactly is
passed to the server and what was its response?

------------------------------------------------------------------------

[2006-11-22 13:36:13] ts dot serveroperations at wmdata dot com

We need to be able to use notepad. However the unix like endings works
if the transfer mode is set to ascii.


If we run "TYPE ASCII" or just "ASCII" the server responds with:
200 Type set to A.

The problem is not that we use notepad, the problem is that all
transfers is in binary mode, even if we state FTP_ASCII in the ftp_put
or ftp_get functions.

------------------------------------------------------------------------

[2006-11-22 11:18:37] [EMAIL PROTECTED]

>downloaded and viewed in windows XP with notepad.
Please get a decent TXT viewer instead of notepad.
AFAIK it was never able to display Unix line endings properly.

Does your FTP server understand "TYPE A" command?

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/39583

-- 
Edit this bug report at http://bugs.php.net/?id=39583&edit=1

Reply via email to