diff options
| author | Rusty Wagner <dontpanic@binaryninja.com> | 2015-03-21 03:51:23 -0400 |
|---|---|---|
| committer | Rusty Wagner <dontpanic@binaryninja.com> | 2015-03-21 03:51:23 -0400 |
| commit | c85cae0d74c2c32b23f5e1422f230bebd61f1b1e (patch) | |
| tree | db86059ab0816bc57c469fa72d144768711f9077 /tempfile.cpp | |
| parent | e044ab55ef7204237507465074b54a113c8aae4d (diff) | |
Add assemble dialog and use nasm for x86/x86_64
Diffstat (limited to 'tempfile.cpp')
| -rw-r--r-- | tempfile.cpp | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/tempfile.cpp b/tempfile.cpp new file mode 100644 index 00000000..33256c76 --- /dev/null +++ b/tempfile.cpp @@ -0,0 +1,55 @@ +#include "binaryninjaapi.h" + +using namespace BinaryNinja; +using namespace std; + + +TemporaryFile::TemporaryFile() +{ + m_file = BNCreateTemporaryFile(); +} + + +TemporaryFile::TemporaryFile(const DataBuffer& contents) +{ + m_file = BNCreateTemporaryFileWithContents(contents.GetBufferObject()); +} + + +TemporaryFile::TemporaryFile(const string& contents) +{ + DataBuffer buf(contents.c_str(), contents.size()); + m_file = BNCreateTemporaryFileWithContents(buf.GetBufferObject()); +} + + +TemporaryFile::TemporaryFile(BNTemporaryFile* file): m_file(file) +{ +} + + +TemporaryFile::~TemporaryFile() +{ + if (m_file) + BNFreeTemporaryFile(m_file); +} + + +string TemporaryFile::GetPath() const +{ + if (!m_file) + return string(); + + char* str = BNGetTemporaryFilePath(m_file); + string result = str; + BNFreeString(str); + return result; +} + + +DataBuffer TemporaryFile::GetContents() +{ + if (!m_file) + return DataBuffer(); + return DataBuffer(BNGetTemporaryFileContents(m_file)); +} |
