Giter Site home page Giter Site logo

mbouaziz / xcurlftpfs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jackslateur/curlftpfs

1.0 1.0 0.0 504 KB

A FTP filesystem based on cURL and FUSE with options to use httpostfs features

License: GNU General Public License v2.0

C 32.40% Shell 67.60%

xcurlftpfs's Introduction

Note
========

XCurlFtpFS is a filesystem for accessing ftp hosts based on FUSE and
libcurl, as well as performing some actions (like symlinks) using
httpostfs protocol.

This is _not_ the official CurlFtpFS project, which can be found there:
http://curlftpfs.sourceforge.net/

I forked from clobrother, added commits from jomat (urlencode) and
taem (gitignore).

Clobrother just added some code the correctly handle filename which
contains url-special chars (actually, just # and %) by url-encoding
them:
 % -> %25
 # -> %23
Using that, curl will not translate them, and will target the correct
filename.

CurlFtpFS
=========

CurlFtpFS is a filesystem for accessing ftp hosts based on FUSE and
libcurl. It automatically reconnects if the server times out. 

My motivation to start this project was to learn how to program using
Curl (http://curl.haxx.se) and Fuse (http://fuse.sourceforge.net). I
also wanted to maintain my website (http://www.golaberto.com.br) using
the tools that I was used to, like cd, mv, cp and vim.

As the FTP protocol is not very feature rich, this filesystem does not
fulfill every constraint of a real filesystem, but it should be usable
for simple tasks like copying and editing files.

Requirements
============

glib-2.0
libcurl >= 7.17.0


Compilation and Installation
============================

autoreconf -i

./configure
make
make install

Usage
=====

curlftpfs <ftpsite> <mountpoint>

ex.:
curlftpfs ftp://ftp.sunet.se/ sunet/


Debugging
=========

curlftpfs -f -v -o debug,ftpfs_debug=3 <ftpsite> <mountpoint> 

(runs the curlftpfs in foreground and shows libcurl verbose debug output)  


Known Problems
==============

1) Several GUI application (gedit, leafpad,...) use open(O_RDWR) + seek mode for saving files 
which cannot be supported by the FTP protocol. Therefore saving files might throw an error.
Hopefully future kernels will provide special errno's to make it easier to 
deal with less capable file-systems.

2) There seems to be a bug in libcurl 7.18 which sometimes causes problems reading files. 
Should be fixed in libcurl >= 7.18.2

http://sourceforge.net/tracker/index.php?func=detail&aid=1951588&group_id=976&atid=100976




xcurlftpfs's People

Contributors

jackslateur avatar mbouaziz avatar taem avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.