josch
fa609e465d
add some stub for mitm testing
2014-12-05 13:48:47 +01:00
josch
f5b09193f9
http: properly reset all values of curl connection
2014-12-05 13:09:56 +01:00
josch
972b47f449
file/get_info: change accidental ssl usage
2014-12-05 13:06:03 +01:00
josch
313964bb01
extend test case for fuse
2014-12-05 13:05:33 +01:00
josch
2ce7ae3fae
rename mfapi/apicalls/user_session.c -> mfapi/apicalls/user_get_session_token.c
2014-12-05 11:38:57 +01:00
josch
1007caec7a
check and return mediafire response code for every api call
2014-12-05 11:37:51 +01:00
josch
816d79438f
Allow to skip the device/get_status call when calling folder_tree_update
...
- this is useful to safe one extra call when it is known that there
should be changes on the remote. In that case it will immediately
skip forward to calling device/get_changes
2014-12-04 16:21:39 +01:00
josch
71f6396a9a
Allow to create new files (but changing them is not allowed yet)
...
- since mediafire cannot deal with empty files, we put new files into a
temporary location and upload them once they get closed
- add create and write functions to fuse
- pass a file handle to mfconn_api_upload_simple instead of a path
- allow calc_sha256 to also compute the file size
- error out when the key returned by upload/simple is empty
- make valgrind.supp more lenient
2014-12-04 16:07:12 +01:00
josch
f1bf926145
Allow file upload
...
- add upload/simple
- add upload/poll_upload
- add "put" command to mfshell
- add http POST method
2014-12-04 10:34:54 +01:00
josch
1e15dcc16b
fuse: add unlink to remove files
2014-12-02 11:04:25 +01:00
josch
83eb1d9dcc
add file/delete apicall and rm command to shell
2014-12-02 10:18:12 +01:00
josch
48d803911f
CMakeLists.txt: break long lines
2014-12-02 07:36:00 +01:00
josch
04dd1bcc71
now that we got rid of global variables, we can split the operations into their own file
2014-12-02 07:34:07 +01:00
josch
58e8e89771
move file integrity checks from fuse/filecache to utils/hash
2014-12-02 07:10:07 +01:00
josch
2f2ce91597
fix includes and indentation
2014-12-01 22:03:09 +01:00
josch
e730107b8b
tests/valgrind_fuse.sh: adjust configuration file location
2014-12-01 22:02:19 +01:00
josch
9c4195ebdd
fuse: allow entering username and password via stdin
...
- when either username or password are not specified via commandline
arguments or configuration file, ask them on standard input
- unify function to read username and password
- move function to read username and password from mfshell to
utils/strings.c
- remove commented cruft from utils/strings.c
2014-12-01 21:59:59 +01:00
josch
ffc933cf10
allow to start without a config file
2014-12-01 18:54:00 +01:00
josch
0abe0099be
fail if hashtable cannot be loaded
2014-12-01 17:23:28 +01:00
josch
febb29f75c
Add support for updating local cache through patches
...
- refactor some code:
- code handling the file cache is now in fuse/filecache.c
- base36 and base16 encoding and decoding moved to utils/hash.c
- mfshell: add "updates" command calling device/get_updates
- add container class to store patch information as mfapi/patch.c
- apicalls: store more info retrieved by file/get_info
- apicalls: add device/get_updates
- apicalls: add device/get_patch
2014-12-01 16:30:32 +01:00
josch
5034d361ba
store dircache in proper directory
2014-11-14 13:28:19 +01:00
josch
d748f5e686
fuse/main.c: eliminate all global variables by using fuse private_data
2014-11-14 13:20:31 +01:00
josch
d25439755c
make sure that test fuse mount is unmounted even on error
2014-11-14 13:07:01 +01:00
josch
c7cd1809fe
look up parent again after having retrieved it
2014-11-14 09:48:41 +01:00
josch
f9b0fa8551
instead of storing whether or not the local version is up to date, store the revision of the meta data and the revision of the data behind it
2014-11-12 19:42:21 +01:00
josch
511cda2c8f
calculate and check hash of downloaded file
2014-11-05 13:40:25 +01:00
josch
254aaa6033
fix testsuite problems
2014-11-05 13:21:51 +01:00
josch
f281b4233d
add diff and patch functions for xdelta3
2014-11-04 11:02:33 +01:00
josch
3d56e7b9c3
3rdparty/xdelta3-3.0.8: fix compiler warnings
2014-11-04 11:02:10 +01:00
josch
6b3ff6b7f5
tests/indent.sh: do not check 3rdparty directory
2014-11-03 20:40:03 +01:00
josch
070c7fdc3e
add 3rdparty/xdelta3-3.0.8
2014-11-03 20:39:58 +01:00
josch
720d5da086
reorganize configuration and cache location handling
...
- follow XDG basedir spec
2014-11-03 20:33:48 +01:00
josch
1e4a217157
fix a typo that prevented the wrong directory being updated
2014-10-28 09:41:15 +01:00
josch
3db5ce5c42
implement preliminary support to read files
...
* no writing yet
* no delta updates yet - new versions will be retrieved fully
2014-10-27 14:17:06 +01:00
josch
21465f8943
create config directory in HOME and read config from there
2014-10-26 14:11:22 +01:00
josch
b6026aa350
valgrind_fuse: only wait 10 seconds for fuse to be mounted
2014-10-26 14:10:49 +01:00
josch
524fdf5824
add valgrind test for mediafire-fuse and fix memleaks
2014-10-25 11:39:26 +02:00
josch
fe17cb517f
check whether a connection exists before executing certain commands
2014-10-25 11:34:34 +02:00
josch
5e24f47c10
add more curl error output
2014-10-25 11:33:55 +02:00
josch
fbad17827e
fuse: allow to parse config file
2014-10-20 10:31:22 +02:00
josch
5a673abd1b
fix valgrind problems
2014-10-19 08:58:56 +02:00
josch
f23250aaef
Allow to work with only partially filled tree
...
- avoid walking the whole tree on startup
- introduce variable to keep track of which entries need updating
2014-10-19 08:43:57 +02:00
josch
8f728cf106
remove unused variables
2014-10-02 08:22:43 +02:00
josch
5fa32f8878
build with std=c99
2014-10-02 08:20:08 +02:00
josch
5bcd7c38e7
we don't need the recurse argument if we fetch the content if the folder did not exist before
2014-09-29 17:03:26 +02:00
josch
b0410cc1ac
make synchronization with remote more robust
2014-09-29 16:49:11 +02:00
josch
d65f60ec81
rely on some properties of fuse to avoid checks and sanitizing
2014-09-29 10:53:34 +02:00
josch
fc520c6f5b
Implement mkdir and rmdir
2014-09-28 09:37:24 +02:00
josch
43c0b09f70
hashtbl: do not expose h_entry at all
2014-09-28 07:39:13 +02:00
josch
690091721a
Call folder/get_contents for updated folders in device/get_changes
...
- it is not enough to rely on the parent information of updated files
because that misses files and folders that were completely removed
(even from trash)
2014-09-27 23:06:09 +02:00