diff options
Diffstat (limited to 'net-analyzer/ntop')
-rw-r--r-- | net-analyzer/ntop/Manifest | 3 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-4.0.3-gentoo.patch | 232 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-4.1.0-gentoo.patch | 240 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-5.0.1-INCS.patch | 27 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-5.0.1-gentoo.patch | 240 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-5.0.1-includes.patch | 20 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-confd | 9 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-initd | 30 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-initd-r1 | 25 | ||||
-rw-r--r-- | net-analyzer/ntop/files/ntop-update-geoip-db | 21 | ||||
-rw-r--r-- | net-analyzer/ntop/metadata.xml | 16 | ||||
-rw-r--r-- | net-analyzer/ntop/ntop-4.0.3.ebuild | 126 | ||||
-rw-r--r-- | net-analyzer/ntop/ntop-4.1.0.ebuild | 102 | ||||
-rw-r--r-- | net-analyzer/ntop/ntop-5.0.1-r1.ebuild | 127 |
14 files changed, 1218 insertions, 0 deletions
diff --git a/net-analyzer/ntop/Manifest b/net-analyzer/ntop/Manifest new file mode 100644 index 000000000000..55488dd64406 --- /dev/null +++ b/net-analyzer/ntop/Manifest @@ -0,0 +1,3 @@ +DIST ntop-4.0.3.tgz 39191671 SHA256 5b34b64fa4aebaeb365b2f255b2bbeb0a487686f49e85680789070d1c2404dc0 SHA512 48734b8c2fcb5c8efb9917836702b6407cca568cfd715c1cab98b8f4eaba2aa43491414132a94019d4619400b7e02a2232abd0a60cb2dbc413c6fbe6472f7f2f WHIRLPOOL c7bc59a010fd6792110eead7a6fe6cbeb401d7d38fd47a440d66091f3c317a7d80d2685bcb5e129db3267ef691908e4363c2ed3dfbff9c58578e272c420541a7 +DIST ntop-4.1.0.tar.gz 39118983 SHA256 c71e5563879ec1866296825e1705f30b5a67eb87c9abfbd7dc1c5baeed0384a4 SHA512 6759ef6396768b33db96db20ceb907f9d8a5e3421c920d277e043bec85eb1fb38e41b7c88e189e7dd316a02c627aa4c4ea9295beee8cd890ac09b5d8b161a579 WHIRLPOOL ae5616bf29a002d02273fcb436fd3b869ec6fcb7c3d10a61097f72aabe68240232f8aff9b533300baa76fc2096900902dfd900f95142c334c61f5cd425e543a7 +DIST ntop-5.0.1.tar.gz 40133867 SHA256 7e8e84cb14d2173beaca4d4cb991a14d84a4bef84ec37b2276bc363f45c52ef8 SHA512 f52c40e6c00c8d2f46b68078c5f9aef8ed78670f92a0a81f66f2f44c71d41bc4c001b4550f19b71c546f7c07cbbed15e0aa1ee13873ac63a11678bf2b8483f2a WHIRLPOOL aa20b6529f343f6f57fc1d880c8cf07cd11720c6fe8c968359ff1e16b77fe3f4c6df1ed83a184e580d6ef7f5eff6d245b2971c17a7dd674c12325f21029f64ee diff --git a/net-analyzer/ntop/files/ntop-4.0.3-gentoo.patch b/net-analyzer/ntop/files/ntop-4.0.3-gentoo.patch new file mode 100644 index 000000000000..6cd03512adf9 --- /dev/null +++ b/net-analyzer/ntop/files/ntop-4.0.3-gentoo.patch @@ -0,0 +1,232 @@ +--- a/configure.in ++++ b/configure.in +@@ -57,6 +57,7 @@ + dnl> + umask 002 + AM_CONFIG_HEADER(config.h) ++AM_MAINTAINER_MODE + + HAS_ERROR= + HAS_WARNING= +@@ -511,11 +512,6 @@ + LOCALEDIR="/usr/lib/locale" + fi + +-dnl> Add /usr/local/ /opt/local +-CFLAGS="${CFLAGS} -I/usr/local/include -I/opt/local/include" +-CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/opt/local/include" +-LDFLAGS="${LDFLAGS} -L/usr/local/lib -L/opt/local/lib" +- + PWD=`pwd` + + echo +@@ -1824,18 +1820,6 @@ + if test ".${ac_cv_lib_GeoIP_GeoIP_record_by_ipnum}" = ".yes"; then + LIBS="$LIBS -lGeoIP" + +-if test -f "GeoLiteCity.dat"; then +- echo "GeoLiteCity.dat already present" +-else +- if test -f "3rd_party/GeoLiteCity.dat.gz"; then +- cp 3rd_party/GeoLiteCity.dat.gz . +- else +- wget http://www.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz +- fi +- +- gunzip GeoLiteCity.dat.gz +-fi +- + dnl> -------- + + if test -f "GeoIPASNum.dat"; then +@@ -1854,8 +1838,13 @@ + exit 1 + fi + +-cp "3rd_party/oui.txt.gz" . +-cp "3rd_party/specialMAC.txt.gz" . ++ ++gunzip 3rd_party/GeoLiteCity.dat.gz && ++gunzip 3rd_party/GeoIPASNum.dat.gz && ++mv "3rd_party/etter.finger.os.gz" . && ++mv "3rd_party/oui.txt.gz" . && ++mv "3rd_party/specialMAC.txt.gz" . || ++ exit 1 + + if test -d ./configureextra; then + +@@ -2016,7 +2005,6 @@ + AC_SUBST(SO_VERSION_PATCH) + AC_SUBST(RRD_LIB) + AC_SUBST(RRD_INC) +-AC_SUBST(GEO_DIR) + AC_SUBST(GETOPT_H) + AC_SUBST(GETOPT_C) + +--- a/globals-core.c ++++ b/globals-core.c +@@ -372,7 +372,7 @@ + _mtuSize[DLT_ATM_RFC1483] = 9180 /* LLC/SNAP encapsulated atm */; + _headerSize[DLT_ATM_RFC1483] = 0; + +- /* _mtuSize[DLT_RAW] = ? raw IP */ ++ _mtuSize[DLT_RAW] = 1500; /* raw IP */ + _headerSize[DLT_RAW] = 0; + + /* Others defined in bpf.h at tcpdump.org as of the resync - it would be NICE +@@ -491,19 +491,18 @@ + struct stat statbuf; + + /* Initialize GeoIP databases */ +- for(i=0; myGlobals.configFileDirs[i] != NULL; i++) { ++ { + char path[256]; + + safe_snprintf(__FILE__, __LINE__, path, sizeof(path), + "%s%c%s", +- myGlobals.configFileDirs[i], ++ myGlobals.dbPath, + CONST_PATH_SEP, GEO_IP_FILE); + revertSlashIfWIN32(path, 0); + + if(stat(path, &statbuf) == 0) { + if((myGlobals.geo_ip_db = GeoIP_open(path, GEOIP_CHECK_CACHE)) != NULL) { + traceEvent(CONST_TRACE_INFO, "GeoIP: loaded config file %s", path); +- break; + } + } + } +@@ -512,20 +511,18 @@ + traceEvent(CONST_TRACE_ERROR, "GeoIP: unable to load file %s", GEO_IP_FILE); + + /* *************************** */ +- +- for(i=0; myGlobals.configFileDirs[i] != NULL; i++) { ++ { + char path[256]; + + safe_snprintf(__FILE__, __LINE__, path, sizeof(path), + "%s%c%s", +- myGlobals.configFileDirs[i], ++ myGlobals.dbPath, + CONST_PATH_SEP, GEO_IP_ASN_FILE); + revertSlashIfWIN32(path, 0); + + if(stat(path, &statbuf) == 0) { + if((myGlobals.geo_ip_asn_db = GeoIP_open(path, GEOIP_CHECK_CACHE)) != NULL) { + traceEvent(CONST_TRACE_INFO, "GeoIP: loaded ASN config file %s", path); +- break; + } + } + } +--- a/Makefile.am ++++ b/Makefile.am +@@ -43,7 +43,6 @@ + + #AM_CFLAGS = + #AM_LDFLAGS= +-ACLOCAL_AMFLAGS=-I m4 + + DISTCLEANFILES = trivialcompilemessage *.db #* *~ *.log + CLEANFILES = $(DISTCLEANFILES) stamp-h1 +@@ -74,9 +73,7 @@ + NTOPDATA = ntop-cert.pem \ + $(ETTER_PASSIVE) \ + oui.txt.gz \ +- specialMAC.txt.gz \ +- GeoIPASNum.dat \ +- GeoLiteCity.dat ++ specialMAC.txt.gz + + NTOPHTML = html html/*.js html/*.html html/*.gif html/*.jpg html/*.ico html/*.png \ + html/*.css html/*.dtd \ +@@ -370,30 +367,7 @@ + + # download the vendor information table + dnvt: +- @echo "" +- @echo "" +- @echo -n "Preparing " +- @if test -f oui.txt; then \ +- rm -rf oui.txt; \ +- fi +- @if test -f oui.txt.gz.old; then \ +- rm -rf oui.txt.gz.old; \ +- fi; +- @mv oui.txt.gz oui.txt.gz.old +- @echo "(old oui.txt.gz file is now oui.txt.gz.old)" +- @echo "" +- @wget -c http://standards.ieee.org/regauth/oui/oui.txt +- @gzip oui.txt +- @echo "" +- @echo "" +- @echo -n "Old file lines were: " +- @gunzip -c oui.txt.gz.old | wc -l +- @echo -n "New file lines are: " +- @gunzip -c oui.txt.gz | wc -l +- @echo "" +- @echo "" +- @echo "New file is:" +- @ls -l oui.txt.gz ++ @echo "Use included oui.txt.gz" + + # download the Novell SAP Protocol information table + #dnsapt: +@@ -401,45 +375,7 @@ + + # download the passive ethernet fingerprint database + dnetter: +- @echo "" +- @echo "" +- @echo "Preparing " +- @echo "" +- +- @if test -f $(ETTER_PASSIVE).old; then \ +- echo "...Deleting prior file, $(ETTER_PASSIVE).old..."; \ +- rm -rf $(ETTER_PASSIVE).old; \ +- fi; +- @if test -f $(ETTER_PASSIVE); then \ +- echo "...Moving current $(ETTER_PASSIVE) to $(ETTER_PASSIVE).old"; \ +- mv $(ETTER_PASSIVE) $(ETTER_PASSIVE).old; \ +- fi; +- @for file in $(ETTER_PASSIVE) $(ETTER_PASSIVE).gz \ +- $(ETTER_PASSIVE_FILE) $(ETTER_PASSIVE_FILE).gz; do \ +- if test -f $$file; then \ +- echo "...Deleting prior file, $$file..."; \ +- rm -rf $$file; \ +- fi; \ +- done +- @echo "" +- @echo "...Downloading new file..." +- @wget -O $(ETTER_PASSIVE_FILE) \ +- $(ETTER_PASSIVE_DOWNLOAD_FROM)/$(ETTER_PASSIVE_FILE)?$(ETTER_PASSIVE_DOWNLOAD_PARMS) +- @echo "" +- @echo "gziping downloaded file..." +- @gzip $(ETTER_PASSIVE_FILE) +- @echo "" +- @echo "" +- @if test -f $(ETTER_PASSIVE).old; then \ +- echo -n "Old file lines were: "; \ +- gunzip -c $(ETTER_PASSIVE).old | wc -l; \ +- fi; +- @echo -n "New file lines are: " +- @gunzip -c $(ETTER_PASSIVE) | wc -l +- @echo "" +- @echo "" +- @echo "New file is:" +- @ls -l $(ETTER_PASSIVE) ++ @echo "Use included $(ETTER_PASSIVE)" + + # ntop census + census-fail: +--- a/report.c ++++ b/report.c +@@ -2353,7 +2353,7 @@ + if(fetchPrefsValue("dot.path", buf, sizeof(buf)) != -1) { + snprintf(dotPath, sizeof(dotPath), "%s", buf); + } else { +- snprintf(dotPath, sizeof(dotPath), "/usr/local/bin/dot"); ++ snprintf(dotPath, sizeof(dotPath), "/usr/bin/dot"); + storePrefsValue("dot.path", dotPath); /* Set the default */ + } + diff --git a/net-analyzer/ntop/files/ntop-4.1.0-gentoo.patch b/net-analyzer/ntop/files/ntop-4.1.0-gentoo.patch new file mode 100644 index 000000000000..10b93b92e90d --- /dev/null +++ b/net-analyzer/ntop/files/ntop-4.1.0-gentoo.patch @@ -0,0 +1,240 @@ +--- a/configure.in ++++ b/configure.in +@@ -469,11 +469,6 @@ + LOCALEDIR="/usr/lib/locale" + fi + +-dnl> Add /usr/local/ /opt/local +-CFLAGS="${CFLAGS} -I/usr/local/include -I/opt/local/include" +-CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/opt/local/include" +-LDFLAGS="${LDFLAGS} -L/usr/local/lib -L/opt/local/lib" +- + PWD=`pwd` + + echo +@@ -1716,18 +1711,6 @@ + if test ".${ac_cv_lib_GeoIP_GeoIP_record_by_ipnum}" = ".yes"; then + LIBS="$LIBS -lGeoIP" + +-if test -f "GeoLiteCity.dat"; then +- echo "GeoLiteCity.dat already present" +-else +- if test -f "3rd_party/GeoLiteCity.dat.gz"; then +- cp 3rd_party/GeoLiteCity.dat.gz . +- else +- wget http://www.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz +- fi +- +- gunzip GeoLiteCity.dat.gz +-fi +- + dnl> -------- + + if test -f "GeoIPASNum.dat"; then +@@ -1746,8 +1729,11 @@ + exit 1 + fi + +-cp "3rd_party/oui.txt.gz" . +-cp "3rd_party/specialMAC.txt.gz" . ++gunzip 3rd_party/GeoLiteCity.dat.gz && ++mv "3rd_party/etter.finger.os.gz" . && ++mv "3rd_party/oui.txt.gz" . && ++mv "3rd_party/specialMAC.txt.gz" . || ++ exit 1 + + if test -d ./configureextra; then + +@@ -1908,7 +1894,6 @@ + AC_SUBST(SO_VERSION_PATCH) + AC_SUBST(RRD_LIB) + AC_SUBST(RRD_INC) +-AC_SUBST(GEO_DIR) + AC_SUBST(GETOPT_H) + AC_SUBST(GETOPT_C) + +--- a/globals-core.c ++++ b/globals-core.c +@@ -367,7 +367,7 @@ + _mtuSize[DLT_ATM_RFC1483] = 9180 /* LLC/SNAP encapsulated atm */; + _headerSize[DLT_ATM_RFC1483] = 0; + +- /* _mtuSize[DLT_RAW] = ? raw IP */ ++ _mtuSize[DLT_RAW] = 1500; /* raw IP */ + _headerSize[DLT_RAW] = 0; + + /* Others defined in bpf.h at tcpdump.org as of the resync - it would be NICE +@@ -461,19 +461,18 @@ + struct stat statbuf; + + /* Initialize GeoIP databases */ +- for(i=0; myGlobals.configFileDirs[i] != NULL; i++) { ++ { + char path[256]; + + safe_snprintf(__FILE__, __LINE__, path, sizeof(path), + "%s%c%s", +- myGlobals.configFileDirs[i], ++ myGlobals.dbPath, + CONST_PATH_SEP, GEO_IP_FILE); + revertSlashIfWIN32(path, 0); + + if(stat(path, &statbuf) == 0) { + if((myGlobals.geo_ip_db = GeoIP_open(path, GEOIP_CHECK_CACHE)) != NULL) { + traceEvent(CONST_TRACE_INFO, "GeoIP: loaded config file %s", path); +- break; + } + } + } +@@ -482,20 +481,18 @@ + traceEvent(CONST_TRACE_ERROR, "GeoIP: unable to load file %s", GEO_IP_FILE); + + /* *************************** */ +- +- for(i=0; myGlobals.configFileDirs[i] != NULL; i++) { ++ { + char path[256]; + + safe_snprintf(__FILE__, __LINE__, path, sizeof(path), + "%s%c%s", +- myGlobals.configFileDirs[i], ++ myGlobals.dbPath, + CONST_PATH_SEP, GEO_IP_ASN_FILE); + revertSlashIfWIN32(path, 0); + + if(stat(path, &statbuf) == 0) { + if((myGlobals.geo_ip_asn_db = GeoIP_open(path, GEOIP_CHECK_CACHE)) != NULL) { + traceEvent(CONST_TRACE_INFO, "GeoIP: loaded ASN config file %s", path); +- break; + } + } + } +--- a/Makefile.am ++++ b/Makefile.am +@@ -36,7 +36,6 @@ + + #AM_CFLAGS = + #AM_LDFLAGS= +-ACLOCAL_AMFLAGS=-I m4 + + DISTCLEANFILES = trivialcompilemessage *.db #* *~ *.log + CLEANFILES = $(DISTCLEANFILES) stamp-h1 +@@ -67,9 +66,7 @@ + NTOPDATA = ntop-cert.pem \ + $(ETTER_PASSIVE) \ + oui.txt.gz \ +- specialMAC.txt.gz \ +- GeoIPASNum.dat \ +- GeoLiteCity.dat ++ specialMAC.txt.gz + + NTOPHTML = html html/*.js html/*.html html/*.gif html/*.jpg html/*.ico html/*.png \ + html/*.css html/*.dtd \ +@@ -130,7 +127,7 @@ + + libntop_la_DEPENDENCIES = config.h + libntop_la_LIBADD = $(BASE_LIBS) +-libntop_la_LDFLAGS = $(AM_LDFLAGS) -release $(VERSION) -export-dynamic @DYN_FLAGS@ ++libntop_la_LDFLAGS = $(AM_LDFLAGS) -release $(VERSION) -export-dynamic -shared @DYN_FLAGS@ + + # Archive for http representation, or the 'viewer' + libntopreport_la_SOURCES = emitter.c globals-report.c graph.c \ +@@ -142,7 +139,7 @@ + + libntopreport_la_DEPENDENCIES = libntop.la + libntopreport_la_LIBADD = libntop.la $(BASE_LIBS) +-libntopreport_la_LDFLAGS = $(AM_LDFLAGS) -release $(VERSION) -export-dynamic @DYN_FLAGS@ ++libntopreport_la_LDFLAGS = $(AM_LDFLAGS) -release $(VERSION) -export-dynamic -shared @DYN_FLAGS@ + + man_MANS = ntop.8 + +@@ -362,30 +359,7 @@ + + # download the vendor information table + dnvt: +- @echo "" +- @echo "" +- @echo -n "Preparing " +- @if test -f oui.txt; then \ +- rm -rf oui.txt; \ +- fi +- @if test -f oui.txt.gz.old; then \ +- rm -rf oui.txt.gz.old; \ +- fi; +- @mv oui.txt.gz oui.txt.gz.old +- @echo "(old oui.txt.gz file is now oui.txt.gz.old)" +- @echo "" +- @wget -c http://standards.ieee.org/regauth/oui/oui.txt +- @gzip oui.txt +- @echo "" +- @echo "" +- @echo -n "Old file lines were: " +- @gunzip -c oui.txt.gz.old | wc -l +- @echo -n "New file lines are: " +- @gunzip -c oui.txt.gz | wc -l +- @echo "" +- @echo "" +- @echo "New file is:" +- @ls -l oui.txt.gz ++ @echo "Use included oui.txt.gz" + + # download the Novell SAP Protocol information table + #dnsapt: +@@ -393,45 +367,7 @@ + + # download the passive ethernet fingerprint database + dnetter: +- @echo "" +- @echo "" +- @echo "Preparing " +- @echo "" +- +- @if test -f $(ETTER_PASSIVE).old; then \ +- echo "...Deleting prior file, $(ETTER_PASSIVE).old..."; \ +- rm -rf $(ETTER_PASSIVE).old; \ +- fi; +- @if test -f $(ETTER_PASSIVE); then \ +- echo "...Moving current $(ETTER_PASSIVE) to $(ETTER_PASSIVE).old"; \ +- mv $(ETTER_PASSIVE) $(ETTER_PASSIVE).old; \ +- fi; +- @for file in $(ETTER_PASSIVE) $(ETTER_PASSIVE).gz \ +- $(ETTER_PASSIVE_FILE) $(ETTER_PASSIVE_FILE).gz; do \ +- if test -f $$file; then \ +- echo "...Deleting prior file, $$file..."; \ +- rm -rf $$file; \ +- fi; \ +- done +- @echo "" +- @echo "...Downloading new file..." +- @wget -O $(ETTER_PASSIVE_FILE) \ +- $(ETTER_PASSIVE_DOWNLOAD_FROM)/$(ETTER_PASSIVE_FILE)?$(ETTER_PASSIVE_DOWNLOAD_PARMS) +- @echo "" +- @echo "gziping downloaded file..." +- @gzip $(ETTER_PASSIVE_FILE) +- @echo "" +- @echo "" +- @if test -f $(ETTER_PASSIVE).old; then \ +- echo -n "Old file lines were: "; \ +- gunzip -c $(ETTER_PASSIVE).old | wc -l; \ +- fi; +- @echo -n "New file lines are: " +- @gunzip -c $(ETTER_PASSIVE) | wc -l +- @echo "" +- @echo "" +- @echo "New file is:" +- @ls -l $(ETTER_PASSIVE) ++ @echo "Use included $(ETTER_PASSIVE)" + + # ntop census + census-fail: +--- a/report.c ++++ b/report.c +@@ -2091,7 +2091,7 @@ + if(fetchPrefsValue("dot.path", buf, sizeof(buf)) != -1) { + snprintf(dotPath, sizeof(dotPath), "%s", buf); + } else { +- snprintf(dotPath, sizeof(dotPath), "/usr/local/bin/dot"); ++ snprintf(dotPath, sizeof(dotPath), "/usr/bin/dot"); + storePrefsValue("dot.path", dotPath); /* Set the default */ + } + diff --git a/net-analyzer/ntop/files/ntop-5.0.1-INCS.patch b/net-analyzer/ntop/files/ntop-5.0.1-INCS.patch new file mode 100644 index 000000000000..de49a41d7175 --- /dev/null +++ b/net-analyzer/ntop/files/ntop-5.0.1-INCS.patch @@ -0,0 +1,27 @@ +--- a/configure ++++ b/configure +@@ -18983,7 +18983,7 @@ + else + LIBS="${LIBS} ${PYTHON_LIBS}" + +- PYTHON_INCS=`$PYTHON_CONFIG --cflags | sed -e "s/-arch i386//" | sed -e "s/-arch ppc//" | sed -e "s/-arch x86_64//"` ++ PYTHON_INCS=`$PYTHON_CONFIG --includes | sed -e "s/-arch i386//" | sed -e "s/-arch ppc//" | sed -e "s/-arch x86_64//"` + + INCS="${INCS} ${PYTHON_INCS}" + +@@ -19335,15 +19335,6 @@ + for(i=NF; i>0; i--) { \ + if ($i in fields) { } else { fields[$i]="."; out[i]=$i } \ + } \ +- for(i=1; i<=NF; i++) { \ +- if (i in out) { printf("%s ", out[i]) } \ +- } \ +- print "" \ +- }'` +- INCS=`echo ${INCS} | ${ac_cv_prog_AWK} '{ \ +- for(i=NF; i>0; i--) { \ +- if ($i in fields) { } else { fields[$i]="."; out[i]=$i } \ +- } \ + for(i=1; i<=NF; i++) { \ + if (i in out) { printf("%s ", out[i]) } \ + } \ diff --git a/net-analyzer/ntop/files/ntop-5.0.1-gentoo.patch b/net-analyzer/ntop/files/ntop-5.0.1-gentoo.patch new file mode 100644 index 000000000000..57f136971cfc --- /dev/null +++ b/net-analyzer/ntop/files/ntop-5.0.1-gentoo.patch @@ -0,0 +1,240 @@ +--- a/configure.in ++++ b/configure.in +@@ -469,11 +469,6 @@ + LOCALEDIR="/usr/lib/locale" + fi + +-dnl> Add /usr/local/ /opt/local +-CFLAGS="${CFLAGS} -I/usr/local/include -I/opt/local/include" +-CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/opt/local/include" +-LDFLAGS="${LDFLAGS} -L/usr/local/lib -L/opt/local/lib" +- + PWD=`pwd` + + echo +@@ -1739,18 +1734,6 @@ + if test ".${ac_cv_lib_GeoIP_GeoIP_record_by_ipnum}" = ".yes"; then + LIBS="$LIBS -lGeoIP" + +-if test -f "GeoLiteCity.dat"; then +- echo "GeoLiteCity.dat already present" +-else +- if test -f "3rd_party/GeoLiteCity.dat.gz"; then +- cp 3rd_party/GeoLiteCity.dat.gz . +- else +- wget http://www.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz +- fi +- +- gunzip GeoLiteCity.dat.gz +-fi +- + dnl> -------- + + if test -f "GeoIPASNum.dat"; then +@@ -1769,8 +1752,11 @@ + exit 1 + fi + +-cp "3rd_party/oui.txt.gz" . +-cp "3rd_party/specialMAC.txt.gz" . ++gunzip 3rd_party/GeoLiteCity.dat.gz && ++mv "3rd_party/etter.finger.os.gz" . && ++mv "3rd_party/oui.txt.gz" . && ++mv "3rd_party/specialMAC.txt.gz" . || ++ exit 1 + + if test -d ./configureextra; then + +@@ -1931,7 +1917,6 @@ + AC_SUBST(SO_VERSION_PATCH) + AC_SUBST(RRD_LIB) + AC_SUBST(RRD_INC) +-AC_SUBST(GEO_DIR) + AC_SUBST(GETOPT_H) + AC_SUBST(GETOPT_C) + AC_SUBST(NDPI_LIB) +--- a/globals-core.c ++++ b/globals-core.c +@@ -369,7 +369,7 @@ + _mtuSize[DLT_ATM_RFC1483] = 9180 /* LLC/SNAP encapsulated atm */; + _headerSize[DLT_ATM_RFC1483] = 0; + +- /* _mtuSize[DLT_RAW] = ? raw IP */ ++ _mtuSize[DLT_RAW] = 1500; /* raw IP */ + _headerSize[DLT_RAW] = 0; + + /* Others defined in bpf.h at tcpdump.org as of the resync - it would be NICE +@@ -470,19 +470,18 @@ + struct stat statbuf; + + /* Initialize GeoIP databases */ +- for(i=0; myGlobals.configFileDirs[i] != NULL; i++) { ++ { + char path[256]; + + safe_snprintf(__FILE__, __LINE__, path, sizeof(path), + "%s%c%s", +- myGlobals.configFileDirs[i], ++ myGlobals.dbPath, + CONST_PATH_SEP, GEO_IP_FILE); + revertSlashIfWIN32(path, 0); + + if(stat(path, &statbuf) == 0) { + if((myGlobals.geo_ip_db = GeoIP_open(path, GEOIP_CHECK_CACHE)) != NULL) { + traceEvent(CONST_TRACE_INFO, "GeoIP: loaded config file %s", path); +- break; + } + } + } +@@ -491,20 +490,18 @@ + traceEvent(CONST_TRACE_ERROR, "GeoIP: unable to load file %s", GEO_IP_FILE); + + /* *************************** */ +- +- for(i=0; myGlobals.configFileDirs[i] != NULL; i++) { ++ { + char path[256]; + + safe_snprintf(__FILE__, __LINE__, path, sizeof(path), + "%s%c%s", +- myGlobals.configFileDirs[i], ++ myGlobals.dbPath, + CONST_PATH_SEP, GEO_IP_ASN_FILE); + revertSlashIfWIN32(path, 0); + + if(stat(path, &statbuf) == 0) { + if((myGlobals.geo_ip_asn_db = GeoIP_open(path, GEOIP_CHECK_CACHE)) != NULL) { + traceEvent(CONST_TRACE_INFO, "GeoIP: loaded ASN config file %s", path); +- break; + } + } + } +--- a/Makefile.am ++++ b/Makefile.am +@@ -36,7 +36,6 @@ + + #AM_CFLAGS = + #AM_LDFLAGS= +-ACLOCAL_AMFLAGS=-I m4 + + DISTCLEANFILES = trivialcompilemessage *.db #* *~ *.log + CLEANFILES = $(DISTCLEANFILES) stamp-h1 +@@ -67,9 +66,7 @@ + NTOPDATA = ntop-cert.pem \ + $(ETTER_PASSIVE) \ + oui.txt.gz \ +- specialMAC.txt.gz \ +- GeoIPASNum.dat \ +- GeoLiteCity.dat ++ specialMAC.txt.gz + + NTOPHTML = html html/*.js html/*.html html/*.gif html/*.jpg html/*.ico html/*.png \ + html/*.css html/*.dtd \ +@@ -133,7 +130,7 @@ + + libntop_la_DEPENDENCIES = config.h + libntop_la_LIBADD = $(BASE_LIBS) +-libntop_la_LDFLAGS = $(AM_LDFLAGS) -release $(VERSION) -export-dynamic @DYN_FLAGS@ ++libntop_la_LDFLAGS = $(AM_LDFLAGS) -release $(VERSION) -export-dynamic -shared @DYN_FLAGS@ + + # Archive for http representation, or the 'viewer' + libntopreport_la_SOURCES = emitter.c globals-report.c graph.c \ +@@ -145,7 +142,7 @@ + + libntopreport_la_DEPENDENCIES = libntop.la + libntopreport_la_LIBADD = libntop.la $(BASE_LIBS) +-libntopreport_la_LDFLAGS = $(AM_LDFLAGS) -release $(VERSION) -export-dynamic @DYN_FLAGS@ ++libntopreport_la_LDFLAGS = $(AM_LDFLAGS) -release $(VERSION) -export-dynamic -shared @DYN_FLAGS@ + + man_MANS = ntop.8 + +@@ -367,30 +364,7 @@ + + # download the vendor information table + dnvt: +- @echo "" +- @echo "" +- @echo -n "Preparing " +- @if test -f oui.txt; then \ +- rm -rf oui.txt; \ +- fi +- @if test -f oui.txt.gz.old; then \ +- rm -rf oui.txt.gz.old; \ +- fi; +- @mv oui.txt.gz oui.txt.gz.old +- @echo "(old oui.txt.gz file is now oui.txt.gz.old)" +- @echo "" +- @wget -c http://standards.ieee.org/regauth/oui/oui.txt +- @gzip oui.txt +- @echo "" +- @echo "" +- @echo -n "Old file lines were: " +- @gunzip -c oui.txt.gz.old | wc -l +- @echo -n "New file lines are: " +- @gunzip -c oui.txt.gz | wc -l +- @echo "" +- @echo "" +- @echo "New file is:" +- @ls -l oui.txt.gz ++ @echo "Use included oui.txt.gz" + + # download the Novell SAP Protocol information table + #dnsapt: +@@ -398,45 +372,7 @@ + + # download the passive ethernet fingerprint database + dnetter: +- @echo "" +- @echo "" +- @echo "Preparing " +- @echo "" +- +- @if test -f $(ETTER_PASSIVE).old; then \ +- echo "...Deleting prior file, $(ETTER_PASSIVE).old..."; \ +- rm -rf $(ETTER_PASSIVE).old; \ +- fi; +- @if test -f $(ETTER_PASSIVE); then \ +- echo "...Moving current $(ETTER_PASSIVE) to $(ETTER_PASSIVE).old"; \ +- mv $(ETTER_PASSIVE) $(ETTER_PASSIVE).old; \ +- fi; +- @for file in $(ETTER_PASSIVE) $(ETTER_PASSIVE).gz \ +- $(ETTER_PASSIVE_FILE) $(ETTER_PASSIVE_FILE).gz; do \ +- if test -f $$file; then \ +- echo "...Deleting prior file, $$file..."; \ +- rm -rf $$file; \ +- fi; \ +- done +- @echo "" +- @echo "...Downloading new file..." +- @wget -O $(ETTER_PASSIVE_FILE) \ +- $(ETTER_PASSIVE_DOWNLOAD_FROM)/$(ETTER_PASSIVE_FILE)?$(ETTER_PASSIVE_DOWNLOAD_PARMS) +- @echo "" +- @echo "gziping downloaded file..." +- @gzip $(ETTER_PASSIVE_FILE) +- @echo "" +- @echo "" +- @if test -f $(ETTER_PASSIVE).old; then \ +- echo -n "Old file lines were: "; \ +- gunzip -c $(ETTER_PASSIVE).old | wc -l; \ +- fi; +- @echo -n "New file lines are: " +- @gunzip -c $(ETTER_PASSIVE) | wc -l +- @echo "" +- @echo "" +- @echo "New file is:" +- @ls -l $(ETTER_PASSIVE) ++ @echo "Use included $(ETTER_PASSIVE)" + + # ntop census + census-fail: +--- a/report.c ++++ b/report.c +@@ -2299,7 +2299,7 @@ + if(fetchPrefsValue("dot.path", buf, sizeof(buf)) != -1) { + snprintf(dotPath, sizeof(dotPath), "%s", buf); + } else { +- snprintf(dotPath, sizeof(dotPath), "/usr/local/bin/dot"); ++ snprintf(dotPath, sizeof(dotPath), "/usr/bin/dot"); + storePrefsValue("dot.path", dotPath); /* Set the default */ + } + diff --git a/net-analyzer/ntop/files/ntop-5.0.1-includes.patch b/net-analyzer/ntop/files/ntop-5.0.1-includes.patch new file mode 100644 index 000000000000..fcd5f28d3491 --- /dev/null +++ b/net-analyzer/ntop/files/ntop-5.0.1-includes.patch @@ -0,0 +1,20 @@ +--- a/nDPI/src/lib/protocols/netflow.c ++++ b/nDPI/src/lib/protocols/netflow.c +@@ -19,6 +19,7 @@ + + + #include "ipq_utils.h" ++#include <time.h> /* time() */ + + #ifdef NTOP_PROTOCOL_NETFLOW + +--- a/nDPI/src/lib/protocols/ssl.c ++++ b/nDPI/src/lib/protocols/ssl.c +@@ -22,6 +22,7 @@ + + + #include "ipq_utils.h" ++#include <ctype.h> /* isalpha() isdigit() ... */ + + #ifdef IPOQUE_PROTOCOL_SSL + diff --git a/net-analyzer/ntop/files/ntop-confd b/net-analyzer/ntop/files/ntop-confd new file mode 100644 index 000000000000..352a26fa9b1c --- /dev/null +++ b/net-analyzer/ntop/files/ntop-confd @@ -0,0 +1,9 @@ +# Config file for /etc/init.d/ntop + +# Set preferred options here +#NTOP_OPTS="--http-server 3000 --https-server 0 --interface eth0" + +# suggestions from bug #136983 (use it in case you experience ntop hangs) +#NTOP_OPTS="u ntop -P /var/lib/ntop --disable-schedyield --http-server 3000 --https-server 3001" + +NTOP_OPTS="-u ntop -P /var/lib/ntop" diff --git a/net-analyzer/ntop/files/ntop-initd b/net-analyzer/ntop/files/ntop-initd new file mode 100644 index 000000000000..ffc2923790df --- /dev/null +++ b/net-analyzer/ntop/files/ntop-initd @@ -0,0 +1,30 @@ +#!/sbin/runscript +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +depend() { + need net +} + +checkconfig() { + if [ ! -e /var/lib/ntop/ntop_pw.db ]; then + eerror "You need to set a password first by running" + eerror "ntop --set-admin-password" + return 1 + fi +} + +start() { + checkconfig || return 1 + ebegin "Starting ntop" + export LC_ALL=C # apparently doesn't work with some locales (#191576 and #205382) + export GDFONTPATH=/usr/share/fonts/corefonts # apparently the only font that works (#231705) + start-stop-daemon --start --exec /usr/bin/ntop -- -d -L ${NTOP_OPTS} + eend $? +} + +stop() { + ebegin "Stopping ntop" + start-stop-daemon --stop --retry 30 --pidfile /var/run/ntop.pid + eend $? +} diff --git a/net-analyzer/ntop/files/ntop-initd-r1 b/net-analyzer/ntop/files/ntop-initd-r1 new file mode 100644 index 000000000000..1f685d0ee733 --- /dev/null +++ b/net-analyzer/ntop/files/ntop-initd-r1 @@ -0,0 +1,25 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +description="ntop - a network traffic analyzer" +pidfile="/run/ntop.pid" +command="/usr/bin/ntop" +command_args="-L ${NTOP_OPTS}" +start_stop_daemon_args="-p ${pidfile} -m -b" + +depend() { + need net +} + +start_pre() { + if [ ! -e /var/lib/ntop/ntop_pw.db ] ; then + eerror "You need to set a password first by running" + eerror "ntop --set-admin-password" + return 1 + fi + + export LC_ALL=C # apparently doesn't work with some locales (#191576 and #205382) + export GDFONTPATH=/usr/share/fonts/corefonts # apparently the only font that works (#231705) +} diff --git a/net-analyzer/ntop/files/ntop-update-geoip-db b/net-analyzer/ntop/files/ntop-update-geoip-db new file mode 100644 index 000000000000..2bf3faaf68cb --- /dev/null +++ b/net-analyzer/ntop/files/ntop-update-geoip-db @@ -0,0 +1,21 @@ +#!/bin/sh + +BASE_URL=http://geolite.maxmind.com/download/geoip/database + +echo "Updating NTOP GeoIP databases..." + +cd /var/lib/ntop || exit + +for u in asnum/GeoIPASNum.dat.gz GeoLiteCity.dat.gz ; do + FILE_GZ=${u#*/} + FILE=${FILE_GZ%.gz} + wget -nv -O ${FILE_GZ} ${BASE_URL}/${u} && + gunzip < ${FILE_GZ} > .${FILE} && + mv -f .${FILE} ${FILE} && + rm -f ${FILE_GZ} || + exit +done + +/etc/init.d/ntop --quiet status && /etc/init.d/ntop restart + +echo "NTOP GeoIP databases were successfully updated" diff --git a/net-analyzer/ntop/metadata.xml b/net-analyzer/ntop/metadata.xml new file mode 100644 index 000000000000..bea1d84c9d50 --- /dev/null +++ b/net-analyzer/ntop/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>netmon</herd> + <longdescription>ntop is a network traffic probe that shows the network usage, + similar to what the popular top Unix command does. ntop is based on libpcap + and it has been written in a portable way in order to virtually run on every + Unix platform and on Win32 as well. + ntop users can use a a web browser (e.g. netscape) to navigate through ntop + (that acts as a web server) traffic information and get a dump of the network + status. In the latter case, ntop can be seen as a simple RMON-like agent with an + embedded web interface.</longdescription> + <upstream> + <remote-id type="sourceforge">ntop</remote-id> + </upstream> +</pkgmetadata> diff --git a/net-analyzer/ntop/ntop-4.0.3.ebuild b/net-analyzer/ntop/ntop-4.0.3.ebuild new file mode 100644 index 000000000000..04220a638c36 --- /dev/null +++ b/net-analyzer/ntop/ntop-4.0.3.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" + +inherit autotools eutils user + +DESCRIPTION="Network traffic analyzer with web interface" +HOMEPAGE="http://www.ntop.org/products/ntop/" +SRC_URI="mirror://sourceforge/ntop/${P}.tgz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="amd64 arm hppa ia64 ppc ppc64 s390 sh sparc x86" +IUSE="ipv6 ssl" +#snmp support is disabled + +#snmp? ( net-analyzer/net-snmp ) +COMMON_DEPEND="virtual/awk + dev-lang/perl + sys-libs/gdbm + dev-libs/libevent + net-libs/libpcap + media-libs/gd + media-libs/libpng + net-analyzer/rrdtool[graph] + ssl? ( dev-libs/openssl ) + sys-libs/zlib + >=dev-libs/geoip-1.4.5 + >=dev-lang/lua-5.1.4" +DEPEND="${COMMON_DEPEND} + >=sys-devel/libtool-1.4" + +# Needed by xmldumpPlugin - couldn't get it to work +# dev-libs/gdome2 +# >=dev-libs/glib-2" +RDEPEND="${COMMON_DEPEND} + media-fonts/corefonts + media-gfx/graphviz + net-misc/wget + app-arch/gzip" + +pkg_setup() { + # snmp doesn't compile in this release, disabled for now + #if use snmp ; then + # ewarn "snmp plugin is under development and upstream does not recommend" + # ewarn "it for usage in production environment." + # if ! use ipv6 ; then + # echo + # eerror "snmp plugin has compilation problems without ipv6 support." + # eerror "For additional information see bug #121497." + # die "snmp without ipv6 is broken" + # else + # if ! built_with_use net-analyzer/net-snmp ipv6 ; then + # echo + # eerror "You have both ipv6 and snmp enabled." + # eerror "This require ipv6 support in net-analyzer/net-snmp." + # eerror "However, net-analyzer/net-snmp was compiled with ipv6 flag disabled." + # eerror "Please, re-emerge net-analyzer/net-snmp with USE=\"ipv6\"." + # die "net-analyzer/net-snmp was build without ipv6." + # fi + # fi + #fi + + enewgroup ntop + enewuser ntop -1 -1 /var/lib/ntop ntop +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-gentoo.patch + cat acinclude.m4.in acinclude.m4.ntop > acinclude.m4 + eautoreconf +} + +src_configure() { + # force disable xmldumpPlugin + export \ + ac_cv_header_glib_h=no \ + ac_cv_header_glibconfig_h=no \ + ac_cv_header_gdome_h=no \ + ac_cv_lib_glib_g_date_julian=no \ + ac_cv_lib_xml2_xmlCheckVersion=no \ + ac_cv_lib_gdome_gdome_di_saveDocToFile=no + + econf \ + $(use_enable ipv6) \ + $(use_with ssl) \ + --with-rrd-home=/usr/lib \ + --disable-snmp \ + || die "configure problem" + # $(use_enable snmp) +} + +src_install() { + LC_ALL=C # apparently doesn't work with some locales (#191576 and #205382) + emake DESTDIR="${D}" install || die "install problem" + + keepdir /var/lib/ntop && + fowners ntop:ntop /var/lib/ntop && + fperms 750 /var/lib/ntop || + die "failed to prepare /var/lib/ntop dir" + insinto /var/lib/ntop + local f + for f in GeoIPASNum.dat GeoLiteCity.dat; do + # Don't install included GeoIP files if newer versions are available + [ -f "${ROOT}/var/lib/ntop/${f}" ] || + doins "3rd_party/${f}" || + die "failed to install ${f}" + done + + dodoc AUTHORS CONTENTS ChangeLog MANIFESTO NEWS + dodoc PORTING README SUPPORT_NTOP.txt THANKS $(find docs -type f) + + newinitd "${FILESDIR}"/ntop-initd ntop + newconfd "${FILESDIR}"/ntop-confd ntop + + exeinto /etc/cron.monthly + doexe "${FILESDIR}"/ntop-update-geoip-db +} + +pkg_postinst() { + elog "If this is the first time you install ntop, you need to run" + elog "following command before starting ntop service:" + elog " ntop --set-admin-password" +} diff --git a/net-analyzer/ntop/ntop-4.1.0.ebuild b/net-analyzer/ntop/ntop-4.1.0.ebuild new file mode 100644 index 000000000000..7581432d90b0 --- /dev/null +++ b/net-analyzer/ntop/ntop-4.1.0.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" + +inherit autotools eutils user + +DESCRIPTION="Network traffic analyzer with web interface" +HOMEPAGE="http://www.ntop.org/products/ntop/" +SRC_URI="mirror://sourceforge/ntop/ntop/Stable/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="snmp ssl" + +COMMON_DEPEND=" + virtual/awk + dev-lang/perl + sys-libs/gdbm + dev-libs/libevent + net-libs/libpcap + media-libs/gd + media-libs/libpng + net-analyzer/rrdtool[graph] + ssl? ( dev-libs/openssl ) + sys-libs/zlib + dev-libs/geoip + dev-lang/lua + snmp? ( net-analyzer/net-snmp[ipv6] )" +DEPEND="${COMMON_DEPEND} + >=sys-devel/libtool-1.5.26" +RDEPEND="${COMMON_DEPEND} + media-fonts/corefonts + media-gfx/graphviz + net-misc/wget + app-arch/gzip + dev-libs/glib:2 + dev-python/mako" + +pkg_setup() { + enewgroup ntop + enewuser ntop -1 -1 /var/lib/ntop ntop +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-gentoo.patch + cp /usr/share/aclocal/libtool.m4 libtool.m4.in + cat acinclude.m4.in libtool.m4.in acinclude.m4.ntop > acinclude.m4 + eautoreconf +} + +src_configure() { + export \ + ac_cv_header_glib_h=no \ + ac_cv_header_glibconfig_h=no \ + ac_cv_header_gdome_h=no \ + ac_cv_lib_glib_g_date_julian=no \ + ac_cv_lib_xml2_xmlCheckVersion=no \ + ac_cv_lib_gdome_gdome_di_saveDocToFile=no + + econf \ + $(use_enable snmp) \ + $(use_with ssl) \ + --with-rrd-home=/usr/lib \ + || die "configure problem" +} + +src_install() { + LC_ALL=C # apparently doesn't work with some locales (#191576 and #205382) + emake DESTDIR="${D}" install || die "install problem" + + keepdir /var/lib/ntop && + fowners ntop:ntop /var/lib/ntop && + fperms 750 /var/lib/ntop || + die "failed to prepare /var/lib/ntop dir" + insinto /var/lib/ntop + gunzip 3rd_party/GeoIPASNum.dat.gz + local f + for f in GeoIPASNum.dat GeoLiteCity.dat; do + # Don't install included GeoIP files if newer versions are available + [ -f "${ROOT}/var/lib/ntop/${f}" ] || + doins "3rd_party/${f}" || + die "failed to install ${f}" + done + + dodoc AUTHORS CONTENTS ChangeLog MANIFESTO NEWS + dodoc PORTING README SUPPORT_NTOP.txt THANKS $(find docs -type f) + + newinitd "${FILESDIR}"/ntop-initd ntop + newconfd "${FILESDIR}"/ntop-confd ntop + + exeinto /etc/cron.monthly + doexe "${FILESDIR}"/ntop-update-geoip-db +} + +pkg_postinst() { + elog "If this is the first time you install ntop, you need to run" + elog "following command before starting ntop service:" + elog " ntop --set-admin-password" +} diff --git a/net-analyzer/ntop/ntop-5.0.1-r1.ebuild b/net-analyzer/ntop/ntop-5.0.1-r1.ebuild new file mode 100644 index 000000000000..789328164915 --- /dev/null +++ b/net-analyzer/ntop/ntop-5.0.1-r1.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils user python-single-r1 + +DESCRIPTION="Network traffic analyzer with web interface" +HOMEPAGE="http://www.ntop.org/products/ntop/" +SRC_URI="mirror://sourceforge/ntop/ntop/Stable/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="snmp ssl" + +COMMON_DEPEND=" + virtual/awk + dev-lang/perl + sys-libs/gdbm + dev-libs/libevent + net-libs/libpcap + media-libs/gd + media-libs/libpng + net-analyzer/rrdtool[graph] + ssl? ( dev-libs/openssl ) + sys-libs/zlib + dev-libs/geoip + dev-lang/lua + snmp? ( net-analyzer/net-snmp[ipv6] )" +DEPEND="${COMMON_DEPEND} + >=sys-devel/libtool-1.5.26 + ${PYTHON_DEPS}" +RDEPEND="${COMMON_DEPEND} + media-fonts/corefonts + media-gfx/graphviz + net-misc/wget + app-arch/gzip + dev-libs/glib:2 + dev-python/mako" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +pkg_setup() { + enewgroup ntop + enewuser ntop -1 -1 /var/lib/ntop ntop + python-single-r1_pkg_setup +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-gentoo.patch + epatch "${FILESDIR}"/${P}-includes.patch + cp /usr/share/aclocal/libtool.m4 libtool.m4.in + cat acinclude.m4.in libtool.m4.in acinclude.m4.ntop > acinclude.m4 + eautoreconf + + # The build system is a complete mess, so apply a configure patch here + # instead of patching configure.in above + epatch "${FILESDIR}"/${P}-INCS.patch + + # Stop make from doing autotools stuff + sed -i -e '/missing --run echo/s|=.*|= true|g' Makefile.in || die +} + +src_configure() { + export \ + ac_cv_header_glib_h=no \ + ac_cv_header_glibconfig_h=no \ + ac_cv_header_gdome_h=no \ + ac_cv_lib_glib_g_date_julian=no \ + ac_cv_lib_xml2_xmlCheckVersion=no \ + ac_cv_lib_gdome_gdome_di_saveDocToFile=no + + pushd nDPI >/dev/null || die + econf + popd &>/dev/null || die + + econf \ + $(use_enable snmp) \ + $(use_with ssl) \ + --with-rrd-home=/usr/lib + +} + +src_compile() { + pushd nDPI >/dev/null || die + emake + popd &>/dev/null || die + + emake +} + +src_install() { + LC_ALL=C # apparently doesn't work with some locales (#191576 and #205382) + + emake DESTDIR="${D}" install + + keepdir /var/lib/ntop && + fowners ntop:ntop /var/lib/ntop && + fperms 750 /var/lib/ntop + insinto /var/lib/ntop + gunzip 3rd_party/GeoIPASNum.dat.gz + gunzip 3rd_party/GeoLiteCity.dat.gz + local f + for f in GeoIPASNum.dat GeoLiteCity.dat; do + # Don't install included GeoIP files if newer versions are available + [ -f "${ROOT}/var/lib/ntop/${f}" ] || + doins "3rd_party/${f}" + done + + dodoc AUTHORS CONTENTS ChangeLog MANIFESTO NEWS + dodoc PORTING README SUPPORT_NTOP.txt THANKS $(find docs -type f) + + newinitd "${FILESDIR}"/ntop-initd-r1 ntop + newconfd "${FILESDIR}"/ntop-confd ntop + + exeinto /etc/cron.monthly + doexe "${FILESDIR}"/ntop-update-geoip-db +} + +pkg_postinst() { + elog "If this is the first time you install ntop, you need to run" + elog "following command before starting ntop service:" + elog " ntop --set-admin-password" +} |