| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| katana-0.3.0b.tar.gz | 2012-07-26 | 798.4 kB | |
| katana-0.3.0b.tar.gz.sig | 2012-07-26 | 72 Bytes | |
| README.txt | 2011-04-18 | 1.6 kB | |
| README | 2011-04-18 | 1.6 kB | |
| katana-0.2.0b.tar.gz.sig | 2011-04-18 | 72 Bytes | |
| katana-0.2.0b.tar.gz | 2011-04-18 | 753.0 kB | |
| katana-0.1.0b.tar.gz | 2010-06-18 | 400.1 kB | |
| Totals: 7 Items | 2.0 MB | 3 |
This is a preliminary version of Katana, a toolchain-oriented
hotpatching system for userland (in contrast to kernel-patching
systems such as KSplice) and a (somewhat) general-purpose ELF and
DWARF manipulation tool. More complete documentation will reside in
./doc, although such is currently in a very early state
DEPENDENCIES
libelf
widely available with a couple different implementations. I
recommend the one from Red Hat at
https://fedorahosted.org/elfutils/. The FSF version
(http://directory.fsf.org/project/libelf/) which is the default
available to gentoo users, does not seem to be fully compatible.
libdwarf
you can get the latest version of libdwarf from
http://reality.sgiweb.org/davea/dwarf.html.
libunwind
http://www.nongnu.org/libunwind/
libreadline
http://www.gnu.org/software/readline/
bison
http://www.gnu.org/software/bison/
flex
http://flex.sourceforge.net/
BUILDING
./configure
make
Note that flex and bison (as well as gcc, of course) are required to
build Katana.
make
./install libdwarf.so DEST
TESTING
To make sure katana works:
make check
Note that at present this only tests the hotpatching features of katana
USAGE
Katana presently has two main functions
HOTPATCHING
To generate a patch file, run
katana -g [-o OUT_FULE] OLD_OBJECT_TREE NEW_OBJECT_TREE EXEC
(EXEC is the name of the executable file whose process will be patched)
To patch a process run
katana -p PATCH_FILE PID
ELF/DWARF Manipulation
Documentation has not yet been written. Email
electron100@gmail.com if you are interested in this.