History log of /dovecot/src/lib-fs/fs-api.h
Revision Date Author Comments Expand
5f08b0309190ec818d46bfe0e497468b30714a93 29-Dec-2017 Timo Sirainen <timo.sirainen@dovecot.fi>

global: Rename timing API to stats-dist API The API wasn't really about timings specifically, but about statistics in general. The new stats service was already using it for tracking statistics for non-timing related numbers.

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

d1ba8ecbb936ace90179d2292952546708d68f71 30-Oct-2017 Timo Sirainen <timo.sirainen@dovecot.fi>

global: Replace o_stream_nfinish() with o_stream_flush()

c69b62e5d86e153dfbbfcb99d115f34a25902908 09-Jul-2017 Aki Tuomi <aki.tuomi@dovecot.fi>

lib-fs: Add init function that can use fs string directly This avoids doing splitting the fs driver and args everywhere and ensures that separators are consistent.

15fa038377f9e3da24d088aa8a908919581c60a6 30-Mar-2017 Timo Sirainen <timo.sirainen@dovecot.fi>

lib-fs: Add FS_METADATA_ORIG_PATH This allows fs backends to keep track of the original filename and use it for logging purposes and such.

ece461287e52e22104e881313cea34bc77616a61 16-Oct-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

lib-fs: Added FS_METADATA_WRITE_FNAME to allow renaming a file being written.

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.

0c1f911643fd8542fb488bfe23a54000372cde80 23-Aug-2016 Aki Tuomi <aki.tuomi@dovecot.fi>

lib-fs: Add fs_write_stream_abort_parent and use it Will do all the things abort_error does, but leaves error untouched. You are expected to set one yourself.

6d035effc27b2556393e6b26fbe1a846741cdb8e 23-Aug-2016 Aki Tuomi <aki.tuomi@dovecot.fi>

lib-fs: Remove fs_write_stream_abort Do not use fs_write_stream_abort anymore, instead use fs_write_stream_abort_error to provide upstream some reason when it's used.

be6fab2b1eded6b57d6688c6aa5a7c784f943865 23-Aug-2016 Aki Tuomi <aki.tuomi@dovecot.fi>

fs-api: Add and use fs_write_stream_abort_error This lets caller to specify error instead of setting it with fs_error. Doing it like this lets us percolate the error upwards.

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.

507dcd9fee9b8f032a60af3ea35de4da0e5653c9 14-Jun-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

lib-fs: Added write_bytes to statistics

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.

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.

adb9f4a606df2df9fdd6502cfffa6fc5de92843f 01-Jun-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

lib-fs: Added fs_write_stream_abort_async()

c24b4f9c4acc99d90aef8512ec1bd907f9e844b9 12-May-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

lib-fs: Added FS_PROPERTY_FASTCOPY_CHANGED_METADATA

3d2d3501736ff917f2de8a38f253c741c6f84e1e 19-Nov-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Added fs_stats_get_read/write_usecs() These can be easily used to sum up all the timings for read and write categories.

1c244f6fdbb509cca857982368f5d426e999f2d1 15-Sep-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Track operation timing statistics if enable_timing setting is set.

372a9dd989813eb1a08e07b39987731e33045375 29-May-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Updated fs_write_stream_*() comments related to ostream corking and nfinish.

e853125eceafe8c3e286ce9b4176f6df4b806ace 04-May-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Added fs_ref() and fs_unref() for reference counting.

c793a28b3a9549b89167fedca5f8a66ac82ab315 06-Mar-2015 Timo Sirainen <tss@iki.fi>

lib-fs: struct fs_stats comment updates

302167a8a77cf3597f0b33e644a1805aa3313a8c 05-Mar-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Track how many different operations have been done on the fs.

4c827a0925f5f77d1067e646fc2f615678c50d66 05-Mar-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Added fs_get_parent() and fs_get_driver() These can be used to iterate through fs wrappers and see what they are.

a0d0650370dd88fb0efe1fd34b376839f74be875 03-Mar-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Added FS_ITER_FLAG_NOCACHE

41843bdb6cd96d761a18bab5d5825f344d02420c 17-Feb-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Added FS_METADATA_OBJECTID macro.

