diff options
author | Magnus Ahltorp <map@kth.se> | 2016-02-12 16:03:05 +0100 |
---|---|---|
committer | Linus Nordberg <linus@nordu.net> | 2016-04-25 13:14:11 +0200 |
commit | 27ebeff879126434740af3db63004cb4eb4b0021 (patch) | |
tree | 495058ed3924a223cde4878b9aa809563b18db2b /c_src/filebuffer.h | |
parent | aa6e0022ddc71459e6fbfaa16bd851082d06edd5 (diff) |
Move code to util.c and filebuffer.c
Diffstat (limited to 'c_src/filebuffer.h')
-rw-r--r-- | c_src/filebuffer.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/c_src/filebuffer.h b/c_src/filebuffer.h new file mode 100644 index 0000000..2f344cd --- /dev/null +++ b/c_src/filebuffer.h @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2015, NORDUnet A/S. + * See LICENSE for licensing information. + */ + +#ifndef FILEBUFFER_H +#define FILEBUFFER_H + +typedef struct buffered_file buffered_file; + +buffered_file * +bf_open(const char *path, int flags, const char *name); +void +bf_close(buffered_file *file); +void +bf_truncate(buffered_file *file); + + +void +bf_add(buffered_file *file, const void *data, uint64_t length); +int +bf_flush(buffered_file *file); +uint64_t +bf_total_length(buffered_file *file); +uint64_t +bf_lastcommit(buffered_file *file); +const char * +bf_name(buffered_file *file); + +void +bf_add_host64(buffered_file *file, uint64_t value); +void +bf_add_be32(buffered_file *file, uint32_t value); +void +bf_add_be16(buffered_file *file, uint16_t value); +int +bf_flush_nosync(buffered_file *file); + +unsigned char * +bf_read(buffered_file *file, uint64_t offset, size_t length, char **error); + +void +bf_sha256(buffered_file *file, unsigned char *checksum); + +#endif |