Skip to content
This repository has been archived by the owner on Jul 15, 2019. It is now read-only.

YahooArchive/rtrace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Copyright 2015,2016, Yahoo! Inc. Copyrights licensed under the New BSD License. See the accompanying LICENSE file in the project root folder for terms.

What is it?

Disclaimer: THIS IS BETA CODE

Ruby code (with zero dependencies) for debugging native x86/x86_64 bit Linux binaries using the ptrace API. ARM support is planned but not yet finished.

Rtrace ships with Eucalyptus. A fully functional scriptable debugger that doubles as a unit test for Rtrace. Eucalyptus is scriptable and extendable, its not just a test harness. It ships with real world examples that work out of the box. It also includes some simple utilities for parsing ELF binaries.

The only dependency Rtrace has is FFI which can be easily installed with Ruby gems. FFI is maintained, supported, and incredibly powerful.

Rtrace contains an optional ELF parser that requires the bindata gem. The parser supports 32/64bit ELF objects but it has not been well tested. I welcome pull requests that improve its stability.

Rtrace is inspired by the Ragweed::Wraptux code which I wrote several years ago.

TODO

  • Rtrace currently lacks support for DWARF and has no disassembler. These things are a little beyond the scope of Rtrace. However Eucalyptus could see support for these in the near term. This would most likely include hooks for the Capstone engine.

People

Rtrace is written by ChrisRohlf @ yahoo - inc . com

Ragweed was written by Thomas Ptacek, Timur Duehr, and Chris Rohlf

License

Please see License.txt

About

Rtrace is an x86/x86_64 native code debugger written in Ruby with zero dependencies

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages