From dfc1ae5b33f8e316f29aee4bc34b614709b5895e Mon Sep 17 00:00:00 2001 From: Jonathan-Christofer Demay Date: Thu, 7 Jan 2010 14:50:58 +0000 Subject: new ebuild: app-admin/syscall_anomaly and dev-libs/libanomaly --- app-admin/syscall_anomaly/Manifest | 3 + .../files/syscall_anomaly-1.0-gcc4_compat.patch | 234 +++++++++++++++++++++ .../syscall_anomaly/syscall_anomaly-1.0.ebuild | 28 +++ 3 files changed, 265 insertions(+) create mode 100644 app-admin/syscall_anomaly/Manifest create mode 100644 app-admin/syscall_anomaly/files/syscall_anomaly-1.0-gcc4_compat.patch create mode 100644 app-admin/syscall_anomaly/syscall_anomaly-1.0.ebuild (limited to 'app-admin') diff --git a/app-admin/syscall_anomaly/Manifest b/app-admin/syscall_anomaly/Manifest new file mode 100644 index 000000000..e6c3cb0ca --- /dev/null +++ b/app-admin/syscall_anomaly/Manifest @@ -0,0 +1,3 @@ +AUX syscall_anomaly-1.0-gcc4_compat.patch 6098 RMD160 ef5e20619516022cd747a453a37495c92222d844 SHA1 f38c67c92d5bdf29a25e83033cf6bbc34f52f7c5 SHA256 a79f0d2aab48938afc134cf57c29a5592fc2bc808f3be26133a14573e1086231 +DIST syscall_anomaly-1.0.tar.gz 352395 RMD160 2a2f89fb5bc40171b431f2334afbba0d6d97fec1 SHA1 edfe10aedb3dcd5ecfb7e5d403d92aafcb5e68f1 SHA256 fd52cb03fabc5742e2fa34566bae9d333db4fda772acc8f150160177d2c1fe29 +EBUILD syscall_anomaly-1.0.ebuild 621 RMD160 944fc242e24476b28d5cef7326cc8fd710f5c917 SHA1 1fd7dc07c5b9e930fc2e3e0be6f64710106bd154 SHA256 b4af0a941a8a1f4f8b1e2258235fe082510e3ee8b7dcededfb89aa426ebf97bf diff --git a/app-admin/syscall_anomaly/files/syscall_anomaly-1.0-gcc4_compat.patch b/app-admin/syscall_anomaly/files/syscall_anomaly-1.0-gcc4_compat.patch new file mode 100644 index 000000000..61c1a325d --- /dev/null +++ b/app-admin/syscall_anomaly/files/syscall_anomaly-1.0-gcc4_compat.patch @@ -0,0 +1,234 @@ +diff -Naurp syscall_anomaly-1.0-orig/src/analyzer.hpp syscall_anomaly-1.0-ptch/src/analyzer.hpp +--- syscall_anomaly-1.0-orig/src/analyzer.hpp 2004-03-12 20:55:16.000000000 +0000 ++++ syscall_anomaly-1.0-ptch/src/analyzer.hpp 2009-12-12 22:29:12.000000000 +0000 +@@ -3,10 +3,17 @@ + + #include + +-#if defined(__GNUC__) && __GNUC__ == 3 ++#ifdef __GNUC__ ++#if __GNUC__ < 3 ++#include ++#elif __GNUC__ < 4 + #include + using namespace __gnu_cxx; + #else ++#include ++using namespace __gnu_cxx; ++#endif ++#else + #include + #endif + +@@ -16,7 +23,7 @@ using namespace __gnu_cxx; + #include "syscall2.h" + + +-#if defined(__GNUC__) && __GNUC__ == 3 ++#if defined(__GNUC__) && __GNUC__ > 2 + namespace __gnu_cxx { + #else + namespace std { +diff -Naurp syscall_anomaly-1.0-orig/src/config.hpp syscall_anomaly-1.0-ptch/src/config.hpp +--- syscall_anomaly-1.0-orig/src/config.hpp 2004-10-17 22:44:59.000000000 +0000 ++++ syscall_anomaly-1.0-ptch/src/config.hpp 2009-12-12 22:29:12.000000000 +0000 +@@ -5,10 +5,17 @@ + #include + #include + +-#if defined(__GNUC__) && __GNUC__ == 3 ++#ifdef __GNUC__ ++#if __GNUC__ < 3 ++#include ++#elif __GNUC__ < 4 + #include + using namespace __gnu_cxx; + #else ++#include ++using namespace __gnu_cxx; ++#endif ++#else + #include + #endif + +diff -Naurp syscall_anomaly-1.0-orig/src/Event.cpp syscall_anomaly-1.0-ptch/src/Event.cpp +--- syscall_anomaly-1.0-orig/src/Event.cpp 2004-03-12 20:55:16.000000000 +0000 ++++ syscall_anomaly-1.0-ptch/src/Event.cpp 2009-12-12 22:29:12.000000000 +0000 +@@ -4,7 +4,6 @@ + + #include + #include +- + #include "syscall.h" + #include "Event.hpp" + #include +@@ -44,6 +43,39 @@ const string + Event::getSyscall(void) const + { + switch(syscallno) { ++ ++#if __WORDSIZE != 64 ++ case SYS_truncate64: ++ return "truncate64"; ++ ++ case SYS_chown32: ++ return "chown32"; ++ ++ case SYS_lchown32: ++ return "lchown32"; ++ ++ case SYS_setuid32: ++ return "setuid32"; ++ ++ case SYS_umount: ++ return "umount"; ++ ++ case SYS_setgid32: ++ return "setgid32"; ++ ++ case SYS_setreuid32: ++ return "setreuid32"; ++ ++ case SYS_setregid32: ++ return "setregid32" ++ ++ case SYS_setresuid32: ++ return "setresuid32"; ++ ++ case SYS_setresgid32: ++ return "setresgid32"; ++#endif ++ + case SYS_exit: + return "exit"; + +@@ -74,9 +106,6 @@ Event::getSyscall(void) const + case SYS_truncate: + return "truncate"; + +- case SYS_truncate64: +- return "truncate64"; +- + case SYS_chroot: + return "chroot"; + +@@ -86,12 +115,6 @@ Event::getSyscall(void) const + case SYS_lchown: + return "lchown"; + +- case SYS_chown32: +- return "chown32"; +- +- case SYS_lchown32: +- return "lchown32"; +- + case SYS_execve: + return "execve"; + +@@ -107,45 +130,24 @@ Event::getSyscall(void) const + case SYS_mount: + return "mount"; + +- case SYS_umount: +- return "umount"; +- + case SYS_setuid: + return "setuid"; + +- case SYS_setuid32: +- return "setuid32"; +- + case SYS_setgid: + return "setgid"; + +- case SYS_setgid32: +- return "setgid32"; +- + case SYS_setreuid: + return "setreuid"; + +- case SYS_setreuid32: +- return "setreuid32"; +- + case SYS_setregid: + return "setregid"; + +- case SYS_setregid32: +- return "setregid32"; +- + case SYS_setresuid: + return "setresuid"; + +- case SYS_setresuid32: +- return "setresuid32"; +- + case SYS_setresgid: + return "setresgid"; + +- case SYS_setresgid32: +- return "setresgid32"; +- + case SYS_create_module: + return "create_module"; + +diff -Naurp syscall_anomaly-1.0-orig/src/forrest.cpp syscall_anomaly-1.0-ptch/src/forrest.cpp +--- syscall_anomaly-1.0-orig/src/forrest.cpp 2004-10-21 02:55:02.000000000 +0000 ++++ syscall_anomaly-1.0-ptch/src/forrest.cpp 2009-12-12 22:29:31.000000000 +0000 +@@ -1,4 +1,5 @@ + #include ++#include + + #include "Event.hpp" + #include "EventProvider.hpp" +diff -Naurp syscall_anomaly-1.0-orig/src/ModelWrappers.cpp syscall_anomaly-1.0-ptch/src/ModelWrappers.cpp +--- syscall_anomaly-1.0-orig/src/ModelWrappers.cpp 2003-05-29 23:37:44.000000000 +0000 ++++ syscall_anomaly-1.0-ptch/src/ModelWrappers.cpp 2009-12-12 22:29:12.000000000 +0000 +@@ -1,5 +1,6 @@ + #include "ModelWrappers.hpp" + #include ++#include + + void StringLengthWrapper::insert_item(Item * i){ + if(_child){ +@@ -286,7 +287,7 @@ double CharDistributionWrapper::get_conf + // Function object to compare two ItemCount + namespace std { + template<> +- struct std::greater ++ struct greater + { + bool operator()(const ItemCount* left, const ItemCount* right) const + { +diff -Naurp syscall_anomaly-1.0-orig/src/provider/bsm/BSMProvider.cpp syscall_anomaly-1.0-ptch/src/provider/bsm/BSMProvider.cpp +--- syscall_anomaly-1.0-orig/src/provider/bsm/BSMProvider.cpp 2003-05-29 23:37:44.000000000 +0000 ++++ syscall_anomaly-1.0-ptch/src/provider/bsm/BSMProvider.cpp 2009-12-12 22:29:12.000000000 +0000 +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + + #include + +diff -Naurp syscall_anomaly-1.0-orig/src/provider/bsm/BSMProvider.hpp syscall_anomaly-1.0-ptch/src/provider/bsm/BSMProvider.hpp +--- syscall_anomaly-1.0-orig/src/provider/bsm/BSMProvider.hpp 2003-03-25 03:31:37.000000000 +0000 ++++ syscall_anomaly-1.0-ptch/src/provider/bsm/BSMProvider.hpp 2009-12-12 22:29:12.000000000 +0000 +@@ -6,10 +6,17 @@ + #ifndef __BSM_PROVIDER_HPP + #define __BSM_PROVIDER_HPP + +-#if defined(__GNUC__) && __GNUC__ == 3 ++#ifdef __GNUC__ ++#if __GNUC__ < 3 ++#include ++#elif __GNUC__ < 4 + #include + using namespace __gnu_cxx; + #else ++#include ++using namespace __gnu_cxx; ++#endif ++#else + #include + #endif + diff --git a/app-admin/syscall_anomaly/syscall_anomaly-1.0.ebuild b/app-admin/syscall_anomaly/syscall_anomaly-1.0.ebuild new file mode 100644 index 000000000..a02c62060 --- /dev/null +++ b/app-admin/syscall_anomaly/syscall_anomaly-1.0.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +inherit eutils + +EAPI="2" + +DESCRIPTION="Anomaly detection on system call arguments" +HOMEPAGE="http://www.cs.ucsb.edu/~seclab/projects/libanomaly/index.html" +SRC_URI="http://www.cs.ucsb.edu/~seclab/projects/libanomaly/downloads/${P}.tar.gz" + +LICENSE="GPL2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~sparc ~x86" +IUSE="" + +DEPEND="dev-libs/libanomaly" +RDEPEND="${DEPEND}" + +src_prepare(){ + epatch "${FILESDIR}/${P}-gcc4_compat.patch" +} + +src_install(){ + emake install DESTDIR="${D}" || die "emake install failed" +} + -- cgit v1.2.3-65-gdbad