8656b625c110d849ece2d040d7880eec20058694 17-Feb-2015 Timo Sirainen <tss@iki.fi>

lib-fs: Added flag for iteration returning object IDs. The flag is only allowed to be used if FS_PROPERTY_OBJECTIDS is set (to avoid writing extra code for backends that don't support this).

11a418b123cd6b4d5460023a2f1d7fd96e182446 15-Nov-2014 Timo Sirainen <tss@iki.fi>

lib-fs: Added FS_PROPERTY_ASYNC.

9a1ab9488c75f8a68871d0fcdff4e0d0e3543299 15-Nov-2014 Timo Sirainen <tss@iki.fi>

lib-fs: Added fs_lookup_metadata() wrapper to fs_get_metadata()

392538eef147981f6d818cd14cabc94cf8049d8e 10-Jul-2014 Timo Sirainen <tss@iki.fi>

lib-fs: Added FS_PROPERTY_COPY_METADATA and fs_set_metadata() tracking.

11538e79ae94be5143d0055d4635fcdfd79a3906 09-Jul-2014 Timo Sirainen <tss@iki.fi>

lib-fs: Added fs_settings.username and .session_id

4f825be38fed479bbe54ca0a76b7d1256e70ce80 22-Oct-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Added dns_client to fs_settings.

60fe2f162e61eae1c2821bf9705c7ff7987c8ade 05-Oct-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Added FS_OPEN_FLAG_ASYNC_NOQUEUE

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.

75a2a8361aafd27d01eef00c23d784e329b695c2 28-May-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Added fs_get_root_driver()

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.

1c31ad9a2e071bd8ac9b98ad8070209ff85f1351 07-Apr-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Added debug setting.

c4a629cd7110285f0046793e4d0b29dee327dfbf 19-Mar-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Allow passing through SSL client settings via struct fs_settings.

42d2fdfbe4047c0aab78c76a10f31766aa53ecd7 11-Mar-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Fixed fs_delete() API description.

d11111fc5356108b6408a58b4ff1811d5b5678ed 05-Feb-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Changed FS_OPEN_FLAG_UNIMPORTANT to a reversed FS_OPEN_FLAG_FSYNC. This explains its behavior better.

a06af8e117e14e2ddc5835bcbe0d2f0370cbc0a1 04-Feb-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Added FS_OPEN_FLAG_SEEKABLE. Globally handle fs_read_stream() seekability and waits.

63e94e8f57920b510fcdc479c5482ba9f4337a5c 21-Jan-2013 Timo Sirainen <tss@iki.fi>

lib-fs: Added flags to iteration, and FS_ITER_FLAG_DIRS as the first flag.

e298b836845e07c9c95b4f068244f6c24252687e 08-Dec-2012 Timo Sirainen <tss@iki.fi>

lib-fs: Added FS_PROPERTY_DIRECTORIES. This is a hint for fs API users if they should call fs_delete() for directories.

8bfb2ecbe654afe6893052959c42b4851119e76d 04-Dec-2012 Timo Sirainen <tss@iki.fi>

lib-fs: Comment update

1680fed5026a52fa4f47eb4cc6d82ec8dddcc50b 26-Nov-2012 Timo Sirainen <tss@iki.fi>

lib-fs: Added a temp_dir setting that the caller can specify.

8804300e6c170eea0cab8e570bf5ebd3b2895c0a 26-Nov-2012 Timo Sirainen <tss@iki.fi>

lib-fs: Added ITER and RELIABLEITER properties for backends.

a58b73c69e2d608843406b5809063d038ae67699 26-Nov-2012 Timo Sirainen <tss@iki.fi>

lib-fs: Iterating a nonexistent directory should be the same as iterating an empty directory.

2766f1de8141c09767a959d2d2c3065c5a300bf0 26-Nov-2012 Timo Sirainen <tss@iki.fi>

lib-fs: fs_wait_async() can now return an error.

ba886767d3817d210b20e1d42983078d189fb13c 21-Oct-2012 Timo Sirainen <tss@iki.fi>

lib-fs: Fixes to async APIs.

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.