X-Git-Url: http://git.vrable.net/?a=blobdiff_plain;f=bluesky%2Ffile.c;h=607d61186abfbc26a98f8719b2cd7f70e787437f;hb=98effa493bca2b6e97d98035be602993da27d26b;hp=5a4fe9b310ae3966b64b68161d131f01a6b3186e;hpb=fe2b07cf3f79430f9b4d16a8d567ea9b6178d9d2;p=bluesky.git diff --git a/bluesky/file.c b/bluesky/file.c index 5a4fe9b..607d611 100644 --- a/bluesky/file.c +++ b/bluesky/file.c @@ -10,7 +10,7 @@ #include #include -#include "bluesky.h" +#include "bluesky-private.h" /* Core filesystem: handling of regular files and caching of file data. */ @@ -111,6 +111,7 @@ void bluesky_file_write(BlueSkyInode *inode, uint64_t offset, } bluesky_inode_update_ctime(inode, 1); + bluesky_inode_flush(inode->fs, inode); } void bluesky_file_read(BlueSkyInode *inode, uint64_t offset, @@ -153,13 +154,11 @@ void bluesky_block_fetch(BlueSkyFS *fs, BlueSkyBlock *block) if (block->type != BLUESKY_BLOCK_REF) return; - g_print("Fetching block from %s\n", block->ref); - BlueSkyRCStr *string = s3store_get(fs->store, block->ref); + BlueSkyRCStr *string = bluesky_store_get(fs->store, block->ref); bluesky_string_unref(block->data); - block->data = bluesky_crypt_decrypt(string, fs->encryption_key); + block->data = string; block->type = BLUESKY_BLOCK_CACHED; - bluesky_string_unref(string); } /* Write the given block to cloud-backed storage and mark it clean. */ @@ -169,14 +168,12 @@ void bluesky_block_flush(BlueSkyFS *fs, BlueSkyBlock *block) return; BlueSkyRCStr *data = block->data; - data = bluesky_crypt_encrypt(data, fs->encryption_key); GChecksum *csum = g_checksum_new(G_CHECKSUM_SHA256); g_checksum_update(csum, data->data, data->len); gchar *name = g_strdup(g_checksum_get_string(csum)); - g_print("Flushing block as %s\n", name); - s3store_put(fs->store, name, data); + bluesky_store_put(fs->store, name, data); g_free(block->ref); block->ref = name; @@ -186,5 +183,5 @@ void bluesky_block_flush(BlueSkyFS *fs, BlueSkyBlock *block) block->type = BLUESKY_BLOCK_REF; g_checksum_free(csum); - bluesky_string_unref(data); + //bluesky_string_unref(data); }