diff options
author | adam <adam@pkgsrc.org> | 2016-04-08 16:59:07 +0000 |
---|---|---|
committer | adam <adam@pkgsrc.org> | 2016-04-08 16:59:07 +0000 |
commit | 583cb382761a25b729ee2102af72f27325a9a43c (patch) | |
tree | efbc684a51dab23e4711cc5bd74ef3f0506c92ae | |
parent | d57147d581a02c65dac0fc6f6184ff35bf437c24 (diff) | |
download | pkgsrc-583cb382761a25b729ee2102af72f27325a9a43c.tar.gz |
ntopng is the next generation version of the original ntop, a network traffic
probe that shows the network usage, similar to what the popular top Unix
command does. ntopng is based on libpcap and it has been written in a portable
way in order to virtually run on every Unix platform, MacOSX and on Windows as
well.
ntopng users can use a a web browser to navigate through ntop (that acts as
a web server) traffic information and get a dump of the network status. In
the latter case, ntopng can be seen as a simple RMON-like agent with
an embedded web interface. The use of:
* a web interface.
* limited configuration and administration via the web interface.
* reduced CPU and memory usage (they vary according to network size and traffic)
-rw-r--r-- | net/ntopng/DESCR | 14 | ||||
-rw-r--r-- | net/ntopng/Makefile | 44 | ||||
-rw-r--r-- | net/ntopng/PLIST | 358 | ||||
-rw-r--r-- | net/ntopng/distinfo | 12 | ||||
-rw-r--r-- | net/ntopng/files/ntopng.sh | 26 | ||||
-rw-r--r-- | net/ntopng/patches/patch-Makefile.in | 23 | ||||
-rw-r--r-- | net/ntopng/patches/patch-configure.seed | 65 | ||||
-rw-r--r-- | net/ntopng/patches/patch-include_ntop__includes.h | 15 | ||||
-rw-r--r-- | net/ntopng/patches/patch-src_PacketDumperTuntap.cpp | 15 | ||||
-rw-r--r-- | net/ntopng/patches/patch-src_Redis.cpp | 20 | ||||
-rw-r--r-- | net/ntopng/patches/patch-third-party_mongoose_mongoose.c | 141 |
11 files changed, 733 insertions, 0 deletions
diff --git a/net/ntopng/DESCR b/net/ntopng/DESCR new file mode 100644 index 00000000000..c9d1f007921 --- /dev/null +++ b/net/ntopng/DESCR @@ -0,0 +1,14 @@ +ntopng is the next generation version of the original ntop, a network traffic +probe that shows the network usage, similar to what the popular top Unix +command does. ntopng is based on libpcap and it has been written in a portable +way in order to virtually run on every Unix platform, MacOSX and on Windows as +well. + +ntopng users can use a a web browser to navigate through ntop (that acts as +a web server) traffic information and get a dump of the network status. In +the latter case, ntopng can be seen as a simple RMON-like agent with +an embedded web interface. The use of: + +* a web interface. +* limited configuration and administration via the web interface. +* reduced CPU and memory usage (they vary according to network size and traffic) diff --git a/net/ntopng/Makefile b/net/ntopng/Makefile new file mode 100644 index 00000000000..221bca03e6a --- /dev/null +++ b/net/ntopng/Makefile @@ -0,0 +1,44 @@ +# $NetBSD: Makefile,v 1.1 2016/04/08 16:59:07 adam Exp $ + +DISTNAME= ntopng-2.2 +CATEGORIES= net +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=ntop/} + +MAINTAINER= adam@NetBSD.org +HOMEPAGE= http://www.ntop.org/ +COMMENT= Network traffic probe +LICENSE= gnu-gpl-v3 + +DEPENDS+= redis-[0-9]*:../../databases/redis + +USE_LANGUAGES= c c++ +USE_LIBTOOL= yes +USE_TOOLS+= autoconf automake gmake pkg-config +GNU_CONFIGURE= yes + +RCD_SCRIPTS+= ntopng + +SUBST_CLASSES+= fix-vers +SUBST_STAGE.fix-vers= pre-configure +SUBST_MESSAGE.fix-vers= Setting package version. +SUBST_FILES.fix-vers= configure.seed +SUBST_SED.fix-vers= -e 's,@VERSION@,${PKGVERSION},g' +SUBST_SED.fix-vers+= -e 's,@SHORT_VERSION@,${PKGVERSION_NOREV},g' + +pre-configure: + cd ${WRKSRC} && cp configure.seed configure.ac && autoreconf -fiv + +.include "../../databases/hiredis/buildlink3.mk" +.include "../../databases/rrdtool/buildlink3.mk" +.include "../../databases/sqlite3/buildlink3.mk" +.include "../../lang/LuaJIT2/buildlink3.mk" +.include "../../net/GeoIP/buildlink3.mk" +.include "../../net/libpcap/buildlink3.mk" +.include "../../net/ndpi/buildlink3.mk" +.include "../../net/zeromq/buildlink3.mk" +.include "../../security/gnutls/buildlink3.mk" +.include "../../security/libgcrypt/buildlink3.mk" +.include "../../www/curl/buildlink3.mk" +.include "../../mk/dlopen.buildlink3.mk" +.include "../../mk/mysql.buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/net/ntopng/PLIST b/net/ntopng/PLIST new file mode 100644 index 00000000000..45a23576a23 --- /dev/null +++ b/net/ntopng/PLIST @@ -0,0 +1,358 @@ +@comment $NetBSD: PLIST,v 1.1 2016/04/08 16:59:07 adam Exp $ +bin/ntopng +man/man8/ntopng.8 +share/ntopng/httpdocs/bootstrap/css/bootstrap-theme.css +share/ntopng/httpdocs/bootstrap/css/bootstrap-theme.css.map +share/ntopng/httpdocs/bootstrap/css/bootstrap.css +share/ntopng/httpdocs/bootstrap/css/bootstrap.css.map +share/ntopng/httpdocs/bootstrap/fonts/glyphicons-halflings-regular.eot +share/ntopng/httpdocs/bootstrap/fonts/glyphicons-halflings-regular.svg +share/ntopng/httpdocs/bootstrap/fonts/glyphicons-halflings-regular.ttf +share/ntopng/httpdocs/bootstrap/fonts/glyphicons-halflings-regular.woff +share/ntopng/httpdocs/bootstrap/img/glyphicons-halflings-white.png +share/ntopng/httpdocs/bootstrap/img/glyphicons-halflings.png +share/ntopng/httpdocs/bootstrap/js/bootstrap.js +share/ntopng/httpdocs/css/Rickshaw/detail.css +share/ntopng/httpdocs/css/Rickshaw/graph.css +share/ntopng/httpdocs/css/Rickshaw/legend.css +share/ntopng/httpdocs/css/bootstrap-datetimepicker.css +share/ntopng/httpdocs/css/bootstrap-duallistbox.css +share/ntopng/httpdocs/css/bootstrap-slider.css +share/ntopng/httpdocs/css/bubble-chart.css +share/ntopng/httpdocs/css/c3.css +share/ntopng/httpdocs/css/cal-heatmap.css +share/ntopng/httpdocs/css/cubism.css +share/ntopng/httpdocs/css/datepicker.css +share/ntopng/httpdocs/css/dc.css +share/ntopng/httpdocs/css/flags.css +share/ntopng/httpdocs/css/jquery-ui.css +share/ntopng/httpdocs/css/ntopng.css +share/ntopng/httpdocs/css/nv.d3.css +share/ntopng/httpdocs/css/pagingbar.css +share/ntopng/httpdocs/css/pie-chart.css +share/ntopng/httpdocs/css/prettify.css +share/ntopng/httpdocs/css/rickshaw.css +share/ntopng/httpdocs/css/sequence_sunburst.css +share/ntopng/httpdocs/css/tablesorted.css +share/ntopng/httpdocs/css/timeline.css +share/ntopng/httpdocs/css/timepicker.css +share/ntopng/httpdocs/favicon.ico +share/ntopng/httpdocs/font-awesome/HELP-US-OUT.txt +share/ntopng/httpdocs/font-awesome/css/font-awesome.css +share/ntopng/httpdocs/font-awesome/css/font-awesome.min.css +share/ntopng/httpdocs/font-awesome/fonts/FontAwesome.otf +share/ntopng/httpdocs/font-awesome/fonts/fontawesome-webfont.eot +share/ntopng/httpdocs/font-awesome/fonts/fontawesome-webfont.svg +share/ntopng/httpdocs/font-awesome/fonts/fontawesome-webfont.ttf +share/ntopng/httpdocs/font-awesome/fonts/fontawesome-webfont.woff +share/ntopng/httpdocs/font-awesome/fonts/fontawesome-webfont.woff2 +share/ntopng/httpdocs/font-awesome/less/animated.less +share/ntopng/httpdocs/font-awesome/less/bordered-pulled.less +share/ntopng/httpdocs/font-awesome/less/core.less +share/ntopng/httpdocs/font-awesome/less/fixed-width.less +share/ntopng/httpdocs/font-awesome/less/font-awesome.less +share/ntopng/httpdocs/font-awesome/less/icons.less +share/ntopng/httpdocs/font-awesome/less/larger.less +share/ntopng/httpdocs/font-awesome/less/list.less +share/ntopng/httpdocs/font-awesome/less/mixins.less +share/ntopng/httpdocs/font-awesome/less/path.less +share/ntopng/httpdocs/font-awesome/less/rotated-flipped.less +share/ntopng/httpdocs/font-awesome/less/stacked.less +share/ntopng/httpdocs/font-awesome/less/variables.less +share/ntopng/httpdocs/font-awesome/scss/_animated.scss +share/ntopng/httpdocs/font-awesome/scss/_bordered-pulled.scss +share/ntopng/httpdocs/font-awesome/scss/_core.scss +share/ntopng/httpdocs/font-awesome/scss/_fixed-width.scss +share/ntopng/httpdocs/font-awesome/scss/_icons.scss +share/ntopng/httpdocs/font-awesome/scss/_larger.scss +share/ntopng/httpdocs/font-awesome/scss/_list.scss +share/ntopng/httpdocs/font-awesome/scss/_mixins.scss +share/ntopng/httpdocs/font-awesome/scss/_path.scss +share/ntopng/httpdocs/font-awesome/scss/_rotated-flipped.scss +share/ntopng/httpdocs/font-awesome/scss/_stacked.scss +share/ntopng/httpdocs/font-awesome/scss/_variables.scss +share/ntopng/httpdocs/font-awesome/scss/font-awesome.scss +share/ntopng/httpdocs/geoip/README +share/ntopng/httpdocs/img/asc.gif +share/ntopng/httpdocs/img/blank.gif +share/ntopng/httpdocs/img/block-end.png +share/ntopng/httpdocs/img/block-start.png +share/ntopng/httpdocs/img/cpu_icon.png +share/ntopng/httpdocs/img/desc.gif +share/ntopng/httpdocs/img/flags.png +share/ntopng/httpdocs/img/glyphicons-halflings-white.png +share/ntopng/httpdocs/img/glyphicons-halflings.png +share/ntopng/httpdocs/img/graph.gif +share/ntopng/httpdocs/img/info.png +share/ntopng/httpdocs/img/info_icon.png +share/ntopng/httpdocs/img/interaction-graph-icons/apache2.png +share/ntopng/httpdocs/img/interaction-graph-icons/firefox.png +share/ntopng/httpdocs/img/interaction-graph-icons/java.png +share/ntopng/httpdocs/img/interaction-graph-icons/nprobe.png +share/ntopng/httpdocs/img/interaction-graph-icons/ntopng.png +share/ntopng/httpdocs/img/interaction-graph-icons/redis-server.png +share/ntopng/httpdocs/img/interaction-graph-icons/remote_hosts.png +share/ntopng/httpdocs/img/interaction-graph-icons/sprobe.png +share/ntopng/httpdocs/img/loading.gif +share/ntopng/httpdocs/img/logo.png +share/ntopng/httpdocs/img/logo.svg +share/ntopng/httpdocs/img/maps/conv30.png +share/ntopng/httpdocs/img/maps/conv40.png +share/ntopng/httpdocs/img/maps/conv50.png +share/ntopng/httpdocs/img/maps/heart30.png +share/ntopng/httpdocs/img/maps/heart40.png +share/ntopng/httpdocs/img/maps/heart50.png +share/ntopng/httpdocs/img/maps/m1.png +share/ntopng/httpdocs/img/maps/m2.png +share/ntopng/httpdocs/img/maps/m3.png +share/ntopng/httpdocs/img/maps/m4.png +share/ntopng/httpdocs/img/maps/m5.png +share/ntopng/httpdocs/img/maps/people35.png +share/ntopng/httpdocs/img/maps/people45.png +share/ntopng/httpdocs/img/maps/people55.png +share/ntopng/httpdocs/img/network_icon.png +share/ntopng/httpdocs/img/os_icon.png +share/ntopng/httpdocs/img/throbber.gif +share/ntopng/httpdocs/img/warning.png +share/ntopng/httpdocs/inc/aggregated_hosts_stats_bottom.inc +share/ntopng/httpdocs/inc/aggregated_hosts_stats_id.inc +share/ntopng/httpdocs/inc/aggregated_hosts_stats_top.inc +share/ntopng/httpdocs/inc/as_stats_id.inc +share/ntopng/httpdocs/inc/as_stats_top.inc +share/ntopng/httpdocs/inc/community_stats_bottom.inc +share/ntopng/httpdocs/inc/community_stats_id.inc +share/ntopng/httpdocs/inc/community_stats_top.inc +share/ntopng/httpdocs/inc/country_stats_id.inc +share/ntopng/httpdocs/inc/country_stats_top.inc +share/ntopng/httpdocs/inc/flows_stats_bottom.inc +share/ntopng/httpdocs/inc/flows_stats_id.inc +share/ntopng/httpdocs/inc/flows_stats_middle.inc +share/ntopng/httpdocs/inc/flows_stats_top.inc +share/ntopng/httpdocs/inc/geolocation_disclaimer.inc +share/ntopng/httpdocs/inc/header.inc +share/ntopng/httpdocs/inc/host_to_server_id.inc +share/ntopng/httpdocs/inc/host_to_server_top.inc +share/ntopng/httpdocs/inc/hosts_stats_bottom.inc +share/ntopng/httpdocs/inc/hosts_stats_id.inc +share/ntopng/httpdocs/inc/hosts_stats_top.inc +share/ntopng/httpdocs/inc/http_servers_stats_id.inc +share/ntopng/httpdocs/inc/http_servers_stats_top.inc +share/ntopng/httpdocs/inc/index_TopASNs.inc +share/ntopng/httpdocs/inc/index_TopApplications.inc +share/ntopng/httpdocs/inc/index_TopFlowSenders.inc +share/ntopng/httpdocs/inc/index_TopHosts.inc +share/ntopng/httpdocs/inc/index_TopPorts.inc +share/ntopng/httpdocs/inc/mac_stats_bottom.inc +share/ntopng/httpdocs/inc/mac_stats_id.inc +share/ntopng/httpdocs/inc/mac_stats_top.inc +share/ntopng/httpdocs/inc/network_stats_bottom.inc +share/ntopng/httpdocs/inc/network_stats_id.inc +share/ntopng/httpdocs/inc/network_stats_top.inc +share/ntopng/httpdocs/inc/os_stats_id.inc +share/ntopng/httpdocs/inc/os_stats_top.inc +share/ntopng/httpdocs/inc/processes_stats_bottom.inc +share/ntopng/httpdocs/inc/processes_stats_id.inc +share/ntopng/httpdocs/inc/processes_stats_top.inc +share/ntopng/httpdocs/inc/sflows_stats_bottom.inc +share/ntopng/httpdocs/inc/sflows_stats_top.inc +share/ntopng/httpdocs/inc/sprobe_process.inc +share/ntopng/httpdocs/inc/sprobe_process_header.inc +share/ntopng/httpdocs/inc/vlan_stats_id.inc +share/ntopng/httpdocs/inc/vlan_stats_top.inc +share/ntopng/httpdocs/js/README.gauge +share/ntopng/httpdocs/js/bootstrap-datatable.js +share/ntopng/httpdocs/js/bootstrap-datetimepicker.js +share/ntopng/httpdocs/js/bootstrap-slider.js +share/ntopng/httpdocs/js/bootstrap.ajaxpager-0.8.js +share/ntopng/httpdocs/js/bootstrap3-typeahead.js +share/ntopng/httpdocs/js/bubble-chart.js +share/ntopng/httpdocs/js/c3.js +share/ntopng/httpdocs/js/cal-heatmap.js +share/ntopng/httpdocs/js/cpu_bar.js +share/ntopng/httpdocs/js/crossfilter.js +share/ntopng/httpdocs/js/cubism.v1.js +share/ntopng/httpdocs/js/d3.v3.js +share/ntopng/httpdocs/js/dc.js +share/ntopng/httpdocs/js/gauge.js +share/ntopng/httpdocs/js/googleMapJson.js +share/ntopng/httpdocs/js/handlebars-1.0.0.0.beta.6.js +share/ntopng/httpdocs/js/highlight.js +share/ntopng/httpdocs/js/html5shiv.js +share/ntopng/httpdocs/js/jquery-ui.js +share/ntopng/httpdocs/js/jquery.bootstrap-duallistbox.js +share/ntopng/httpdocs/js/jquery.form.js +share/ntopng/httpdocs/js/jquery.js +share/ntopng/httpdocs/js/jquery.peity.js +share/ntopng/httpdocs/js/jquery.sparkline.js +share/ntopng/httpdocs/js/jquery.tablesorter.js +share/ntopng/httpdocs/js/line-graph.js +share/ntopng/httpdocs/js/markerclusterer.js +share/ntopng/httpdocs/js/matrix_volume.js +share/ntopng/httpdocs/js/moment.js +share/ntopng/httpdocs/js/ntopng_utils.js +share/ntopng/httpdocs/js/nv.d3.js +share/ntopng/httpdocs/js/pdfmake.js +share/ntopng/httpdocs/js/pie-chart.js +share/ntopng/httpdocs/js/prettify.js +share/ntopng/httpdocs/js/rickshaw.js +share/ntopng/httpdocs/js/sankey.js +share/ntopng/httpdocs/js/sequence_sunburst.js +share/ntopng/httpdocs/js/springy-ntop.js +share/ntopng/httpdocs/js/springyui-ntop.js +share/ntopng/httpdocs/js/timeline.js +share/ntopng/httpdocs/js/validator.js +share/ntopng/httpdocs/js/vfs_fonts.js +share/ntopng/httpdocs/misc/ntopng_template_elk.json +share/ntopng/httpdocs/other/EtherOUI.txt +share/ntopng/httpdocs/ssl/README +share/ntopng/httpdocs/ssl/ntopng-cert.pem.dummy +share/ntopng/httpdocs/test.lp +share/ntopng/scripts/callbacks/daily.lua +share/ntopng/scripts/callbacks/hourly.lua +share/ntopng/scripts/callbacks/minute.lua +share/ntopng/scripts/callbacks/second.lua +share/ntopng/scripts/lua/API.lua +share/ntopng/scripts/lua/about.lua +share/ntopng/scripts/lua/admin/add_user.lua +share/ntopng/scripts/lua/admin/change_user_password.lua +share/ntopng/scripts/lua/admin/change_user_prefs.lua +share/ntopng/scripts/lua/admin/delete_user.lua +share/ntopng/scripts/lua/admin/get_user_info.lua +share/ntopng/scripts/lua/admin/get_users.lua +share/ntopng/scripts/lua/admin/password_reset.lua +share/ntopng/scripts/lua/admin/prefs.lua +share/ntopng/scripts/lua/admin/users.lua +share/ntopng/scripts/lua/admin/validate_new_user.lua +share/ntopng/scripts/lua/as_stats.lua +share/ntopng/scripts/lua/country_stats.lua +share/ntopng/scripts/lua/db.lua +share/ntopng/scripts/lua/db_query.lua +share/ntopng/scripts/lua/do_export_data.lua +share/ntopng/scripts/lua/examples/debug.lua +share/ntopng/scripts/lua/examples/hello_world.lua +share/ntopng/scripts/lua/examples/interface.lua +share/ntopng/scripts/lua/examples/ntop.lua +share/ntopng/scripts/lua/examples/sqlite.lua +share/ntopng/scripts/lua/export_data.lua +share/ntopng/scripts/lua/find_host.lua +share/ntopng/scripts/lua/flow_details.lua +share/ntopng/scripts/lua/flow_stats.lua +share/ntopng/scripts/lua/flows_stats.lua +share/ntopng/scripts/lua/get_alerts_data.lua +share/ntopng/scripts/lua/get_db_flows.lua +share/ntopng/scripts/lua/get_filter_host.lua +share/ntopng/scripts/lua/get_flow_data.lua +share/ntopng/scripts/lua/get_flows_data.lua +share/ntopng/scripts/lua/get_geo_hosts.lua +share/ntopng/scripts/lua/get_grouped_hosts_data.lua +share/ntopng/scripts/lua/get_hitters_data.lua +share/ntopng/scripts/lua/get_host_activitymap.lua +share/ntopng/scripts/lua/get_host_contacts.lua +share/ntopng/scripts/lua/get_host_daily_activity.lua +share/ntopng/scripts/lua/get_host_data.lua +share/ntopng/scripts/lua/get_host_traffic.lua +share/ntopng/scripts/lua/get_hosts_data.lua +share/ntopng/scripts/lua/get_hosts_interaction.lua +share/ntopng/scripts/lua/get_http_hosts.lua +share/ntopng/scripts/lua/get_http_hosts_data.lua +share/ntopng/scripts/lua/get_process_info.lua +share/ntopng/scripts/lua/get_processes_data.lua +share/ntopng/scripts/lua/get_system_hosts_interaction.lua +share/ntopng/scripts/lua/get_top_talkers.lua +share/ntopng/scripts/lua/get_treemap.lua +share/ntopng/scripts/lua/get_user_info.lua +share/ntopng/scripts/lua/host_details.lua +share/ntopng/scripts/lua/host_details_ndpi.lua +share/ntopng/scripts/lua/host_dns_breakdown.lua +share/ntopng/scripts/lua/host_get_json.lua +share/ntopng/scripts/lua/host_http_breakdown.lua +share/ntopng/scripts/lua/host_l4_stats.lua +share/ntopng/scripts/lua/host_pkt_distro.lua +share/ntopng/scripts/lua/host_sflow_distro.lua +share/ntopng/scripts/lua/host_stats.lua +share/ntopng/scripts/lua/host_top_peers_protocols.lua +share/ntopng/scripts/lua/hosts_comparison.lua +share/ntopng/scripts/lua/hosts_comparison_bubble.lua +share/ntopng/scripts/lua/hosts_comparison_sankey.lua +share/ntopng/scripts/lua/hosts_geomap.lua +share/ntopng/scripts/lua/hosts_matrix.lua +share/ntopng/scripts/lua/hosts_stats.lua +share/ntopng/scripts/lua/hosts_treemap.lua +share/ntopng/scripts/lua/http_servers_stats.lua +share/ntopng/scripts/lua/if_pkt_distro.lua +share/ntopng/scripts/lua/if_stats.lua +share/ntopng/scripts/lua/if_stats_ndpi.lua +share/ntopng/scripts/lua/iface_flows_sankey.lua +share/ntopng/scripts/lua/iface_hosts_list.lua +share/ntopng/scripts/lua/iface_local_stats.lua +share/ntopng/scripts/lua/iface_ndpi_stats.lua +share/ntopng/scripts/lua/iface_ports_list.lua +share/ntopng/scripts/lua/inc/add_user_dialog.lua +share/ntopng/scripts/lua/inc/change_user_password_form.lua +share/ntopng/scripts/lua/inc/delete_user_dialog.lua +share/ntopng/scripts/lua/inc/footer.lua +share/ntopng/scripts/lua/inc/menu.lua +share/ntopng/scripts/lua/inc/password_dialog.lua +share/ntopng/scripts/lua/inc/sankey.lua +share/ntopng/scripts/lua/inc/search_host_box.lua +share/ntopng/scripts/lua/inc/sprobe.lua +share/ntopng/scripts/lua/inc/users.lua +share/ntopng/scripts/lua/index.lua +share/ntopng/scripts/lua/login.lua +share/ntopng/scripts/lua/logout.lua +share/ntopng/scripts/lua/mac_stats.lua +share/ntopng/scripts/lua/mesh_antenna_stats.lua +share/ntopng/scripts/lua/modules/alert_utils.lua +share/ntopng/scripts/lua/modules/db_utils.lua +share/ntopng/scripts/lua/modules/dkjson.lua +share/ntopng/scripts/lua/modules/flow_utils.lua +share/ntopng/scripts/lua/modules/graph_utils.lua +share/ntopng/scripts/lua/modules/json.lua +share/ntopng/scripts/lua/modules/lua_trace.lua +share/ntopng/scripts/lua/modules/lua_utils.lua +share/ntopng/scripts/lua/modules/persistence.lua +share/ntopng/scripts/lua/modules/sqlite_utils.lua +share/ntopng/scripts/lua/modules/template.lua +share/ntopng/scripts/lua/modules/top_scripts/top_asn.lua +share/ntopng/scripts/lua/modules/top_scripts/top_countries.lua +share/ntopng/scripts/lua/modules/top_scripts/top_networks.lua +share/ntopng/scripts/lua/modules/top_scripts/top_os.lua +share/ntopng/scripts/lua/modules/top_scripts/top_os_local.lua +share/ntopng/scripts/lua/modules/top_scripts/top_talkers.lua +share/ntopng/scripts/lua/modules/top_scripts/top_vlan.lua +share/ntopng/scripts/lua/modules/top_structure.lua +share/ntopng/scripts/lua/modules/top_talkers.lua +share/ntopng/scripts/lua/modules/traffic_stats.lua +share/ntopng/scripts/lua/modules/voip_utils.lua +share/ntopng/scripts/lua/network_details.lua +share/ntopng/scripts/lua/network_load.lua +share/ntopng/scripts/lua/network_stats.lua +share/ntopng/scripts/lua/os_stats.lua +share/ntopng/scripts/lua/page_not_found.lua +share/ntopng/scripts/lua/pid_stats.lua +share/ntopng/scripts/lua/popKeys.lua +share/ntopng/scripts/lua/port_details.lua +share/ntopng/scripts/lua/processes_stats.lua +share/ntopng/scripts/lua/protocols/dns_aggregations.lua +share/ntopng/scripts/lua/protocols/epp_aggregations.lua +share/ntopng/scripts/lua/resolve_address.lua +share/ntopng/scripts/lua/set_active_interface.lua +share/ntopng/scripts/lua/set_if_prefs.lua +share/ntopng/scripts/lua/sflow_tree.lua +share/ntopng/scripts/lua/sflows_stats.lua +share/ntopng/scripts/lua/show_alerts.lua +share/ntopng/scripts/lua/sprobe.lua +share/ntopng/scripts/lua/sprobe_data.lua +share/ntopng/scripts/lua/sprobe_flow_data.lua +share/ntopng/scripts/lua/sprobe_host_process.lua +share/ntopng/scripts/lua/sprobe_host_process_data.lua +share/ntopng/scripts/lua/sprobe_hosts.lua +share/ntopng/scripts/lua/sprobe_hosts_data.lua +share/ntopng/scripts/lua/sprobe_hosts_interactions.lua +share/ntopng/scripts/lua/sprobe_hosts_interactions_data.lua +share/ntopng/scripts/lua/system_hosts_interaction.lua +share/ntopng/scripts/lua/test_snmp.lua +share/ntopng/scripts/lua/top_generic.lua +share/ntopng/scripts/lua/top_hosts.lua +share/ntopng/scripts/lua/user_stats.lua +share/ntopng/scripts/lua/vlan_stats.lua diff --git a/net/ntopng/distinfo b/net/ntopng/distinfo new file mode 100644 index 00000000000..0aab462a7e3 --- /dev/null +++ b/net/ntopng/distinfo @@ -0,0 +1,12 @@ +$NetBSD: distinfo,v 1.1 2016/04/08 16:59:07 adam Exp $ + +SHA1 (ntopng-2.2.tar.gz) = 873170e54611acb77741be67aec8b782fb8efb9b +RMD160 (ntopng-2.2.tar.gz) = ff89921551d6c23c286df6d4965c67818f2c5df5 +SHA512 (ntopng-2.2.tar.gz) = d0dacdd821bb546a1034bd616201ae05f17037fd446ec2b7566fe6b2c1fa90b256056c3dd5f0b10aded4c903286adfa7ac5f3901c4392de92f6c27dcc523cb23 +Size (ntopng-2.2.tar.gz) = 91319029 bytes +SHA1 (patch-Makefile.in) = 210769de15d90f050d228a9af5a9b020dee245e9 +SHA1 (patch-configure.seed) = b19f4e10860d4c8453ebd4b04313fc9ca2aa2a4d +SHA1 (patch-include_ntop__includes.h) = dd8f61228d6a8d96a5577e53857cb8a05394a036 +SHA1 (patch-src_PacketDumperTuntap.cpp) = 274b70f065f407ca34a3d88e021924639ffa105b +SHA1 (patch-src_Redis.cpp) = 10f04cb1b300cd400905df993bb7d4f20431569b +SHA1 (patch-third-party_mongoose_mongoose.c) = 1b163b56600390e393d2ede7aace3e26c12c9a67 diff --git a/net/ntopng/files/ntopng.sh b/net/ntopng/files/ntopng.sh new file mode 100644 index 00000000000..27627d74415 --- /dev/null +++ b/net/ntopng/files/ntopng.sh @@ -0,0 +1,26 @@ +#!@RCD_SCRIPTS_SHELL@ +# +# $NetBSD: ntopng.sh,v 1.1 2016/04/08 16:59:07 adam Exp $ +# +# PROVIDE: ntopng +# REQUIRE: DAEMON network +# KEYWORD: shutdown + +if [ -f /etc/rc.subr ]; then + . /etc/rc.subr +fi + +name="ntopng" +rcvar=$name +# XXX must be in tmp, because ntopng runs as nobody +pidfile="@VARBASE@/tmp/$name.pid" +command="@PREFIX@/bin/$name" +command_args="-e -G $pidfile" + +if [ -f /etc/rc.subr ]; then + load_rc_config $name + run_rc_command "$1" +else + echo -n "${name}" + @SU@ -c "${command}" +fi diff --git a/net/ntopng/patches/patch-Makefile.in b/net/ntopng/patches/patch-Makefile.in new file mode 100644 index 00000000000..3ea2f68e1b2 --- /dev/null +++ b/net/ntopng/patches/patch-Makefile.in @@ -0,0 +1,23 @@ +$NetBSD: patch-Makefile.in,v 1.1 2016/04/08 16:59:07 adam Exp $ + +Install into DESTDIR. +Use external nDPI. + +--- Makefile.in.orig 2015-11-30 18:15:18.000000000 +0000 ++++ Makefile.in +@@ -5,13 +5,13 @@ SHELL=/bin/sh + OS := $(shell uname -s) + PWD=@PWD@ + GPP=@GPP@ +-INSTALL_DIR=$(prefix) ++INSTALL_DIR=$(DESTDIR)$(prefix) + MAN_DIR=$(DESTDIR)@MAN_DIR@ + + ###### + HAS_NDPI=$(shell pkg-config --exists libndpi; echo $$?) + ifeq ($(HAS_NDPI), 0) +- NDPI_INC = $(shell pkg-config --cflags libndpi | sed -e 's/\(-I[^ \t]*\)/\1\/libndpi/g') ++ NDPI_INC = $(shell pkg-config --cflags libndpi)/libndpi + NDPI_LIB = $(shell pkg-config --libs libndpi) + NDPI_LIB_DEP = + else diff --git a/net/ntopng/patches/patch-configure.seed b/net/ntopng/patches/patch-configure.seed new file mode 100644 index 00000000000..068a2b3e977 --- /dev/null +++ b/net/ntopng/patches/patch-configure.seed @@ -0,0 +1,65 @@ +$NetBSD: patch-configure.seed,v 1.1 2016/04/08 16:59:07 adam Exp $ + +Do not use included nDPI. +Do not use -O0 for clang. +On Darwin, install into man/. + +--- configure.seed.orig 2015-11-30 18:15:18.000000000 +0000 ++++ configure.seed +@@ -44,35 +44,6 @@ GIT_BRANCH="@GIT_BRANCH@" + PRO_GIT_RELEASE="@PRO_GIT_RELEASE@" + PRO_GIT_DATE="@PRO_GIT_DATE@" + +-AC_MSG_CHECKING(for nDPI) +-NDPI_HOME=./nDPI +-if test -d "$NDPI_HOME" ; then : +- AC_MSG_RESULT(found in $NDPI_HOME) +-else +- NDPI_HOME=../nDPI +- if test -d "$NDPI_HOME"; then : +- AC_MSG_RESULT(found in $NDPI_HOME) +- else +- NDPI_HOME=$HOME/nDPI +- if test -d "$NDPI_HOME"; then : +- AC_MSG_RESULT(found in $NDPI_HOME) +- else +- AC_MSG_RESULT(not found) +- echo "Please do cd ..; git clone https://github.com/ntop/nDPI.git; cd nDPI; ./autogen.sh; make; cd ../ntopng" +- echo " and try again" +- exit +- fi +- fi +-fi +- +-NDPI_LIB=$NDPI_HOME/src/lib/.libs/libndpi.a +-AC_MSG_CHECKING(for $NDPI_LIB) +-if test -f "$NDPI_LIB" ; then : +- AC_MSG_RESULT(found $NDPI_LIB) +-else +- AC_MSG_RESULT(not found $NDPI_LIB: compiling) +- cd $NDPI_HOME; ./autogen.sh; make; cd - +-fi + + AC_MSG_CHECKING(for ntopng professional edition) + if test -d "pro"; then : +@@ -351,7 +322,7 @@ if test x$GPP = x + then + GPP="g++" + else +- GPP="$GPP -O0" ++ GPP="$GPP" + fi + + GIT=`which git` +@@ -374,11 +345,7 @@ then + INSTALL_DIR=${ac_default_prefix} + fi + +-if test $SYSTEM = "Darwin"; then +- MAN_DIR=$INSTALL_DIR/share/man +-else + MAN_DIR=$INSTALL_DIR/man +-fi + + if test $SYSTEM = "OpenBSD"; then + INSTALL_DIR=${prefix} diff --git a/net/ntopng/patches/patch-include_ntop__includes.h b/net/ntopng/patches/patch-include_ntop__includes.h new file mode 100644 index 00000000000..1daabc3e1db --- /dev/null +++ b/net/ntopng/patches/patch-include_ntop__includes.h @@ -0,0 +1,15 @@ +$NetBSD: patch-include_ntop__includes.h,v 1.1 2016/04/08 16:59:07 adam Exp $ + +Add NetBSD support. + +--- include/ntop_includes.h.orig 2016-04-04 12:57:38.000000000 +0000 ++++ include/ntop_includes.h +@@ -43,7 +43,7 @@ + #include <arpa/inet.h> + #include <poll.h> + +-#if defined(__OpenBSD__) ++#if defined(__NetBSD__) || defined(__OpenBSD__) + #include <sys/types.h> + #include <sys/socket.h> + #include <netinet/in.h> diff --git a/net/ntopng/patches/patch-src_PacketDumperTuntap.cpp b/net/ntopng/patches/patch-src_PacketDumperTuntap.cpp new file mode 100644 index 00000000000..e19a96b5af4 --- /dev/null +++ b/net/ntopng/patches/patch-src_PacketDumperTuntap.cpp @@ -0,0 +1,15 @@ +$NetBSD: patch-src_PacketDumperTuntap.cpp,v 1.1 2016/04/08 16:59:07 adam Exp $ + +Add NetBSD support. + +--- src/PacketDumperTuntap.cpp.orig 2016-04-04 12:59:52.000000000 +0000 ++++ src/PacketDumperTuntap.cpp +@@ -127,7 +127,7 @@ int PacketDumperTuntap::openTap(char *de + + /* ********************************************* */ + +-#ifdef __OpenBSD__ ++#if defined(__NetBSD__) || defined(__OpenBSD__) + #define OPENBSD_TAPDEVICE_SIZE 32 + int PacketDumperTuntap::openTap(char *dev, /* user-definable interface name, eg. edge0 */ int mtu) { + int i; diff --git a/net/ntopng/patches/patch-src_Redis.cpp b/net/ntopng/patches/patch-src_Redis.cpp new file mode 100644 index 00000000000..3d297de69d2 --- /dev/null +++ b/net/ntopng/patches/patch-src_Redis.cpp @@ -0,0 +1,20 @@ +$NetBSD: patch-src_Redis.cpp,v 1.1 2016/04/08 16:59:07 adam Exp $ + +Allow Redis connection through unix socket. + +--- src/Redis.cpp.orig 2016-04-06 11:41:42.000000000 +0000 ++++ src/Redis.cpp +@@ -75,7 +75,12 @@ void Redis::reconnectRedis() { + redisFree(redis); + } + +- redis = redisConnectWithTimeout(redis_host, redis_port, timeout); ++ if (redis_host[0] == '/') { ++ redis = redisConnectUnixWithTimeout(redis_host, timeout); ++ } ++ else { ++ redis = redisConnectWithTimeout(redis_host, redis_port, timeout); ++ } + + while(num_attemps > 0) { + if(redis) reply = (redisReply*)redisCommand(redis, "PING"); else reply = NULL; diff --git a/net/ntopng/patches/patch-third-party_mongoose_mongoose.c b/net/ntopng/patches/patch-third-party_mongoose_mongoose.c new file mode 100644 index 00000000000..77c4e9ab0e8 --- /dev/null +++ b/net/ntopng/patches/patch-third-party_mongoose_mongoose.c @@ -0,0 +1,141 @@ +$NetBSD: patch-third-party_mongoose_mongoose.c,v 1.1 2016/04/08 16:59:07 adam Exp $ + +Updated to the latest version from github.com/ntop/ntopng. +On NetBSD, this fixes a problem with HTTP listening on IPv6 only. + +--- third-party/mongoose/mongoose.c.orig 2015-11-30 19:15:18.000000000 +0100 ++++ third-party/mongoose/mongoose.c 2016-04-06 15:53:31.000000000 +0200 +@@ -444,6 +444,8 @@ + struct sockaddr_in sin; + #if defined(USE_IPV6) + struct sockaddr_in6 sin6; ++#else ++ struct sockaddr sin6; + #endif + }; + +@@ -4398,37 +4400,45 @@ + // Examples: 80, 443s, 127.0.0.1:3128, 1.2.3.4:8080s + // TODO(lsm): add parsing of the IPv6 address + static int parse_port_string(const struct vec *vec, struct socket *so) { +- int a, b, c, d, port, len; +- ++ union usa *sa = (union usa *)&so->lsa; ++ int a, b, c, d, port = 0, len = 0; ++#if defined(USE_IPV6) ++ char buf[100]; ++#endif + // MacOS needs that. If we do not zero it, subsequent bind() will fail. + // Also, all-zeroes in the socket address means binding to all addresses + // for both IPv4 and IPv6 (INADDR_ANY and IN6ADDR_ANY_INIT). +- memset(so, 0, sizeof(*so)); ++ memset(sa, 0, sizeof(*sa)); + +- if (sscanf(vec->ptr, "%d.%d.%d.%d:%d%n", &a, &b, &c, &d, &port, &len) == 5) { +- // Bind to a specific IPv4 address +- so->lsa.sin.sin_addr.s_addr = htonl((a << 24) | (b << 16) | (c << 8) | d); +- } else if (sscanf(vec->ptr, "%d%n", &port, &len) != 1 || +- len <= 0 || +- len > (int) vec->len || +- (vec->ptr[len] && vec->ptr[len] != 's' && +- vec->ptr[len] != 'r' && vec->ptr[len] != ',')) { +- return 0; +- } ++ sa->sin.sin_family = AF_INET; ++ ++ if (sscanf(vec->ptr, "%u.%u.%u.%u:%u%n", &a, &b, &c, &d, &port, &len) == 5) { ++ /* Bind to a specific IPv4 address, e.g. 127.0.0.1:8080 */ ++ sa->sin.sin_addr.s_addr = ++ htonl(((uint32_t) a << 24) | ((uint32_t) b << 16) | c << 8 | d); ++ sa->sin.sin_port = htons((uint16_t) port); + +- so->is_ssl = vec->ptr[len] == 's'; +- so->ssl_redir = vec->ptr[len] == 'r'; + #if defined(USE_IPV6) +- if(is_ip6_enabled) { +- so->lsa.sin6.sin6_family = AF_INET6; +- so->lsa.sin6.sin6_port = htons((uint16_t) port); +- } else { /* NTOP - fall back to IPv4 */ +- so->lsa.sin.sin_family = AF_INET; +- so->lsa.sin.sin_port = htons((uint16_t) port); ++ } else if (sscanf(vec->ptr, "[%[^]]]:%u%n", buf, &port, &len) == 2 && ++ inet_pton(AF_INET6, buf, &sa->sin6.sin6_addr)) { ++ /* IPv6 address, e.g. [3ffe:2a00:100:7031::1]:8080 */ ++ sa->sin6.sin6_family = AF_INET6; ++ sa->sin.sin_port = htons((uint16_t) port); ++#endif ++ ++ } else if (sscanf(vec->ptr, ":%u%n", &port, &len) == 1 || ++ sscanf(vec->ptr, "%u%n", &port, &len) == 1) { ++ /* If only port is specified, bind to IPv4, INADDR_ANY */ ++ sa->sin.sin_port = htons((uint16_t) port); ++ } else { ++ return -1; + } +-#else +- so->lsa.sin.sin_family = AF_INET; +- so->lsa.sin.sin_port = htons((uint16_t) port); ++ ++ so->is_ssl = (vec->ptr[len] && vec->ptr[len] == 's'); ++ so->ssl_redir = (vec->ptr[len] && vec->ptr[len] == 'r'); ++ ++#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) ++ so->lsa.sin.sin_len = sizeof(struct sockaddr_in); + #endif + + return 1; +@@ -4439,6 +4449,15 @@ + int on = 1, success = 1; + struct vec vec; + struct socket so; ++ int rc_setsockopt = 0, rc_bind = 0, rc_listen = 0; ++ union usa *sa = (union usa *)&so.lsa; ++ ++ /* ++ #if defined(USE_IPV6) ++ if(is_ip6_enabled) ++ sa = (const struct sockaddr *)&so.lsa.sin6, sa_len = sizeof(so.lsa.sin6); ++ #endif ++ */ + + while (success && (list = next_option(list, &vec, NULL)) != NULL) { + if (!parse_port_string(&vec, &so)) { +@@ -4448,19 +4467,22 @@ + } else if (so.is_ssl && ctx->ssl_ctx == NULL) { + cry(fc(ctx), "Cannot add SSL socket, is -ssl_certificate option set?"); + success = 0; +- } else if ((so.sock = socket(so.lsa.sa.sa_family, SOCK_STREAM, 6)) == ++ } else if ((so.sock = socket(so.lsa.sa.sa_family, SOCK_STREAM, IPPROTO_TCP)) == + INVALID_SOCKET || + // On Windows, SO_REUSEADDR is recommended only for + // broadcast UDP sockets +- setsockopt(so.sock, SOL_SOCKET, SO_REUSEADDR, ++ (rc_setsockopt = setsockopt(so.sock, SOL_SOCKET, SO_REUSEADDR, + #ifdef WIN32 + (const char*) + #else + (void *) + #endif +- &on, sizeof(on)) != 0 || +- bind(so.sock, &so.lsa.sa, sizeof(so.lsa)) != 0 || +- listen(so.sock, SOMAXCONN) != 0) { ++ &on, sizeof(on))) != 0 || ++ (rc_bind = bind(so.sock, ++ &sa->sa, ++ (sa->sa.sa_family == AF_INET) ? sizeof(sa->sin) : sizeof(sa->sin6)) ++ ) != 0 || ++ (rc_listen = listen(so.sock, SOMAXCONN)) != 0) { + cry(fc(ctx), "%s: cannot bind to %.*s: %s", __func__, + (int) vec.len, vec.ptr, strerror(ERRNO)); + closesocket(so.sock); +@@ -5239,6 +5261,10 @@ + check_ipv6_enabled(); + #endif + ++#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) ++ is_ip6_enabled = 0; ++#endif ++ + #if defined(_WIN32) && !defined(__SYMBIAN32__) + WSADATA data; + WSAStartup(MAKEWORD(2,2), &data); |