From 6a273b63298b6a817c5166b3d6cc2777a3da80e2 Mon Sep 17 00:00:00 2001 From: Fufu Fang Date: Mon, 23 Jul 2018 04:11:24 +0100 Subject: [PATCH] Update README.md --- README.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/README.md b/README.md index e69de29..a320a1c 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,24 @@ +# HTTPDirFS + +Have you ever wanted to mount those HTTP directory listings as if it was a partition? Look no further, this is your solution. HTTPDirFS stands for Hyper Text Transfer Protocol Directory Filesystem + +## Usage + ./httpdirfs -f $URL $YOUR_MOUNT_POINT +An example URL would be [Debian CD Image Server](https://cdimage.debian.org/debian-cd/). The ``-f`` flag keeps the program in the foreground, which is useful for monitoring which URL the filesystem is visiting. +## The Technical Details +I noticed that most HTTP directory listings don't provide the file size for the web page itself. I suppose this makes perfect sense, as they are generated on the fly. Whereas the actual files have got file sizes. So the listing pages can be treated as folders, and the rest are files. + +This program download the HTML web pages / files using [libcurl](https://curl.haxx.se/libcurl/), then parse the listing pages using [Gumbo](https://github.com/google/gumbo-parser), present them using [libfuse](https://github.com/libfuse/libfuse) +## LICENSE + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see .