New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FTP listing support #24
Comments
I take this job. |
I am not longer working on this, sorry. It is harder, than I think it is. |
Would you consider implementing ftp: support as an module, just like irc:, magnet:, mailto: would have their own? Furthermore, this module would be loadable on first use, so that you don't need to have it running all the time: once the user opens a URL starting with ftp:// for the first time, the module gets loaded. This is just a small suggestion as I don't know
|
@beastie1, yes, it's doable. Although this feature should have own ticket, separate from this one. |
Some times it works and loads a page, but most of the time it freezes with high CPU usage and I have to kill the process. |
@beastie1 , do you have such issues with all or only long listings (more than 100 entries)? |
Everything. Could you try these? http://www.openbsd.org/ftp.html#ftp |
Actually listing seem to work randomly. Try opening ftp://ftp.freebsd.org Also there are random but rare segmentation faults. |
Okay I think I've found the problem: a missing / at the end. Listing any directory, including the root directory, works fine, but remove the / after the gTLD and it freezes. |
@beastie1, good catch, infinite loop while generating navigation, easy to fix, but hard to find, thanks. ;-) |
Actually anything without the trailing slash freezes. Try this: ftp://ftp5.uk.freebsd.org/pub/FreeBSD/README.TXT Otter doesn't display the text file, it doesn't propose to open/save the file, it just freezes. |
@beastie1, that one works fine for me, I've tested it also on big files (several megabytes) earlier. |
It throws a zillion
into the logs. The log reached 200+MB in 3 seconds. How do I generate the backtrace? gdb? |
The last line is repeated thousands of times per second until the process is killed. What do I have to change to include debug information in the Otter binary? |
@beastie1, if you are using CMake then you need to set build type: These warnings from console won't help much, you can safely ignore them. |
|
@beastie1, uhm, sadly this backtrace is not helpful. |
I was trying to open this file: ftp://ftp5.uk.freebsd.org/pub/FreeBSD/README.TXT But any server does the same. Both favicon.ico and index.html in the main server (ftp://ftp.freebsd.org/) also freeze. And this crashes with a segmentation fault. |
@beastie1 Does "Warning: QIODevice::read: device not open" bug still
exists in current master?
|
I always build from master before testing. So yes, my December 1st post above is still 100% valid today. Both the freeze and the segmentation fault. I don't know if it's related but just by opening ftp://ftp.freebsd.org I get this:
After clicking index.html and waiting 1 second I get 240,000 lines of
before I pkill -9 otter. |
BTW, saving these files works perfectly well. |
QtWebKit by default can only download files through FTP protocol, it is unable to list its contents.
This could be used as reference, but without using deprecated QFtp module:
http://doc.qt.digia.com/qq/32/qq32-webkit-protocols.html
Preferred is parsing replies directly (at least Unix style, DOS can wait) or make use of some simple library which could be shipped (it is important that license is compatible with GPLv3), but it is not rally needed since it is pretty simple (I can provide example raw outputs if needed).
It should be based on LocalListingNetworkReply class as example, use custom reply only for listings (if possible, auth may require to handle them all).
For icons it should only use method that accepts file name to guess content type (no contents downloading), show directories first and for now should simply use the same HTML template (without creating copy).
The text was updated successfully, but these errors were encountered: