fc59aba4be5d2f57908e84f0f7477c467a72d567 |
|
13-Dec-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Add fs_file/iter_init_with_event()
Use the event for logging critical errors |
6d1218e68ce883735ffde9d7907e626ab81b9fb5 |
|
13-Dec-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Add fs_file/iter_init_parent() |
4d71d712b42285afbd2a997f3408142ef0d5f899 |
|
13-Dec-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Split allocation from fs.iter_init() to a separate fs.iter_alloc() |
86ad48a2e740bd63a9b7299d7f3e229831d9b303 |
|
13-Dec-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Split allocation from fs.file_init() to a separate fs.file_alloc() |
5b302b077a61204beb6852b89927952840458ccb |
|
16-Oct-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Added internal fs_metadata_find() helper function |
bd7ae8952d41fc1e847098439690355b09920618 |
|
09-Sep-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Moved fs_write_stream_abort_parent() to fs-api-private.h
Only fs wrapper drivers are supposed to call it. |
a63cd84128875485e40ed804dbf0b0945526989c |
|
02-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Added fs_get_nlinks()
Although fs_stat() could return this, its caller can't indicate whether
it actually wants the link count. Usually fs_stat() is used only to get
the file's size. In some backends it's not cheap to get the link count,
so adding this function allows the caller to explicitly ask for it. |
185f63aeffefe857e823bc4eeaea53898f574d57 |
|
11-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Added fs_metadata_init_or_clear() helper |
edfd009103881de283e146609f691281aba150ae |
|
06-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Implement all lib-fs functions as wrappers to parent stream. |
8296531314913c7f9d4ab1857c6f79ff1308a12f |
|
13-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Added fs_switch_ioloop() |
d34b8a75f3b74e26adc85b6436d033b1dcfaf9da |
|
13-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: fs_wait_async() can't fail, so make it return void.
The individual requests can timeout, but not the waiting itself. |
0dffa25d211be541ee3c953b23566a1a990789df |
|
06-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: unsigned int:1 -> bool:1
perl -i -pe 's/unsigned int ([^,:;]+):1;/bool $1:1;/' **/*.[ch] |
a0cf7d3924dec409e6eadaf3237fcecd4194ec75 |
|
01-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Clarified fs_write_stream_abort() API and dropped its _async().
We can't handle an abort after an async fs_write_stream_finish() is already
going. |
d4a85e170c276969ba14c598a3efdbfaf33c7fc6 |
|
12-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Added asserts to make sure async writes are finished before close |
0ee52dafcc5b25c031e289d1d65ecccc859ebd3c |
|
23-Apr-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Assert-crash if file's istream isn't closed at fs_file_close()
Some backends can't guarantee that the istream stays usable after the file
is closed. |
140afad728d78c56fb4c0256f94eb81a213688db |
|
23-Apr-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fs: Added fs-test backend for helping with creation of fs-wrapper unit tests. |
48eb19f796671260c0c77d3c61a5aeb33c9a63b4 |
|
17-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Fixed compiling with some OSes |
1c244f6fdbb509cca857982368f5d426e999f2d1 |
|
15-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Track operation timing statistics if enable_timing setting is set. |
6c0d8dc7cad70a336b01bd1978b3eee84a63b3b7 |
|
31-Aug-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added "dict" backend, which is a wrapper to using lib-dict. |
a578aaf5712cc1e9897e1879b4a7a82f92b2c50d |
|
16-Aug-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Moved enum fs_op from fs-randomfail.c to fs-api-private.h
These are useful for other purposes as well. |
5a441a6d97225cbdc67dad7bdd80de3c7bfedaab |
|
16-Jun-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added "randomfail" driver.
Using this in front of fs drivers allows randomly injecting failures. For
example:
mail_attachment_fs = randomfail:all=10,read=30,read-range=2000-3000:sis posix
This means that all FS operations have a 10% chance of failing, except reads
have a 30% chance of failing. If the read fails, it'll fail somewhere
between offsets 2000-3000 (the default is 0, so it'll fail at the start of
file).
The supported operations are: wait metadata prefetch read write lock exists
stat copy rename delete iter. "all" applies to all of them.
The supported ranges are: read-range, write-range, iter-range. |
29b8c2bd69b2b2d688fdbf6b8383c7abff0f276b |
|
07-May-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Fixed fs-compress code to actually build and run.
It's a plugin (because it depends on extra compression libraries). We want
to register it only when it's explicitly attempted to be used, not before. |
d0c3964c88496a3c476a649c21f2abf8d81fd7ab |
|
07-May-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added fs-compress wrapper.
Future TODO could include automatically detecting the format of the input
file, but this should be optional. |
e853125eceafe8c3e286ce9b4176f6df4b806ace |
|
04-May-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added fs_ref() and fs_unref() for reference counting. |
60eda49183dbec5f3d5ec18b38433581e28e2eba |
|
16-Apr-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: fs_class_register() can now be called externally. |
ea19bfdfc2205af178a70915054c809ed2b8709e |
|
22-Mar-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added support for module_contexts in fs.
They could also be added to fs_file if needed, but for now I didn't bother
adding it. |
4dfd8a717fe2e1c01aeddd2992bc9745ca8e0abb |
|
06-Mar-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Minor code cleanup: Merge read_counted & prefetch_counted into read_or_prefetch_counted |
302167a8a77cf3597f0b33e644a1805aa3313a8c |
|
05-Mar-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Track how many different operations have been done on the fs. |
6a53a51834b1b437257e7efa85013177b70fe255 |
|
07-Oct-2014 |
Phil Carmody <phil@dovecot.fi> |
lib-fs: struct fs_file's write_pending is a flag
Signed-off-by: Phil Carmody <phil@dovecot.fi> |
e13e798694ba1b0d0a5cf471600168eeaa8d2af4 |
|
15-Sep-2014 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Keep track of all fs_iters in fs. |
5804ddddad82319839785885fdacbba60e0c9581 |
|
15-Sep-2014 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added wait_ioloop/prev_ioloop helpers to struct fs. |
92093e6d8bdddeac59e169bcde6d0080a17e66ef |
|
28-Aug-2014 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Keep a linked list of all files within fs to help debugging. |
392538eef147981f6d818cd14cabc94cf8049d8e |
|
10-Jul-2014 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added FS_PROPERTY_COPY_METADATA and fs_set_metadata() tracking. |
02cc28525a97ee60cb512c8eb15908082743bfe9 |
|
09-Jul-2014 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added username and session_id to struct fs directly. |
9c45f33d0e0ca0b8f87f9a3318dd505a78fd198e |
|
10-Sep-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added support for asynchronous fs iteration. |
67a163f3a07593446fab1cbbb8f92a89d4c6cb57 |
|
09-Sep-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added support for giving a hash of the written data to be verified by storage. |
0b32a8d139f6a4f2b18a6444fc66d31b4a1b0da6 |
|
10-Apr-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added fs_file_close() to explicitly close all streams that the file has open. |
c4e3c997c04eb6f93f782c5fa53354390ed07a02 |
|
27-Mar-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Always keep the error in the parentmost fs.
This fixes problems with getting the correct error message when wrapper
filesystems are used. |
4948718872b7dacb239e7db20393cd232bf4568b |
|
26-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: If fs_read_stream() creates a seekable stream, keep it open for future reads. |
a06af8e117e14e2ddc5835bcbe0d2f0370cbc0a1 |
|
04-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added FS_OPEN_FLAG_SEEKABLE. Globally handle fs_read_stream() seekability and waits. |
84669c712403b742cc07ae70229725c486ef1235 |
|
21-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added "metawrap" wrapper to implement metadata as headers in the file content. |
3dcb9fd82c1edd40bea1ad572ed39f024686e463 |
|
21-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: fs_file_path() is now a virtual function.
This fixes it returning the correct filename when file was created using
FS_OPEN_MODE_CREATE_UNIQUE_128 and a wrapper fs. |
63e94e8f57920b510fcdc479c5482ba9f4337a5c |
|
21-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added flags to iteration, and FS_ITER_FLAG_DIRS as the first flag. |
251457b81928bab1ad25193e8a09bda829abe9ee |
|
04-Dec-2012 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added a default fs_read() implementation using the fs_read_stream(). |
0fb5804c1c6023fecccd979fdb25d2affda934a4 |
|
04-Dec-2012 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Added a default fs_write() implementation using the fs_write_stream*(). |
6e8fce0589289d10e6dcd9b71fde763492bb29b8 |
|
26-Nov-2012 |
Timo Sirainen <tss@iki.fi> |
lib-fs: Automatically try to load missing driver as plugin. |
2766f1de8141c09767a959d2d2c3065c5a300bf0 |
|
26-Nov-2012 |
Timo Sirainen <tss@iki.fi> |
lib-fs: fs_wait_async() can now return an error. |
c59b9c273b41f7bcf51f6803110b67813879ff05 |
|
11-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
lib-fs API cleanups and improvements |
d4c3d55021bcbf2b062f4782b1cde9115d35aefc |
|
17-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
lib-fs: fs_init() API changed to allow returning an error. |
c33d3f93abf8392fdc60e12bea41ffd12cc85a8d |
|
19-Oct-2010 |
Timo Sirainen <tss@iki.fi> |
Added lib-fs for simple filesystem accessing. Implemented POSIX, SiS and SiS-queue backends. |