summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin/lsat')
-rw-r--r--app-admin/lsat/Manifest1
-rw-r--r--app-admin/lsat/files/lsat-0.9.7.1-gentoo.patch42
-rw-r--r--app-admin/lsat/files/lsat-0.9.7.1-segfault-fix.patch45
-rw-r--r--app-admin/lsat/lsat-0.9.7.1-r1.ebuild48
-rw-r--r--app-admin/lsat/metadata.xml15
5 files changed, 151 insertions, 0 deletions
diff --git a/app-admin/lsat/Manifest b/app-admin/lsat/Manifest
new file mode 100644
index 000000000000..0c08dd99a3f4
--- /dev/null
+++ b/app-admin/lsat/Manifest
@@ -0,0 +1 @@
+DIST lsat-0.9.7.1.tgz 86077 SHA256 825b4578e7e90f937c492722801fd6b35785264747cd6e7e45bded2545d2d956 SHA512 fa67b5ebb03d11e3ee023c921977ddb64ea1fafca1d4cdb4b0fc5dbfa6edf46d57e488e9702175afbbde360a63d02ee5839fdf6576d974354a3b1d57f8860ffb WHIRLPOOL 81db8c06bf9bd8ae82a29ca751e378ffbc051e8184e7dac208e43064960949fe9483522600f023d064411338ea76d83e0cbc8b5d1f7f8d7861a2d73581fbc71b
diff --git a/app-admin/lsat/files/lsat-0.9.7.1-gentoo.patch b/app-admin/lsat/files/lsat-0.9.7.1-gentoo.patch
new file mode 100644
index 000000000000..631dcd7322f7
--- /dev/null
+++ b/app-admin/lsat/files/lsat-0.9.7.1-gentoo.patch
@@ -0,0 +1,42 @@
+diff -Naur lsat-0.9.6.orig/Makefile.in lsat-0.9.6/Makefile.in
+--- lsat-0.9.6.orig/Makefile.in 2007-05-22 11:38:28.000000000 +0900
++++ lsat-0.9.6/Makefile.in 2007-05-25 18:55:25.000000000 +0900
+@@ -12,6 +12,7 @@
+ PROGRAM= lsat
+ INSTALL = /usr/bin/install -c
+ prefix = @prefix@
++exec_prefix = @exec_prefix@
+ BINDIR = @bindir@
+ DATADIR = @datadir@
+ MANDIR = @mandir@
+@@ -38,9 +39,7 @@
+ rm -f $(PROGRAM) $(OBJECTS) Makefile config.* lsat.old lsatmd5.out lsatmd5.old
+
+ manpage:
+- pod2man $(PROGRAM).pod > $(PROGRAM).tmp
+- sed 's/perl v5.6.1/LSAT/g' $(PROGRAM).tmp| \
+-sed 's/Perl/LSAT/g'\
++ pod2man $(PROGRAM).pod -r LSAT -c 'User Contributed LSAT Documentation' \
+ > $(PROGRAM).1
+ rm -f $(PROGRAM).tmp
+ # cp -vf $(PROGRAM).1 debian/manpage.1.ex
+diff -Naur lsat-0.9.6.orig/checkpkgs.c lsat-0.9.6/checkpkgs.c
+--- lsat-0.9.6.orig/checkpkgs.c 2007-04-27 00:48:31.000000000 +0900
++++ lsat-0.9.6/checkpkgs.c 2007-05-25 18:46:00.000000000 +0900
+@@ -113,14 +113,14 @@
+ }
+
+
+- /* if distro = gentoo, use pkglist */
++ /* if distro = gentoo, use qpkg */
+ if (distribution == 4)
+ {
+ if (verbose > 0)
+ {
+ printf(" Generating list of pkgs on system.\n");
+ }
+- shellcode = "/usr/lib/portage/bin/pkglist 2>/dev/null >>/tmp/lsat1.lsat";
++ shellcode = "/usr/bin/qpkg -I -nc 2>/dev/null >>/tmp/lsat1.lsat";
+ if ((dostuff(tempfile, 0, shellcode, 0, html)) < 0)
+ {
+ /* rhut-rho...something bad happened */
diff --git a/app-admin/lsat/files/lsat-0.9.7.1-segfault-fix.patch b/app-admin/lsat/files/lsat-0.9.7.1-segfault-fix.patch
new file mode 100644
index 000000000000..558c8de60321
--- /dev/null
+++ b/app-admin/lsat/files/lsat-0.9.7.1-segfault-fix.patch
@@ -0,0 +1,45 @@
+--- lsat-0.9.7.1/lsatmain.c.orig 2008-12-29 11:09:04.000000000 -0500
++++ lsat-0.9.7.1/lsatmain.c 2008-12-29 13:31:00.000000000 -0500
+@@ -232,7 +232,7 @@ int versions(char release[], char kernel
+ } /* end while (fgets...) */
+ close(fileval);
+ /* clean up even though we will rm it */
+- close(infile);
++ close((int)infile);
+
+ if ( (system("rm -f /tmp/lsat1.lsat")) < 0)
+ {
+@@ -308,9 +308,9 @@ int main(int argc, char *argv[])
+ */
+ char release[50]; /* array for release level */
+ char kernel[50]; /* what kernel user is running */
+- static char *man_distro; /* if the user specifies a distribution */
++ static char man_distro[10]; /* if the user specifies a distribution */
+ const char * header =NULL; /* to print out the header */
+- static char *out_file = "lsat.out"; /* output filename var */
++ static char out_file[255] = "lsat.out"; /* output filename var */
+ char xlist[100]; /* modules to exclude */
+ int xarray[33] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+ int somethinginxlist = 0;
+@@ -350,10 +350,10 @@ int main(int argc, char *argv[])
+ diff = 1;
+ break;
+ case 'm':
+- strcpy(man_distro, argv[i]+3);
++ strncpy(man_distro, argv[i]+3,sizeof(man_distro));
+ break;
+ case 'o':
+- strcpy(out_file, argv[i]+3);
++ strncpy(out_file, argv[i]+3,sizeof(out_file));
+ break;
+ case 'r':
+ rpmmodule = 1;
+@@ -366,7 +366,7 @@ int main(int argc, char *argv[])
+ break;
+ case 'w':
+ html = 1;
+- out_file="lsat.html";
++ strcpy(out_file,"lsat.html");
+ break;
+ case 'x': strcpy(xlist,argv[i]+3);
+ somethinginxlist = 1;
diff --git a/app-admin/lsat/lsat-0.9.7.1-r1.ebuild b/app-admin/lsat/lsat-0.9.7.1-r1.ebuild
new file mode 100644
index 000000000000..898bf2fe9b42
--- /dev/null
+++ b/app-admin/lsat/lsat-0.9.7.1-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="The Linux Security Auditing Tool"
+HOMEPAGE="http://usat.sourceforge.net/"
+SRC_URI="http://usat.sourceforge.net/code/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="minimal"
+
+DEPEND="dev-lang/perl" # pod2man
+RDEPEND="!minimal? (
+ app-portage/portage-utils
+ net-analyzer/nmap
+ sys-apps/iproute2
+ sys-apps/which
+ sys-process/lsof
+ )"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-gentoo.patch
+
+ # patch for segmentation fault see bug #184488
+ epatch "${FILESDIR}"/${P}-segfault-fix.patch
+ sed -i Makefile.in \
+ -e '/^LDFLAGS=/d' \
+ -e '/^CFLAGS=/d' \
+ || die "sed Makefile.in"
+}
+
+src_compile() {
+ tc-export CC
+ econf
+ emake CFLAGS="${CFLAGS}" all manpage || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install installman || die "emake install failed"
+ dodoc README* *.txt
+ dohtml modules.html changelog/changelog.html
+}
diff --git a/app-admin/lsat/metadata.xml b/app-admin/lsat/metadata.xml
new file mode 100644
index 000000000000..b7a9db9a0340
--- /dev/null
+++ b/app-admin/lsat/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription lang="en">
+ Linux Security Auditing Tool (LSAT) is a post install security auditing
+ tool. It is modular in design, so new features can be added quickly. It
+ checks inetd entries and scans for unneeded RPM packages. It is being
+ expanded to work with Linux distributions other than Red Hat, and checks
+ for kernel versions.
+ </longdescription>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ <name>Default assignee for orphaned packages</name>
+ </maintainer>
+</pkgmetadata>