Commits
- Commit:
90b06b59d961fe004912ebadcdc67c4884de8d20
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
tests: add missed pytest.ini config
Commit "test: initial regression test suite"
(b6eb75dfbb096742e0ae744ba8f04d07c8c4a47c) added initial regression test
suite using pytest. However pytest should be use pytest.ini
that was missed in described commit. This commit fixes it.
Closes #80
- Commit:
5be5c515a2482a2de8041f07034af14468dd51e0
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
readme: describe packages
Closes #79
- Commit:
64261707e2297a427868732443f50197570d78fc
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
readme: add references and similar projects
Closes #47
- Commit:
d5103c8c5ca25276e66527f5c9b8a838c37c341c
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Add error injection with operation slowdown
Closes #29
- Commit:
ecfa26454887e7709a7fb8c882ee2c071c4cdf8c
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Add error injection that returns random errno
Add a new fault injection that returns random errno supported by
performed FUSE operation. The source of errnos for a POSIX function is a
POSIX standard. Source of errnos for other functions are Linux, macOS,
FreeBSD and OpenBSD manual pages.
Closes #6
- Commit:
389b4814a0590be60f7b9a50444eb65408fe43f4
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Use code instead of name for FUSE operation
In upcoming patch with implementation of fault injection that returns
random errno we need to resolve FUSE operation and to make it easier
error_inject() switched from using FUSE operation name to using
operation code.
Part of: #6
- Commit:
379b977540c5ae390425b652a131cdfc3780a926
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Add error injection that kills caller
Closes #28
- Commit:
00cb2fdcc25e6a4486bea31e2652677ca561e7d3
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Fix problem with GPG key
- Commit:
4180ade4d7166546d95171f695eaf819d2336989
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Check probability first
- Commit:
24553f696ea1b6529e29023c0fe29c87fc5f23cc
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Skip error injections for config file
- Commit:
d2c95f2c84a67b53574fd0b807f6135d9606dcf9
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Fix bug with unsupported error injection type
- Commit:
eb89621093274c42a588b41c820a78441c31a40f
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Fix return code on regex matching
- Commit:
756ab577d98be6cf3ce4f4f10ec416c824e2367d
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Fix set correct type for probability variable
- Commit:
024d3c0463bdfec30c48e1c68821977061ebb8be
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Fix no-op fault injection
Follows up: #18
- Commit:
f923f0253af63c48b2b8df7d3da6727116b20076
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Add configuration support
Patch adds command line options and configuration file support
to unreliablefs.
unreliablefs can be managed in runtime using simple .INI configuration
file. unreliablefs config uses configuration language which provides a
structure similar to what's found in Microsoft Windows INI files or used
by configparser Python module [2]. To make it possible third-party C
library [1] has been imported.
There is only one supported error injection - "errinj_noop" that replaces
file operation with no operation. More error injections are coming.
1. https://github.com/benhoyt/inih
2. https://docs.python.org/3/library/configparser.html
Closes #3
Closes #18
Closes #1
Closes #7
Closes #12
Closes #60
- Commit:
662240be6db343e02bfb8dba656b94a7abc721fd
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
cmake: add ASAN and UBSAN sanitizers
Disabled by default
- Commit:
ae9c0785c0598df322cc1880c330f0c9f3f36f2d
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Remove unused headers
- Commit:
ddfbdb1ae061054083507ee5508b04daf1252f60
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
cmake: set CFLAGS using target_compile_options()
Using target_compile_options() is one of the best practice for CMake
so replaced CMAKE_C_FLAGS and CMAKE_CXX_FLAGS by target_compile_options().
Also patch adds options -Wall and -Wextra.
- Commit:
e6cd830adef62a505d9d4ce83cbe156d25a1ce9e
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
gitignore: ignore .swp files
- Commit:
7d046f4f14a28cba0970bfc5f2e82d581f4673b2
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
ci: remove macOS 10.15
brew install --cask osxfuse
==> Tapping homebrew/cask
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask'...
Error: Invalid cask: /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask/Casks/emacs.rb
Cask ''/Applications/Emacs.app/Contents/Resources/man/man1/ebrowse.1.gz' is not a valid man page name' definition is invalid.
Error: Cannot tap homebrew/cask: invalid syntax in tap!
1. https://cirrus-ci.com/task/6024547758505984
- Commit:
eab9c97a63b6f297f304a536b16b071100dad36e
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
FUSE_USE_VERSION
- FreeBSD https://cirrus-ci.com/task/6438581582430208?command=build
- MacOS https://cirrus-ci.com/task/5031206698876928?command=build
- Commit:
428dcf480ca60c64a5584cfe64c8f157bc1b820c
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
style: alignment
- Commit:
76b0d8ef5a7c700c3ccc560ba6145fcdc8aaa6f9
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
readme: add cirrus ci status badge
- Commit:
b4e484ee851da8b24bd53e3b2cf699ba0576b951
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Add license
- Commit:
56e5a54fd8120b5289535879ee897d3f62811278
- From:
- Sergey Bronnikov <estetus@gmail.com>
- Date:
Disable FUSE wrapper for ioctl() on OpenBSD
OpenBSD has it's own FUSE implementation that
doesn't support ioctl() operation.
In file included from /home/sergeyb/source/unreliablefs/unreliablefs.c:10:
/home/sergeyb/source/unreliablefs/unreliablefs_ops.h:55:47: warning: declaration of 'struct fuse_bufvec' will not be visible outside of this
function [-Wvisibility]
int unreliable_write_buf(const char *, struct fuse_bufvec *buf, off_t off,
^
/home/sergeyb/source/unreliablefs/unreliablefs_ops.h:57:46: warning: declaration of 'struct fuse_bufvec' will not be visible outside of this
function [-Wvisibility]
int unreliable_read_buf(const char *, struct fuse_bufvec **bufp,
^
/home/sergeyb/source/unreliablefs/unreliablefs.c:51:6: error: field designator 'ioctl' does not refer to any field in type
'struct fuse_operations'
.ioctl = unreliable_ioctl,
^
2 warnings and 1 error generated.
Disable ioctl() enabled in commit c96dbe41b2f53fb5a9ac1e0fc798775c9cd01596
("Use check_function_exists() to detect functions support").