Skip to content
Snippets Groups Projects
Commit 56732049 authored by clc5q's avatar clc5q
Browse files

Merge trunk changes into clc_ibtl_branch.

Former-commit-id: 477873ade982a4ffe50a1d40584640e98ae15cdd
parents 40376024 cb48e0a5
No related branches found
No related tags found
No related merge requests found
......@@ -47,6 +47,7 @@ class DataScoop_t : public BaseObj_t
std::string GetName() const { return name; }
std::string GetContents() const { return contents; }
std::string &GetContents() { return contents; }
libIRDB::AddressID_t* GetStart() const { return start; }
libIRDB::AddressID_t* GetEnd() const { return end; }
libIRDB::Type_t* GetType() const { return type; }
......@@ -54,6 +55,7 @@ class DataScoop_t : public BaseObj_t
bool isReadable() const { return (permissions & permissions_r) == permissions_r; }
bool isWriteable() const { return (permissions & permissions_w) == permissions_w; };
bool isExecuteable() const { return (permissions & permissions_x) == permissions_x; };
int getRawPerms() const { return permissions; }
void SetName(const std::string &n) { name=n; }
void SetContents(const std::string &n) { contents=n; }
......
......@@ -445,22 +445,26 @@ void fill_in_scoops(FileIR_t *firp)
fout<<"Found that section "<<elfiop->sections[secndx]->get_name()<<" is both writeable and executable. Program is inherently unsafe!"<<endl;
}
#if 0
/* executable sections handled by other bits. */
if(elfiop->sections[secndx]->isExecutable())
{
cout<<"Skipping scoop for section (executable) "<<elfiop->sections[secndx]->get_name()<<endl;
continue;
}
// we decided to skip BSS for a bad reason. trying again.
if(elfiop->sections[secndx]->isBSS())
{
cout<<"Skipping bss section: "<<elfiop->sections[secndx]->get_name()<<endl;
continue;
}
// we decided to skip tls for a bad reason. trying again.
if(elfiop->sections[secndx]->isThreadLocal())
{
cout<<"Skipping tls section (executable) "<<elfiop->sections[secndx]->get_name()<<endl;
continue;
}
#endif
/* name */
string name=elfiop->sections[secndx]->get_name();
......
......@@ -24,5 +24,5 @@ myenv=myenv.Clone(CPPPATH=Split(cpppath))
myenv.Append(CPPFLAGS=CPPFLAGS)
pgm=myenv.Program(target="hook_dynamic_calls.exe", source=Split("hook_dynamic_calls.cpp hook_dynamic_calls_driver.cpp"), LIBPATH=LIBPATH, LIBS=LIBS)
install=myenv.Install("$SECURITY_TRANSFORMS_HOME/bin/", pgm)
install=myenv.Install("$SECURITY_TRANSFORMS_HOME/plugins_install/", pgm)
Default(install)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment