23 releases
0.5.2 | Jul 21, 2019 |
---|---|
0.5.0 | Feb 28, 2019 |
0.4.0 | Mar 11, 2018 |
0.3.16 | Aug 11, 2017 |
0.3.15 | Jul 17, 2017 |
#250 in Operating systems
Used in fac
220KB
4.5K
SLoC
libbigbro
libbigbro
is a library that provides two functions that enables you
to run a command (i.e. fork
and exec
on a posix system) and track
what files it reads or modifies. These two functions, bigbro
and
bigbro_with_mkdir
are declared in bigbro.h
, which documents their
behavior in a comment.
bigbro
bigbro
is a simple demo utility that uses libbigbro
to run a
changes specified on the command line. It has no command-line flags,
and is as easy to use as strace
:
$ ./bigbro mail
No mail for droundy
r: /usr/lib/x86_64-linux-gnu/liblockfile.so.1.0
r: /usr/lib/x86_64-linux-gnu/liblockfile.so.1
r: /usr/bin/bsd-mailx
r: /usr/bin/mail
r: /lib/x86_64-linux-gnu/libc.so.6
r: /lib/x86_64-linux-gnu/libbsd.so.0.7.0
r: /lib/x86_64-linux-gnu/libc-2.19.so
r: /lib/x86_64-linux-gnu/libbsd.so.0
r: /etc/mail.rc
r: /etc/ld.so.cache
r: /etc/alternatives/mail
The purpose of bigbro
is primarily to enable easy testing of
libbigbro
.
Building
To build bigbro, you just need run:
sh build/linux.sh
If you have fac installed, you can alternatively build bigbro using fac. In this case, you can also simultaneously build bigbro and run the test suite, by running:
python3 run-tests.py