bandwidthd: Addition of a variant of the bandwidthd package.
Addition of the bandwidthd-pgsql package variant that can save also in a postgres database. Modification of bandwidthd.config to have the default IP address of an OpenWrt router (192.168.1.1) Addition of a small OpenWrt logo in the logo.gif Compile tested on CC and trunk (ar71xx and mvebu in both cases) run tested on CC (ar71xx) and trunk (r47397 on mvebu) Signed-off-by: Jean-Michel Lacroix <lacroix@lepine-lacroix.info>
This commit is contained in:
parent
726e9dcafd
commit
b885721fa0
5 changed files with 167 additions and 5 deletions
|
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PKG_NAME:=bandwidthd
|
||||
PKG_VERSION:=2.0.1
|
||||
PKG_RELEASE:=4
|
||||
PKG_RELEASE:=5
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz
|
||||
PKG_SOURCE_URL:=@SF/bandwidthd
|
||||
|
@ -18,22 +18,50 @@ PKG_MD5SUM:=aa79aad7bd489fd2cae1f7dc086ca8b6
|
|||
PKG_MAINTAINER:=Jean-Michel Lacroix <lacroix@lepine-lacroix.info>
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_LICENSE_FILES:=
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/bandwidthd
|
||||
define Package/bandwidthd/Default
|
||||
SECTION:=utils
|
||||
CATEGORY:=Utilities
|
||||
TITLE:=Bandwidthd
|
||||
URL:=http://bandwidthd.sourceforge.net/
|
||||
endef
|
||||
|
||||
define Package/bandwidthd
|
||||
$(call Package/bandwidthd/Default)
|
||||
TITLE += (without postgresql)
|
||||
VARIANT:=no-pgsql
|
||||
DEPENDS:=+libgd +libpcap
|
||||
endef
|
||||
|
||||
define Package/bandwidthd-pgsql
|
||||
$(call Package/bandwidthd/Default)
|
||||
TITLE += (with postgresql enabled)
|
||||
VARIANT:=pgsql
|
||||
DEPENDS:=+libgd +libpcap +libpq
|
||||
endef
|
||||
|
||||
define Package/bandwidthd/description
|
||||
A bandwidthd tracking utility.
|
||||
endef
|
||||
|
||||
define Package/bandwidthd-pgsql/description
|
||||
$(call Package/bandwidthd/description)
|
||||
With the ability to store in a postgresql database.
|
||||
endef
|
||||
|
||||
define Package/bandwidthd/daemon
|
||||
This package contains bandwidthd a bandwith tracking utility.
|
||||
endef
|
||||
|
||||
define Package/bandwidthd-pgsql/daemon
|
||||
This package contains bandwidthd a bandwith tracking utility.
|
||||
endef
|
||||
|
||||
ifeq ($(BUILD_VARIANT),no-pgsql)
|
||||
CONFIGURE_ARGS += \
|
||||
ac_cv_file__sw_lib=no \
|
||||
ac_cv_file__sw_include=no \
|
||||
|
@ -41,7 +69,18 @@ CONFIGURE_ARGS += \
|
|||
ac_cv_file__usr_pkg_include=no \
|
||||
ac_cv_file__usr_local_pgsql_lib=no \
|
||||
ac_cv_file__usr_local_pgsql_include=no \
|
||||
ac_cv_lib_pq_PQconnectdb=no \
|
||||
ac_cv_lib_pq_PQconnectdb=no
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_VARIANT),pgsql)
|
||||
CONFIGURE_ARGS += \
|
||||
ac_cv_file__sw_lib=no \
|
||||
ac_cv_file__sw_include=no \
|
||||
ac_cv_file__usr_pkg_lib=no \
|
||||
ac_cv_file__usr_pkg_include=no \
|
||||
ac_cv_file__usr_local_pgsql_lib=no \
|
||||
ac_cv_file__usr_local_pgsql_include=no
|
||||
endif
|
||||
|
||||
EXTRA_CFLAGS+= $(TARGET_CPPFLAGS)
|
||||
EXTRA_LDFLAGS+= $(TARGET_LDFLAGS) -Wl,-rpath-link,$(STAGING_DIR)/usr/lib
|
||||
|
@ -58,8 +97,28 @@ define Package/bandwidthd/install
|
|||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/htdocs/logo.gif $(1)/www/
|
||||
endef
|
||||
|
||||
define Package/bandwidthd-pgsql/install
|
||||
$(INSTALL_DIR) $(1)/usr/sbin
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bandwidthd $(1)/usr/sbin/
|
||||
$(INSTALL_DIR) $(1)/etc/config
|
||||
$(INSTALL_DATA) ./files/bandwidthd-pgsql.config $(1)/etc/config/bandwidthd
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_BIN) ./files/bandwidthd-pgsql.init $(1)/etc/init.d/bandwidthd
|
||||
$(INSTALL_DIR) $(1)/www/phphtdocs
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/htdocs/legend.gif $(1)/www/
|
||||
$(INSTALL_DATA) ./files/logo.gif $(1)/www/
|
||||
$(INSTALL_DIR) $(1)/usr/share/postgresql
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/schema.postgresql $(1)/usr/share/postgresql
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/phphtdocs/bd_pgsql_purge.sh $(1)/usr/share/postgresql
|
||||
endef
|
||||
|
||||
define Package/bandwidthd/conffiles
|
||||
/etc/config/bandwidthd
|
||||
endef
|
||||
|
||||
define Package/bandwidthd-pgsql/conffiles
|
||||
/etc/config/bandwidthd
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,bandwidthd))
|
||||
$(eval $(call BuildPackage,bandwidthd-pgsql))
|
||||
|
|
13
utils/bandwidthd/files/bandwidthd-pgsql.config
Normal file
13
utils/bandwidthd/files/bandwidthd-pgsql.config
Normal file
|
@ -0,0 +1,13 @@
|
|||
config bandwidthd
|
||||
option dev br-lan
|
||||
option subnets "192.168.1.0/24"
|
||||
option skip_intervals 0
|
||||
option graph_cutoff 1024
|
||||
option promiscuous true
|
||||
option output_cdf false
|
||||
option recover_cdf false
|
||||
option filter ip
|
||||
option graph true
|
||||
option meta_refresh 150
|
||||
option disabled_pgsql_connect_string "user = postgres dbname = bandwidthd host = 192.168.1.1"
|
||||
option disabled_sensor_id "openwrt.mydomain.domain"
|
90
utils/bandwidthd/files/bandwidthd-pgsql.init
Normal file
90
utils/bandwidthd/files/bandwidthd-pgsql.init
Normal file
|
@ -0,0 +1,90 @@
|
|||
#!/bin/sh /etc/rc.common
|
||||
# Copyright (C) 2008-2015 OpenWrt.org
|
||||
|
||||
START=99
|
||||
|
||||
config_cb() {
|
||||
local cfg_type="$1"
|
||||
local cfg_name="$2"
|
||||
|
||||
case "$cfg_type" in
|
||||
bandwidthd)
|
||||
append cfgs "$cfg_name"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
export_bool() {
|
||||
local option="$1"
|
||||
local section="$2"
|
||||
local _loctmp
|
||||
config_get_bool _loctmp "$section" "$option"
|
||||
if [ -n "$_loctmp" ]; then
|
||||
conffile="${conffile}$option "
|
||||
if [ 1 -eq "$_loctmp" ]; then
|
||||
conffile="${conffile}true"
|
||||
else
|
||||
conffile="${conffile}false"
|
||||
fi
|
||||
conffile="${conffile}\n"
|
||||
fi
|
||||
}
|
||||
|
||||
export_number() {
|
||||
local option="$1"
|
||||
local section="$2"
|
||||
local _loctmp
|
||||
config_get _loctmp "$section" "$option"
|
||||
if [ -n "$_loctmp" ]; then
|
||||
conffile="${conffile}$option ${_loctmp}\n"
|
||||
fi
|
||||
}
|
||||
|
||||
export_string() {
|
||||
local option="$1"
|
||||
local section="$2"
|
||||
local _loctmp
|
||||
config_get _loctmp "$section" "$option"
|
||||
if [ -n "$_loctmp" ]; then
|
||||
conffile="${conffile}$option \"${_loctmp}\"\n"
|
||||
fi
|
||||
}
|
||||
|
||||
start() {
|
||||
local subnet conffile
|
||||
|
||||
[ -d /tmp/bandwidthd ] || mkdir -p /tmp/bandwidthd && cp /www/legend.gif /www/logo.gif /tmp/bandwidthd/
|
||||
[ -e /htdocs ] || ln -s /tmp/bandwidthd /htdocs
|
||||
[ -e /www/bandwidthd ] || ln -s /tmp/bandwidthd /www/bandwidthd
|
||||
rm -f /tmp/bandwidthd.conf
|
||||
touch /tmp/bandwidthd.conf
|
||||
[ -e /etc/bandwidthd.conf ] || ln -s /tmp/bandwidthd.conf /etc/bandwidthd.conf
|
||||
|
||||
|
||||
config_load bandwidthd
|
||||
for cfg in $cfgs; do
|
||||
config_get subnets $cfg subnets
|
||||
for subnet in $subnets; do
|
||||
conffile="${conffile}subnet ${subnet}\n"
|
||||
done
|
||||
export_string dev $cfg
|
||||
export_number skip_intervals $cfg
|
||||
export_number graph_cutoff $cfg
|
||||
export_bool promiscuous $cfg
|
||||
export_bool output_cdf $cfg
|
||||
export_bool recover_cdf $cfg
|
||||
export_string filter $cfg
|
||||
export_bool graph $cfg
|
||||
export_number meta_refresh $cfg
|
||||
export_string pgsql_connect_string $cfg
|
||||
export_string sensor_id $cfg
|
||||
[ -n "$conffile" ] && echo -e "$conffile" >>/tmp/bandwidthd.conf
|
||||
unset conffile
|
||||
done
|
||||
cd /
|
||||
service_start /usr/sbin/bandwidthd
|
||||
}
|
||||
|
||||
stop() {
|
||||
service_stop /usr/sbin/bandwidthd
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
config bandwidthd
|
||||
option dev br-lan
|
||||
option subnets "192.168.0.0/16 10.0.0.0/8 172.16.0.0/12"
|
||||
option subnets "192.168.1.0/24"
|
||||
option skip_intervals 0
|
||||
option graph_cutoff 1024
|
||||
option promiscuous true
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 7.4 KiB After Width: | Height: | Size: 9.2 KiB |
Loading…
Reference in a new issue