Commit Graph

322 Commits

Author SHA1 Message Date
Jude Nelson
e14adbb87c bugfixes in the Python client found intesting 2017-03-22 15:40:18 -04:00
Jude Nelson
b9ddd461b5 bugfixes in testing 2017-03-22 15:40:03 -04:00
Jude Nelson
576bc21a2c make sure all required drivers succeed on put/delete; make sure we verify both compressed and uncompressed pubkey hashes when given a pubkey has to use to verify data 2017-03-22 15:00:43 -04:00
Jude Nelson
7cb38ef42e take root tombstones externally from signatures 2017-03-22 14:59:42 -04:00
Jude Nelson
1dc1e7e057 take the signed datastore information from callers that want to mutate the datastore; take device IDs as hints on where to look for inode consistency information; stop and get the API server status from the same process 2017-03-22 14:59:08 -04:00
Jude Nelson
2bb9a49051 only start-up the daemon; don't do status or stopping 2017-03-22 14:58:51 -04:00
Jude Nelson
5ac2853308 fix a few bugs and take extra message verification steps:
* when replicating an inode, replicate each (inode header, payload) pair instead of all headers and then all payloads (makes it easier to do a successful partial write)
* do not assume that we know the device IDs; allow the caller to supply them
* sign and verify the datastore record on datastore-mutate operations
* verify that all tombstones' device IDs cover the caller-given set of device IDs
2017-03-22 14:57:04 -04:00
Jude Nelson
aeec60ce73 take device_ids on the CLI interface (separate from the config file device IDs) in order to support external clients 2017-03-22 14:56:18 -04:00
Jude Nelson
1955785e24 refactor legacy wallet compatibility code into version-specifc methods 2017-03-21 11:39:40 -04:00
Jude Nelson
9cca1e9e80 upgrade wallet schema to put secrets into a single blob (speeds up scrypt usage) 2017-03-21 11:35:16 -04:00
Jude Nelson
70b660ed82 code refactoring to make it clear when we hexlify secrets 2017-03-21 11:35:02 -04:00
Jude Nelson
2a7075a1da increment dirent version 2017-03-21 11:34:46 -04:00
Jude Nelson
90f1d9a011 fix documentation typo 2017-03-21 11:34:36 -04:00
Jude Nelson
6aa16b482d remove dead imports 2017-03-21 11:34:28 -04:00
Jude Nelson
7c5bf714c8 remove dead imports 2017-03-21 11:34:20 -04:00
Jude Nelson
6d3313b25f drop dead code; use scrypt for encryption/decryption in the future 2017-03-21 11:34:02 -04:00
Jude Nelson
be4b5c4f12 remove dead code 2017-03-21 11:33:47 -04:00
Jude Nelson
f3af712965 add start-foreground (WIP) 2017-03-21 11:33:39 -04:00
Jude Nelson
85439f63e7 lookup response schemas 2017-03-17 14:38:14 -04:00
Jude Nelson
13a9c3383d get idata via query string; validate response from a lookup 2017-03-17 14:37:56 -04:00
Jude Nelson
93caa6f10a don't get idata by default, but request it 2017-03-17 14:37:44 -04:00
Jude Nelson
4a71bd6041 explicitly opt-in for idata 2017-03-17 14:37:31 -04:00
Jude Nelson
17bbb3b978 include version in dirent and inode structure, as well a protocol version 2017-03-17 11:47:55 -04:00
Jude Nelson
8197b865e0 allow API caller to override version checks; imporve start-up sequence to ping booting node on the right host/port 2017-03-17 11:47:29 -04:00
Jude Nelson
b736d55209 update parent directory version when modifying children; keep version in inode structure as well as mutable data blob; allow caller to override version checks 2017-03-17 11:46:56 -04:00
Jude Nelson
7132ddd775 storage protocol version 2017-03-17 11:46:41 -04:00
Jude Nelson
2aa76c4028 take force=True/False to force stale inodes 2017-03-17 11:45:56 -04:00
Jude Nelson
b8ff276d72 add -b/--bind 2017-03-16 18:03:25 -04:00
Jude Nelson
55afd3a0a8 it's setup_wallet now 2017-03-16 18:01:29 -04:00
Jude Nelson
93e5c078b6 move out DELETE_DATASTORE_REQUEST_SCHEMA; fix api_bind variable 2017-03-16 18:01:14 -04:00
Jude Nelson
e9336b9ccf allow multiple putfile on the same path 2017-03-16 18:00:57 -04:00
Jude Nelson
81cfb3700f add api_endpoint_bind to change the bind address 2017-03-16 16:18:58 -04:00
Jude Nelson
a4c83697ca add api_endpoint_host config file argument, so we can do API calls to non-localhost API daemons (i.e. containerized ones) 2017-03-16 16:12:49 -04:00
Jude Nelson
2d5ff35f2c expect base64 idata for files 2017-03-16 11:29:24 -04:00
Jude Nelson
af0d5156e1 store base64-encoded file data 2017-03-16 11:29:15 -04:00
Jude Nelson
96ec5962af add rmtree command 2017-03-16 10:58:26 -04:00
Jude Nelson
d2072cb912 erase 'path' and 'dir'; don't bail on assert 2017-03-16 10:56:20 -04:00
Jude Nelson
4962911757 remove dead code; add backend_signin() method for client-side token generation; fix bugs found in testing 2017-03-15 18:12:22 -04:00
Jude Nelson
e6de9d9ab1 fix up client-side datastore API to not require an indexer proxy object 2017-03-15 18:12:02 -04:00
Jude Nelson
efafafc502 add '-A/--api_session' to take a session token on the CLI 2017-03-15 18:11:45 -04:00
Jude Nelson
1a05a8b57b rework signin so as to authorize an externally-given public key 2017-03-15 18:11:24 -04:00
Jude Nelson
14c1acafda CLI interface fixes found from testing 2017-03-15 18:11:12 -04:00
Jude Nelson
5267e61f44 version bump 2017-03-13 18:20:18 -04:00
Jude Nelson
cab322ff7e use config_path for connecting to API, not config_dir 2017-03-13 17:53:17 -04:00
Jude Nelson
4640503b9d fix up documentation a bit 2017-03-13 17:53:08 -04:00
Jude Nelson
6b63fc87f7 unused import 2017-03-13 17:52:53 -04:00
Jude Nelson
52ecbc5fe0 expand client API interface to include datastore operations to help load, store, and delete inodes 2017-03-13 17:52:36 -04:00
Jude Nelson
0f007f6dfe WIP: remove all requirements for holding onto the data private key in core 2017-03-13 17:52:18 -04:00
Jude Nelson
5dd8f7d2b4 refactored datastore API to require clients to sign everything with an external key. datastore I/O requires signed inodes, their payloads, and tombstones (for deletion) 2017-03-13 17:51:41 -04:00
Jude Nelson
3c4d97dd00 include app public key in auth request 2017-03-13 17:51:26 -04:00