--- collectd-4.10.1.orig/debian/collectd.conf
+++ collectd-4.10.1/debian/collectd.conf
@@ -0,0 +1,813 @@
+# Config file for collectd(1).
+#
+# Some plugins need additional configuration and are disabled by default.
+# Please read collectd.conf(5) for details.
+#
+# You should also read /usr/share/doc/collectd-core/README.Debian.plugins
+# before enabling any more plugins.
+
+#Hostname "localhost"
+FQDNLookup true
+#BaseDir "/var/lib/collectd"
+#PluginDir "/usr/lib/collectd"
+#TypesDB "/usr/share/collectd/types.db" "/etc/collectd/my_types.db"
+#Interval 10
+#Timeout 2
+#ReadThreads 5
+
+#LoadPlugin logfile
+LoadPlugin syslog
+
+#<Plugin logfile>
+#	LogLevel "info"
+#	File STDOUT
+#	Timestamp true
+#	PrintSeverity false
+#</Plugin>
+
+<Plugin syslog>
+	LogLevel info
+</Plugin>
+
+#LoadPlugin apache
+#LoadPlugin apcups
+#LoadPlugin ascent
+LoadPlugin battery
+#LoadPlugin bind
+#LoadPlugin conntrack
+#LoadPlugin contextswitch
+LoadPlugin cpu
+#LoadPlugin cpufreq
+#LoadPlugin csv
+#LoadPlugin curl
+#LoadPlugin curl_json
+#LoadPlugin curl_xml
+#LoadPlugin dbi
+LoadPlugin df
+LoadPlugin disk
+#LoadPlugin dns
+#LoadPlugin email
+LoadPlugin entropy
+#LoadPlugin exec
+#LoadPlugin filecount
+#LoadPlugin fscache
+#LoadPlugin gmond
+#LoadPlugin hddtemp
+LoadPlugin interface
+#LoadPlugin ipmi
+#LoadPlugin iptables
+#LoadPlugin ipvs
+LoadPlugin irq
+#LoadPlugin java
+#LoadPlugin libvirt
+LoadPlugin load
+#LoadPlugin madwifi
+#LoadPlugin mbmon
+#LoadPlugin memcachec
+#LoadPlugin memcached
+LoadPlugin memory
+#LoadPlugin multimeter
+#LoadPlugin mysql
+#LoadPlugin netlink
+#LoadPlugin network
+#LoadPlugin nfs
+#LoadPlugin nginx
+#LoadPlugin notify_desktop
+#LoadPlugin notify_email
+#LoadPlugin ntpd
+#LoadPlugin nut
+#LoadPlugin olsrd
+#LoadPlugin openvpn
+#LoadPlugin perl
+#LoadPlugin pinba
+#LoadPlugin ping
+#LoadPlugin postgresql
+#LoadPlugin powerdns
+LoadPlugin processes
+#LoadPlugin protocols
+#LoadPlugin python
+#LoadPlugin rrdcached
+LoadPlugin rrdtool
+#LoadPlugin sensors
+#LoadPlugin serial
+#LoadPlugin snmp
+LoadPlugin swap
+#LoadPlugin table
+#LoadPlugin tail
+#LoadPlugin tcpconns
+#LoadPlugin teamspeak2
+#LoadPlugin ted
+#LoadPlugin thermal
+#LoadPlugin tokyotyrant
+#LoadPlugin unixsock
+#LoadPlugin uptime
+LoadPlugin users
+#LoadPlugin uuid
+#LoadPlugin vmem
+#LoadPlugin vserver
+#LoadPlugin wireless
+#LoadPlugin write_http
+
+#<Plugin apache>
+#	<Instance "foo">
+#		URL "http://localhost/server-status?auto"
+#		User "www-user"
+#		Password "secret"
+#		VerifyPeer false
+#		VerifyHost false
+#		CACert "/etc/ssl/ca.crt"
+#		Server "apache"
+#	</Instance>
+#
+#	<Instance "bar">
+#		URL "http://some.domain.tld/status?auto"
+#		Host "some.domain.tld"
+#		Server "lighttpd"
+#	</Instance>
+#</Plugin>
+
+#<Plugin apcups>
+#	Host "localhost"
+#	Port "3551"
+#</Plugin>
+
+#<Plugin ascent>
+#	URL "http://localhost/ascent/status/"
+#	User "www-user"
+#	Password "secret"
+#	VerifyPeer false
+#	VerifyHost false
+#	CACert "/etc/ssl/ca.crt"
+#</Plugin>
+
+#<Plugin "bind">
+#	URL "http://localhost:8053/"
+#
+#	OpCodes true
+#	QTypes true
+#	ServerStats true
+#	ZoneMaintStats true
+#	ResolverStats false
+#	MemoryStats true
+#
+#	<View "_default">
+#		QTypes true
+#		ResolverStats true
+#		CacheRRSets true
+#
+#		Zone "127.in-addr.arpa/IN"
+#	</View>
+#</Plugin>
+
+#<Plugin csv>
+#	DataDir "/var/lib/collectd/csv"
+#	StoreRates false
+#</Plugin>
+
+#<Plugin curl>
+#	<Page "stock_quotes">
+#		URL "http://finance.google.com/finance?q=NYSE%3AAMD"
+#		User "foo"
+#		Password "bar"
+#		VerifyPeer false
+#		VerifyHost false
+#		CACert "/etc/ssl/ca.crt"
+#		MeasureResponseTime false
+#		<Match>
+#			Regex "<span +class=\"pr\"[^>]*> *([0-9]*\\.[0-9]+) *</span>"
+#			DSType "GaugeAverage"
+#			Type "stock_value"
+#			Instance "AMD"
+#		</Match>
+#	</Page>
+#</Plugin>
+
+#<Plugin curl_json>
+## See: http://wiki.apache.org/couchdb/Runtime_Statistics
+#  <URL "http://localhost:5984/_stats">
+#    Instance "httpd"
+#    <Key "httpd/requests/count">
+#      Type "http_requests"
+#    </Key>
+#
+#    <Key "httpd_request_methods/*/count">
+#      Type "http_request_methods"
+#    </Key>
+#
+#    <Key "httpd_status_codes/*/count">
+#      Type "http_response_codes"
+#    </Key>
+#  </URL>
+## Database status metrics:
+#  <URL "http://localhost:5984/_all_dbs">
+#    Instance "dbs"
+#    <Key "*/doc_count">
+#      Type "gauge"
+#    </Key>
+#    <Key "*/doc_del_count">
+#      Type "counter"
+#    </Key>
+#    <Key "*/disk_size">
+#      Type "bytes"
+#    </Key>
+#  </URL>
+#</Plugin>
+
+#<Plugin "curl_xml">
+#	<URL "http://localhost/stats.xml">
+#		Host "my_host"
+#		Instance "some_instance"
+#		User "collectd"
+#		Password "thaiNg0I"
+#		VerifyPeer true
+#		VerifyHost true
+#		CACert "/path/to/ca.crt"
+#
+#		<XPath "table[@id=\"magic_level\"]/tr">
+#			Type "magic_level"
+#			InstancePrefix "prefix-"
+#			InstanceFrom "td[1]"
+#			ValuesFrom "td[2]/span[@class=\"level\"]"
+#		</XPath>
+#	</URL>
+#</Plugin>
+
+#<Plugin dbi>
+#	<Query "num_of_customers">
+#		Statement "SELECT 'customers' AS c_key, COUNT(*) AS c_value \
+#				FROM customers_tbl"
+#		MinVersion 40102
+#		MaxVersion 50042
+#		<Result>
+#			Type "gauge"
+#			InstancePrefix "customer"
+#			InstancesFrom "c_key"
+#			ValuesFrom "c_value"
+#		</Result>
+#	</Query>
+#
+#	<Database "customers_db">
+#		Driver "mysql"
+#		DriverOption "host" "localhost"
+#		DriverOption "username" "collectd"
+#		DriverOption "password" "secret"
+#		DriverOption "dbname" "custdb0"
+#		SelectDB "custdb0"
+#		Query "num_of_customers"
+#		Query "..."
+#	</Database>
+#</Plugin>
+
+#<Plugin df>
+#	Device "/dev/sda1"
+#	Device "192.168.0.2:/mnt/nfs"
+#	MountPoint "/home"
+#	FSType "ext3"
+#	IgnoreSelected false
+#	ReportByDevice false
+#	ReportReserved false
+#	ReportInodes false
+#</Plugin>
+
+#<Plugin disk>
+#	Disk "hda"
+#	Disk "/sda[23]/"
+#	IgnoreSelected false
+#</Plugin>
+
+#<Plugin dns>
+#	Interface "eth0"
+#	IgnoreSource "192.168.0.1"
+#	SelectNumericQueryTypes false
+#</Plugin>
+
+#<Plugin email>
+#	SocketFile "/var/run/collectd-email"
+#	SocketGroup "collectd"
+#	SocketPerms "0770"
+#	MaxConns 5
+#</Plugin>
+
+#<Plugin exec>
+#	Exec user "/path/to/exec"
+#	Exec "user:group" "/path/to/exec"
+#	NotificationExec user "/path/to/exec"
+#</Plugin>
+
+#<Plugin filecount>
+#	<Directory "/path/to/dir">
+#		Instance "foodir"
+#		Name "*.conf"
+#		MTime "-5m"
+#		Size "+10k"
+#		Recursive true
+#		IncludeHidden false
+#	</Directory>
+#</Plugin>
+
+#<Plugin gmond>
+#	MCReceiveFrom "239.2.11.71" "8649"
+#
+#	<Metric "swap_total">
+#		Type "swap"
+#		TypeInstance "total"
+#		DataSource "value"
+#	</Metric>
+#
+#	<Metric "swap_free">
+#		Type "swap"
+#		TypeInstance "free"
+#		DataSource "value"
+#	</Metric>
+#</Plugin>
+
+#<Plugin hddtemp>
+#	Host "127.0.0.1"
+#	Port 7634
+#	TranslateDevicename false
+#</Plugin>
+
+#<Plugin interface>
+#	Interface "eth0"
+#	IgnoreSelected false
+#</Plugin>
+
+#<Plugin ipmi>
+#	Sensor "some_sensor"
+#	Sensor "another_one"
+#	IgnoreSelected false
+#	NotifySensorAdd false
+#	NotifySensorRemove true
+#	NotifySensorNotPresent false
+#</Plugin>
+
+#<Plugin iptables>
+#	Chain "table" "chain"
+#</Plugin>
+
+#<Plugin irq>
+#	Irq 7
+#	Irq 8
+#	Irq 9
+#	IgnoreSelected true
+#</Plugin>
+
+#<Plugin java>
+#	JVMArg "-verbose:jni"
+#	JVMArg "-Djava.class.path=/usr/share/collectd/java/collectd-api.jar"
+#
+#	LoadPlugin "org.collectd.java.GenericJMX"
+#	<Plugin "GenericJMX">
+#		# See /usr/share/doc/collectd/examples/GenericJMX.conf
+#		# for an example config.
+#	</Plugin>
+#</Plugin>
+
+#<Plugin libvirt>
+#	Connection "xen:///"
+#	RefreshInterval 60
+#	Domain "name"
+#	BlockDevice "name:device"
+#	InterfaceDevice "name:device"
+#	IgnoreSelected false
+#	HostnameFormat name
+#</Plugin>
+
+#<Plugin madwifi>
+#	Interface "wlan0"
+#	IgnoreSelected false
+#	Source "SysFS"
+#	WatchSet "None"
+#	WatchAdd "node_octets"
+#	WatchAdd "node_rssi"
+#	WatchAdd "is_rx_acl"
+#	WatchAdd "is_scan_active"
+#</Plugin>
+
+#<Plugin mbmon>
+#	Host "127.0.0.1"
+#	Port 411
+#</Plugin>
+
+#<Plugin memcachec>
+#	<Page "plugin_instance">
+#		Server "localhost"
+#		Key "page_key"
+#		<Match>
+#			Regex "(\\d+) bytes sent"
+#			ExcludeRegex "<lines to be excluded>"
+#			DSType CounterAdd
+#			Type "ipt_octets"
+#			Instance "type_instance"
+#		</Match>
+#	</Page>
+#</Plugin>
+
+#<Plugin memcached>
+#	Socket "/var/run/memcached.sock"
+# or:
+#	Host "127.0.0.1"
+#	Port "11211"
+#</Plugin>
+
+#<Plugin mysql>
+#	<Database db_name>
+#		Host "database.serv.er"
+#		Port "3306"
+#		User "db_user"
+#		Password "secret"
+#		Database "db_name"
+#		MasterStats true
+#	</Database>
+#
+#	<Database db_name2>
+#		Host "localhost"
+#		Socket "/var/run/mysql/mysqld.sock"
+#		SlaveStats true
+#		SlaveNotifications true
+#	</Database>
+#</Plugin>
+
+#<Plugin netlink>
+#	Interface "All"
+#	VerboseInterface "All"
+#	QDisc "eth0" "pfifo_fast-1:0"
+#	Class "ppp0" "htb-1:10"
+#	Filter "ppp0" "u32-1:0"
+#	IgnoreSelected false
+#</Plugin>
+
+#<Plugin network>
+#	# client setup:
+#	Server "ff18::efc0:4a42" "25826"
+#	<Server "239.192.74.66" "25826">
+#		SecurityLevel Encrypt
+#		Username "user"
+#		Password "secret"
+#		Interface "eth0"
+#	</Server>
+#	TimeToLive "128"
+#
+#	# server setup:
+#	Listen "ff18::efc0:4a42" "25826"
+#	<Listen "239.192.74.66" "25826">
+#		SecurityLevel Sign
+#		AuthFile "/etc/collectd/passwd"
+#		Interface "eth0"
+#	</Listen>
+#	MaxPacketSize 1024
+#
+#	# proxy setup (client and server as above):
+#	Forward true
+#
+#	# statistics about the network plugin itself
+#	ReportStats false
+#
+#	# "garbage collection"
+#	CacheFlush 1800
+#</Plugin>
+
+#<Plugin nginx>
+#	URL "http://localhost/status?auto"
+#	User "www-user"
+#	Password "secret"
+#	VerifyPeer false
+#	VerifyHost false
+#	CACert "/etc/ssl/ca.crt"
+#</Plugin>
+
+#<Plugin notify_desktop>
+#	OkayTimeout 1000
+#	WarningTimeout 5000
+#	FailureTimeout 0
+#</Plugin>
+
+#<Plugin notify_email>
+#	SMTPServer "localhost"
+#	SMTPPort 25
+#	SMTPUser "my-username"
+#	SMTPPassword "my-password"
+#	From "collectd@main0server.com"
+#	# <WARNING/FAILURE/OK> on <hostname>.
+#	# Beware! Do not use not more than two placeholders (%)!
+#	Subject "[collectd] %s on %s!"
+#	Recipient "email1@domain1.net"
+#	Recipient "email2@domain2.com"
+#</Plugin>
+
+#<Plugin ntpd>
+#	Host "localhost"
+#	Port 123
+#	ReverseLookups false
+#</Plugin>
+
+#<Plugin nut>
+#	UPS "upsname@hostname:port"
+#</Plugin>
+
+#<Plugin olsrd>
+#	Host "127.0.0.1"
+#	Port "2006"
+#	CollectLinks "Summary"
+#	CollectRoutes "Summary"
+#	CollectTopology "Summary"
+#</Plugin>
+
+#<Plugin openvpn>
+#	StatusFile "/etc/openvpn/openvpn-status.log"
+#	ImprovedNamingSchema false
+#	CollectCompression true
+#	CollectIndividualUsers true
+#	CollectUserCount false
+#</Plugin>
+
+#<Plugin perl>
+#	IncludeDir "/my/include/path"
+#	BaseName "Collectd::Plugins"
+#	EnableDebugger ""
+#	LoadPlugin Monitorus
+#	LoadPlugin OpenVZ
+#
+#	<Plugin foo>
+#		Foo "Bar"
+#		Qux "Baz"
+#	</Plugin>
+#</Plugin>
+
+#<Plugin pinba>
+#	Address "::0"
+#	Port "30002"
+#	<View "name">
+#		Host "host name"
+#		Server "server name"
+#		Script "script name"
+#	<View>
+#</Plugin>
+
+#<Plugin ping>
+#	Host "host.foo.bar"
+#	Host "host.baz.qux"
+#	Interval 1.0
+#	Timeout 0.9
+#	TTL 255
+#	SourceAddress "1.2.3.4"
+#	Device "eth0"
+#	MaxMissed -1
+#</Plugin>
+
+#<Plugin postgresql>
+#	<Query magic>
+#		Statement "SELECT magic FROM wizard WHERE host = $1;"
+#		Param hostname
+#
+#		<Result>
+#			Type gauge
+#			InstancePrefix "magic"
+#			ValuesFrom "magic"
+#		</Result>
+#	</Query>
+#
+#	<Query rt36_tickets>
+#		Statement "SELECT COUNT(type) AS count, type \
+#		                  FROM (SELECT CASE \
+#		                               WHEN resolved = 'epoch' THEN 'open' \
+#		                               ELSE 'resolved' END AS type \
+#		                               FROM tickets) type \
+#		                  GROUP BY type;"
+#
+#		<Result>
+#			Type counter
+#			InstancePrefix "rt36_tickets"
+#			InstancesFrom "type"
+#			ValuesFrom "count"
+#		</Result>
+#	</Query>
+#
+#	<Database foo>
+#		Host "hostname"
+#		Port 5432
+#		User "username"
+#		Password "secret"
+#
+#		SSLMode "prefer"
+#		KRBSrvName "kerberos_service_name"
+#
+#		Query magic
+#	</Database>
+#
+#	<Database bar>
+#		Interval 60
+#		Service "service_name"
+#
+#		Query backend # predefined
+#		Query rt36_tickets
+#	</Database>
+#</Plugin>
+
+#<Plugin powerdns>
+#	<Server "server_name">
+#		Collect "latency"
+#		Collect "udp-answers" "udp-queries"
+#		Socket "/var/run/pdns.controlsocket"
+#	</Server>
+#	<Recursor "recursor_name">
+#		Collect "questions"
+#		Collect "cache-hits" "cache-misses"
+#		Socket "/var/run/pdns_recursor.controlsocket"
+#	</Recursor>
+#	LocalSocket "/opt/collectd/var/run/collectd-powerdns"
+#</Plugin>
+
+#<Plugin processes>
+#	Process "name"
+#	ProcessMatch "foobar" "/usr/bin/perl foobar\\.pl.*"
+#</Plugin>
+
+#<Plugin protocols>
+#	Value "/^Tcp:/"
+#	IgnoreSelected false
+#</Plugin>
+
+#<Plugin python>
+#	ModulePath "/path/to/your/python/modules"
+#	LogTraces true
+#	Interactive true
+#	Import "spam"
+#
+#	<Module spam>
+#		spam "wonderful" "lovely"
+#	</Module>
+#</Plugin>
+
+#<Plugin rrdcached>
+#	DaemonAddress "unix:/var/run/rrdcached.sock"
+#	DataDir "/var/lib/rrdcached/db/collectd"
+#	CreateFiles true
+#	CollectStatistics true
+#</Plugin>
+
+<Plugin rrdtool>
+	DataDir "/var/lib/collectd/rrd"
+#	CacheTimeout 120
+#	CacheFlush 900
+#	WritesPerSecond 30
+#	RandomTimeout 0
+#
+# The following settings are rather advanced
+# and should usually not be touched:
+#	StepSize 10
+#	HeartBeat 20
+#	RRARows 1200
+#	RRATimespan 158112000
+#	XFF 0.1
+</Plugin>
+
+#<Plugin sensors>
+#	Sensor "it8712-isa-0290/temperature-temp1"
+#	Sensor "it8712-isa-0290/fanspeed-fan3"
+#	Sensor "it8712-isa-0290/voltage-in8"
+#	IgnoreSelected false
+#</Plugin>
+
+# See /usr/share/doc/collectd/examples/snmp-data.conf.gz for a
+# comprehensive sample configuration.
+#<Plugin snmp>
+#	<Data "powerplus_voltge_input">
+#		Type "voltage"
+#		Table false
+#		Instance "input_line1"
+#		Scale 0.1
+#		Values "SNMPv2-SMI::enterprises.6050.5.4.1.1.2.1"
+#	</Data>
+#	<Data "hr_users">
+#		Type "users"
+#		Table false
+#		Instance ""
+#		Shift -1
+#		Values "HOST-RESOURCES-MIB::hrSystemNumUsers.0"
+#	</Data>
+#	<Data "std_traffic">
+#		Type "if_octets"
+#		Table true
+#		InstancePrefix "traffic"
+#		Instance "IF-MIB::ifDescr"
+#		Values "IF-MIB::ifInOctets" "IF-MIB::ifOutOctets"
+#	</Data>
+#
+#	<Host "some.switch.mydomain.org">
+#		Address "192.168.0.2"
+#		Version 1
+#		Community "community_string"
+#		Collect "std_traffic"
+#		Inverval 120
+#	</Host>
+#	<Host "some.server.mydomain.org">
+#		Address "192.168.0.42"
+#		Version 2
+#		Community "another_string"
+#		Collect "std_traffic" "hr_users"
+#	</Host>
+#	<Host "some.ups.mydomain.org">
+#		Address "192.168.0.3"
+#		Version 1
+#		Community "more_communities"
+#		Collect "powerplus_voltge_input"
+#		Interval 300
+#	</Host>
+#</Plugin>
+
+#<Plugin table>
+#	<Table "/proc/slabinfo">
+#		Instance "slabinfo"
+#		Separator " "
+#		<Result>
+#			Type gauge
+#			InstancePrefix "active_objs"
+#			InstancesFrom 0
+#			ValuesFrom 1
+#		</Result>
+#		<Result>
+#			Type gauge
+#			InstancePrefix "objperslab"
+#			InstancesFrom 0
+#			ValuesFrom 4
+#		</Result>
+#	</Table>
+#</Plugin>
+
+#<Plugin "tail">
+#	<File "/var/log/exim4/mainlog">
+#		Instance "exim"
+#		<Match>
+#			Regex "S=([1-9][0-9]*)"
+#			DSType "CounterAdd"
+#			Type "ipt_bytes"
+#			Instance "total"
+#		</Match>
+#		<Match>
+#			Regex "\\<R=local_user\\>"
+#			ExcludeRegex "\\<R=local_user\\>.*mail_spool defer"
+#			DSType "CounterInc"
+#			Type "counter"
+#			Instance "local_user"
+#		</Match>
+#	</File>
+#</Plugin>
+
+#<Plugin tcpconns>
+#	ListeningPorts false
+#	LocalPort "25"
+#	RemotePort "25"
+#</Plugin>
+
+#<Plugin teamspeak2>
+#	Host "127.0.0.1"
+#	Port "51234"
+#	Server "8767"
+#</Plugin>
+
+#<Plugin ted>
+#	Device "/dev/ttyUSB0"
+#	Retries 0
+#</Plugin>
+
+#<Plugin thermal>
+#	ForceUseProcfs false
+#	Device "THRM"
+#	IgnoreSelected false
+#</Plugin>
+
+#<Plugin tokyotyrant>
+#	Host "localhost"
+#	Port "1978"
+#</Plugin>
+
+#<Plugin unixsock>
+#	SocketFile "/var/run/collectd-unixsock"
+#	SocketGroup "collectd"
+#	SocketPerms "0660"
+#</Plugin>
+
+#<Plugin uuid>
+#	UUIDFile "/etc/uuid"
+#</Plugin>
+
+#<Plugin vmem>
+#	Verbose false
+#</Plugin>
+
+#<Plugin write_http>
+#	<URL "http://example.com/collectd-post">
+#		User "collectd"
+#		Password "secret"
+#		VerifyPeer true
+#		VerifyHost true
+#		CACert "/etc/ssl/ca.crt"
+#		Format "Command"
+#		StoreRates false
+#	</URL>
+#</Plugin>
+
+Include "/etc/collectd/filters.conf"
+Include "/etc/collectd/thresholds.conf"
+
--- collectd-4.10.1.orig/debian/collectd-core.templates
+++ collectd-4.10.1/debian/collectd-core.templates
@@ -0,0 +1,26 @@
+Template: collectd/migration-3-4
+Type: note
+_Description: Layout of RRD files has changed
+ The layout of the RRD files created by collectd has changed significantly
+ since version 3.x. In order to keep your old data you have to migrate it.
+ This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px.
+ .
+ This step requires both the perl and the rrdtool packages to be installed,
+ which is currently not the case. You need to perform the migration manually.
+ .
+ See /usr/share/doc/collectd-core/NEWS.Debian for details.
+
+Template: collectd/auto-migrate-3-4
+Type: boolean
+Default: false
+_Description: Automatically try to migrate your RRD files?
+ The layout of the RRD files created by collectd has changed significantly
+ since version 3.x. In order to keep your old data you have to migrate it.
+ This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px.
+ .
+ This step can be done automatically. In this case a backup of
+ /var/lib/collectd/ is made in /var/backups/. This script is still
+ experimental, though. Do not expect it to work in all cases.
+ .
+ See /usr/share/doc/collectd-core/NEWS.Debian for details.
+
--- collectd-4.10.1.orig/debian/collectd-core.postinst
+++ collectd-4.10.1/debian/collectd-core.postinst
@@ -0,0 +1,63 @@
+#! /bin/sh
+# postinst script for collectd
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <postinst> `abort-remove'
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+. /usr/share/debconf/confmodule
+
+case "$1" in
+    configure)
+        db_get collectd/auto-migrate-3-4
+        if [ "$RET" = "true" ]; then
+            tmpdir=`mktemp -dt collectd.XXXXXXXXXX`
+            hostname=`hostname`
+
+            if [ -z "$hostname" ]; then hostname="localhost"; fi
+
+            cp -a /var/lib/collectd/ /var/backups/collectd-"$2"
+            /usr/lib/collectd/utils/migrate-3-4.px \
+                --hostname="$hostname" --outdir="$tmpdir" | bash
+
+            rm -rf /var/lib/collectd/
+            mkdir /var/lib/collectd/
+            mv $tmpdir /var/lib/collectd/rrd
+            chmod 0755 /var/lib/collectd/rrd
+
+            # this is only available on Solaris using libkstat
+            rm -f /var/lib/collectd/rrd/$hostname/swap/swap-reserved.rrd
+        fi
+    ;;
+
+    abort-upgrade|abort-remove|abort-deconfigure)
+    ;;
+
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+db_stop
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
--- collectd-4.10.1.orig/debian/collection.conf
+++ collectd-4.10.1/debian/collection.conf
@@ -0,0 +1,3 @@
+datadir: "/var/lib/collectd/rrd/"
+libdir: "/usr/lib/collectd/"
+
--- collectd-4.10.1.orig/debian/libcollectdclient-dev.install
+++ collectd-4.10.1/debian/libcollectdclient-dev.install
@@ -0,0 +1,5 @@
+usr/include/collectd/client.h usr/include/collectd
+usr/include/collectd/lcc_features.h usr/include/collectd
+usr/lib/pkgconfig/libcollectdclient.pc
+usr/lib/libcollectdclient.so
+
--- collectd-4.10.1.orig/debian/watch
+++ collectd-4.10.1/debian/watch
@@ -0,0 +1,5 @@
+version=3
+
+opts="uversionmangle=s/beta/~beta/;s/[-.]rc/~rc/" \
+http://collectd.org/files/ collectd-(.*)\.tar\.gz
+
--- collectd-4.10.1.orig/debian/libcollectdclient0.install
+++ collectd-4.10.1/debian/libcollectdclient0.install
@@ -0,0 +1,2 @@
+usr/lib/libcollectdclient.so.*
+
--- collectd-4.10.1.orig/debian/collectd-core.collectd.init.d
+++ collectd-4.10.1/debian/collectd-core.collectd.init.d
@@ -0,0 +1,178 @@
+#! /bin/bash
+#
+# collectd - start and stop the statistics collection daemon
+# http://collectd.org/
+#
+# Copyright (C) 2005-2006 Florian Forster <octo@verplant.org>
+# Copyright (C) 2006-2009 Sebastian Harl <tokkee@debian.org>
+#
+
+### BEGIN INIT INFO
+# Provides:          collectd
+# Required-Start:    $local_fs $remote_fs
+# Required-Stop:     $local_fs $remote_fs
+# Should-Start:      $network $named $syslog $time
+# Should-Stop:       $network $named $syslog
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: start the statistics collection daemon
+### END INIT INFO
+
+set -e
+
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
+
+DISABLE=0
+
+DESC="statistics collection and monitoring daemon"
+NAME=collectd
+DAEMON=/usr/sbin/collectd
+
+CONFIGFILE=/etc/collectd/collectd.conf
+PIDFILE=/var/run/collectd.pid
+
+USE_COLLECTDMON=1
+COLLECTDMON_DAEMON=/usr/sbin/collectdmon
+COLLECTDMON_PIDFILE=/var/run/collectdmon.pid
+
+MAXWAIT=30
+
+# Gracefully exit if the package has been removed.
+test -x $DAEMON || exit 0
+
+if [ -r /etc/default/$NAME ]; then
+	. /etc/default/$NAME
+fi
+
+if test "$DISABLE" != 0 -a "$1" == "start"; then
+	echo "$NAME has been disabled - see /etc/default/$NAME."
+	exit 0
+fi
+
+if test ! -e "$CONFIGFILE" -a "$1" == "start"; then
+	echo "Not starting $NAME - no configuration ($CONFIGFILE) found."
+	exit 0
+fi
+
+if test "$ENABLE_COREFILES" == 1; then
+	ulimit -c unlimited
+fi
+
+if test "$USE_COLLECTDMON" == 1; then
+	_PIDFILE="$COLLECTDMON_PIDFILE"
+else
+	_PIDFILE="$PIDFILE"
+fi
+
+check_config() {
+	if ! $DAEMON -t -C "$CONFIGFILE"; then
+		if test -n "$1"; then
+			echo "$1" >&2
+		fi
+		exit 1
+	fi
+}
+
+d_start() {
+	if test "$DISABLE" != 0; then
+		# we get here during restart
+		echo -n " - disabled by /etc/default/$NAME"
+		return 0
+	fi
+
+	if test ! -e "$CONFIGFILE"; then
+		# we get here during restart
+		echo -n " - no configuration ($CONFIGFILE) found."
+		return 0
+	fi
+
+	check_config
+
+	if test "$USE_COLLECTDMON" == 1; then
+		start-stop-daemon --start --quiet --oknodo --pidfile "$_PIDFILE" \
+			--exec $COLLECTDMON_DAEMON -- -P "$_PIDFILE" -- -C "$CONFIGFILE"
+	else
+		start-stop-daemon --start --quiet --oknodo --pidfile "$_PIDFILE" \
+			--exec $DAEMON -- -C "$CONFIGFILE" -P "$_PIDFILE"
+	fi
+}
+
+still_running_warning="
+WARNING: $NAME might still be running.
+In large setups it might take some time to write all pending data to
+the disk. You can adjust the waiting time in /etc/default/collectd."
+
+d_stop() {
+	PID=$( cat "$_PIDFILE" 2> /dev/null ) || true
+
+	start-stop-daemon --stop --quiet --oknodo --pidfile "$_PIDFILE"
+
+	sleep 1
+	if test -n "$PID" && kill -0 $PID 2> /dev/null; then
+		i=0
+		while kill -0 $PID 2> /dev/null; do
+			i=$(( $i + 2 ))
+			echo -n " ."
+
+			if test $i -gt $MAXWAIT; then
+				echo "$still_running_warning" >&2
+				return 1
+			fi
+
+			sleep 2
+		done
+		return 0
+	fi
+}
+
+d_status() {
+	PID=$( cat "$_PIDFILE" 2> /dev/null ) || true
+
+	if test -n "$PID" && kill -0 $PID 2> /dev/null; then
+		echo "collectd ($PID) is running."
+		exit 0
+	else
+		PID=$( pidof collectd ) || true
+
+		if test -n "$PID"; then
+			echo "collectd ($PID) is running."
+			exit 0
+		else
+			echo "collectd is stopped."
+		fi
+	fi
+	exit 1
+}
+
+case "$1" in
+	start)
+		echo -n "Starting $DESC: $NAME"
+		d_start
+		echo "."
+		;;
+	stop)
+		echo -n "Stopping $DESC: $NAME"
+		d_stop
+		echo "."
+		;;
+	status)
+		d_status
+		;;
+	restart|force-reload)
+		echo -n "Restarting $DESC: $NAME"
+		check_config "Not restarting collectd."
+		d_stop
+		sleep 1
+		d_start
+		echo "."
+		;;
+	*)
+		echo "Usage: $0 {start|stop|restart|force-reload|status}" >&2
+		exit 1
+		;;
+esac
+
+exit 0
+
+# vim: syntax=sh noexpandtab sw=4 ts=4 :
+
--- collectd-4.10.1.orig/debian/collectd-core.overrides
+++ collectd-4.10.1/debian/collectd-core.overrides
@@ -0,0 +1,14 @@
+# This is only done on architectures that support it.
+collectd-core: shlib-with-non-pic-code usr/lib/collectd/netlink.so
+
+# All plugin names are spelled in lower-case.
+collectd-core: capitalization-error-in-description apache Apache
+collectd-core: capitalization-error-in-description mysql MySQL
+collectd-core: capitalization-error-in-description postgresql PostgreSQL
+collectd-core: capitalization-error-in-description python Python
+
+# The "java" plugin uses libjvm.so which can only be found in a non-standard
+# directory. According to the Java guys the path name and the ABI is stable
+# though ...
+collectd-core: binary-or-shlib-defines-rpath ./usr/lib/collectd/java.so /usr/lib/jvm/java-6-openjdk/jre/lib/*
+
--- collectd-4.10.1.orig/debian/collectd-dev.install
+++ collectd-4.10.1/debian/collectd-dev.install
@@ -0,0 +1,3 @@
+src/liboconfig/oconfig.h usr/include/collectd/liboconfig
+src/*.h usr/include/collectd
+
--- collectd-4.10.1.orig/debian/NEWS.Debian
+++ collectd-4.10.1/debian/NEWS.Debian
@@ -0,0 +1,55 @@
+collectd (4.2.0-1) experimental; urgency=low
+
+  Prior to this version any plugin that has dependencies other than libc6 got
+  its own binary package. As the number of such packages was getting quite big
+  they have been merged into the "collectd" binary package and all plugin
+  dependencies were added as recommendations. See
+  /usr/share/doc/collectd-core/README.Debian.plugins for details.
+
+ -- Sebastian Harl <sh@tokkee.org>  Sun, 28 Oct 2007 13:38:21 +0100
+
+collectd (4.0.2-1) experimental; urgency=low
+
+  This version introduces significant changes to the layout of the RRD files
+  created by collectd. In order to keep your old data you have to migrate it.
+  This can be done by using /usr/lib/collectd/utils/migrate-3-4.px. This
+  script will output a series of shell commands that should do all the work
+  automatically. However, depending on your setup, a couple of minor changes
+  might be necessary to migrate all of your data. In this case, please file a
+  bug report so that the necessary changes can be added to the script. The
+  script creates the new RRD files in /tmp/collectd-4/ which can be moved to
+  /var/lib/collectd/rrd/ if everything went right.
+
+  Thus, the migration can be done like this (you might want to backup your
+  data before):
+
+    /usr/lib/collectd/utils/migrate-3-4.px | bash
+    rm -rf /var/lib/collectd
+    mkdir /var/lib/collectd
+    mv /tmp/collectd-4 /var/lib/collectd/rrd
+
+  Thanks to the new plugin infrastructure, the functionality to write RRD and
+  CSV files and the logging and networking facilities could be removed from
+  collectd's core and put into separate plugins, allowing more flexible
+  configurations. To get the behavior of collectd 3.x you have to enable the
+  "rrdtool" and "syslog" plugins (enabled by default) and enable and configure
+  the network plugin. See collectd.conf(5) for details.
+
+  This also means that a single configuration file is sufficient and there are
+  no longer any different modes that need to be configured. The init script
+  does no longer start one collectd process for each config file found in
+  /etc/collectd/ but only for collectd.conf.
+
+  Additionally, the syntax of the configuration file has changed slightly. All
+  strings need to be surrounded by double quotes. See collectd.conf(5) for
+  details.
+
+  Please note that there is no longer the need to load any plugins on the
+  server side just to be able to save values submitted by clients. All
+  required information are automatically loaded by collectd. You only need to
+  load plugins which are supposed to collect data locally.
+
+  See also: http://collectd.org/migrate-v3-v4.shtml
+
+ -- Sebastian Harl <sh@tokkee.org>  Thu,  7 Jun 2007 17:36:58 +0200
+
--- collectd-4.10.1.orig/debian/collectd.links
+++ collectd-4.10.1/debian/collectd.links
@@ -0,0 +1,2 @@
+usr/share/doc/collectd-core/examples/ usr/share/doc/collectd/examples
+
--- collectd-4.10.1.orig/debian/thresholds.conf
+++ collectd-4.10.1/debian/thresholds.conf
@@ -0,0 +1,55 @@
+# Threshold configuration for collectd(1).
+#
+# See the section "THRESHOLD CONFIGURATION" in collectd.conf(5) for details.
+
+#<Threshold>
+#	<Type "counter">
+#		WarningMin 0.00
+#		WarningMax 1000.00
+#		FailureMin 0
+#		FailureMax 1200.00
+#		Invert false
+#		Persist false
+#		Instance "some_instance"
+#	</Type>
+#
+#	<Type "df">
+#		WarningMax 90
+#		Percentage true
+#	</Type>
+#
+#	<Type "load">
+#		DataSource "midterm"
+#		WarningMax 1
+#		Hysteresis 0.3
+#	</Type>
+#
+#	<Type "cpu">
+#		Instance "user"
+#		WarningMax 85
+#		Hits 6
+#	</Type>
+#
+#	<Plugin "interface">
+#		Instance "eth0"
+#		<Type "if_octets">
+#			DataSource "rx"
+#			FailureMax 10000000
+#		</Type>
+#	</Plugin>
+#
+#	<Host "hostname">
+#		<Type "cpu">
+#			Instance "idle"
+#			FailureMin 10
+#		</Type>
+#
+#		<Plugin "memory">
+#			<Type "memory">
+#				Instance "cached"
+#				WarningMin 100000000
+#			</Type>
+#		</Plugin>
+#	</Host>
+#</Threshold>
+
--- collectd-4.10.1.orig/debian/collectd.install
+++ collectd-4.10.1/debian/collectd.install
@@ -0,0 +1,2 @@
+../collectd.conf etc/collectd/
+../thresholds.conf ../filters.conf etc/collectd/
--- collectd-4.10.1.orig/debian/control
+++ collectd-4.10.1/debian/control
@@ -0,0 +1,254 @@
+Source: collectd
+Section: utils
+Priority: optional
+Maintainer: Sebastian Harl <tokkee@debian.org>
+Build-Depends: debhelper (>= 5), dpkg-dev (>= 1.14.10), po-debconf, dpatch,
+ bison, flex, autotools-dev, libltdl-dev, pkg-config,
+ iproute-dev [!alpha !amd64 !hppa !ia64 !ppc64 !mips !mipsel !kfreebsd-i386 !kfreebsd-amd64],
+ iptables-dev (>= 1.4.3.2-2) [!kfreebsd-i386 !kfreebsd-amd64],
+ libcurl4-gnutls-dev (>= 7.18.2-5) | libcurl4-gnutls-dev (<= 7.18.2-1) | libcurl3-gnutls-dev,
+ libdbi0-dev,
+ libesmtp-dev,
+ libganglia1-dev (>= 3) [!kfreebsd-i386 !kfreebsd-amd64],
+ libgcrypt11-dev,
+ libglib2.0-dev,
+ libhal-dev,
+ libmemcached-dev,
+ libmysqlclient-dev,
+ libnotify-dev,
+ libopenipmi-dev,
+ liboping-dev (>= 0.3.3),
+ libpcap0.8-dev | libpcap-dev,
+ libperl-dev,
+ libpq-dev,
+ libprotobuf-c0-dev,
+ librrd-dev (>= 1.4~),
+ libsensors4-dev [!kfreebsd-i386 !kfreebsd-amd64],
+# libsnmp-dev (>= 5.4.2.1~dfsg-4~) | (libsnmp-dev & perl (<< 5.10.1~rc2-1~))
+ libsnmp-dev (>= 5.4.2.1~dfsg-4~) | libsnmp-dev | libsnmp9-dev,
+ libsnmp-dev (>= 5.4.2.1~dfsg-4~) | perl (<< 5.10.1~rc2-1~),
+ libtokyocabinet-dev [!kfreebsd-i386 !kfreebsd-amd64],
+ libtokyotyrant-dev [!kfreebsd-i386 !kfreebsd-amd64],
+ libupsclient1-dev,
+ libvirt-dev (>= 0.4.0-6) [!kfreebsd-i386 !kfreebsd-amd64],
+ libxml2-dev,
+ libyajl-dev,
+ linux-libc-dev (>= 2.6.25-4) [!kfreebsd-i386 !kfreebsd-amd64] | linux-libc-dev (<< 2.6.25-1) [!kfreebsd-i386 !kfreebsd-amd64],
+ openjdk-6-jdk [!hppa !kfreebsd-i386 !kfreebsd-amd64],
+ protobuf-c-compiler,
+ python-dev
+Build-Conflicts: libpthread-dev
+Standards-Version: 3.9.1
+Homepage: http://collectd.org/
+Vcs-Git: git://git.tokkee.org/pkg-collectd.git
+Vcs-Browser: http://git.tokkee.org/?p=pkg-collectd.git
+
+Package: collectd-core
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Recommends: perl, rrdtool
+Suggests: collectd-dev,
+# collection.cgi / collection3 dependencies
+ librrds-perl, liburi-perl, libhtml-parser-perl, libregexp-common-perl,
+ libconfig-general-perl, httpd-cgi,
+# services providing data that may be collected by collectd
+ apache2, apcupsd, bind9, hddtemp, iptables, ipvsadm, lm-sensors, mbmon,
+ memcached, mysql-server, nginx, notification-daemon, nut, openvpn, olsrd,
+ pdns-server, postgresql, time-daemon,
+ ${shlibs:Suggests}
+Replaces: collectd (<< 4.8.2-1~)
+Description: statistics collection and monitoring daemon (core system)
+ collectd is a small daemon which collects system information periodically and
+ provides mechanisms to monitor and store the values in a variety of ways.
+ Since the daemon doesn't need to startup every time it wants to update the
+ values it's very fast and easy on the system. Also, the statistics are very
+ fine grained since the files are updated every 10 seconds by default.
+ .
+ The collected information can be used to find current performance bottlenecks
+ (performance analysis) and predict future system load (capacity planning).
+ .
+ This package contains the main program file and the plugins listed below (some
+ of those plugins require additional libraries - for more details see
+ /usr/share/doc/collectd-core/README.Debian.plugins) but no configuration. For
+ a full installation (including configuration), see the "collectd" package.
+ This package allows sites to, e.g., provide customizations (like a custom
+ default configuration) on top of it without having to modify the "collectd"
+ package.
+ .
+   * Apache and lighttpd statistics provided by mod_status: apache
+   * APC UPS's charge, load, input/output/battery voltage, etc.: apcups
+   * Ascent server statistics: ascent
+   * battery status: battery
+   * bind9 name-server and zone statistics: bind
+   * connection tracking table size: conntrack
+   * number of context switches done by the operating system: contextswitch
+   * CPU utilization: cpu
+   * CPU frequency: cpufreq
+   * output to comma separated values (CSV) files: csv
+   * parse statistics from websites: curl
+   * parse JSON files: curl_json
+   * parse XML data: curl_xml
+   * query data from a relational database: dbi
+   * disk space usage: df
+   * disk and partition throughput: disk
+   * DNS traffic information: dns
+   * E-Mail statistics (count, traffic, spam scores and checks): email
+   * amount of available entropy: entropy
+   * execution of external programs: exec
+   * count the number of files in directories: filecount
+   * Linux file-system based caching framework statistics: fscache
+   * query data from Java processes using JMX: GenericJMX (Java based plugin)
+   * Receive and interpret Ganglia multicast traffic: gmond
+   * harddisk temperature: hddtemp
+   * network traffic: interface
+   * IPMI sensors information: ipmi
+   * iptables statistics: iptables
+   * IPVS connection statistics: ipvs
+   * IRQ counters: irq
+   * embedded Java Virtual Machine: java
+   * CPU, disk, network statistics of guest systems: libvirt
+   * system load averages: load
+   * logging to files, STDOUT and STDERR: logfile
+   * Atheros wireless LAN chipset statistics: madwifi
+   * motherboard monitor: mbmon
+   * Query and parse data from a memcache daemon: memcachec
+   * statistics of the memcached distributed caching system: memcached
+   * memory usage: memory
+   * statistics from mon.itor.us: Monitorus (Perl based plugin)
+   * multimeter statistics: multimeter
+   * MySQL statistics provided by MySQL's "show status" command: mysql
+   * detailed Linux network interface and routing statistics: netlink
+   * IO via the network: network
+   * NFS utilization: nfs
+   * Nginx (a HTTP and E-Mail server/proxy) statistics: nginx
+   * send desktop notifications to a notification daemon: notify_desktop
+   * send notification E-mails: notify_email
+   * NTP daemon's local clock drift, offset to peers, etc.: ntpd
+   * UPS information: nut
+   * Optimized Link State Routing daemon statistics: olsrd
+   * OpenVPN traffic and compression statistics: openvpn
+   * OpenVZ statistics: OpenVZ (Perl based plugin)
+   * embedded Perl interpreter: perl
+   * timing values from Pinba: pinba
+   * network latency statistics: ping
+   * PostgreSQL database statistics: postgresql
+   * PowerDNS name server statistics: powerdns
+   * number of processes: processes
+   * information about network protocols: protocols
+   * embedded Python interpreter: python
+   * write data via the RRD accelerator daemon: rrdcached
+   * output to RRD files: rrdtool
+   * lm_sensors information (e.g. CPU temperature, fan speeds): sensors
+   * serial port traffic: serial
+   * values from SNMP enabled network devices: snmp
+   * swap usage: swap
+   * logging to syslog: syslog
+   * parse table-like structured files: table
+   * incremental parsing of logfiles: tail
+   * number of TCP connections to specific ports: tcpconns
+   * TeamSpeak2 server statistics: teamspeak2
+   * power consumption measurements from "The Energy Detective" (TED): ted
+   * Linux ACPI thermal zone information: thermal
+   * Tokyo Tyrant server statistics: tokyotyrant
+   * external runtime interface: unixsock
+   * system uptime: uptime
+   * number of users logged into the system: users
+   * set the hostname to an unique identifier: uuid
+   * detailed virtual memory statistics: vmem
+   * system resources used by Linux-VServers: vserver
+   * wireless network stats: wireless
+   * send collected values to a web-server: write_http
+
+Package: collectd
+Architecture: any
+Depends: collectd-core, ${shlibs:Depends}, ${misc:Depends}
+Recommends: ${shlibs:Recommends}
+Description: statistics collection and monitoring daemon
+ collectd is a small daemon which collects system information periodically and
+ provides mechanisms to monitor and store the values in a variety of ways.
+ Since the daemon doesn't need to startup every time it wants to update the
+ values it's very fast and easy on the system. Also, the statistics are very
+ fine grained since the files are updated every 10 seconds by default.
+ .
+ The collected information can be used to find current performance bottlenecks
+ (performance analysis) and predict future system load (capacity planning).
+ .
+ This package provides a full installation of the daemon, including the
+ configuration. For the core system, see the "collectd-core" package, which
+ allows sites to, e.g., provide customizations (like a custom default
+ configuration) on top of it without having to modify the "collectd" package.
+
+Package: collectd-utils
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Recommends: collectd
+Suggests: nagios3 | nagios2
+Replaces: collectd (<< 4.6.1-1~)
+Description: statistics collection and monitoring daemon (utilities)
+ collectd is a small daemon which collects system information periodically and
+ provides mechanisms to monitor and store the values in a variety of ways.
+ Since the daemon doesn't need to startup every time it wants to update the
+ values it's very fast and easy on the system. Also, the statistics are very
+ fine grained since the files are updated every 10 seconds by default.
+ .
+ This package contains the following utility:
+ .
+   * collectd-nagios: Nagios plugin for querying collectd
+
+Package: collectd-dbg
+Section: debug
+Architecture: any
+Priority: extra
+Depends: collectd-core (= ${binary:Version}), ${misc:Depends}
+Recommends: collectd-utils (= ${binary:Version}),
+ libcollectdclient0 (= ${binary:Version})
+Description: statistics collection and monitoring daemon (debugging symbols)
+ collectd is a small daemon which collects system information periodically and
+ provides mechanisms to monitor and store the values in a variety of ways.
+ Since the daemon doesn't need to startup every time it wants to update the
+ values it's very fast and easy on the system. Also, the statistics are very
+ fine grained since the files are updated every 10 seconds by default.
+ .
+ This package contains the debugging symbols.
+
+Package: collectd-dev
+Architecture: all
+Depends: collectd-core (>= ${source:Version}), collectd-core (<< 4.11~),
+ ${misc:Depends}
+Description: statistics collection and monitoring daemon (development files)
+ collectd is a small daemon which collects system information periodically and
+ provides mechanisms to monitor and store the values in a variety of ways.
+ Since the daemon doesn't need to startup every time it wants to update the
+ values it's very fast and easy on the system. Also, the statistics are very
+ fine grained since the files are updated every 10 seconds by default.
+ .
+ This package contains the development files needed to create your own
+ plugins.
+
+Package: libcollectdclient-dev
+Section: libdevel
+Architecture: any
+Depends: libcollectdclient0 (= ${binary:Version}), ${misc:Depends}
+Description: client library for collectd's control interface (development files)
+ libcollectdclient provides an API to access the control interface provided by
+ the unixsock plugin of collectd, a statistics collection and monitoring
+ daemon. It can be used to access values collected by collectd or dispatch new
+ values and notifications to the daemon. This allows for integration with
+ other applications such as monitoring solutions.
+ .
+ This package contains the header files and the static library.
+
+Package: libcollectdclient0
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Recommends: collectd
+Description: client library for collectd's control interface
+ libcollectdclient provides an API to access the control interface provided by
+ the unixsock plugin of collectd, a statistics collection and monitoring
+ daemon. It can be used to access values collected by collectd or dispatch new
+ values and notifications to the daemon. This allows for integration with
+ other applications such as monitoring solutions.
+ .
+ This package contains the shared library.
+
--- collectd-4.10.1.orig/debian/README.Debian
+++ collectd-4.10.1/debian/README.Debian
@@ -0,0 +1,165 @@
+collectd on Debian
+==================
+
+General notes:
+--------------
+
+- Some plugins require additional libraries. To prevent you from having to
+  install dozens of further packages that you don't actually need, there is no
+  strict dependency on those libraries. Rather, they are listed as recommenda-
+  tions ("collectd" package) or suggestions ("collectd-core" package"). See
+  /usr/share/doc/collectd-core/README.Debian.plugins for details.
+
+- The main components of collectd have been split into two packages:
+
+  * "collectd-core":
+    This package contains the main program file and the plugins but no config-
+    uration. It allows sites to, e.g., provide customizations on top of it
+    without having to modify the "collectd" package. For example, a custom
+    configuration and appropriate dependencies may be provided by some package
+    depending on "collectd-core" and conflicting / replacing / providing
+    "collectd". Ready-to-use sample config files (collectd.conf, filters.conf,
+    thresholds.conf) are available in /usr/share/doc/collectd-core/examples/.
+
+  * "collectd":
+    This package provides a full installation of the daemon, including a
+    configuration. It is meant to be ready to use for simple setups or first
+    steps.
+
+Configuring collectd:
+---------------------
+
+- See collectd.conf(5) for details about configuring collectd.
+
+Access the collected data:
+--------------------------
+
+collectd is able to write data to CSV (comma separated list) and RRD (round
+robin database - see http://oss.oetiker.ch/rrdtool/) files. However it does
+not create graphs from these files. This package contains two sample scripts
+in /usr/share/doc/collectd/examples/ which can be used for this purpose. They
+are meant to be a starting point for your own experiments - more sophisticated
+solutions are welcome.
+
+- collectd2html.pl: This script by Vincent Stehlé will search for RRD files in
+  "/var/lib/collectd/" and generate a static HTML file and a directory
+  containing several PNG files which are graphs of the RRD files found.
+
+- collection.cgi: Sample CGI script that creates graphs on the fly. The Perl
+  modules "RRDs" (package librrds-perl), "URI:Escape" (package liburi-perl),
+  "HTML::Entities" (package libhtml-parser-perl) and a CGI capable web server
+  (e.g. apache2 or boa) are required for this script to run. Simply install
+  the (gunzip'ed) script to a place where the webserver will treat it as a CGI
+  script (/usr/lib/cgi-bin/ by default) and visit that page in a browser
+  (http://localhost/cgi-bin/collection.cgi by default). Please refer to your
+  webserver's documentation for more details.
+
+  collection.cgi requires a small config file, which is installed to
+  /etc/collectd/collection.conf. You should not need to change anything there.
+
+- collection3: A graphing front-end for the RRD files created by and filled
+  with collectd. See /usr/share/doc/collectd/examples/collection3/README for
+  details. This is a successor for collection.cgi.
+
+Building your own plugins:
+--------------------------
+
+- Originally, plugins for collectd had to be written in C and linked as shared
+  objects. Starting with version 4.0.0, it is also possible to use plugins
+  written in the scripting language Perl or implemented as separate processes.
+  See collectd-perl(5) and collectd-exec(5) for details.
+
+- If you want to contribute plugins to the official distribution you should
+  read http://collectd.org/dev-info.shtml.
+
+- If you want to build C plugins for your personal use only simply install the
+  collectd-dev package and use /usr/share/doc/collectd-dev/examples/myplugin.c
+  as a starting point (Note: This is already a working example, though it does
+  not collect any useful data).
+
+  The resulting file can be compiled as follows:
+
+    gcc -DHAVE_CONFIG_H -shared -fPIC -o myplugin.so myplugin.c
+
+  Copy myplugin.so to /usr/lib/collectd and add the following line to your
+  collectd config file:
+
+    LoadPlugin myplugin
+
+  Restart collectd and you're done.
+
+- The collectd-dev package also provides an example Perl plugin that can be
+  used as a starting point for your own development. It can be found in
+  /usr/share/doc/collectd-dev/examples/MyPlugin.pm (Note: This is already a
+  working example, though it does not collect any useful data).
+
+  To enable the plugin, copy it to a place where Perl can find it (i.e. a
+  subdirectory named "Collectd/Plugin" of a directory listed in @INC) and add
+  the following line to the perl plugin section in your config file:
+
+    LoadPlugin "Collectd::Plugin::MyPlugin"
+
+  or
+
+    BaseName "Collectd::Plugin"
+    LoadPlugin MyPlugin
+
+  Restart collectd and you're done.
+
+Examples:
+---------
+
+- SpamAssassin/: This directory contains a SpamAssassin plugin which passes
+  statistics to collectd using the email plugin. See the embedded POD
+  documentation for information about setup and configuration: perldoc
+  Collectd.pm.
+
+- iptables/: This directory contains a script which will setup iptables to do
+  global logging of all traffic going in and out of an interface. This
+  information can then be collected by collectd's iptables plugin.
+
+- collectd-network.py: Python module implementing the collectd network
+  protocol in pure Python. It currently supports to receive data and
+  notifications from collectd.
+
+- collectd-unixsock.py: Python module providing an interface to collect's
+  unixsock plugin.
+
+- cussh.pl: "Collectd Unix Socket SHell" is a small, interactive front-end for
+  the unixsock plugin. See the embedded POD documentation for details: perldoc
+  cussh.pl.
+
+- exec-munin.px: Script to be used with the exec-plugin (see collectd-exec(5)
+  for details) which executes munin plugins, parses the output and translates
+  it to a format the exec-plugin understands. The features are limited -
+  changing the munin plugins to use the output format understood by the
+  exec-plugin is recommended. See the embedded POD documentation for more
+  details: perldoc exec-munin.px.
+
+- exec-smartctl: Sample script for the exec plugin. Please refer to the
+  documentation in the file - you will have to adapt it to your needs anyway.
+
+- network-proxy.py: A simple unicast proxy for collectd traffic.
+
+- snmp-data.conf: Sample configuration for the SNMP plugin. This config
+  includes a few standard <Data ..> definitions that you can include in your
+  own config using the `Include' statement (available since version 4.2.0).
+  The config includes some data that is defined in the IF-MIB, e. g. octet or
+  packet counters, UPS-MIB and whatever people have send in. If you have some
+  more definitions please send them in, so others can profit from it.
+
+- snmp-probe-host.px: Script to be used to automatically generate SNMP
+  configuration snippets for the "snmp" plugin. See the embedded POD
+  documentation for more details: perldoc snmp-probe-host.px.
+
+Additional helper scripts:
+--------------------------
+
+- add_rra.sh: Before version 3.9.0 collectd used to create a different set of
+  RRAs. The most detailed of these old RRAs had a one minute resolution. This
+  script can be used to add three more RRAs: minimum, maximum and average with
+  a ten second resolution and 2200 rows (~6 hours). This will make hourly
+  statistics much more interesting. Please note that no sanity-checking
+  whatsoever is performed. You can seriously screw up your RRD files if you
+  don't know what you're doing.
+
--- collectd-4.10.1.orig/debian/README.Debian.plugins.in
+++ collectd-4.10.1/debian/README.Debian.plugins.in
@@ -0,0 +1,19 @@
+collectd plugins on Debian
+==========================
+
+Some plugins require additional libraries. To prevent you from having to
+install dozens of further packages that you don't actually need, there is no
+strict dependency on those libraries. Rather, they are listed as recommenda-
+tions ("collectd" package) or suggestions ("collectd-core" package").
+
+apt-get(8) and aptitude(8) will install recommended packages automatically by
+default. If you did not disable this feature you will have everything in place
+to operate all plugins when installing the "collectd" package. Else you have
+to install missing dependencies manually (see the section "Plugin
+dependencies" below).
+
+Plugin dependencies:
+--------------------
+
+@PLUGIN_DEPS@
+
--- collectd-4.10.1.orig/debian/README.source
+++ collectd-4.10.1/debian/README.source
@@ -0,0 +1,4 @@
+This package uses dpatch to manage all modifications to the upstream source.
+See /usr/share/doc/dpatch/README.source.gz for instructions how to generate
+the patched source, add a new modification, and remove an existing one.
+
--- collectd-4.10.1.orig/debian/filters.conf
+++ collectd-4.10.1/debian/filters.conf
@@ -0,0 +1,32 @@
+# Filter configuration for collectd(1).
+#
+# See the section "FILTER CONFIGURATION" in collectd.conf(5) for details.
+
+#PreCacheChain "PreCache"
+#PostCacheChain "PostCache"
+
+#LoadPlugin match_empty_counter
+#LoadPlugin match_hashed
+#LoadPlugin match_regex
+#LoadPlugin match_timediff
+#LoadPlugin match_value
+
+#LoadPlugin target_notification
+#LoadPlugin target_replace
+#LoadPlugin target_scale
+#LoadPlugin target_set
+
+#<Chain "PreCache">
+#	<Rule "no_fqdn">
+#		<Match "regex">
+#			Host "^[^\.]*$"
+#			Invert false
+#		</Match>
+#		Target "stop"
+#	</Rule>
+#</Chain>
+
+#<Chain "PostCache">
+#	Target "write"
+#</Chain>
+
--- collectd-4.10.1.orig/debian/collectd-core.postrm
+++ collectd-4.10.1/debian/collectd-core.postrm
@@ -0,0 +1,43 @@
+#! /bin/bash
+# postrm script for collectd
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postrm> `remove'
+#        * <postrm> `purge'
+#        * <old-postrm> `upgrade' <new-version>
+#        * <new-postrm> `failed-upgrade' <old-version>
+#        * <new-postrm> `abort-install'
+#        * <new-postrm> `abort-install' <old-version>
+#        * <new-postrm> `abort-upgrade' <old-version>
+#        * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    purge)
+        rm -rf /var/lib/collectd
+        rm -rf /etc/collectd
+        ;;
+    
+    remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+        ;;
+
+    *)
+        echo "postrm called with unknown argument \`$1'" >&2
+        exit 1
+        ;;
+
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
--- collectd-4.10.1.orig/debian/copyright
+++ collectd-4.10.1/debian/copyright
@@ -0,0 +1,698 @@
+This package was debianized by Sebastian Harl <tokkee@debian.org> on
+Wed, 10 May 2006 09:20:39 +0200.
+
+It was downloaded from <http://collectd.org/files/>.
+
+Upstream Authors:
+	Core Developer:
+	Florian Forster <octo@verplant.org>
+
+	For individual credits, see AUTHORS.
+
+Copyright Holders (in alphabetical order):
+	Adrian Perez <aperez@igalia.com>
+	Alessandro Iurlano <alessandro.iurlano@gmail.com>
+	Alexander Wirt <formorer@formorer.de>
+	Américo Monteiro
+	Amit Gupta <amit.gupta221@gmail.com>
+	Andre M. Hedrick <andre@suse.com>
+	Andrés J. Díaz <ajdiaz at connectical.com>
+	Anthony Dewhurst <dewhurst@gmail>
+	Anthony Gialluca <tonyabg@charter.net>
+	Antony Dovgal <tony@daylessday.org>
+	Bruno Prémont <bonbons@linux-vserver.org>
+	C-Ware, Inc.
+	Clay Loveless <clay@killersoft.com>
+	Clément Stenac <clement.stenac@diwi.org>
+	David Bacher <drbacher@gmail.com>
+	Doug MacEachern <dougm@hyperic.com>
+	Edward Konetzko <konetzed@quixoticagony.com>
+	Eric Reed <ericr@reedhome.net>
+	Eric Spreen <erispre@gmail.com>
+	Fabian Schuh <mail@xeroc.org>
+	Flavio Stanchina <flavio@stanchina.net>
+	Florent Monbillard <eppo@darox.net>
+	Florent Usseil <swiip81@free.fr>
+	Florian Forster <octo@verplant.org>
+	Franck Lombardi
+	Free Software Foundation, Inc.
+	Hideki Yamane <henrich@debian.or.jp>
+	Jacobo Tarrio <jtarrio@debian.org>
+	Jason Pepas <cell@ices.utexas.edu>
+	Jeff Green <jeff@kikisoso.org>
+	Jonathan Kolb <jon@b0g.us>
+	Juan Jose Ciarlante <jjciarla@raiz.uncu.edu.ar>
+	Julian Anastasov <ja@ssi.bg>
+	Justo Alonso Achaques <justo.alonso@gmail.com>
+	Kai Wasserbäch <debian@carbon-project.org>
+	Kern Sibbald
+	Lubos Stanek <lubek@users.sourceforge.net>
+	Lyonel Vincent <lyonel@ezix.org>
+	Manuel Sanmartin
+	Marco Chiappero <marco@absence.it>
+	Mariusz Gronczewski <xani666@gmail.com>
+	Martin Bagge <brother@bsnet.se>
+	Martin Sin <martin.sin@zshk.cz>
+	Michael Stapelberg <michael+git@stapelberg.de>
+	Michał Mirosław <mirq-linux@rere.qmqm.pl>
+	Mirko Buffoni <briareos@eswat.org>
+	Netfilter Core Team
+	Niki W. Waibel <niki.waibel@newlogic.com>
+	noris network AG
+	Novell Inc.
+	Oleg King <king2@kaluga.ru>
+	Ondrej 'SanTiago' Zajicek <santiago@crfreenet.org>
+	Patrik Weiskircher <weiskircher@inqnet.at>
+	Paul Sadauskas <psadauskas@gmail.com>
+	Pavel Shramov <shramov@mexmat.net>
+	Peter Holik <peter@holik.at>
+	Peter Kese <peter.kese@ijs.si>
+	Phoenix Kayo <kayo.k11.4@gmail.com>
+	Red Hat Inc.
+	Rodolphe Quiédeville <rquiedeville@bearstech.com>
+	Scott Garrett <sgarrett@technomancer.com>
+	Sebastian Harl <sh@tokkee.org>
+	Simon Kuhnle <simon@blarzwurst.de>
+	Sjoerd van der Berg <harekiet@users.sourceforge.net>
+	Stefan Hacker <d0t@dbclan.de>
+	Stefan Völkel <bd@bc-bd.org>
+	Steven Clarke <steven@monmouth.demon.co.uk>
+	Sven Trenkel <collectd@semidefinite.de>
+	The Regents of the University of California
+	Tomasz Pala <gotar@pld-linux.org>
+	Vincent Stehlé <vincent.stehle@free.fr>
+	Wensong Zhang <wensong@linuxvirtualserver.org>
+	Wouter Gadeyne
+	Yuri Kozlov <yuray@komyakino.ru>
+
+Licenses:
+
+	File bindings/perl/lib/Collectd/Plugins/Monitorus.pm
+	Copyright © 2009 Jeff Green <jeff@kikisoso.org>
+	License: GNU General Public License
+
+	File bindings/perl/lib/Collectd/Plugins/OpenVZ.pm
+	Copyright © 2009 Jonathan Kolb <jon@b0g.us>
+	License: GNU General Public License
+
+	Files bindings/perl/lib/Collectd.pm
+	      contrib/examples/MyPlugin.pm
+	      contrib/examples/myplugin.c
+	      contrib/cussh.pl
+	      src/libcollectdclient/lcc_features.h
+	      src/libcollectdclient/lcc_features.h.in
+	      src/collectdmon.c
+	      src/collectdmon.pod
+	      src/email.c
+	      src/notify_desktop.c
+	      src/perl.c
+	      src/table.c
+	      src/types.db.pod
+	      src/utils_cmd_flush.h
+	      src/utils_subst.c
+	      src/utils_subst.h
+	Copyright © 2006-2009 Sebastian Harl <sh@tokkee.org>
+	License: GNU General Public License
+
+	File contrib/collectd_network.py
+	Copyright © 2009 Adrian Perez <aperez@igalia.com>
+	License: GNU General Public License
+
+	File contrib/collectd_unixsock.py
+	Copyright © 2008 Clay Loveless <clay@killersoft.com>
+	License: GNU General Public License
+
+	File contrib/collectd2html.pl
+	Copyright © 2006 Vincent Stehlé <vincent.stehle@free.fr>
+	License: GNU General Public License
+
+	Files contrib/collection3/lib/Collectd/Graph/Type/ArcCounts.pm
+	      src/zfs_arc.c
+	Copyright © 2009 Anthony Dewhurst <dewhurst@gmail>
+	License: GNU General Public License
+
+	File contrib/network-proxy.py
+	Copyright © 2007 Pavel Shramov <shramov@mexmat.net>
+	License: GNU General Public License
+
+	Files contrib/php-collection/*
+	Copyright © 2009 Bruno Prémont <bonbons@linux-vserver.org>
+	License: GNU General Public License
+
+	File contrib/snmp-probe-host.px
+	Copyright © 2008-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 noris network AG
+	License: GNU General Public License
+
+	File debian/include/net/ip_vs.h
+	Copyright © Wensong Zhang <wensong@linuxvirtualserver.org>
+	Copyright © Julian Anastasov <ja@ssi.bg>
+	Copyright © Peter Kese <peter.kese@ijs.si>
+	Copyright © Juan Jose Ciarlante <jjciarla@raiz.uncu.edu.ar>
+	Copyright © Wouter Gadeyne
+	License: GNU General Public License
+
+	File src/apache.c
+	Copyright © 2006-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2007 Florent Monbillard <eppo@darox.net>
+	Copyright © 2009 Amit Gupta <amit.gupta221@gmail.com>
+	License: GNU General Public License
+
+	File src/apcups.c
+	Copyright © 2006-2007 Florian Forster <octo@verplant.org>
+	Copyright © 2006 Anthony Gialluca <tonyabg@charter.net>
+	Copyright © 2000-2004 Kern Sibbald
+	Copyright © 1996-1999 Andre M. Hedrick <andre@suse.com>
+	License: GNU General Public License
+
+	File src/battery.c
+	Copyright © 2006-2007 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Michał Mirosław <mirq-linux@rere.qmqm.pl>
+	License: GNU General Public License
+
+	File src/bind.c
+	Copyright © 2009 Bruno Prémont <bonbons@linux-vserver.org>
+	Copyright © 2009 Florian Forster <octo@verplant.org>
+	License: GNU General Public License
+
+	Files src/collectd-perl.pod
+	      src/logfile.c
+	      src/match_regex.c
+	      src/nginx.c
+	      src/scanner.l
+	      src/utils_cmd_flush.c
+	      src/utils_complain.c
+	      src/utils_complain.h
+	      src/vserver.c
+	Copyright © 2006-2009 Florian Forster
+	Copyright © 2006-2009 Sebastian Harl
+	License: GNU General Public License
+
+	File src/collectd-python.pod
+	Copyright © 2009 Sven Trenkel <collectd@semidefinite.de>
+	License: GNU General Public License
+
+	File src/conntrack.c
+	Copyright © 2009 Tomasz Pala <gotar@pld-linux.org>
+	License: GNU General Public License
+
+	File src/contextswitch.c
+	Copyright © 2009 Patrik Weiskircher <weiskircher@inqnet.at>
+	License: GNU General Public License
+
+	File src/cpu.c
+	Copyright © 2005-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Oleg King <king2@kaluga.ru>
+	Copyright © 2009 Simon Kuhnle <simon@blarzwurst.de>
+	Copyright © 2009 Manuel Sanmartin
+	License: GNU General Public License
+
+	Files src/cpufreq.c
+	      src/irq.c
+	      src/multimeter.c
+	Copyright © 2005-2007 Peter Holik <peter@holik.at>
+	License: GNU General Public License
+
+	File src/curl.c
+	Copyright © 2006-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Aman Gupta <aman@tmm1.net>
+	License: GNU General Public License
+
+	File src/curl_xml.c
+	Copyright © 2009-2010 Amit Gupta <amit.gupta221@gmail.com>
+	License: GNU General Public License
+
+	Files src/csv.c
+	      src/curl_json.c
+	Copyright © 2006-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Doug MacEachern <dougm@hyperic.com>
+	License: GNU General Public License
+
+	File src/df.c
+	Copyright © 2005-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Paul Sadauskas <psadauskas@gmail.com>
+	License: GNU General Public License
+
+	Files src/disk.c
+	      src/interface.c
+	      src/load.c
+	Copyright © 2005-2008 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Manuel Sanmartin
+	License: GNU General Public License
+
+	File src/dns.c
+	Copyright © 2006-2007 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Mirko Buffoni <briareos@eswat.org>
+	License: GNU General Public License
+
+	File src/exec.c
+	Copyright © 2007-2010 Florian Forster <octo@verplant.org>
+	Copyright © 2007-2009 Sebastian Harl <sh@tokkee.org>
+	Copyright © 2008 Peter Holik <peter@holik.at>
+	License: GNU General Public License
+
+	File src/filecount.c
+	Copyright © 2008 Alessandro Iurlano <alessandro.iurlano@gmail.com>
+	Copyright © 2008 Florian Forster <octo@verplant.org>
+	License: GNU General Public License
+
+	File src/fscache.c
+	Copyright © 2009 Edward Konetzko <konetzed@quixoticagony.com>
+	License: GNU General Public License
+
+	File src/hddtemp.c
+	Copyright © 2005-2006 Vincent Stehlé <vincent.stehle@free.fr>
+	Copyright © 2006-2007 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Sebastian Harl <sh@tokkee.org>
+	License: GNU General Public License
+
+	File src/ipmi.c
+	Copyright © 2008-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Peter Holik <peter@holik.at>
+	Copyright © 2009 Bruno Prémont <bonbons@linux-vserver.org>
+	License: GNU General Public License
+
+	File src/iptables.c
+	Copyright © 2007 Sjoerd van der Berg <harekiet@users.sourceforge.net>
+	Copyright © 2007 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Marco Chiappero <marco@absence.it>
+	License: GNU General Public License
+
+	File src/ipvs.c
+	Copyright © 1997 Steven Clarke <steven@monmouth.demon.co.uk>
+	Copyright © 1998-2004 Wensong Zhang <wensong@linuxvirtualserver.org>
+	Copyright © 2003-2004 Peter Kese <peter.kese@ijs.si>
+	Copyright © 2007 Sebastian Harl <sh@tokkee.org>
+	License: GNU General Public License
+
+	File src/java.c
+	Copyright © 2008 Justo Alonso Achaques <justo.alonso@gmail.com>
+	Copyright © 2009 Florian Forster <octo@verplant.org>
+	License: GNU General Public License
+
+	Files src/libvirt.c
+	      src/uuid.c
+	Copyright © 2006-2008 Red Hat Inc.
+	License: GNU General Public License
+
+	File src/madwifi.c
+	Copyright © 2009 Ondrej 'SanTiago' Zajicek <santiago@crfreenet.org>
+	License: GNU General Public License
+
+	File src/mbmon.c
+	Copyright © 2006 Flavio Stanchina
+	Copyright © 2006-2007 Florian Forster <octo@verplant.org>
+	License: GNU General Public License
+
+	Files src/memcachec.c
+	Copyright © 2008-2009 Doug MacEachern <dougm@hyperic.com>
+	Copyright © 2006-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Marco Chiappero <marco@absence.it>
+	License: GNU General Public License
+
+	File src/memcached.c
+	Copyright © 2007 Antony Dovgal
+	Copyright © 2007-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Doug MacEachern <dougm@hyperic.com>
+	Copyright © Franck Lombardi
+	License: GNU General Public License
+
+	File src/memory.c
+	Copyright © 2005-2008 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Simon Kuhnle <simon@blarzwurst.de>
+	Copyright © 2009 Manuel Sanmartin
+	License: GNU General Public License
+
+	File src/modbus.c
+	Copyright © 2010 noris network AG
+	Author: Florian Forster <octo@noris.net>
+	License: GNU General Public License
+
+	File src/mysql.c
+	Copyright © 2006-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Mirko Buffoni <briareos@eswat.org>
+	Copyright © 2009 Doug MacEachern <dougm@hyperic.com>
+	Copyright © 2009 Sebastian Harl <sh@tokkee.org>
+	Copyright © 2009 Rodolphe Quiédeville <rquiedeville@bearstech.com>
+	License: GNU General Public License
+
+	File src/nfs.c
+	Copyright © 2005, 2006 Jason Pepas <cell@ices.utexas.edu>
+	License: GNU General Public License
+
+	File src/notify_email.c
+	Copyright © 2008 Oleg King <king2@kaluga.ru>
+	License: GNU General Public License
+
+	File src/openvpn.c
+	Copyright © 2008-2009 Doug MacEachern <dougm@hyperic.com>
+	Copyright © 2006-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Marco Chiappero <marco@absence.it>
+	Copyright © 2009 Fabian Schuh <mail@xeroc.org>
+	License: GNU General Public License
+
+	Files src/owniptc/*
+	Copyright © 1999-2008 Netfilter Core Team
+	License: GNU General Public License
+
+	File src/pinba.c
+	Copyright © 2007-2009 Antony Dovgal <tony@daylessday.org>
+	Copyright © 2010 Phoenix Kayo <kayo.k11.4@gmail.com>
+	Copyright © 2010 Florian Forster <octo@verplant.org>
+	License: GNU General Public License
+
+	Files src/powerdns.c
+	      src/utils_tail.c
+	      src/utils_tail_match.c
+	      src/utils_tail_match.h
+	Copyright © 2007-2008 C-Ware, Inc.
+	Copyright © 2008 Florian Forster
+	License: GNU General Public License
+
+	File src/processes.c
+	Copyright © 2005 Lyonel Vincent <lyonel@ezix.org>
+	Copyright © 2006-2008 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Oleg King <king2@kaluga.ru>
+	Copyright © 2009 Sebastian Harl <sh@tokkee.org>
+	Copyright © 2009 Andrés J. Díaz <ajdiaz@connectical.com>
+	Copyright © 2009 Manuel Sanmartin
+	Copyright © 2010 Clément Stenac <clement.stenac@diwi.org>
+	License: GNU General Public License
+
+	File src/rrdtool.c
+	Copyright © 2006-2008 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Sebastian Harl <sh@tokkee.org>
+	Copyright © 2009 Mariusz Gronczewski <xani666@gmail.com>
+	License: GNU General Public License
+
+	File src/sensors.c
+	Copyright © 2005-2008 Florian Forster <octo@verplant.org>
+	Copyright © 2006 Lubos Stanek <lubek@users.sourceforge.net>
+	License: GNU General Public License
+
+	File src/serial.c
+	Copyright © 2005, 2006 David Bacher <drbacher@gmail.com>
+	License: GNU General Public License
+
+	File src/swap.c
+	Copyright © 2005-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Stefan Völkel <bd@bc-bd.org>
+	Copyright © 2009 Manuel Sanmartin
+	License: GNU General Public License
+
+	File src/tape.c
+	Copyright © 2005, 2006 Scott Garrett <sgarrett@technomancer.com>
+	License: GNU General Public License
+
+	File src/tcpconns.c
+	Copyright © 2007-2008 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Michael Stapelberg <michael+git@stapelberg.de>
+	License: GNU General Public License
+
+	File src/teamspeak2.c
+	Copyright © 2008 Stefan Hacker
+	Copyright © 2008 Florian Forster
+	License: GNU General Public License
+
+	File src/ted.c
+	Copyright © 2009 Eric Reed <ericr@reedhome.net>
+	License: GNU General Public License
+
+	File src/thermal.c
+	Copyright © 2008 Michał Mirosław <mirq-linux@rere.qmqm.pl>
+	License: GNU General Public License
+
+	File src/tokyotyrant.c
+	Copyright © 2009 Paul Sadauskas <psadauskas@gmail.com>
+	License: GNU General Public License
+
+	File src/uptime.c
+	Copyright © 2009 Marco Chiappero <marco@absence.it>
+	License: GNU General Public License
+
+	File src/users.c
+	Copyright © 2005-2007 Sebastian Harl <sh@tokkee.org>
+	Copyright © 2005 Niki W. Waibel <niki.waibel@newlogic.com>
+	Copyright © 2005-2007 Florian Forster <octo@verplant.org>
+	Copyright © 2008 Oleg King <king2@kaluga.ru>
+	License: GNU General Public License
+
+	File src/utils_ignorelist.c
+	Copyright © 2006 Lubos Stanek <lubek@users.sourceforge.net>
+	Copyright © 2008 Florian Forster <octo@verplant.org>
+	License: GNU General Public License
+
+	File src/utils_ignorelist.h
+	Copyright © 2006 Lubos Stanek <lubek@users.sourceforge.net>
+	License: GNU General Public License
+
+	Files src/utils_mount.c
+	      src/utils_mount.h
+	Copyright © 2005, 2006 Niki W. Waibel <niki.waibel@gmx.net>
+	License: GNU General Public License
+
+	File src/utils_tail.h
+	Copyright © 2007-2008 C-Ware, Inc.
+	License: GNU General Public License
+
+	File src/utils_threshold.c
+	Copyright © 2007-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2008-2009 Sebastian Harl <sh@tokkee.org>
+	Copyright © 2009 Andrés J. Díaz <ajdiaz@connectical.com>
+	License: GNU General Public License
+
+	File src/write_http.c
+	Copyright © 2007-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Paul Sadauskas <psadauskas@gmail.com>
+	Copyright © 2009 Doug MacEachern <dougm@hyperic.com>
+	License: GNU General Public License
+
+	All other files (except libltdl/*, src/network.c, src/postgresql.c,
+		src/utils_dns.* and contrib/SpamAssassin/*):
+	Copyright © 2005-2010 Florian Forster <octo@verplant.org>
+	License: GNU General Public License
+
+	This package is free software; you can redistribute it and/or modify
+	it under the terms of the GNU General Public License as published by
+	the Free Software Foundation.
+
+	This package is distributed in the hope that it will be useful,
+	but WITHOUT ANY WARRANTY; without even the implied warranty of
+	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+	GNU General Public License for more details.
+
+	You should have received a copy of the GNU General Public License
+	along with this package; if not, write to the Free Software
+	Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+	USA.
+
+	Some files are licensed under version 2 only, while any others allow to
+	use version 2 or (at your option) any later version.
+
+On Debian systems, the complete text of the GNU General Public License,
+version 2, can be found in `/usr/share/common-licenses/GPL-2'. The complete
+text of the latest version can be found in `/usr/share/common-licenses/GPL'.
+
+	File contrib/collectd_unix_sock.rb
+	Copyrigh © 2009 Novell Inc.
+	Author: Duncan Mac-Vicar P. <dmacvicar@suse.de>
+	Based on Python version:
+	Copyright (C) 2008 Clay Loveless <clay@killersoft.com>
+
+	This software is provided 'as-is', without any express or implied
+	warranty. In no event will the author be held liable for any damages
+	arising from the use of this software.
+
+	Permission is granted to anyone to use this software for any purpose,
+	including commercial applications, and to alter it and redistribute it
+	freely, subject to the following restrictions:
+
+	1. The origin of this software must not be misrepresented; you must not
+	   claim that you wrote the original software. If you use this software
+	   in a product, an acknowledgment in the product documentation would be
+	   appreciated but is not required.
+	2. Altered source versions must be plainly marked as such, and must not be
+	   misrepresented as being the original software.
+	3. This notice may not be removed or altered from any source distribution.
+
+	Files libltdl/* (except libltdl/m4/*)
+	Copyright © 1998-2008 Free Software Foundation, Inc.
+	License: GNU Lesser General Public License
+
+	File src/network.c
+	Copyright © 2005-2009 Florian Forster <octo@verplant.org>
+	Copyright © 2009 Aman Gupta <aman@tmm1.net>
+	License: GNU Lesser General Public License
+
+	This library is free software; you can redistribute it and/or
+	modify it under the terms of the GNU Lesser General Public
+	License as published by the Free Software Foundation; either
+	version 2 of the License, or (at your option) any later version.
+
+	This library is distributed in the hope that it will be useful,
+	but WITHOUT ANY WARRANTY; without even the implied warranty of
+	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+	Lesser General Public License for more details.
+
+	You should have received a copy of the GNU Lesser General Public
+	License along with this library; if not, write to the Free Software
+	Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+	USA.
+
+On Debian systems, the complete text of the GNU Lesser General Public License
+can be found in `/usr/share/common-licenses/LGPL'.
+
+	Files libltdl/m4/*
+	Copyright © 1996-2008 Free Software Foundation, Inc.
+
+	This file is free software; the Free Software Foundation gives
+	unlimited permission to copy and/or distribute it, with or without
+	modifications, as long as this notice is preserved.
+
+	Parts of the file src/tcpconns.c
+	Copyright © 1983, 1988, 1993 The Regents of the University of California
+	License: BSD License
+
+	File src/madwifi.h
+	Copyright © 2001 Atsushi Onoe
+	Copyright © 2002-2005 Sam Leffler, Errno Consulting
+	License: BSD License
+
+	File src/utils_dns.c
+	Copyright © 2002 The Measurement Factory, Inc.
+	Copyright © 2006 Florian Forster <octo@verplant.org>
+	License: BSD License
+
+	File src/utils_dns.h
+	Copyright © 2006 Florian Forster <octo@verplant.org>
+	License: BSD License
+
+	Redistribution and use in source and binary forms, with or without
+	modification, are permitted provided that the following conditions are met:
+
+	1. Redistributions of source code must retain the above copyright notice,
+	   this list of conditions and the following disclaimer.
+	2. Redistributions in binary form must reproduce the above copyright
+	   notice, this list of conditions and the following disclaimer in the
+	   documentation and/or other materials provided with the distribution.
+	3. Neither the name of the author nor the names of his contributors may be
+	   used to endorse or promote products derived from this software without
+	   specific prior written permission.
+
+	THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+	AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+	IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+	ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+	LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+	CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+	SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+	INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+	CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+	ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+	POSSIBILITY OF SUCH DAMAGE.
+
+	File src/postgresql.c
+	Copyright © 2008-2009 Sebastian Harl <sh@tokkee.org>
+	Copyright © 2009 Florian Forster <octo@verplant.org>
+	License: 2-clause BSD License
+
+	All rights reserved.
+
+	Redistribution and use in source and binary forms, with or without
+	modification, are permitted provided that the following conditions
+	are met:
+
+	- Redistributions of source code must retain the above copyright
+	  notice, this list of conditions and the following disclaimer.
+
+	- Redistributions in binary form must reproduce the above copyright
+	  notice, this list of conditions and the following disclaimer in the
+	  documentation and/or other materials provided with the distribution.
+
+	THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+	AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+	IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+	ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+	LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+	CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+	SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+	INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+	CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+	ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+	POSSIBILITY OF SUCH DAMAGE.
+
+	Files src/cpython.h
+	      src/netapp.c
+	      src/pyconfig.c
+	      src/python.c
+	      src/pyvalues.c
+	Copyright © 2009 Sven Trenkel <collectd@semidefinite.de>
+	License: MIT License
+
+	Permission is hereby granted, free of charge, to any person obtaining a
+	copy of this software and associated documentation files (the "Software"),
+	to deal in the Software without restriction, including without limitation
+	the rights to use, copy, modify, merge, publish, distribute, sublicense,
+	and/or sell copies of the Software, and to permit persons to whom the
+	Software is furnished to do so, subject to the following conditions:
+
+	The above copyright notice and this permission notice shall be included in
+	all copies or substantial portions of the Software.
+
+	THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+	IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+	FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+	AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+	LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+	FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+	DEALINGS IN THE SOFTWARE.
+
+	Files contrib/SpamAssassin/*
+	Copyright © 2006 Alexander Wirt <formorer@formorer.de>
+
+	This program is free software; you can redistribute it and/or modify it
+	under the the terms of either:
+
+	a) the Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)
+
+	or
+
+	b) the GPL (http://www.gnu.org/copyleft/gpl.html)
+
+	Use whatever you like more.
+
+The Debian packaging is © 2006-2009, Sebastian Harl <tokkee@debian.org> and
+is licensed under the GPL, see above. The debconf template translations are
+distributed under the same license as the package itself.
+
+	cs.po:
+	Copyright © 2009 Martin Sin <martin.sin@zshk.cz>
+
+	de.po:
+	Copyright © 2008 Kai Wasserbäch <debian@carbon-project.org>
+	Copyright © 2008 Sebastian Harl <tokkee@debian.org>
+
+	fr.po:
+	Copyright © 2008 Florent Usseil <swiip81@free.fr>
+
+	gl.po:
+	Copyright © 2008 Jacobo Tarrio <jtarrio@debian.org>
+
+	ja.po:
+	Copyright © 2009 Hideki Yamane <henrich@debian.or.jp>
+
+	nl.po:
+	Copyright © 2008 Eric Spreen <erispre@gmail.com>
+
+	pt.po:
+	Copyright © 2008 Américo Monteiro
+
+	ru.po:
+	Copyright © 2009 Yuri Kozlov <yuray@komyakino.ru>
+
+	sv.po:
+	Copyright © 2008 Martin Bagge <brother@bsnet.se>
+
+	vi.po:
+	Copyright © 2009 Free Software Foundation, Inc.
+
--- collectd-4.10.1.orig/debian/compat
+++ collectd-4.10.1/debian/compat
@@ -0,0 +1 @@
+5
--- collectd-4.10.1.orig/debian/collectd-core.config
+++ collectd-4.10.1/debian/collectd-core.config
@@ -0,0 +1,42 @@
+#! /bin/sh
+# config script for collectd
+#
+# see: dh_installdebconf(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <preconfigure> `configure' <installed-version>
+#        * <postinst> `configure' <old-version>
+#        * <reconfigure> `reconfigure' <installed-version>
+
+. /usr/share/debconf/confmodule
+
+case "$1" in
+    configure)
+        db_set collectd/auto-migrate-3-4 false
+
+        if dpkg --compare-versions "$2" lt-nl "4.0.0~"; then
+            if perl -e '1' 2> /dev/null && rrdtool > /dev/null 2>&1; then
+                db_input high collectd/auto-migrate-3-4 || true
+                db_go || true
+            else
+                db_input high collectd/migration-3-4 || true
+                db_go || true
+            fi
+        fi
+    ;;
+
+    reconfigure)
+    ;;
+
+    *)
+        echo "config called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+db_stop
+
+exit 0
+
--- collectd-4.10.1.orig/debian/collectd.postinst
+++ collectd-4.10.1/debian/collectd.postinst
@@ -0,0 +1,45 @@
+#! /bin/sh
+# postinst script for collectd
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <postinst> `abort-remove'
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+if [ -x "/etc/init.d/collectd" ]; then
+	if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
+		invoke-rc.d collectd restart || exit $?
+	else
+		/etc/init.d/collectd restart || exit $?
+	fi
+fi
+
+# replace the directory provided by older versions of the package with a
+# symlink; dpkg does not handle that according to policy 6.6
+if [ "$1" = "configure" ] \
+		&& dpkg --compare-versions "$2" lt-nl "4.10.0-1~"; then
+	if [ -d "/usr/share/doc/collectd/examples" ]; then
+		! rmdir /usr/share/doc/collectd/examples > /dev/null 2>&1 \
+			|| ln -s ../collectd-core/examples \
+				/usr/share/doc/collectd/examples
+	fi
+fi
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
--- collectd-4.10.1.orig/debian/rules
+++ collectd-4.10.1/debian/rules
@@ -0,0 +1,269 @@
+#! /usr/bin/make -f
+# debian/rules for collectd
+#
+# Written by Sebastian Harl <tokkee@debian.org>.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_ARCH      ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
+DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CPPFLAGS = -I$(CURDIR)/debian/include
+CFLAGS = -Wall -g
+
+# There is no way to tell lt_dlopen() to use the RTLD_GLOBAL flag which is
+# however required by the perl plugin (which would otherwise be unable to find
+# symbols defined in libperl when loading perl modules that require such
+# symbols). This is a workaround for this issue.
+CPPFLAGS += -DLT_LAZY_OR_NOW='RTLD_LAZY|RTLD_GLOBAL'
+
+# Upstream defaults to ${sysconfdir}/collectd.conf. Setting ${sysconfdir} to
+# /etc/collectd would be wrong though.
+CPPFLAGS += -UCONFIGFILE
+CPPFLAGS += -DCONFIGFILE='\"/etc/collectd/collectd.conf\"'
+
+ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
+	CFLAGS += -O0
+else
+	CFLAGS += -O2
+endif
+
+# The archdir map has been copied from openjdk-6's debian/rules.
+JAVA_ARCHDIR_MAP = armel=arm hppa=parisc lpia=i386 powerpc=ppc powerpcspe=ppc sh4=sh
+JAVA_ARCHDIR = $(strip $(patsubst $(DEB_BUILD_ARCH)=%, %, \
+			$(filter $(DEB_BUILD_ARCH)=%, $(JAVA_ARCHDIR_MAP))))
+ifeq (,$(JAVA_ARCHDIR))
+	JAVA_ARCHDIR = $(DEB_BUILD_ARCH)
+endif
+JAVA_HOME = /usr/lib/jvm/java-6-openjdk
+JAVA_LIBDIR = $(JAVA_HOME)/jre/lib/$(JAVA_ARCHDIR)/server
+
+JAVAC = $(JAVA_HOME)/bin/javac
+JAR = $(JAVA_HOME)/bin/jar
+JAVA_CPPFLAGS = -I$(JAVA_HOME)/include
+JAVA_LDFLAGS = -L$(JAVA_LIBDIR) -Wl,-rpath -Wl,$(JAVA_LIBDIR)
+
+include /usr/share/dpatch/dpatch.make
+
+confflags = --host=$(DEB_HOST_GNU_TYPE) \
+			--build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr \
+			--mandir=\$${prefix}/share/man \
+			--localstatedir=/var --sysconfdir=/etc \
+			--with-perl-bindings="INSTALLDIRS=vendor" \
+			--without-libstatgrab \
+			--without-included-ltdl \
+			--disable-static \
+			--enable-all-plugins
+
+# These plugins do not provide any functionality under Linux.
+confflags += --disable-apple_sensors --disable-tape
+
+# libmodbus is required for the modbus plugin.
+confflags += --disable-modbus
+
+# libnetapp is required for the netapp plugin.
+confflags += --disable-netapp
+
+# libowcapi is required for the onewire plugin.
+confflags += --disable-onewire
+
+# libclntsh is required for the oracle plugin.
+confflags += --disable-oracle
+
+# librouteros is required for the routeros plugin.
+confflags += --disable-routeros
+
+# xmms1 is required for the xmms plugin.
+confflags += --disable-xmms
+
+# libkstat is required for the xfs_arc plugin.
+confflags += --disable-zfs-arc
+
+# The static library netstat cannot be linked into shared objects on some
+# architectures (see bugs #358637, #419684 and #524593 for more details).
+ifneq (,$(filter alpha amd64 hppa ia64 ppc64 mips mipsel, $(DEB_BUILD_ARCH)))
+	confflags += --disable-netlink
+endif
+
+# These plugins are Linux-specific.
+ifneq (,$(filter kfreebsd-i386 kfreebsd-amd64, $(DEB_BUILD_ARCH)))
+	confflags += \
+		--disable-iptables \
+		--disable-ipvs \
+		--disable-madwifi \
+		--disable-netlink \
+		--disable-sensors \
+		--disable-vserver
+endif
+
+# These plugins have not been ported to FreeBSD yet.
+ifneq (,$(filter kfreebsd-i386 kfreebsd-amd64, $(DEB_BUILD_ARCH)))
+	confflags += \
+		--disable-battery \
+		--disable-conntrack \
+		--disable-contextswitch \
+		--disable-cpufreq \
+		--disable-disk \
+		--disable-entropy \
+		--disable-fscache \
+		--disable-irq \
+		--disable-nfs \
+		--disable-protocols \
+		--disable-serial \
+		--disable-thermal \
+		--disable-vmem \
+		--disable-wireless
+endif
+
+# Build-dependencies of these plugins are (not yet) available for kfreebsd.
+ifneq (,$(filter kfreebsd-i386 kfreebsd-amd64, $(DEB_BUILD_ARCH)))
+	confflags += \
+		--disable-gmond \
+		--disable-libvirt \
+		--disable-tokyotyrant \
+		--disable-java
+endif
+
+# The hppa buildds currently do not keep up with Java related stuff, thus
+# prevending testing transitions.
+ifneq (,$(filter hppa, $(DEB_BUILD_ARCH)))
+	confflags += --disable-java
+endif
+
+config.status: configure $(DPATCH_STAMPFN)
+	dh_testdir
+	
+	( cd debian/patches/; for patch in *; do \
+		if test "$$patch" != "00list"; then \
+			grep "$$patch" 00list > /dev/null \
+				|| ( echo "$$patch not enabled\!"; exit 1 ); \
+		fi; done )
+	
+	# This is a work-around for #474087 (broken openipmi .pc files).
+	mkdir debian/pkgconfig
+	sed -re 's/^(Requires:.*) pthread(.*)$$/\1\2/' \
+		/usr/lib/pkgconfig/OpenIPMIpthread.pc \
+		> debian/pkgconfig/OpenIPMIpthread.pc
+	
+	PKG_CONFIG_PATH="$(CURDIR)/debian/pkgconfig:$$PKG_CONFIG_PATH" \
+	./configure $(confflags) CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" \
+		JAVAC="$(JAVAC)" JAR="$(JAR)" JAVA_CPPFLAGS="$(JAVA_CPPFLAGS)" \
+		JAVA_LDFLAGS="$(JAVA_LDFLAGS)" \
+		|| ( status=$$?; cat config.log; exit $$status )
+
+build: build-stamp
+
+build-stamp: config.status
+	dh_testdir
+	
+	$(MAKE)
+	perl ./debian/bin/check_plugins.pl
+	
+	touch build-stamp
+
+clean: unpatch
+	dh_testdir
+	dh_testroot
+	rm -f build-stamp
+	
+	[ ! -f Makefile ] || $(MAKE) distclean
+	
+	rm -f debian/README.Debian.plugins
+	rm -f src/*.1 src/*.5
+	
+	rm -rf debian/pkgconfig
+	
+	dh_clean
+	debconf-updatepo
+
+install-indep:
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_installdirs -i
+	dh_install -i
+
+install-arch: build
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_installdirs -a
+	
+	$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
+	
+	rm -f debian/tmp/usr/lib/collectd/*.la
+	rm -f debian/tmp/usr/lib/libcollectdclient.la
+	rm -f debian/tmp/etc/collectd.conf
+	
+	dh_install -a --sourcedir=$(CURDIR)/debian/tmp --fail-missing
+	
+	perl ./debian/bin/gen_plugin_deps.pl
+	
+	mkdir -p debian/collectd-core/usr/share/lintian/overrides/
+	cp debian/collectd-core.overrides \
+		debian/collectd-core/usr/share/lintian/overrides/collectd-core
+
+binary-indep: install-indep
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs -i ChangeLog
+	dh_installdocs -A -i debian/README.Debian AUTHORS README TODO
+	dh_installexamples -i contrib/examples/myplugin.c \
+		contrib/examples/MyPlugin.pm
+	dh_compress -i -Xexamples/
+	dh_fixperms -i
+	dh_installdeb -i
+	dh_gencontrol -i
+	dh_md5sums -i
+	dh_builddeb -i
+
+binary-arch: build install-arch
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs -a ChangeLog
+	dh_installdocs -A -a debian/README.Debian AUTHORS README TODO
+	dh_installdocs -a debian/NEWS.Debian debian/README.Debian.plugins
+	dh_installexamples -a contrib/collectd2html.pl contrib/collection.cgi \
+		contrib/collection3/ contrib/php-collection/ \
+		contrib/exec-munin.conf contrib/exec-munin.px contrib/exec-smartctl \
+		contrib/exec-nagios.conf contrib/exec-nagios.px \
+		contrib/SpamAssassin/ contrib/iptables/ contrib/cussh.pl \
+		contrib/snmp-data.conf contrib/add_rra.sh contrib/network-proxy.py \
+		contrib/collectd_network.py contrib/collectd_unixsock.py \
+		contrib/snmp-probe-host.px contrib/GenericJMX.conf \
+		debian/collectd.conf debian/filters.conf debian/thresholds.conf
+	# some upstream tarballs have been built inside a dirty working dir
+	( cd debian/collectd-core/ \
+		&& cd usr/share/doc/collectd-core/examples/collection3/ \
+		&& rm -f bin/foo bin/test_config.px etc/collection4.conf \
+		&& rm -f lib/Collectd/Graph.pm lib/Collectd/Graph/Data.pm \
+		&& rm -f lib/Collectd/Graph/File.pm lib/Collectd/Graph/Filter.pm \
+		&& rm -f lib/Collectd/Graph/MetaData.pm )
+	dh_installdebconf -a
+	dh_installinit -pcollectd-core --name=collectd -- defaults 95
+	dh_link -a
+	dh_strip -a --dbg-package=collectd-dbg
+	dh_compress -a -Xexamples/
+	dh_fixperms -a
+	dh_makeshlibs -a
+	dh_installdeb -a
+	dh_shlibdeps -a -Ncollectd-core -Ncollectd
+	dpkg-shlibdeps -Tdebian/collectd.substvars \
+		-dDepends debian/collectd-core/usr/lib/collectd/rrdtool.so
+	dpkg-shlibdeps -Tdebian/collectd-core.substvars \
+		-dDepends debian/collectd-core/usr/sbin/* \
+		-dSuggests debian/collectd-core/usr/lib/collectd/*.so
+	grep shlibs:Suggests debian/collectd-core.substvars \
+		| sed -e 's/shlibs:Suggests/shlibs:Recommends/' \
+		>> debian/collectd.substvars
+	dh_gencontrol -a
+	dh_md5sums -a
+	dh_builddeb -a
+
+binary: binary-arch binary-indep
+.PHONY: build clean binary-indep binary-arch binary install-indep install-arch
+
--- collectd-4.10.1.orig/debian/changelog
+++ collectd-4.10.1/debian/changelog
@@ -0,0 +1,908 @@
+collectd (4.10.1-2.1) unstable; urgency=high
+
+  * Non-maintainer upload by the security team
+  * Fix DoS in RRD file creation (Closes: #605092)
+    Fixes: CVE-2010-4336
+    Thanks to Florian Forster
+
+ -- Steffen Joeris <white@debian.org>  Wed, 08 Dec 2010 17:45:50 +1100
+
+collectd (4.10.1-2) unstable; urgency=medium
+
+  * debian/rules:
+    - Added support for ‘powerpcspe’ to the Java arch mapping; thanks to
+      Sebastian Andrzej Siewior for the patch (Closes: #592909).
+  * debian/patches:
+    - Added bts595756-notify_email-segfault -- upstream patch fixing a
+      segfault in the 'notify_email' plugin; thanks to Manuel CISSE for
+      reporting this (Closes: #595756).
+    - Added bts592623-curl_json-file -- upstream patch fixing access to
+      file:// URLs in the 'curl_json' plugin; thanks Baptiste Mille-Mathias
+      for reporting this and pointing out the patch (Closes: #592623).
+    - Added bts596128-reheap-fix -- upstream patch fixing the 'reheap()'
+      function used to manage the "read" callbacks and making sure all plugins
+      get executed correctly and in each interval (Closes: #596128).
+  * Set urgency to "medium" because of the RC bug-fix.
+
+ -- Sebastian Harl <tokkee@debian.org>  Wed, 08 Sep 2010 22:50:54 +0200
+
+collectd (4.10.1-1) unstable; urgency=low
+
+  * New upstream release.
+  * debian/patches:
+    - Removed bts561577_collectd2html_recursive_fix -- applied upstream.
+    - Removed bts575029-collectd2html-xhtml -- applied upstream.
+    - Removed bts557599_powerdns_fix -- applied upstream.
+  * debian/control:
+    - Updated standards-version to 3.9.1 -- no changes.
+
+ -- Sebastian Harl <tokkee@debian.org>  Wed, 28 Jul 2010 18:45:31 +0200
+
+collectd (4.10.0-1) unstable; urgency=low
+
+  * New upstream release:
+    New plugins:
+    - Parse XML data: curl_xml
+    - Parse values from Modbus/TCP enabled devices: modbus (disabled in
+      Debian; libmodbus is not available)
+    - Timing values from Pinba: pinba
+  * debian/control:
+    - Build-depend on libprotobuf-c0-dev and protobuf-c-compiler required by
+      the 'pinba' plugin.
+    - Updated to standards-version 3.8.4 -- no changes.
+  * debian/patches:
+    - Removed bts566199_collection_hide_types -- applied upstream.
+    - Removed typo_fixes -- applied upstream.
+    - Added bts575029-collectd2html-xhtml, adding support for XHTML to
+      collectd2html.pl; thanks to Ivan Shmakov for reporting this and Max
+      Henkel and Timur Kirilichev for providing patches (Closes: #575029).
+  * debian/rules:
+    - Define (and pass to configure) $JAR, required by current versions of the
+      Java bindings.
+    - Added support for Renesas SH4 to the Java arch mapping; thanks to
+      Nobuhiro Iwamatsu for the patch (Closes: #564165).
+  * debian/collectd.postinst:
+    - Manually replace /usr/share/doc/collectd/examples/ with a symlink when
+      upgrading from versions << 4.10.0-1~ -- this is not handled by dpkg
+      according to policy 6.6; thanks to Joey Hess for reporting this
+      (Closes: #569268).
+  * debian/collectd-core.overrides:
+    - Override 'capitalization-error-in-description python Python' -- all
+      plugin names are spelled in lower-case letters.
+
+ -- Sebastian Harl <tokkee@debian.org>  Tue, 08 Jun 2010 00:42:56 +0200
+
+collectd (4.9.1-2) unstable; urgency=low
+
+  * debian/rules:
+    - Re-enabled non-kfreebsd plugins on i386 and amd64, which had been
+      disabled accidentally by using findstring (which does a substring match)
+      to compare DEB_BUILD_ARCH with kfreebsd-{amd64,i386}; thanks to ilia
+      kudirov for reporting this (Closes: #567259).
+    - Replaced all occurrences of 'findstring' with appropriate 'filter'
+      statements to make sure to match words rather than substrings.
+
+ -- Sebastian Harl <tokkee@debian.org>  Thu, 28 Jan 2010 22:09:16 +0100
+
+collectd (4.9.1-1) unstable; urgency=low
+
+  * New upstream release:
+    New plugins:
+    - Number of context switches done by the OS: contextswitch
+    - Query statistics from mon.itor.us: Monitorus (Perl based plugin)
+    - Collect statistics from NetApp filers: netapp (disabled in Debian;
+      libnetapp is not available)
+    - OpenVZ statistics: OpenVZ (Perl based plugin)
+    - Embedding a Python interpreter: python
+    - Query statistics from RouterOS: routeros (disabled in Debian;
+      librouteros is not available)
+    New matches:
+    - Match values using a hash function of the hostname: hashed
+    New targets:
+    - Scale (multiply) values: scale
+  * debian/control:
+    - Build-depend on "python-dev", required to build the "python" plugin.
+  * debian/collectd-core.install:
+    - Install all collectd-*.5 manpages (in particular, this includes the
+      newly added collectd-python.5).
+  * Added support for kfreebsd-{i386,amd64}; see below for details
+    (Closes: #566521).
+  * debian/control, debian/rules:
+    - Disabled the following Linux-specific plugins / removed the following
+      build-deps on kfreebsd-{i386,amd64}:
+      + "iptables" plugin / iptables-dev
+      + "ipvs" plugin / linux-libc-dev
+      + "madwifi" plugin
+      + "netlink" plugin / iproute-dev
+      + "sensors" plugin / libsensors4-dev
+      + "vserver" plugin
+    - Disabled the following plugins / removed the following build-deps on
+      kfreebsd-{i386,amd64} -- the build-deps are (not yet) available on
+      kfreebsd:
+      + "gmond" plugin / libganglia1-dev
+      + "libvirt" plugin / libvirt-dev
+      + "java" plugin / openjdk6-jdk
+    - Enabled the "rrdcached" plugin and build-depend on librrd-dev (>= 1.4~)
+      (and removed the optional build-dep on librrd2-dev).
+    - Enabled the "tokyotyrant" plugin (except on kfreebsd-{i386,amd64}) and
+      build-depend on libtokyotyrant-dev (which is not available on kfreebsd).
+      Also, build-depend on libtokyocabinet-dev to work around a missing
+      dependency in libtokyotyrant-dev (see #566584).
+  * debian/rules:
+    - Disabled the following plugins on kfreebsd-{i386,amd64} which have not
+      yet been ported to FreeBSD: battery, conntrack, contextswitch, cpufreq,
+      disk, entropy, fscache, irq, nfs, protocols, serial, thermal, vmem,
+      wireless.
+    - Simplified Java archdir mapping: removed entries "pointing" to
+      themselves and let those default to DEB_BUILD_ARCH.
+    - Check whether all patches have been enabled; fail, if not.
+  * debian/patches:
+    - Added bts566199_collection_hide_types.dpatch -- added ability to hide
+      specified types in collection.cgi; thanks to Pavel Piatruk for the patch
+      (Closes: #566199).
+    - Added typo_fixes.dpatch -- fixing some typos in manpages and error
+      messages; thanks to lintian(1) for reporting this.
+  * debian/collectd-core.overrides:
+    - Replaced overrides for spelling-error-in-description with
+      capitalization-error-in-description.
+
+ -- Sebastian Harl <tokkee@debian.org>  Tue, 26 Jan 2010 00:22:32 +0100
+
+collectd (4.8.2-1) unstable; urgency=medium
+
+  * New upstream release:
+    - Now using libtool 2.
+  * Set urgency to medium because of the fix for #559801.
+  * Split the "collectd" binary package into "collectd-core" and "collectd".
+    The former provides the main program file and the plugins while the latter
+    provides the configuration. This allows for much more flexible setups
+    (e.g. providing customizations on top of "collectd-core" without modifying
+    the "collectd" package) and, amongst others, removes the hard dependency
+    on librrd (Closes: #495936, #544311).
+  * debian/collectd-core.collectd.init.d:
+    - Do not (try to) start collectd if the config file does not exist. Else,
+      installation of "collectd-core" (which does not provide configuration)
+      would fail.
+  * debian/collectd.postinst:
+    - Let the "collectd" package restart the daemon, since it provides the
+      config file.
+  * debian/collectd.links:
+    - Symlink /u/s/d/collectd/examples to /u/s/d/collectd-core/examples.
+  * debian/control:
+    - Build-depend on the right combination of libsnmp-dev and perl. Perl's
+      CFLAGS (included in net-snmp's CFLAGS) introduced '-fstack-protector' in
+      version 5.10.1 on some architectures (those supporting that features).
+      net-snmp has been fixed to handle that correctly in 5.4.2.1~dfsg-4;
+      thanks to Lamont Jones and Dann Frazier for reporting this
+      (Closes: #559087).
+    - Build-depend on libsensors4-dev rather than libsensors-dev. libsnmp-dev,
+      starting with version 5.4.2.1~dfsg-5, supports libsensors4, thus making
+      that possible. This restores the full functionality of the "sensors"
+      plugin, which does not work well with libsensors3 and lm-sensors-3;
+      thanks to Anssi Kolehmainen for reporting this (Closes: #538795).
+    - Build-depend on libltdl-dev to make it possible to use the system-wide
+      libltdl.
+    - No longer conflict/provide/replace the pre-Lenny "collectd-$plugin"
+      packages.
+    - Update the list of collectd-core's suggestions: added various services
+      providing data that may be collected by collectd. Downgraded lm-sensors
+      from a recommendation to a suggestion.
+  * debian/patches:
+    - Removed gmond-fix-compile-error.dpatch -- included upstream.
+    - Added bts561577_collectd2html_recursive_fix.dpatch -- fixed
+      collectd2html.pl's recursive mode and improved some defaults; thanks to
+      Yuri D'Elia for reporting this and providing a patch (Closes: #561577).
+    - Added bts557599_powerdns_fix.dpatch -- fixed communication to pdns
+      versions 2.9.22 and above; thanks to <tm@iprog.com> for reporting this
+      and Luke Heberling for providing the patch (Closes: #557599).
+    - Added bts559801_plugin_find_fix.dpatch -- make collectd resistant
+      against copies of libltdl affected by CVE-2009-3736. This fixes a
+      potential but very unlikely security issue, e.g. found in the embedded
+      copy. For details about how collectd might be affected, see
+      <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=559801#15>; thanks to
+      Michael Gilbert for reporting this (Closes: #559801).
+  * debian/rules:
+    - Pass --without-included-ltdl to configure to tell libtool 2 to not use
+      the shipped libltdl but rather the one available in the system. Thus,
+      in the future, libltdl related issues do no longer require updated
+      collectd packages.
+    - Pass --disable-static to configure to tell libtool 2 to not build any
+      static libraries.
+    - Install debian/collectd.conf as an example into "collectd-core".
+    - Output the content of config.log if configure fails -- this might help
+      debugging.
+  * debian/README.Debian:
+    - Added a short explanation of the package split.
+
+ -- Sebastian Harl <tokkee@debian.org>  Sat, 26 Dec 2009 12:06:46 +0100
+
+collectd (4.8.1-2) unstable; urgency=low
+
+  * debian/rules:
+    - Disabled the "java" plugin on hppa for now to work around a backlog in
+      the buildds that currently prevents a transition to testing.
+  * debian/control:
+    - Do not build-depend on openjdk-6-jdk on hppa.
+
+ -- Sebastian Harl <tokkee@debian.org>  Thu, 19 Nov 2009 10:55:33 +0100
+
+collectd (4.8.1-1) unstable; urgency=medium
+
+  * New upstream release:
+    - Fixed a build issue with libiptc that caused a segfault in the iptables
+      plugin; thanks to Rodrigo Campos for reporting this (Closes: #535786).
+    - Updated the powerdns plugin to support pdns 2.9.22 (and above) as well;
+      thanks to Thomas Morgan for reporting this and Luke Heberling for
+      providing a patch (Closes: #535787).
+    New plugins:
+    - Parse JSON files: curl_json
+    - Query data from Java processes using JMX: GenericJMX (Java based plugin)
+    - Atheros wireless LAN chipset statistics: madwifi
+    - Optimized Link State Routing daemon statistics: olsrd
+    - Tokyo Tyrant server statistics: tokyotyrant (disabled in Debian,
+      libtokyotyrant is not available)
+    - Send collected values to a web-server: write_http
+    - ZFS Adaptive Replacement Cache statistics: zfs_arc (disabled in Debian,
+      libkstat is not available)
+    New matches:
+    - Match zero COUNTER values: empty_counter
+  * Set urgency to medium because of the fix for #535786.
+  * debian/rules:
+    - Install contrib/GenericJMX.conf to /usr/share/doc/collectd/examples/.
+    - Disabled the tokyotyrant and zfs_arc plugins - their dependencies are
+      not available.
+  * debian/patches:
+    - Removed bts535787-powerdns-fix-localsocket.dpatch - included upstream.
+    - Removed bts541953-curl-followlocation.dpatch - included upstream.
+    - Removed bts542859-df-fix-ignorelist.dpatch - included upstream.
+    - Removed java-fix-jvm-start.dpatch - included upstream.
+    - Removed libvirt-reconnect.dpatch - included upstream.
+    - Removed network-fix-cacheflush.dpatch - included upstream.
+    - Removed plugin-fix-unregister.dpatch - included upstream.
+    - Added gmond-fix-compile-error.dpatch - upstream patch fixing a compile
+      error in the gmond plugin.
+  * debian/control:
+    - Build depend on libyajl-dev, which is required by the curl_json plugin.
+  * Added debian/README.source:
+    - The file includes a pointer to /usr/share/doc/dpatch/README.source.gz.
+  * New debconf template translations:
+    - ja.po, thanks to Hideki Yamane (Closes: #550968).
+
+ -- Sebastian Harl <tokkee@debian.org>  Thu, 15 Oct 2009 20:54:46 +0200
+
+collectd (4.7.2-1) unstable; urgency=low
+
+  * New upstream release (Closes: #541887).
+    - collectd2html.pl now supports the creation of SVG images; thanks to Ivan
+      Shmakov for providing a patch (Closes: #482185).
+    New plugins:
+    - Connection tracking table size: conntrack
+    - Linux file-system based caching framework statistics: fscache
+    - Receive and interpret Ganglia multicast traffic: gmond
+    - Embedded Java Virtual Machine: java
+    - Query and parse data from a memcache daemon: memcachec
+    - Information about network protocols: protocols
+    - Parse table-like structured files: table
+    - Power consumption measurements from "The Energy Detective" (TED): ted
+    - System uptime: uptime
+  * debian/rules:
+    - Install collectd-unixsock.py to /usr/share/doc/collectd/examples/.
+    - Pass CPPFLAGS and CFLAGS as arguments to configure instead of setting
+      them in the environment - this is the recommended way.
+    - Pass appropriate JAVAC, JAVA_CPPFLAGS and JAVA_LDFLAGS variables to
+      configure, using OpenJDK found in /usr/lib/jvm/java-6-openjdk. The
+      archdir mapping used by the openjdk-6 Debian package is used to find
+      libjvm.so in JAVA_HOME/jre/lib/ARCHDIR/server.
+    - Use -rpath to tell the "java" plugin where to find libjvm.so.
+    - Pass --enable-all-plugins to configure to make sure that the build fails
+      if any prerequisites are missing.
+  * debian/control:
+    - Build-depend on openjdk-6-jdk.
+    - Build-depend on libganglia1-dev (>= 3), required by the gmond plugin.
+    - Build-depend on libgcrypt11-dev, used by the network plugin.
+    - Updated Standards-Version to 3.8.3 (no changes).
+    - Changed build-dependency libmysqlclient15-dev to libmysqlclient-dev -
+      this allows transitions to be handled thru binNMUs if possible.
+  * debian/collectd.install:
+    - Install collectd-java.5.
+  * debian/patches:
+    - Removed libcollectdclient_static_sstrerror.dpatch - included upstream.
+    - Added network-fix-cacheflush.dpatch - upstream patch to fix the handling
+      of the 'CacheFlush' config option of the "network" plugin.
+    - Added libvirt-reconnect.dpatch - upstream patch to let the "libvirt"
+      plugin re-connect to libvirtd if connecting fails.
+    - Added plugin-fix-unregister.dpatch - upstream patch to make
+      'plugin_unregister_read()' functional again, thus fixing a failed
+      assertion in some cases.
+    - Added java-fix-jvm-start.dpatch - upstream patch to fix the JVM startup.
+    - Added bts541953-curl-followlocation.dpatch - upstream patch to let
+      plugins using libcurl follow HTTP redirects; thanks to Joey Hess for
+      reporting this (Closes: #541953).
+    - Added bts535787-powerdns-fix-localsocket.dpatch - upstream patch fixing
+      the handling of the 'LocalSocket' config option of the "powerdns"
+      plugin; thanks to Thomas Morgan for reporting this and Luke Heberling
+      for providing a patch (references: #535787).
+    - Added bts542859-df-fix-ignorelist.dpatch - upstream patch to fix the
+      handling of the ignorelist in the "df" plugin; thanks to Joey Hess for
+      reporting this (Closes: #542859).
+  * debian/README.Debian:
+    - Removed the note about how to get collectd2html.pl working with
+      version 4 of collectd - the script now supports the --recursive option
+      which takes care of that.
+  * debian/collectd.overrides:
+    - Documented the 'binary-or-shlib-defines-rpath' warning - the rpath is
+      required by the "java" plugin.
+  * New debconf template translations:
+    - cs.po, thanks to Martin Sin (Closes: #534206).
+    - ru.po, thanks to Yuri Kozlov (Closes: #539467).
+  * debian/control, debian/rules:
+    - No not limit the "libvirt" plugin to amd64, i386, powerpc - libvirt-dev
+      seems to be available on all architectures now.
+    - Reintroduced a work around for #474087 (broken openipmi .pc files) by
+      providing a fixed version of OpenIPMIpthread.pc in debian/pkgconfig and
+      adding that path to PKG_CONFIG_PATH. Removed the version from the
+      libopenipmi-dev build dependency for now.
+  * debian/collectd.conf:
+    - Set the "apache" plugin's URL according to the default used by Debian's
+      Apache; thanks to Joey Hess for reporting this (Closes: #541888).
+  * debian/libcollectdclient-dev.install, debian/rules:
+    - Do not install libcollectdclient's .la file in favor of the Squeeze
+      release goal to remove those files (for details see
+      <http://lists.debian.org/debian-devel/2009/08/msg00783.html>).
+
+ -- Sebastian Harl <tokkee@debian.org>  Sat, 29 Aug 2009 12:42:15 +0200
+
+collectd (4.6.3-1) unstable; urgency=low
+
+  * New upstream release.
+  * debian/patches:
+    - Removed battery_acpi_complain.dpatch - included upstream.
+    - Removed include_empty_files.dpatch - included upstream.
+    - Removed ntpd_type_pun_fix.dpatch - included upstream.
+    - Removed rrdtool_uninitialized_fix.dpatch - included upstream.
+    - Added libcollectdclient_static_sstrerror.dpatch to make a private
+      function in libcollectdclient static.
+  * debian/rules:
+    - Install collectd-network.py to /usr/share/doc/collectd/examples/.
+
+ -- Sebastian Harl <tokkee@debian.org>  Tue, 02 Jun 2009 22:03:10 +0200
+
+collectd (4.6.2-3) unstable; urgency=low
+
+  * debian/patches:
+    - Actually enabled rrdtool_uninitialized_fix.dpatch - d'oh!
+
+ -- Sebastian Harl <tokkee@debian.org>  Fri, 29 May 2009 15:49:46 +0200
+
+collectd (4.6.2-2) unstable; urgency=low
+
+  * debian/patches:
+    - Added battery_acpi_complain.dpatch - upstream patch to fix excessive
+      error messages in the battery plugin in case /proc/acpi/battery is not
+      available.
+    - Added ntpd_type_pun_fix.dpatch - upstream patch to fix dereferencing of
+      a type-punned pointer identified by GCC 4.4, thanks to Martin Michlmayr
+      for reporting this (Closes: #526667).
+    - Added include_empty_files.dpatch - upstream patch to fix the inclusion
+      of empty configuration files, thanks to Alexander Wirt for reporting
+      this.
+    - Added rrdtool_uninitialized_fix.dpatch - upstream patch to fix an
+      uninitialized value warning in the rrdtool plugin, thanks to Andreas
+      Moog for reporting this.
+  * debian/collectd.conf, debian/filters.conf:
+    - Added a sample filter chain configuration.
+  * debian/rules:
+    - Added contrib/php-collection/ to /usr/share/doc/collectd/.
+    - Disabled "netlink" plugin on mips and mipsel - those architectures do
+      not allow to link non-PIC code into shared objects, thanks to Peter De
+      Schrijver for reporting this (Closes: #524593).
+  * debian/control:
+    - Build-depend on iptables-dev (>= 1.4.3.2-2) to link against the packaged
+      libiptc which is available as shared library since iptables 1.4.3.
+      Depend on versions >= 1.4.3.2-2 because of #524766.
+
+ -- Sebastian Harl <tokkee@debian.org>  Fri, 29 May 2009 14:12:36 +0200
+
+collectd (4.6.2-1) unstable; urgency=low
+
+  * New upstream release.
+    - Fixed the use of struct in6_addr (Closes: #521748).
+    - Added a filter infrastructure based on "matches" and "targets".
+    - Added support for vmem graphs to collection.cgi (Closes: #521993).
+    New plugins:
+    - bind9 name-server and zone statistics: bind
+    - Parse statistics from websites: curl
+    - Query data from a relational database: dbi
+    - OpenVPN traffic and compression statistics: openvpn
+    - Query data from an Oracle database: oracle (disabled in Debian,
+      libclntsh is not available)
+    - Write data via the RRD accelerator daemon: rrdcached (disabled in
+      Debian, rrdclient support is not yet available)
+    New matches:
+    - Match values by their identifier based on regular expressions: regex
+    - Match values with an invalid timestamp: timediff
+    - Select values by their data sources' values: value
+    New targets:
+    - Create and dispatch a notification: notification
+    - Replace parts of an identifier using regular expressions: replace
+    - Set (overwrite) entire parts of an identifier: set
+  * Uploading to unstable, since Lenny has been released.
+  * New debconf template translations:
+    - vi.po, thanks to Clytie Siddall (Closes: #515872).
+    - es.po, thanks to Francisco Javier Cuadrado and Erika Chacón Vivas
+      (Closes: #520988).
+  * debian/patches:
+    - Removed perl-uninitialized-var.dpatch - included upstream.
+  * debian/control:
+    - Added new binary packages libcollectdclient0 and libcollectdclient-dev
+      for the newly added client library.
+    - Added new binary package collectd-utils for optional utilities that pull
+      in additional dependencies. Currently, this only includes
+      collectd-nagios. The new package replaces collectd (<< 4.6.1-1~),
+      because it overwrites /usr/bin/collectd-nagios.
+    - Added libdbi0-dev to the build dependencies - this is required by the
+      dbi plugin.
+    - Moved collectd-dbg from section "utils" to the newly added "debug".
+    - Updated Standards-Version to 3.8.1.
+  * debian/rules:
+    - Use dh_install and *.install files to specify which package some file
+      belongs to.
+  * debian/libcollectdclient0.symbols:
+    - Added symbols file for libcollectdclient.
+  * debian/collectd.overrides:
+    - Override "spelling-error-in-description" for the apache plugin name -
+      all plugins are spelled lowercase.
+  * debian/collectd.init.d:
+    - Start the daemon using start-stop-daemon's --oknodo option to exit
+      successfully if the daemon is already running as requested by section
+      9.3.2 of the Debian Policy 3.8.1.
+  * debian/copyright:
+    - Reference GPL-2 in addition to GPL (latest version), since GPL2-only is
+      used by some files.
+
+ -- Sebastian Harl <sh@tokkee.org>  Thu, 02 Apr 2009 16:38:57 +0200
+
+collectd (4.5.1-1) experimental; urgency=low
+
+  * New upstream release.
+    New plugins:
+    - Count the number of files in directories: filecount
+    - Send desktop notifications to a notification daemon: notify_desktop
+    - Send notification E-mails: notify_email
+    - One-wire sensors information: onewire (experimental, disabled in Debian)
+    - PostgreSQL database statistics: postgresql
+    - Linux ACPI thermal zone information: thermal (Closes: #492580)
+  * Uploading to experimental because of the Lenny freeze.
+  * debian/control:
+    - Added build dependency on libglib2.0-dev and libnotify-dev required by
+      the notify_desktop plugin.
+    - Added build dependency on libesmtp-dev required by the notify_email
+      plugin.
+    - Added build dependency on libpq-dev required by the postgresql plugin.
+    - Let collectd-dbg and collectd-dev depend on ${misc:Depends} - this is
+      required when using debhelper.
+  * debian/rules:
+    - Disabled onewire plugin - owfs is not yet available in Debian.
+    - Install contrib/snmp-probe-host.px to /usr/share/doc/collectd/examples/.
+    - Set CONFIGFILE to /etc/collectd/collectd.conf.
+  * debian/patches:
+    - Added perl-uninitialized-var.dpatch - upstream patch to fix an
+      uninitialized variable warning causing a FTBFS because of -Werror.
+    - Removed myplugin_strcpy.dpatch - applied upstream.
+    - Removed perl_deadlock.dpatch - included upstream.
+    - Removed memory_libstatgrab.dpatch - included upstream.
+    - Removed collectd_memleak.dpatch - included upstream.
+    - Removed snmp_memleak.dpatch - included upstream.
+    - Removed memcached_fdleak.dpatch - included upstream.
+    - Removed memcached_timeout.dpatch - included upstream.
+    - Removed pod-errors.dpatch - included upstream.
+  * debian/collectd.overrides:
+    - Override "spelling-error-in-description" for the postgresql plugin name
+      - all plugins are spelled lowercase.
+  * debian/collectd.init.d:
+    - Do not restart collectd if the configuration test fails.
+
+ -- Sebastian Harl <sh@tokkee.org>  Fri, 12 Dec 2008 10:09:48 +0100
+
+collectd (4.4.2-3) unstable; urgency=low
+
+  * New debconf template translation:
+    - nl.po, thanks to Eric Spreen (Closes: #502204).
+    - sv.po, thanks to Martin Bagge (Closes: #504248).
+  * debian/patches:
+    - Added pod-errors.dpatch to fix some minor POD errors.
+  * debian/rules:
+    - Remove generated manpages in the clean target to avoid cluttering the
+      source diff with the rebuilt manpages.
+  * debian/collectd.conf:
+    - Fixed a wrong type used in the "tail" plugin example.
+
+ -- Sebastian Harl <sh@tokkee.org>  Sat, 06 Dec 2008 16:53:25 +0100
+
+collectd (4.4.2-2) unstable; urgency=low
+
+  * Removed the work around for #474087 (broken openipmi .pc files) introduced
+    in 4.4.1-1 and instead build depend on libopenipmi-dev (>= 2.0.14-1~)
+    which includes fixed .pc files. This fixes an undefined symbol error when
+    loading the ipmi plugin caused by that work around (Closes: #494665).
+  * debian/collectd.init.d:
+    - The "status" command now exits with 1 if collectd is not running.
+    - Do not suppress output when checking the configuration with the -t
+      command line option. This will also show errors that don't cause
+      collectd to abort, e.g. failure to load plugins (Closes: #499232).
+  * debian/control:
+    - Added librrd-dev as the preferred option to the librrd2-dev build
+      dependency - the latter one is a virtual package since rrdtool 1.3.
+  * Added debian/patches/perl_deadlock.dpatch - upstream patch to fix a
+    possible deadlock in the perl plugin (Closes: #499179).
+  * Added debian/patches/memory_libstatgrab.dpatch - trivial upstream patch to
+    fix a typo in the libstatgrab code of the memory plugin.
+  * Added debian/patches/collectd_memleak.dpatch - trivial upstream patch to
+    fix a possible memory leak.
+  * Added debian/patches/snmp_memleak.dpatch - trivial upstream patch to fix a
+    possible memory leak in the snmp plugin.
+  * Added debian/patches/memcached_fdleak.dpatch - trivial upstream patch to
+    fix a possible file descriptor leak in the memcached plugin.
+  * Added debian/patches/memcached_timeout.dpatch - trivial upstream patch to
+    fix the timeout passed to poll(2).
+
+ -- Sebastian Harl <sh@tokkee.org>  Thu, 18 Sep 2008 19:12:54 +0200
+
+collectd (4.4.2-1) unstable; urgency=low
+
+  * New upstream release.
+  * Removed librrd0-dev and libmysqlclient14-dev from the build-dependencies -
+    those package are no longer available since Etch.
+  * Removed byacc from the build-dependencies - collectd now requires bison.
+  * Removed libupsclient-config.sh - upstream now supports pkg-config for
+    libupsclient.
+  * Include collection3 in /usr/share/doc/collectd/examples/:
+    - Updated README.Debian to point the collection3's README.
+    - Added libconfig-general-perl to the suggested packages.
+  * README.Debian: Added a note about how to get collectd2html.pl working with
+    version 4 of collectd.
+  * Added debian/patches/myplugin_strcpy.dpatch - use sstrncpy() instead of
+    strcpy() which is poisoned in collectd.h.
+  * collectd.overrides: Removed shlib-with-non-pic-code for nut.so - the
+    plugin now links against the shared libupsclient.
+  * Do not compress any example files, so they may be used directly.
+
+ -- Sebastian Harl <sh@tokkee.org>  Fri, 25 Jul 2008 19:58:58 +0200
+
+collectd (4.4.1-2) unstable; urgency=low
+
+  * Restrict libcurl4-gnutls-dev build dependency to versions which are not
+    affected by #488701 (Closes: #489091).
+  * Added linux-libc-dev (<< 2.6.25-1) as an option to the linux-libc-dev
+    (>= 2.6.25-4) build dependency - those versions are not affected by
+    #479899.
+  * Added build dependency on pkg-config - this is used by collectd's
+    configure script to check for a couple of libraries.
+  * Added libupsclient-config.sh to imitate libupsclient-config which is no
+    longer available. libupsclient-config.sh is a simple wrapper around
+    pkg-config. This is a workaround until upstream supports pkg-config for
+    libupsclient.
+  * Replaced nut-dev build dependency with libupsclient1-dev:
+    Reenabled the "nut" plugin on all architectures.
+
+ -- Sebastian Harl <sh@tokkee.org>  Mon, 07 Jul 2008 20:45:53 +0000
+
+collectd (4.4.1-1) unstable; urgency=low
+
+  * New upstream release.
+    - Fixed another issue of the sensors plugin affecting some chip types
+      (Closes: #468143).
+    - Fixed creation of "vserver" graphs in collection.cgi (Closes: #475120).
+    - Fixed a segfault when using libperl 5.10.
+    - collectd now ships libiptc itself.
+    New plugins:
+    - Ascent server statistics: ascent
+    - IPMI sensors information: ipmi
+    - PowerDNS name server statistics: powerdns
+    - incremental parsing of logfiles: tail
+    - TeamSpeak2 server statistics: teamspeak2
+    - detailed virtual memory statistics: vmem
+  * Disable "tcpconns" plugin by default (Closes: #478759).
+  * Reenabled iptables plugin on all architectures (Closes: #473435).
+    - Added the plugin to collectd.conf.
+    - Added /usr/share/doc/collectd/examples/iptables/.
+    - Added build dependency on linux-libc-dev (>= 2.6.25-4) - that version is
+      required because of #479899.
+  * New debconf template translations:
+    - gl.po, thanks to Jacobo Tarrio (Closes: #482667).
+  * Added a work around for #474087 (broken openipmi .pc files) by forcing the
+    inclusion of the ipmi plugin and manually specifying the dependencies.
+  * Updated standards-version to 3.8.0 (no changes).
+
+ -- Sebastian Harl <sh@tokkee.org>  Tue, 17 Jun 2008 10:35:51 +0200
+
+collectd (4.3.2-1) unstable; urgency=low
+
+  * New upstream release.
+    - Fixed handling of ignored sensors instances (Closes: #468143).
+    - Fixed reading of wireless noise values (Closes: #471788).
+  * Adopted patches and script to extractDS.px being renamed to rrd_filter.px.
+  * Clarified debconf template in respect to packages required for the data
+    migration (Closes: #469336).
+  * collectd.conf: Moved logging plugins to the top of the file.
+  * New debconf template translations:
+    - de.po, thanks to Kai Wasserbäch (Closes: #469334).
+    - fr.po, thanks to Florent Usseil (Closes: #468813).
+    - pt.po, thanks to Américo Monteiro (Closes: #469745, #472183).
+  * collectd.init.d: Consider the DISABLE option only when starting collectd.
+  * Disabled iptables plugin - libiptc is no longer available in Debian.
+    - Removed the plugin from collectd.conf.
+    - Removed /usr/share/doc/collectd/examples/iptables/.
+
+ -- Sebastian Harl <sh@tokkee.org>  Mon, 31 Mar 2008 12:13:18 +0200
+
+collectd (4.3.0-2) unstable; urgency=low
+
+  * Added "lm-sensors" to the recommended packages and README.Debian.plugins
+    (this is required by the sensors plugin).
+  * Restrict the libvirt-dev build dependency and the libvirt plugin to amd64,
+    i386 and powerpc (libvirt is only available on those architectures).
+  * Restrict the libvirt-dev build dependency to versions >= 0.4.0-6 to make
+    sure Xen is supported and to fix some strange FTBFS complaining about a
+    missing symbol "virDomainBlockStats".
+
+ -- Sebastian Harl <sh@tokkee.org>  Thu, 06 Mar 2008 23:37:44 +0100
+
+collectd (4.3.0-1) unstable; urgency=low
+
+  * New upstream release.
+    - Added basic support for monitoring by introducing notifications and
+      threshold checking.
+    - Reverse lookups can be disabled using the "ReverseLookups" option of the
+      ntpd plugin (Closes: #455162).
+    New plugins:
+    - Set the hostname to an unique identifier: uuid
+    - CPU, dist, network statistics of guest systems: libvirt
+  * Upload to unstable: With the latest changes to the perl plugin, all parts
+    of collectd are suitable for a release.
+  * Added libvirt-dev, libxml2-dev and libhal-dev to the build dependencies.
+  * Updated package description to mention the monitoring support.
+  * Install liboping/oping.h to collectd-dev as well.
+  * collectd.init.d: Optionally start collectdmon to monitor collectd. This
+    can be configured using the USE_COLLECTDMON variable - enabled by default.
+  * collectd.init.d: Added ENABLE_COREFILES option - if enabled the core file
+    limit will be set to unlimited - disabled by default.
+  * Compile collectd with -DLT_LAZY_OR_NOW='RTLD_LAZY|RTLD_GLOBAL' to force
+    lt_dlopen() to use the RTLD_GLOBAL flag which is required by the perl
+    plugin (which would otherwise be unable to find symbols defined in libperl
+    when loading perl modules that require such symbols).
+  * Disable debugging support.
+  * watch file: Added uversionmangle for "beta" and "-rc".
+  * Override "spelling-error-in-description" for the mysql plugin name - all
+    plugins are spelled lowercase.
+
+ -- Sebastian Harl <sh@tokkee.org>  Tue, 19 Feb 2008 21:44:42 +0100
+
+collectd (4.2.4-1) experimental; urgency=low
+
+  * New upstream release.
+  * Added versioned build-dependency on dpkg-dev (>= 1.14.10); collectd FTBFS
+    with earlier versions because of #452262.
+  * Added libregexp-common-perl (required by Collectd::Unixsock) to the
+    suggested packages.
+  * Added support for the "status" command to the init script.
+  * Updated standards-version to 3.7.3 (no changes).
+  * Added --without-libstatgrab to the configure options to prevent collectd
+    from being linked against this library if it's available.
+  * Disabled xmms plugin - xmms will be removed from unstable
+    (Closes: #459707).
+
+ -- Sebastian Harl <sh@tokkee.org>  Sun, 27 Jan 2008 18:34:23 +0100
+
+collectd (4.2.1-1) experimental; urgency=low
+
+  * New upstream release.
+  * Changed XS-Vcs-* to Vcs-*.
+  * Marked advanced rrdtool configuration options as such in collectd.conf.
+  * Added exec-munin.px, exec-munin.conf, exec-smartctl and snmp-data.conf to
+    /usr/share/doc/collectd/examples/.
+  * Moved "Homepage" field from package description to the source stanza.
+
+ -- Sebastian Harl <sh@tokkee.org>  Wed, 21 Nov 2007 09:50:46 +0000
+
+collectd (4.2.0-1) experimental; urgency=low
+
+  * New upstream release.
+    - Added options to collectd2html.pl to specify host and data directory
+      (Closes: #438499).
+    - Link against a thread-safe version of librrd.
+    New plugins:
+    - IPVS connection statistics: ipvs
+    - Statistic of the memcached distributed caching system: memcached
+    - Detailed Linux network interface and routing statistics: netlink (32bit
+      systems only)
+    - Nginx (a HTTP and E-Mail server/proxy) statistics: nginx
+    - Values from SNMP enabled network devices: snmp
+    - Number of TCP connections to specific ports: tcpconns
+    - Bitrate and frequency of music played with XMMS: xmms
+  * Updated init script to wait for collectd to shut down (Closes: #422208).
+  * Merged all plugin packages into the collectd binary package.
+  * Added README.Debian.plugins and gen_plugin_deps.pl to document the plugin
+    dependencies.
+  * Added collectd.overrides to override shlib-with-non-pic-code errors of
+    plugins liked against static libraries which have not been linked with
+    -fPIC.
+  * Removed debian/examples/myplugin.c and debian/examples/MyPlugin.pm - they
+    are included in the upstream sources now.
+  * Added libcurl4-gnutls-dev as option to the libcurl3-gnutls-dev build
+    dependency.
+
+ -- Sebastian Harl <sh@tokkee.org>  Sun, 28 Oct 2007 13:38:21 +0100
+
+collectd (4.0.7-1) experimental; urgency=low
+
+  * New upstream release.
+  * Disable iptables and nut plugins on hppa as well to work around a FTBFS
+    caused by #358637 and presumably #419684 (Closes: #430933).
+  * Changed collectd-dbg's section to "utils".
+  * Added httpd-cgi to suggested packages.
+  * Added documentation of the provided examples to README.Debian, thanks to
+    Eduard Bloch for his proposal (Closes: #434182).
+
+ -- Sebastian Harl <sh@tokkee.org>  Fri, 31 Aug 2007 10:04:41 +0200
+
+collectd (4.0.3-1) experimental; urgency=low
+
+  * New upstream release.
+
+ -- Sebastian Harl <sh@tokkee.org>  Tue, 19 Jun 2007 21:41:21 +0100
+
+collectd (4.0.2-1) experimental; urgency=low
+
+  * New upstream release (Closes: #428114).
+    - Added large file support (Closes: #422212).
+    - Rewrite of the plugin system to allow more flexibility by using
+      different types of plugins.
+    - Added Nagios plugin to query collectd from Nagios.
+    New plugins:
+    - Output to "comma separated values" (CSV) files: csv
+    - Output to RRD files: rrdtool
+    - IO via the network: network
+    - External runtime interface: unixsock
+    - Embedding a Perl interpreter: perl
+    - Logging to files, STDOUT or STDERR: logfile
+    - Logging to syslog: syslog
+    - Amount of available entropy: entropy
+    - Execution of external programs: exec
+    - Iptables statistics: iptables (32bit systems only)
+    - IRQ counters: irq
+    - UPS information: nut (32bit systems only)
+  * New binary package collectd-perl (linking against libperl).
+    - Added collectd-perl to suggested packages.
+  * examples/myplugin.c: Converted to the new plugin interface.
+  * Enabled debugging.
+  * Added possibility to automatically migrate RRD files to collectd-4 using
+    migrate-3-4.px and extractDS.px provided by upstream.
+    - Added extractDS_path.dpatch to set an absolute path in migrate-3-4.px.
+    - Using po-debconf to make translations of debconf templates possible.
+  * Added NEWS.Debian with notes regarding the upgrade to collectd-4.
+  * Updated init script to only start a single collectd process.
+  * Added examples/MyPlugin.pm.
+  * Added XS-Vcs-{Git,Browser} tags.
+  * Added check_plugins.pl to check the build result of all plugins.
+  * Do not build apple_sensors and tape plugins as they do not provide any
+    functionality any longer.
+
+ -- Sebastian Harl <sh@tokkee.org>  Wed, 13 Jun 2007 18:58:34 +0100
+
+collectd (3.11.2-1) experimental; urgency=low
+
+  * New upstream release.
+  * Removed sensors-ignorelist.dpatch - has been merged upstream.
+  * Removed email-ignore-size-le-0.dpatch - has been merged upstream.
+  * Added watch file.
+  * examples/myplugin.c: Pass "-" instead of NULL to plugin_submit().
+
+ -- Sebastian Harl <sh@tokkee.org>  Thu, 15 Feb 2007 09:19:15 +0000
+
+collectd (3.11.0-1) experimental; urgency=low
+
+  * New upstream release.
+    New plugins:
+    - DNS traffic (query types, response codes, opcodes and traffic): dns
+    - E-Mail statistics (count, traffic, spam scores and checks): email
+    - Motherboard monitor: mbmon
+    - Multimeter statistics: multimeter (beta version)
+  * Upload to experimental because of Etch freeze.
+  * New binary package collectd-dns (linking against libpcap).
+    - Added collectd-dns to suggested packages.
+  * Do not split off packages introducing new recommendations or suggestions.
+    - Merge collectd-hddtemp into collectd.
+    - Add hddtemp and mbmon to suggested packages.
+  * Added sensors-ignorelist.dpatch: Avoid assertion in ignorelist_match ()
+    when sensors plugin is not configured.
+  * Added email-ignore-size-le-0.dpatch: Ignore the size of an email if it is
+    less than or equal to zero.
+
+ -- Sebastian Harl <sh@tokkee.org>  Sun, 24 Dec 2006 14:09:39 +0000
+
+collectd (3.10.4-1) unstable; urgency=low
+
+  * New upstream release.
+    - Fix an infinite loop in server mode if binding to a socket fails and
+      close the socket descriptor (Closes: #404018).
+  * examples/myplugin.c: Include system headers before collectd headers to
+    make it compile without any autoconf defines set (Closes: #401075).
+
+ -- Sebastian Harl <sh@tokkee.org>  Fri, 22 Dec 2006 00:33:30 +0000
+
+collectd (3.10.3-1) unstable; urgency=low
+
+  * New upstream release.
+  * Made package binNMUable:
+    - Upstream assures API backward compatibility only between patch releases.
+  * LSBized init script.
+
+ -- Sebastian Harl <sh@tokkee.org>  Mon,  6 Nov 2006 13:09:28 +0000
+
+collectd (3.10.2-1) unstable; urgency=low
+
+  * New upstream release.
+    - Retry connecting to remote host and database in ping and mysql plugins
+      respectively (Closes: #393742).
+  * Replaced libcurl3-dev build dependency with libcurl3-gnutls-dev to prevent
+    linking against libssl.
+
+ -- Sebastian Harl <sh@tokkee.org>  Fri,  3 Nov 2006 15:18:17 +0000
+
+collectd (3.10.1-4) unstable; urgency=low
+
+  * Changed collectd-dbg's section and priority to "devel" and "extra"
+    respectively.
+  * Set init start sequence code to 95 to be sure to start after any daemons
+    that data is collected from.
+
+ -- Sebastian Harl <sh@tokkee.org>  Thu,  5 Oct 2006 10:25:07 +0000
+
+collectd (3.10.1-3) unstable; urgency=low
+
+  * Added --oknodo to start-stop-daemon in the init script (Closes: #379703).
+
+ -- Sebastian Harl <sh@tokkee.org>  Tue, 25 Jul 2006 18:34:55 +0200
+
+collectd (3.10.1-2) unstable; urgency=low
+
+  * Added collectd-dbg package.
+
+ -- Sebastian Harl <sh@tokkee.org>  Sun, 23 Jul 2006 23:39:42 +0200
+
+collectd (3.10.1-1) unstable; urgency=low
+
+  * New upstream release.
+  * Dynamically link against external liboping.
+    - New binary package collectd-ping.
+    - Added collectd-ping to suggested packages.
+  * Moved config file from /usr/share/doc/collectd/examples/ to
+    /etc/collectd/.
+
+ -- Sebastian Harl <sh@tokkee.org>  Sat, 22 Jul 2006 21:43:37 +0200
+
+collectd (3.10.0-1) unstable; urgency=low
+
+  * New upstream release.
+    New plugins:
+    - APC UPS's charge, load, input/output/battery voltage, etc.: apcups
+    - NTP daemon's local clock drift, offset to peers, etc.: ntpd
+  * Upstream no longer provides a debian/ directory. Thus no repackaging is
+    required any longer.
+  * Not using getifaddrs() is now the default in upstream. getifaddrs.dpatch
+    no longer needed.
+  * Added collectd-hddtemp as a suggestion to the collectd package.
+
+ -- Sebastian Harl <sh@tokkee.org>  Sun,  9 Jul 2006 21:52:13 +0200
+
+collectd (3.9.4+debian-1) unstable; urgency=low
+
+  * Initial release (Closes: #373008).
+  * Removed upstream's debian/ directory from .orig.tar.gz.
+  * getifaddrs.dpatch: Patching src/traffic.c to read data from /proc instead
+    of using getifaddrs(). getifaddrs() does not seem to work correctly on 
+    AMD64.
+
+ -- Sebastian Harl <sh@tokkee.org>  Fri,  7 Jul 2006 15:49:42 +0200
+
--- collectd-4.10.1.orig/debian/libcollectdclient0.symbols
+++ collectd-4.10.1/debian/libcollectdclient0.symbols
@@ -0,0 +1,13 @@
+libcollectdclient.so.0 libcollectdclient0 #MINVER#
+ lcc_connect@Base 4.6.0
+ lcc_disconnect@Base 4.6.0
+ lcc_flush@Base 4.6.0
+ lcc_getval@Base 4.6.0
+ lcc_identifier_to_string@Base 4.6.0
+ lcc_listval@Base 4.6.0
+ lcc_putval@Base 4.6.0
+ lcc_strerror@Base 4.6.0
+ lcc_string_to_identifier@Base 4.6.0
+ lcc_version@Base 4.6.0
+ lcc_version_extra@Base 4.6.0
+ lcc_version_string@Base 4.6.0
--- collectd-4.10.1.orig/debian/collectd-utils.install
+++ collectd-4.10.1/debian/collectd-utils.install
@@ -0,0 +1,3 @@
+usr/bin/collectd-nagios
+usr/share/man/man1/collectd-nagios.1
+
--- collectd-4.10.1.orig/debian/collectd-core.install
+++ collectd-4.10.1/debian/collectd-core.install
@@ -0,0 +1,15 @@
+../../contrib/migrate-3-4.px usr/lib/collectd/utils
+../../contrib/rrd_filter.px usr/lib/collectd/utils
+../collection.conf etc/collectd/
+usr/lib/collectd/*.so
+usr/sbin
+usr/share/collectd
+usr/share/man/man1/collectdmon.1
+usr/share/man/man1/collectd.1
+usr/share/man/man3/Collectd::Unixsock.3pm
+usr/share/man/man5/collectd-*.5
+usr/share/man/man5/collectd.conf.5
+usr/share/man/man5/types.db.5
+usr/share/perl5
+var
+
--- collectd-4.10.1.orig/debian/collectd-core.collectd.default
+++ collectd-4.10.1/debian/collectd-core.collectd.default
@@ -0,0 +1,18 @@
+# /etc/default/collectd
+
+# 0: start collectd on boot, 1: do not start collectd on boot
+# default: 0
+DISABLE=0
+
+# 0: start collectd in stand-alone mode, 1: monitor collectd using collectdmon
+# default: 1
+USE_COLLECTDMON=1
+
+# number of seconds to wait for collectd to shut down
+# default: 30
+MAXWAIT=30
+
+# 0: do not enable core-files, 1: enable core-files ... if collectd crashes
+# default: 0
+ENABLE_COREFILES=0
+
--- collectd-4.10.1.orig/debian/patches/00list
+++ collectd-4.10.1/debian/patches/00list
@@ -0,0 +1,7 @@
+rrd_filter_path.dpatch
+collection_conf_path.dpatch
+bts559801_plugin_find_fix.dpatch
+bts595756-notify_email-segfault.dpatch
+bts592623-curl_json-file.dpatch
+bts596128-reheap-fix.dpatch
+CVE-2010-4336.dpatch
--- collectd-4.10.1.orig/debian/patches/bts596128-reheap-fix.dpatch
+++ collectd-4.10.1/debian/patches/bts596128-reheap-fix.dpatch
@@ -0,0 +1,46 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## bts596128-reheap-fix.dpatch by Florian Forster <octo@verplant.org>
+##
+## DP: src/utils_heap.c: Fix calculation of the parent's index.
+## DP:
+## DP: This resulted in the "upwards" reheap function to return prematurely,
+## DP: leaving the heap condition violated.
+
+@DPATCH@
+
+diff a/src/utils_heap.c b/src/utils_heap.c
+--- a/src/utils_heap.c
++++ b/src/utils_heap.c
+@@ -96,7 +96,7 @@ static void reheap (c_heap_t *h, size_t root, enum reheap_direction dir)
+     return;
+ 
+   if (dir == DIR_UP)
+-    reheap (h, root / 2, dir);
++    reheap (h, (root - 1) / 2, dir);
+   else if (dir == DIR_DOWN)
+     reheap (h, min, dir);
+ } /* void reheap */
+@@ -140,6 +140,8 @@ void c_heap_destroy (c_heap_t *h)
+ 
+ int c_heap_insert (c_heap_t *h, void *ptr)
+ {
++  size_t index;
++
+   if ((h == NULL) || (ptr == NULL))
+     return (-EINVAL);
+ 
+@@ -162,11 +164,12 @@ int c_heap_insert (c_heap_t *h, void *ptr)
+   }
+ 
+   /* Insert the new node as a leaf. */
+-  h->list[h->list_len] = ptr;
++  index = h->list_len;
++  h->list[index] = ptr;
+   h->list_len++;
+ 
+   /* Reorganize the heap from bottom up. */
+-  reheap (h, /* parent of this node = */ (h->list_len - 1) / 2, DIR_UP);
++  reheap (h, /* parent of this node = */ (index - 1) / 2, DIR_UP);
+   
+   pthread_mutex_unlock (&h->lock);
+   return (0);
--- collectd-4.10.1.orig/debian/patches/bts595756-notify_email-segfault.dpatch
+++ collectd-4.10.1/debian/patches/bts595756-notify_email-segfault.dpatch
@@ -0,0 +1,140 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## bts595756-notify_email-segfault.dpatch
+## by Florian Forster <octo@verplant.org>
+##
+## DP: notify_email plugin: Serialize all accesses to libesmtp using a mutex.
+## DP:
+## DP: libesmtp is not thread-safe. This fixes segfaults when accessing the
+## DP: plugin in parallel.
+
+@DPATCH@
+
+diff a/src/notify_email.c b/src/notify_email.c
+--- a/src/notify_email.c
++++ b/src/notify_email.c
+@@ -1,6 +1,7 @@
+ /**
+  * collectd - src/notify_email.c
+  * Copyright (C) 2008  Oleg King
++ * Copyright (C) 2010  Florian Forster
+  *
+  * This program is free software; you can redistribute it and/or modify it
+  * under the terms of the GNU General Public License as published by the
+@@ -18,6 +19,7 @@
+  *
+  * Authors:
+  *   Oleg King <king2 at kaluga.ru>
++ *   Florian Forster <octo at collectd.org>
+  **/
+ 
+ #include "collectd.h"
+@@ -26,6 +28,7 @@
+ 
+ #include <auth-client.h>
+ #include <libesmtp.h>
++#include <pthread.h>
+ 
+ #define MAXSTRING               256
+ 
+@@ -45,6 +48,7 @@ static char **recipients;
+ static int recipients_len = 0;
+ 
+ static smtp_session_t session;
++static pthread_mutex_t session_lock = PTHREAD_MUTEX_INITIALIZER;
+ static smtp_message_t message;
+ static auth_context_t authctx = NULL;
+ 
+@@ -113,17 +117,23 @@ static int notify_email_init (void)
+ {
+   char server[MAXSTRING];
+ 
++  ssnprintf(server, sizeof (server), "%s:%i",
++      (smtp_host == NULL) ? DEFAULT_SMTP_HOST : smtp_host,
++      smtp_port);
++
++  pthread_mutex_lock (&session_lock);
++
+   auth_client_init();
+-  if (!(session = smtp_create_session ())) {
++
++  session = smtp_create_session ();
++  if (session == NULL) {
++    pthread_mutex_unlock (&session_lock);
+     ERROR ("notify_email plugin: cannot create SMTP session");
+     return (-1);
+   }
+ 
+   smtp_set_monitorcb (session, monitor_cb, NULL, 1);
+   smtp_set_hostname (session, hostname_g);
+-  ssnprintf(server, sizeof (server), "%s:%i",
+-      (smtp_host == NULL) ? DEFAULT_SMTP_HOST : smtp_host,
+-      smtp_port);
+   smtp_set_server (session, server);
+ 
+   if (smtp_user && smtp_password) {
+@@ -133,18 +143,30 @@ static int notify_email_init (void)
+   }
+ 
+   if ( !smtp_auth_set_context (session, authctx)) {
++    pthread_mutex_unlock (&session_lock);
+     ERROR ("notify_email plugin: cannot set SMTP auth context");
+     return (-1);   
+   }
+ 
++  pthread_mutex_unlock (&session_lock);
+   return (0);
+ } /* int notify_email_init */
+ 
+ static int notify_email_shutdown (void)
+ {
+-  smtp_destroy_session (session);
+-  auth_destroy_context (authctx);
++  pthread_mutex_lock (&session_lock);
++
++  if (session != NULL)
++    smtp_destroy_session (session);
++  session = NULL;
++
++  if (authctx != NULL)
++    auth_destroy_context (authctx);
++  authctx = NULL;
++
+   auth_client_exit();
++
++  pthread_mutex_unlock (&session_lock);
+   return (0);
+ } /* int notify_email_shutdown */
+ 
+@@ -248,7 +270,16 @@ static int notify_email_notification (const notification_t *n,
+       n->host,
+       n->message);
+ 
++  pthread_mutex_lock (&session_lock);
++
++  if (session == NULL) {
++    /* Initialization failed or we're in the process of shutting down. */
++    pthread_mutex_unlock (&session_lock);
++    return (-1);
++  }
++
+   if (!(message = smtp_add_message (session))) {
++    pthread_mutex_unlock (&session_lock);
+     ERROR ("notify_email plugin: cannot set SMTP message");
+     return (-1);   
+   }
+@@ -264,6 +295,7 @@ static int notify_email_notification (const notification_t *n,
+     char buf[MAXSTRING];
+     ERROR ("notify_email plugin: SMTP server problem: %s",
+         smtp_strerror (smtp_errno (), buf, sizeof buf));
++    pthread_mutex_unlock (&session_lock);
+     return (-1);
+   } else {
+     const smtp_status_t *status;
+@@ -274,6 +306,7 @@ static int notify_email_notification (const notification_t *n,
+     smtp_enumerate_recipients (message, print_recipient_status, NULL);
+   }
+ 
++  pthread_mutex_unlock (&session_lock);
+   return (0);
+ } /* int notify_email_notification */
+ 
--- collectd-4.10.1.orig/debian/patches/bts559801_plugin_find_fix.dpatch
+++ collectd-4.10.1/debian/patches/bts559801_plugin_find_fix.dpatch
@@ -0,0 +1,24 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## bts559801_plugin_find_fix.dpatch by Sebastian Harl <sh@tokkee.org>
+##
+## DP: plugin: Use strcasecmp rather than strncasecmp to find a plugin.
+## DP:
+## DP: This makes collectd resistant against vulnerable copies of libltdl
+## DP: (CVE-2009-3736).
+## DP: See <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=559801#15>
+## DP: for details.
+
+@DPATCH@
+
+diff a/src/plugin.c b/src/plugin.c
+--- a/src/plugin.c
++++ b/src/plugin.c
+@@ -572,7 +572,7 @@ int plugin_load (const char *type)
+ 
+ 	while ((de = readdir (dh)) != NULL)
+ 	{
+-		if (strncasecmp (de->d_name, typename, typename_len))
++		if (strcasecmp (de->d_name, typename))
+ 			continue;
+ 
+ 		status = ssnprintf (filename, sizeof (filename),
--- collectd-4.10.1.orig/debian/patches/collection_conf_path.dpatch
+++ collectd-4.10.1/debian/patches/collection_conf_path.dpatch
@@ -0,0 +1,19 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## collection_conf_path.dpatch by Sebastian Harl <sh@tokkee.org>
+##
+## DP: Set the path of collection.conf to /etc/collectd/.
+
+@DPATCH@
+
+diff a/contrib/collection.cgi b/contrib/collection.cgi
+--- a/contrib/collection.cgi
++++ b/contrib/collection.cgi
+@@ -11,7 +11,7 @@ use URI::Escape ('uri_escape');
+ use RRDs ();
+ use Data::Dumper ();
+ 
+-our $Config = "/etc/collection.conf";
++our $Config = "/etc/collectd/collection.conf";
+ our @DataDirs = ();
+ our $LibDir;
+
--- collectd-4.10.1.orig/debian/patches/rrd_filter_path.dpatch
+++ collectd-4.10.1/debian/patches/rrd_filter_path.dpatch
@@ -0,0 +1,43 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## rrd_filter_path.dpatch by Sebastian Harl <sh@tokkee.org>
+##
+## DP: Set the path of rrd_filter.px to /usr/lib/collectd/utils/.
+
+@DPATCH@
+
+diff a/contrib/migrate-3-4.px b/contrib/migrate-3-4.px
+--- a/contrib/migrate-3-4.px
++++ b/contrib/migrate-3-4.px
+@@ -166,7 +166,7 @@ for (@Files)
+ 			my $src_ds = $src_dses->[$i];
+ 			$dest->{'type_instance'} = $type_instances->[$i];
+ 			$dest_filename = get_filename ($dest);
+-			print "./rrd_filter.px -i '$InDir/$orig_filename' -m '${src_ds}:${dst_ds}' -o '$OutDir/$dest_filename'\n";
++			print "/usr/lib/collectd/utils/rrd_filter.px -i '$InDir/$orig_filename' -m '${src_ds}:${dst_ds}' -o '$OutDir/$dest_filename'\n";
+ 		}
+ 	}
+ 	elsif (exists ($TypeRename{$orig->{'type'}}))
+@@ -361,19 +361,19 @@ sub special_disk
+ 		$OutDirs{$dest_directory} = 1;
+ 	}
+ 
+-	print "./rrd_filter.px -i '$InDir/$orig_filename' -m 'rmerged:read' -m 'wmerged:write' -o '$OutDir/$dest_filename'\n";
++	print "/usr/lib/collectd/utils/rrd_filter.px -i '$InDir/$orig_filename' -m 'rmerged:read' -m 'wmerged:write' -o '$OutDir/$dest_filename'\n";
+ 
+ 	$dest->{'type'} = 'disk_octets';
+ 	$dest_filename = get_filename ($dest);
+-	print "./rrd_filter.px -i '$InDir/$orig_filename' -m 'rbytes:read' -m 'wbytes:write' -o '$OutDir/$dest_filename'\n";
++	print "/usr/lib/collectd/utils/rrd_filter.px -i '$InDir/$orig_filename' -m 'rbytes:read' -m 'wbytes:write' -o '$OutDir/$dest_filename'\n";
+ 
+ 	$dest->{'type'} = 'disk_ops';
+ 	$dest_filename = get_filename ($dest);
+-	print "./rrd_filter.px -i '$InDir/$orig_filename' -m 'rcount:read' -m 'wcount:write' -o '$OutDir/$dest_filename'\n";
++	print "/usr/lib/collectd/utils/rrd_filter.px -i '$InDir/$orig_filename' -m 'rcount:read' -m 'wcount:write' -o '$OutDir/$dest_filename'\n";
+ 
+ 	$dest->{'type'} = 'disk_time';
+ 	$dest_filename = get_filename ($dest);
+-	print "./rrd_filter.px -i '$InDir/$orig_filename' -m 'rtime:read' -m 'wtime:write' -o '$OutDir/$dest_filename'\n";
++	print "/usr/lib/collectd/utils/rrd_filter.px -i '$InDir/$orig_filename' -m 'rtime:read' -m 'wtime:write' -o '$OutDir/$dest_filename'\n";
+ }
+ 
+ sub exit_usage
--- collectd-4.10.1.orig/debian/patches/bts592623-curl_json-file.dpatch
+++ collectd-4.10.1/debian/patches/bts592623-curl_json-file.dpatch
@@ -0,0 +1,22 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## bts592623-curl_json-file.dpatch by Florian Forster <octo@verplant.org>
+##
+## DP: curl json: Fix checking the response code.
+## DP:
+## DP: This fixes access to file:// URLs.
+
+@DPATCH@
+
+diff a/src/curl_json.c b/src/curl_json.c
+--- a/src/curl_json.c
++++ b/src/curl_json.c
+@@ -775,7 +775,8 @@ static int cj_curl_perform (cj_t *db, CURL *curl) /* {{{ */
+   curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &url);
+   curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &rc);
+ 
+-  if (rc != 200)
++  /* The response code is zero if a non-HTTP transport was used. */
++  if ((rc != 0) && (rc != 200))
+   {
+     ERROR ("curl_json plugin: curl_easy_perform failed with response code %ld (%s)",
+            rc, url);
--- collectd-4.10.1.orig/debian/patches/CVE-2010-4336.dpatch
+++ collectd-4.10.1/debian/patches/CVE-2010-4336.dpatch
@@ -0,0 +1,18 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+##
+
+@DPATCH@
+--- ../old/collectd-4.10.1/src/utils_rrdcreate.c	2010-07-09 20:01:59.000000000 +1000
++++ collectd-4.10.1/src/utils_rrdcreate.c	2010-12-08 17:41:34.000000000 +1100
+@@ -398,10 +398,9 @@
+   memcpy (argv + ds_num, rra_def, rra_num * sizeof (char *));
+   argv[ds_num + rra_num] = NULL;
+ 
+-  assert (vl->time > 10);
+   status = srrd_create (filename,
+       (cfg->stepsize > 0) ? cfg->stepsize : vl->interval,
+-      vl->time - 10,
++      (vl->time > 10) ? (vl->time - 10) : vl->time,
+       argc, (const char **) argv);
+ 
+   free (argv);
--- collectd-4.10.1.orig/debian/po/gl.po
+++ collectd-4.10.1/debian/po/gl.po
@@ -0,0 +1,73 @@
+# Galician translation of collectd's debconf templates
+# This file is distributed under the same license as the collectd package.
+# Jacobo Tarrio <jtarrio@debian.org>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2008-05-24 11:24+0100\n"
+"Last-Translator: Jacobo Tarrio <jtarrio@debian.org>\n"
+"Language-Team: Galician <proxecto@trasno.net>\n"
+"Language: gl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "A organización dos ficheiros RRD cambiou"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"A organización dos ficheiros RRD creados por collectd cambiou "
+"significativamente desde a versión 3.x. Para conservar os seus datos antigos "
+"ten que migralos. Pódese facer empregando /usr/lib/collectd-core/utils/"
+"migrate-3-4.px."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Este paso precisa de que os paquetes perl e rrd estean instalados, o que "
+"actualmente non é o caso. Ten que realizar a migración manualmente."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr "Consulte /usr/share/doc/collectd-core/NEWS.Debian para máis detalles."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "¿Migrar automaticamente os ficheiros RRD?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Este paso pódese realizar automaticamente. Neste caso faise unha copia de /"
+"var/lib/collectd/ en /var/backups/. Este script aínda é experimental, porén. "
+"Non espere que funcione en tódolos casos."
--- collectd-4.10.1.orig/debian/po/POTFILES.in
+++ collectd-4.10.1/debian/po/POTFILES.in
@@ -0,0 +1,2 @@
+[type: gettext/rfc822deb] collectd-core.templates
+
--- collectd-4.10.1.orig/debian/po/es.po
+++ collectd-4.10.1/debian/po/es.po
@@ -0,0 +1,101 @@
+# collectd po-debconf translation to spanish
+# Copyright (C) 2008, 2009 Software in the Public Interest
+# This file is distributed under the same license as the collectd package.
+#
+# Changes:
+#   - Initial translation
+#       Erika Chacón Vivas <miss.herickbeth@gmail.com>, 2008
+#
+#   - Updates
+#       Francisco Javier Cuadrado <fcocuadrado@gmail.com>, 2009
+#
+# Traductores, si no conocen el formato PO, merece la pena leer la
+# documentación de gettext, especialmente las secciones dedicadas a este
+# formato, por ejemplo ejecutando:
+#       info -n '(gettext)PO Files'
+#       info -n '(gettext)Header Entry'
+#
+# Equipo de traducción al español, por favor lean antes de traducir
+# los siguientes documentos:
+#
+#   - El proyecto de traducción de Debian al español
+#     http://www.debian.org/intl/spanish/coordinacion
+#     especialmente las notas de traducción en
+#     http://www.debian.org/intl/spanish/notas
+#
+#   - La guía de traducción de po's de debconf:
+#     /usr/share/doc/po-debconf/README-trans
+#     o http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd 4.4.2-3\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2009-03-21 23:09+0100\n"
+"Last-Translator: Francisco Javier Cuadrado <fcocuadrado@gmail.com>\n"
+"Language-Team: Debian l10n Spanish <debian-l10n-spanish@lists.debian.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "Ha cambiado la distribución de los archivos RRD"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"La distribución de los archivos RRD creados por collectd ha cambiado "
+"significativamente desde la versión 3.x. Los datos antiguos se deben migrar "
+"para que se puedan seguir utilizando. Puede hacer esto utilizando el "
+"programa «/usr/lib/collectd-core/utils/migrate-3-4.px». "
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Actualmente no tiene instalados los paquetes perl y rrdtool, que son "
+"necesarios para poder llevar a cabo este paso. Tendrá que realizar la "
+"migración manualmente."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr ""
+"Vea el archivo «/usr/share/doc/collectd-core/NEWS.Debian» para más detalles."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "¿Desea migrar automáticamente los archivos RRD?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Este paso se puede realizar automáticamente. En este caso se genera una "
+"copia de seguridad de «/var/lib/collectd/» en «/var/backups/». El script que "
+"hace esto es aún experimental. No se espera que funcione en todos los casos."
--- collectd-4.10.1.orig/debian/po/ja.po
+++ collectd-4.10.1/debian/po/ja.po
@@ -0,0 +1,73 @@
+# Copyright (C) 2009 Sebastian Harl <tokkee@debian.org>
+# This file is distributed under the same license as the collectd package.
+# Hideki Yamane (Debian-JP) <henrich@debian.or.jp>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd 4.7.2-1\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2009-10-06 17:32+0900\n"
+"Last-Translator: Hideki Yamane (Debian-JP) <henrich@debian.or.jp>\n"
+"Language-Team: Japanese <debian-japanese@lists.debian.org>\n"
+"Language: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "RRD ファイルの配置位置が変更されました"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"collectd によって作成された RRD ファイルの配置位置はバージョン 3.x から大きく"
+"変わりました。移行を行うために古いデータを保存します。これは /usr/lib/"
+"collectd-core/utils/migrate-3-4.px を使って行われます。"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"この作業には perl パッケージと rrdtool パッケージの両方がインストールされてい"
+"る必要がありますが、現在そうなっていないようです。手動で移行作業を実行する必"
+"要があります。"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr ""
+"詳細については /usr/share/doc/collectd-core/NEWS.Debian を参照してください。"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "RRD ファイルの自動変換を試みますか?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"この作業は自動的に行われます。今回の場合 /var/lib/collectd/ のバックアップ"
+"は /var/backups/ に作成されます。しかし、このスクリプトはまだ実験的なもので"
+"す。あらゆる状況で動作するのは期待しないでください。"
--- collectd-4.10.1.orig/debian/po/cs.po
+++ collectd-4.10.1/debian/po/cs.po
@@ -0,0 +1,73 @@
+# Czech translation for collectd
+# Copyright (C) Martin Sin <martin.sin@zshk.cz>, 2009.
+# This file is distributed under the same license as the collectd package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd 4.6.3-1\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2009-06-22 16:07+0200\n"
+"Last-Translator: Martin Sin <martin.sin@zshk.cz>\n"
+"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
+"Language: cs\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "Uspořádání souborů RRD se změnilo"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"Ve struktuře souborů RRD vytvořených collectd počínaje verzí 3.x došlo k "
+"výrazné změně. Pro uchování vašich dat je nutná jejich migrace. Tu můžete "
+"provést pomocí /usr/lib/collectd-core/utils/migrate-3-4.px."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Tento krok vyžaduje instalaci balíčku perl a rrdtool, což nyní nemáte. "
+"Migraci je tedy nutné provést ručně."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr ""
+"Pro více informací se podívejte na /usr/share/doc/collectd-core/NEWS.Debian."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "Pokusit se o automatickou migraci souborů RRD?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Tento krok je možno provést automaticky. Pokud se pro to rozhodnete, bude "
+"ve /var/backups/ provedena záloha /var/lib/collectd. Tento skript je stále "
+"ve stavu testování, takže nečekejte že bude ve všech případech zcela funkční."
--- collectd-4.10.1.orig/debian/po/nl.po
+++ collectd-4.10.1/debian/po/nl.po
@@ -0,0 +1,74 @@
+# Translation of collectd_4.4.2-2_nl.po to Dutch
+# Copyright (C) 2008 Eric Spreen <erispre@gmail.com>
+# This file is distributed under the same license as the collectd package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd_4.4.2-2_nl\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2008-09-28 15:22+0100\n"
+"Last-Translator: Eric Spreen <erispre@gmail.com>\n"
+"Language-Team: Dutch <debian-l10n-dutch@lists.debian.org>\n"
+"Language: nl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "De lay-out van RRD-bestanden is gewijzigd."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"De lay-out van de RRD-bestanden, die zijn gemaakt door collectd, is sterk "
+"gewijzigd sinds versie 3.x. Om uw oude gegevens te behouden zult u deze "
+"moeten migreren. Dit kunt u doen door /usr/lib/collectd-core/utils/"
+"migrate-3-4.px te gebruiken."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Deze stap vereist dat zowel de perl als de rrdtool pakketten worden "
+"geïnstalleerd, wat op dit moment niet het geval is. U zult de migratie "
+"handmatig moeten verrichten."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr "Zie /usr/share/doc/collectd-core/NEWS.Debian voor meer informatie."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "Proberen om uw RRD-bestanden automatisch te migreren?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Deze stap kan automatisch verricht worden. In dat geval wordt er in /var/"
+"backups/ een back-up gemaakt van /var/lib/collectd/. Dit script is echter "
+"nog experimenteel. Verwacht u niet dat het in alle gevallen werkt."
--- collectd-4.10.1.orig/debian/po/fr.po
+++ collectd-4.10.1/debian/po/fr.po
@@ -0,0 +1,78 @@
+# Translation of collectd debconf templates to French
+# Copyright (C) 2008 Florent USSEIL <swiip81@free.fr>
+# This file is distributed under the same license as the collectd package.
+#
+# Florent USSEIL <swiip81@free.fr>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2008-03-14 01:00+0100\n"
+"Last-Translator: Florent USSEIL <swiip81@free.fr>\n"
+"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
+"Language: fr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "Changement du format des fichiers RRD"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"Le format des fichiers RRD créés par collectd a changé de façon "
+"significative depuis la version 3.x. Afin de conserver les données, il est "
+"nécessaire de les convertir.Cette opération peut être réalisée avec la "
+"commande « /usr/lib/collectd-core/utils/migrate-3-4.px »."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Cette étape a besoin des paquets perl et rrdtool qui ne sont pas "
+"actuellement installés. La conversion doit donc être effectuée manuellement."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr ""
+"Veuillez lire le fichier /usr/share/doc/collectd-core/NEWS.Debian pour plus "
+"d'informations."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "Faut-il tenter de convertir automatiquement les fichiers RRD ?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"La conversion des fichiers RRD peut être effectuée automatiquement. Pour "
+"cela, une sauvegarde de /var/lib/collectd/ aura lieu dans /var/backups/. "
+"Veuillez noter que cette conversion est expérimentale : il est recommandé de "
+"contrôler sa bonne exécution."
--- collectd-4.10.1.orig/debian/po/sv.po
+++ collectd-4.10.1/debian/po/sv.po
@@ -0,0 +1,76 @@
+# translation of collectd.po to swedish
+# Copyright (C) 2008 Martin Bagge <brother@bsnet.se>
+# This file is distributed under the same license as the collectd package.
+#
+# Martin Bagge <brother@bsnet.se>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2008-11-02 05:17+0100\n"
+"Last-Translator: Martin Bagge <brother@bsnet.se>\n"
+"Language-Team: swedish <debian-l10n-swedish@lists.debian.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "Strukturen för RRD-filen har ändrats."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"Strukturen för RRD-filen som collectd skapar har ändrats mycket sedan "
+"version 3.x. För att behålla dina gamla data måste dessa migreras, detta kan "
+"göras genom att köra '/usr/lib/collectd-core/utils/migrate-3-4.px'."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Detta steg kräver att både perl och rrdtool är installerade och så är inte "
+"fallet just nu. Du måste genomföra migreringen manuellt."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr ""
+"Läs även /usr/share/doc/collectd-core/NEWS.Debian för ytterligare "
+"information."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "Vill du försöka migrera RRD-filerna automatiskt?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Detta steg kan genomföras automatiskt, då kommer en säkerhetskopia av /var/"
+"lib/collectd i /var/backups. Detta skript är dock fortfarande inte helt "
+"uttestat, det kan finnas tillfällen när det inte fungerar."
--- collectd-4.10.1.orig/debian/po/de.po
+++ collectd-4.10.1/debian/po/de.po
@@ -0,0 +1,76 @@
+# German translation of the collectd debconf template
+# Copyright © 2008 Kai Wasserbäch <debian@carbon-project.org>
+# Copyright © 2008 Sebastian Harl <sh@tokkee.org>
+# This file is distributed under the same license as the collectd package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd 4.3.0-1\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2008-03-12 23:33+0100\n"
+"Last-Translator: Kai Wasserbäch <debian@carbon-project.org>\n"
+"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "Das Layout der RRD-Dateien hat sich geändert."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"Das Layout der von collectd erstellten RRD-Dateien hat sich seit Version 3.x "
+"grundlegend geändert. Um Ihre alten Daten beizubehalten, müssen Sie diese "
+"migrieren. Dies kann unter Verwendung von »/usr/lib/collectd-core/utils/"
+"migrate-3-4.px« erreicht werden."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Für diesen Schritt müssen sowohl das perl- als auch das rrdtool-Paket "
+"installiert sein. Da dies im Moment nicht der Fall ist, müssen Sie die "
+"Migration manuell durchführen."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr "Siehe »/usr/share/doc/collectd-core/NEWS.Debian« für Details."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "Soll eine automatische Migration Ihrer RRD-Dateien versucht werden?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Dieser Schritt kann automatisch ausgeführt werden. Sollten Sie sich hierfür "
+"entscheiden, wird eine Sicherungskopie von »/var/lib/collectd/« unter »/var/"
+"backups/« erstellt. Dieses Skript ist aber noch experimentell. Erwarten Sie "
+"nicht, dass es in allen Fällen problemlos funktioniert."
--- collectd-4.10.1.orig/debian/po/ru.po
+++ collectd-4.10.1/debian/po/ru.po
@@ -0,0 +1,74 @@
+# translation of collectd_4.6.3-1_ru.po to Russian
+# Copyright (C) Yuri Kozlov <yuray@komyakino.ru>, 2009.
+# This file is distributed under the same license as the collectd package.
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd 4.6.3-1\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2009-07-26 16:00+0400\n"
+"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
+"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\n"
+"Language: ru\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms:  nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "Изменилось расположение файлов RRD"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"Начиная с версий 3.x изменилось расположение файлов RRD, создаваемых "
+"collectd. Чтобы сохранить старые данные, вы должны их переместить. Это можно "
+"сделать с помощью /usr/lib/collectd-core/utils/migrate-3-4.px."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Для данного шага нужно, чтобы были установлены пакеты perl и rrdtool, "
+"которых, похоже, нет в системе. Вам нужно выполнить перенос вручную."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr "Подробней см. /usr/share/doc/collectd-core/NEWS.Debian."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "Попытаться выполнить перенос файлов RRD автоматически?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Этот шаг может быть выполнен автоматически. В этом случае создаётся "
+"резервная копия /var/lib/collectd/ в /var/backups/. Учтите, что это пока "
+"экспериментальный сценарий. Возможно, он не сработает в вашем случае."
--- collectd-4.10.1.orig/debian/po/templates.pot
+++ collectd-4.10.1/debian/po/templates.pot
@@ -0,0 +1,65 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr ""
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
--- collectd-4.10.1.orig/debian/po/vi.po
+++ collectd-4.10.1/debian/po/vi.po
@@ -0,0 +1,76 @@
+# Vietnamese translation for Collect D.
+# Copyright © 2009 Free Software Foundation, Inc.
+# Clytie Siddall <clytie@riverland.net.au>, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd 4.4.2-3\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2009-02-18 15:36+1030\n"
+"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
+"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
+"Language: vi\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: LocFactoryEditor 1.8\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "Bố trí tập tin RRD đã thay đổi"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"Bố trí của tập tin RRD được collectd thu thập đã thay đổi nhiều kể từ phiên "
+"bản 3.x. Muốn giữ lại dữ liệu cũ thì bạn cần phải nâng cấp, dùng « /usr/lib/"
+"collectd-core/utils/migrate-3-4.px »."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Bước này yêu cầu cài đặt cả hai gói perl và gói rrdtool mà chưa. Bạn cần "
+"phải tự làm quá trình nâng cấp này."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr ""
+"Xem tài liệu Tin Tức « /usr/share/doc/collectd-core/NEWS.Debian » để tìm chi "
+"tiết."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "Tự động thử nâng cấp các tập tin RRD của bạn ?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Bước này có thể được tự động làm. Trong trường hợp này, một bản sao của « /"
+"var/lib/collectd/ » được tạo trong thư mục « /var/backups/ ». Tuy nhiên, văn "
+"lệnh này vẫn còn dựa vào thí nghiệm. Không nên nhờ nó trong mọi trường hợp."
--- collectd-4.10.1.orig/debian/po/pt.po
+++ collectd-4.10.1/debian/po/pt.po
@@ -0,0 +1,76 @@
+# translation of collectd debconf to Portuguese
+# Copyright (C) 2008 Américo Monteiro
+# This file is distributed under the same license as the collectd package.
+#
+# Américo Monteiro <a_monteiro@netcabo.pt>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: collectd 4.3.0-2\n"
+"Report-Msgid-Bugs-To: collectd@packages.debian.org\n"
+"POT-Creation-Date: 2009-12-13 16:24+0100\n"
+"PO-Revision-Date: 2008-03-22 00:49+0000\n"
+"Last-Translator: Américo Monteiro <a_monteiro@netcabo.pt>\n"
+"Language-Team: Portuguese <traduz@debianpt.org>\n"
+"Language: pt\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid "Layout of RRD files has changed"
+msgstr "A disposição dos ficheiros RRD foi alterada"
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid ""
+"The layout of the RRD files created by collectd has changed significantly "
+"since version 3.x. In order to keep your old data you have to migrate it. "
+"This can be done by using /usr/lib/collectd-core/utils/migrate-3-4.px."
+msgstr ""
+"A disposição dos ficheiros RRD criada pelo collectd foi alterada "
+"significativamente desde a versão 3.x. De forma a manter os seus dados "
+"antigos você terá que migrá-los. Isto pode ser feito usando /usr/lib/"
+"collectd-core/utils/migrate-3-4.px."
+
+#. Type: note
+#. Description
+#: ../collectd-core.templates:1001
+msgid ""
+"This step requires both the perl and the rrdtool packages to be installed, "
+"which is currently not the case. You need to perform the migration manually."
+msgstr ""
+"Este passo necessita que ambos os pacotes perl e rrdtool estejam instalados, "
+"o que não é correntemente o caso. Você precisa executar manualmente a "
+"migração."
+
+#. Type: note
+#. Description
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:1001 ../collectd-core.templates:2001
+msgid "See /usr/share/doc/collectd-core/NEWS.Debian for details."
+msgstr "Veja /usr/share/doc/collectd-core/NEWS.Debian para mais detalhes."
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid "Automatically try to migrate your RRD files?"
+msgstr "Tentar migrar automaticamente os seus ficheiros RRD?"
+
+#. Type: boolean
+#. Description
+#: ../collectd-core.templates:2001
+msgid ""
+"This step can be done automatically. In this case a backup of /var/lib/"
+"collectd/ is made in /var/backups/. This script is still experimental, "
+"though. Do not expect it to work in all cases."
+msgstr ""
+"Este passo pode ser feito automaticamente. Neste caso uma cópia de segurança "
+"de /var/lib/collectd/ é criada em /var/backups/. Este script ainda é "
+"experimental. Não espere que ele funcione em todos os casos."
--- collectd-4.10.1.orig/debian/bin/check_plugins.pl
+++ collectd-4.10.1/debian/bin/check_plugins.pl
@@ -0,0 +1,158 @@
+#! /usr/bin/perl --
+#
+# collectd - check_plugins.pl
+# Copyright (C) 2006, 2007 Sebastian Harl
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; only version 2 of the License is applicable.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+#
+# Author:
+#   Sebastian Harl <sh at tokkee.org>
+
+# This script checks each plugin and reports the address of each plugin's
+# registered functions. It uses src/.libs/*.so for its checks.  This can be
+# used to check what kind of operations each plugin supports after it has been
+# built.
+
+use strict;
+use warnings;
+
+my $srcdir = 'src/';
+my $libdir = 'src/.libs';
+
+my $plugins = {};
+
+my ($srcs, $libs) = (undef, undef);
+
+if (! opendir($srcs, $srcdir)) {
+	print STDERR "Could not open directory '$srcdir': $!\n"
+		. "Make sure you are in the toplevel source directory.\n";
+	exit 1;
+}
+
+while (my $dirent = readdir($srcs)) {
+	if ($dirent !~ m/^(.*)\.c$/) {
+		next;
+	}
+
+	my $name = $1;
+	my $src  = undef;
+
+	if (! open($src, "<", "$srcdir/$dirent")) {
+		print STDERR "Unable to open '$srcdir/$dirent': $!\n";
+		next;
+	}
+
+	while (my $line = <$src>) {
+		if ($line =~ m/plugin_register_(\w+)\s*\("([^"]+)",\s*(\w+)/) {
+			my ($t, $n, $f) = ($1, $2, $3);
+
+			$plugins->{$name}->{$n}->{$t} = $f;
+		}
+	}
+
+	close($src);
+} # while (my $dirent = readdir($srcs))
+
+closedir($srcs);
+
+if (! opendir($libs, $libdir)) {
+	print STDERR "Could not open directory '$libdir': $!\n"
+		. "Make sure you ran 'make'.\n";
+	exit 1;
+}
+
+while (my $dirent = readdir($libs)) {
+	if ($dirent !~ m/^(.*)\.so$/) {
+		next;
+	}
+
+	my $name = $1;
+	my $nm   = undef;
+
+	if (! defined $plugins->{$name}) {
+		print STDERR "No information available for plugin '$name'!\n";
+		next;
+	}
+
+	if (! open($nm, "-|", "nm $libdir/$dirent")) {
+		print STDERR "Unable to open pipe from nm(1): $!\n";
+		next;
+	}
+
+	while (my $line = <$nm>) {
+		if ($line !~ m/^([0-9a-fA-F]{8,}) [tT] (\w+)$/) {
+			next;
+		}
+
+		my $adr = $1;
+		my $sym = $2;
+
+		for my $n (keys %{$plugins->{$name}}) {
+			for my $t (keys %{$plugins->{$name}->{$n}}) {
+				if (defined $plugins->{$name}->{$n}->{$t}
+						&& ($sym eq $plugins->{$name}->{$n}->{$t})) {
+					$plugins->{$name}->{$n}->{$t} = "0x" . $adr;
+				}
+			}
+		}
+	}
+
+	close($nm);
+} # while (my $dirent = readdir($libs))
+
+closedir($libs);
+
+print 'plugin name     config   init     read     write    log      shutdown';
+print $/ . '-' x 70 . $/;
+
+for my $name (sort keys %$plugins) {
+	if (! -f "$libdir/$name.so") {
+		print "$name.c has not been compiled.\n";
+		next;
+	}
+
+	for my $n (sort keys %{$plugins->{$name}}) {
+		dump_plugin_data($n, $plugins->{$name}->{$n});
+	}
+}
+
+exit 0;
+
+sub dump_plugin_data {
+	my $name  = shift || return;
+	my $funcs = shift || return;
+
+	if (length($name) > 15) {
+		$name = substr($name, 0, 12) . '...';
+	}
+
+	printf '%-15s ', $name;
+
+	foreach my $t ("config", "init", "read", "write", "log", "shutdown") {
+		if (! defined $funcs->{$t}) {
+			print '-        ';
+		}
+		elsif ($funcs->{$t} =~ m/^0x[A-Fa-f0-9]{8,}$/) {
+			print substr($funcs->{$t}, -8, 8) . " ";
+		}
+		else {
+			print 'nA       ';
+		}
+	}
+
+	print $/;
+	return 1;
+} # sub dump_plugin_data
+
+# vim: set sw=4 ts=4 tw=78 noexpandtab :
--- collectd-4.10.1.orig/debian/bin/gen_plugin_deps.pl
+++ collectd-4.10.1/debian/bin/gen_plugin_deps.pl
@@ -0,0 +1,104 @@
+#! /usr/bin/perl
+#
+# collectd - gen_plugin_deps.pl
+# Copyright (C) 2007 Sebastian Harl
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; only version 2 of the License is applicable.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+#
+# Author:
+#   Sebastian Harl <sh at tokkee.org>
+
+use strict;
+use warnings;
+
+my $extra_deps = {
+	sensors => [ 'lm-sensors' ],
+};
+
+my $infile  = "debian/README.Debian.plugins.in";
+my $outfile = "debian/README.Debian.plugins";
+
+my ($ifile, $ofile);
+
+if (! open($ifile, "<", $infile)) {
+	print STDERR "Could not open file '$infile': $!\n";
+	exit 1;
+}
+
+if (! open($ofile, ">", $outfile)) {
+	print STDERR "Could not open file '$outfile': $!\n";
+	exit 1;
+}
+
+while (my $line = <$ifile>) {
+	if ($line !~ m/^\@PLUGIN_DEPS\@\n$/) {
+		print $ofile $line;
+	}
+	else {
+		print_plugin_deps($ofile);
+	}
+}
+
+close($ofile);
+close($ifile);
+
+sub print_plugin_deps
+{
+	my $fh   = shift;
+	my $pdir = undef;
+	my $i    = 0;
+
+	my $plugindir = "debian/collectd-core/usr/lib/collectd/";
+
+	if (! opendir($pdir, $plugindir)) {
+		print STDERR "Could not open directory '$plugindir': $!\n";
+		exit 1;
+	}
+
+	foreach my $dirent (sort readdir($pdir)) {
+		if ($dirent !~ m/^(\w+).so$/) {
+			next;
+		}
+
+		my $name = $1;
+		my $deps = `dpkg-shlibdeps -O $plugindir/$dirent`;
+
+		chomp $deps;
+
+		$deps =~ s/^shlibs:Depends=//;
+
+		my @deps = grep !m/^libc6\b/, split m/, /, $deps;
+
+		if (scalar @deps) {
+			if (0 < $i) {
+				print $fh "\n";
+			}
+
+			++$i;
+
+			print $fh "$name:\n";
+
+			if (defined $extra_deps->{$name}) {
+				unshift @deps, @{$extra_deps->{$name}};
+			}
+
+			foreach my $dep (@deps) {
+				print $fh " * $dep\n";
+			}
+		}
+	}
+}
+
+# vim: set tw=78 sw=4 ts=4 noexpandtab :
+
--- collectd-4.10.1.orig/debian/include/net/ip_vs.h
+++ collectd-4.10.1/debian/include/net/ip_vs.h
@@ -0,0 +1,999 @@
+/*
+ *      IP Virtual Server
+ *      data structure and functionality definitions
+ */
+
+#ifndef _IP_VS_H
+#define _IP_VS_H
+
+#include <asm/types.h>		/* For __uXX types */
+
+#define IP_VS_VERSION_CODE	0x010200
+#define NVERSION(version)			\
+	(version >> 16) & 0xFF,			\
+	(version >> 8) & 0xFF,			\
+	version & 0xFF
+
+/*
+ *      Virtual Service Flags
+ */
+#define IP_VS_SVC_F_PERSISTENT	0x0001		/* persistent port */
+#define IP_VS_SVC_F_HASHED	0x0002		/* hashed entry */
+
+/*
+ *      Destination Server Flags
+ */
+#define IP_VS_DEST_F_AVAILABLE	0x0001		/* server is available */
+#define IP_VS_DEST_F_OVERLOAD	0x0002		/* server is overloaded */
+
+/*
+ *      IPVS sync daemon states
+ */
+#define IP_VS_STATE_NONE	0x0000		/* daemon is stopped */
+#define IP_VS_STATE_MASTER	0x0001		/* started as master */
+#define IP_VS_STATE_BACKUP	0x0002		/* started as backup */
+
+/*
+ *      IPVS socket options
+ */
+#define IP_VS_BASE_CTL		(64+1024+64)		/* base */
+
+#define IP_VS_SO_SET_NONE	IP_VS_BASE_CTL		/* just peek */
+#define IP_VS_SO_SET_INSERT	(IP_VS_BASE_CTL+1)
+#define IP_VS_SO_SET_ADD	(IP_VS_BASE_CTL+2)
+#define IP_VS_SO_SET_EDIT	(IP_VS_BASE_CTL+3)
+#define IP_VS_SO_SET_DEL	(IP_VS_BASE_CTL+4)
+#define IP_VS_SO_SET_FLUSH	(IP_VS_BASE_CTL+5)
+#define IP_VS_SO_SET_LIST	(IP_VS_BASE_CTL+6)
+#define IP_VS_SO_SET_ADDDEST	(IP_VS_BASE_CTL+7)
+#define IP_VS_SO_SET_DELDEST	(IP_VS_BASE_CTL+8)
+#define IP_VS_SO_SET_EDITDEST	(IP_VS_BASE_CTL+9)
+#define IP_VS_SO_SET_TIMEOUT	(IP_VS_BASE_CTL+10)
+#define IP_VS_SO_SET_STARTDAEMON (IP_VS_BASE_CTL+11)
+#define IP_VS_SO_SET_STOPDAEMON (IP_VS_BASE_CTL+12)
+#define IP_VS_SO_SET_RESTORE    (IP_VS_BASE_CTL+13)
+#define IP_VS_SO_SET_SAVE       (IP_VS_BASE_CTL+14)
+#define IP_VS_SO_SET_ZERO	(IP_VS_BASE_CTL+15)
+#define IP_VS_SO_SET_MAX	IP_VS_SO_SET_ZERO
+
+#define IP_VS_SO_GET_VERSION	IP_VS_BASE_CTL
+#define IP_VS_SO_GET_INFO	(IP_VS_BASE_CTL+1)
+#define IP_VS_SO_GET_SERVICES	(IP_VS_BASE_CTL+2)
+#define IP_VS_SO_GET_SERVICE	(IP_VS_BASE_CTL+3)
+#define IP_VS_SO_GET_DESTS	(IP_VS_BASE_CTL+4)
+#define IP_VS_SO_GET_DEST	(IP_VS_BASE_CTL+5)	/* not used now */
+#define IP_VS_SO_GET_TIMEOUT	(IP_VS_BASE_CTL+6)
+#define IP_VS_SO_GET_DAEMON	(IP_VS_BASE_CTL+7)
+#define IP_VS_SO_GET_MAX	IP_VS_SO_GET_DAEMON
+
+
+/*
+ *      IPVS Connection Flags
+ */
+#define IP_VS_CONN_F_FWD_MASK	0x0007		/* mask for the fwd methods */
+#define IP_VS_CONN_F_MASQ	0x0000		/* masquerading/NAT */
+#define IP_VS_CONN_F_LOCALNODE	0x0001		/* local node */
+#define IP_VS_CONN_F_TUNNEL	0x0002		/* tunneling */
+#define IP_VS_CONN_F_DROUTE	0x0003		/* direct routing */
+#define IP_VS_CONN_F_BYPASS	0x0004		/* cache bypass */
+#define IP_VS_CONN_F_SYNC	0x0020		/* entry created by sync */
+#define IP_VS_CONN_F_HASHED	0x0040		/* hashed entry */
+#define IP_VS_CONN_F_NOOUTPUT	0x0080		/* no output packets */
+#define IP_VS_CONN_F_INACTIVE	0x0100		/* not established */
+#define IP_VS_CONN_F_OUT_SEQ	0x0200		/* must do output seq adjust */
+#define IP_VS_CONN_F_IN_SEQ	0x0400		/* must do input seq adjust */
+#define IP_VS_CONN_F_SEQ_MASK	0x0600		/* in/out sequence mask */
+#define IP_VS_CONN_F_NO_CPORT	0x0800		/* no client port set yet */
+
+/* Move it to better place one day, for now keep it unique */
+#define NFC_IPVS_PROPERTY	0x10000
+
+#define IP_VS_SCHEDNAME_MAXLEN	16
+#define IP_VS_IFNAME_MAXLEN	16
+
+
+/*
+ *	The struct ip_vs_service_user and struct ip_vs_dest_user are
+ *	used to set IPVS rules through setsockopt.
+ */
+struct ip_vs_service_user {
+	/* virtual service addresses */
+	u_int16_t		protocol;
+	u_int32_t		addr;		/* virtual ip address */
+	u_int16_t		port;
+	u_int32_t		fwmark;		/* firwall mark of service */
+
+	/* virtual service options */
+	char			sched_name[IP_VS_SCHEDNAME_MAXLEN];
+	unsigned		flags;		/* virtual service flags */
+	unsigned		timeout;	/* persistent timeout in sec */
+	u_int32_t		netmask;	/* persistent netmask */
+};
+
+
+struct ip_vs_dest_user {
+	/* destination server address */
+	u_int32_t		addr;
+	u_int16_t		port;
+
+	/* real server options */
+	unsigned		conn_flags;	/* connection flags */
+	int			weight;		/* destination weight */
+
+	/* thresholds for active connections */
+	u_int32_t		u_threshold;	/* upper threshold */
+	u_int32_t		l_threshold;	/* lower threshold */
+};
+
+
+/*
+ *	IPVS statistics object (for user space)
+ */
+struct ip_vs_stats_user
+{
+	__u32                   conns;          /* connections scheduled */
+	__u32                   inpkts;         /* incoming packets */
+	__u32                   outpkts;        /* outgoing packets */
+	__u64                   inbytes;        /* incoming bytes */
+	__u64                   outbytes;       /* outgoing bytes */
+
+	__u32			cps;		/* current connection rate */
+	__u32			inpps;		/* current in packet rate */
+	__u32			outpps;		/* current out packet rate */
+	__u32			inbps;		/* current in byte rate */
+	__u32			outbps;		/* current out byte rate */
+};
+
+
+/* The argument to IP_VS_SO_GET_INFO */
+struct ip_vs_getinfo {
+	/* version number */
+	unsigned int		version;
+
+	/* size of connection hash table */
+	unsigned int		size;
+
+	/* number of virtual services */
+	unsigned int		num_services;
+};
+
+
+/* The argument to IP_VS_SO_GET_SERVICE */
+struct ip_vs_service_entry {
+	/* which service: user fills in these */
+	u_int16_t		protocol;
+	u_int32_t		addr;		/* virtual address */
+	u_int16_t		port;
+	u_int32_t		fwmark;		/* firwall mark of service */
+
+	/* service options */
+	char			sched_name[IP_VS_SCHEDNAME_MAXLEN];
+	unsigned		flags;          /* virtual service flags */
+	unsigned		timeout;	/* persistent timeout */
+	u_int32_t		netmask;	/* persistent netmask */
+
+	/* number of real servers */
+	unsigned int		num_dests;
+
+	/* statistics */
+	struct ip_vs_stats_user stats;
+};
+
+
+struct ip_vs_dest_entry {
+	u_int32_t		addr;		/* destination address */
+	u_int16_t		port;
+	unsigned		conn_flags;	/* connection flags */
+	int			weight;		/* destination weight */
+
+	u_int32_t		u_threshold;	/* upper threshold */
+	u_int32_t		l_threshold;	/* lower threshold */
+
+	u_int32_t		activeconns;	/* active connections */
+	u_int32_t		inactconns;	/* inactive connections */
+	u_int32_t		persistconns;	/* persistent connections */
+
+	/* statistics */
+	struct ip_vs_stats_user stats;
+};
+
+
+/* The argument to IP_VS_SO_GET_DESTS */
+struct ip_vs_get_dests {
+	/* which service: user fills in these */
+	u_int16_t		protocol;
+	u_int32_t		addr;		/* virtual address */
+	u_int16_t		port;
+	u_int32_t		fwmark;		/* firwall mark of service */
+
+	/* number of real servers */
+	unsigned int		num_dests;
+
+	/* the real servers */
+	struct ip_vs_dest_entry	entrytable[0];
+};
+
+
+/* The argument to IP_VS_SO_GET_SERVICES */
+struct ip_vs_get_services {
+	/* number of virtual services */
+	unsigned int		num_services;
+
+	/* service table */
+	struct ip_vs_service_entry entrytable[0];
+};
+
+
+/* The argument to IP_VS_SO_GET_TIMEOUT */
+struct ip_vs_timeout_user {
+	int			tcp_timeout;
+	int			tcp_fin_timeout;
+	int			udp_timeout;
+};
+
+
+/* The argument to IP_VS_SO_GET_DAEMON */
+struct ip_vs_daemon_user {
+	/* sync daemon state (master/backup) */
+	int			state;
+
+	/* multicast interface name */
+	char			mcast_ifn[IP_VS_IFNAME_MAXLEN];
+
+	/* SyncID we belong to */
+	int			syncid;
+};
+
+
+#ifdef __KERNEL__
+
+#include <linux/config.h>
+#include <linux/list.h>                 /* for struct list_head */
+#include <linux/spinlock.h>             /* for struct rwlock_t */
+#include <linux/skbuff.h>               /* for struct sk_buff */
+#include <linux/ip.h>                   /* for struct iphdr */
+#include <asm/atomic.h>                 /* for struct atomic_t */
+#include <linux/netdevice.h>		/* for struct neighbour */
+#include <net/dst.h>			/* for struct dst_entry */
+#include <net/tcp.h>
+#include <net/udp.h>
+#include <linux/compiler.h>
+
+
+#ifdef CONFIG_IP_VS_DEBUG
+extern int ip_vs_get_debug_level(void);
+#define IP_VS_DBG(level, msg...)			\
+    do {						\
+	    if (level <= ip_vs_get_debug_level())	\
+		    printk(KERN_DEBUG "IPVS: " msg);	\
+    } while (0)
+#define IP_VS_DBG_RL(msg...)				\
+    do {						\
+	    if (net_ratelimit())			\
+		    printk(KERN_DEBUG "IPVS: " msg);	\
+    } while (0)
+#define IP_VS_DBG_PKT(level, pp, skb, ofs, msg)		\
+    do {						\
+	    if (level <= ip_vs_get_debug_level())	\
+		pp->debug_packet(pp, skb, ofs, msg);	\
+    } while (0)
+#define IP_VS_DBG_RL_PKT(level, pp, skb, ofs, msg)	\
+    do {						\
+	    if (level <= ip_vs_get_debug_level() &&	\
+		net_ratelimit())			\
+		pp->debug_packet(pp, skb, ofs, msg);	\
+    } while (0)
+#else	/* NO DEBUGGING at ALL */
+#define IP_VS_DBG(level, msg...)  do {} while (0)
+#define IP_VS_DBG_RL(msg...)  do {} while (0)
+#define IP_VS_DBG_PKT(level, pp, skb, ofs, msg)		do {} while (0)
+#define IP_VS_DBG_RL_PKT(level, pp, skb, ofs, msg)	do {} while (0)
+#endif
+
+#define IP_VS_BUG() BUG()
+#define IP_VS_ERR(msg...) printk(KERN_ERR "IPVS: " msg)
+#define IP_VS_INFO(msg...) printk(KERN_INFO "IPVS: " msg)
+#define IP_VS_WARNING(msg...) \
+	printk(KERN_WARNING "IPVS: " msg)
+#define IP_VS_ERR_RL(msg...)				\
+    do {						\
+	    if (net_ratelimit())			\
+		    printk(KERN_ERR "IPVS: " msg);	\
+    } while (0)
+
+#ifdef CONFIG_IP_VS_DEBUG
+#define EnterFunction(level)						\
+    do {								\
+	    if (level <= ip_vs_get_debug_level())			\
+		    printk(KERN_DEBUG "Enter: %s, %s line %i\n",	\
+			   __FUNCTION__, __FILE__, __LINE__);		\
+    } while (0)
+#define LeaveFunction(level)                                            \
+    do {                                                                \
+	    if (level <= ip_vs_get_debug_level())                       \
+			printk(KERN_DEBUG "Leave: %s, %s line %i\n",    \
+			       __FUNCTION__, __FILE__, __LINE__);       \
+    } while (0)
+#else
+#define EnterFunction(level)   do {} while (0)
+#define LeaveFunction(level)   do {} while (0)
+#endif
+
+#define	IP_VS_WAIT_WHILE(expr)	while (expr) { cpu_relax(); }
+
+
+/*
+ *      The port number of FTP service (in network order).
+ */
+#define FTPPORT  __constant_htons(21)
+#define FTPDATA  __constant_htons(20)
+
+/*
+ *      IPVS sysctl variables under the /proc/sys/net/ipv4/vs/
+ */
+#define NET_IPV4_VS              21
+
+enum {
+	NET_IPV4_VS_DEBUG_LEVEL=1,
+	NET_IPV4_VS_AMEMTHRESH=2,
+	NET_IPV4_VS_AMDROPRATE=3,
+	NET_IPV4_VS_DROP_ENTRY=4,
+	NET_IPV4_VS_DROP_PACKET=5,
+	NET_IPV4_VS_SECURE_TCP=6,
+	NET_IPV4_VS_TO_ES=7,
+	NET_IPV4_VS_TO_SS=8,
+	NET_IPV4_VS_TO_SR=9,
+	NET_IPV4_VS_TO_FW=10,
+	NET_IPV4_VS_TO_TW=11,
+	NET_IPV4_VS_TO_CL=12,
+	NET_IPV4_VS_TO_CW=13,
+	NET_IPV4_VS_TO_LA=14,
+	NET_IPV4_VS_TO_LI=15,
+	NET_IPV4_VS_TO_SA=16,
+	NET_IPV4_VS_TO_UDP=17,
+	NET_IPV4_VS_TO_ICMP=18,
+	NET_IPV4_VS_LBLC_EXPIRE=19,
+	NET_IPV4_VS_LBLCR_EXPIRE=20,
+	NET_IPV4_VS_CACHE_BYPASS=22,
+	NET_IPV4_VS_EXPIRE_NODEST_CONN=23,
+	NET_IPV4_VS_SYNC_THRESHOLD=24,
+	NET_IPV4_VS_NAT_ICMP_SEND=25,
+	NET_IPV4_VS_LAST
+};
+
+/*
+ *      TCP State Values
+ */
+enum {
+	IP_VS_TCP_S_NONE = 0,
+	IP_VS_TCP_S_ESTABLISHED,
+	IP_VS_TCP_S_SYN_SENT,
+	IP_VS_TCP_S_SYN_RECV,
+	IP_VS_TCP_S_FIN_WAIT,
+	IP_VS_TCP_S_TIME_WAIT,
+	IP_VS_TCP_S_CLOSE,
+	IP_VS_TCP_S_CLOSE_WAIT,
+	IP_VS_TCP_S_LAST_ACK,
+	IP_VS_TCP_S_LISTEN,
+	IP_VS_TCP_S_SYNACK,
+	IP_VS_TCP_S_LAST
+};
+
+/*
+ *	UDP State Values
+ */
+enum {
+	IP_VS_UDP_S_NORMAL,
+	IP_VS_UDP_S_LAST,
+};
+
+/*
+ *	ICMP State Values
+ */
+enum {
+	IP_VS_ICMP_S_NORMAL,
+	IP_VS_ICMP_S_LAST,
+};
+
+/*
+ *	Delta sequence info structure
+ *	Each ip_vs_conn has 2 (output AND input seq. changes).
+ *      Only used in the VS/NAT.
+ */
+struct ip_vs_seq {
+	__u32			init_seq;	/* Add delta from this seq */
+	__u32			delta;		/* Delta in sequence numbers */
+	__u32			previous_delta;	/* Delta in sequence numbers
+						   before last resized pkt */
+};
+
+
+/*
+ *	IPVS statistics object
+ */
+struct ip_vs_stats
+{
+	__u32                   conns;          /* connections scheduled */
+	__u32                   inpkts;         /* incoming packets */
+	__u32                   outpkts;        /* outgoing packets */
+	__u64                   inbytes;        /* incoming bytes */
+	__u64                   outbytes;       /* outgoing bytes */
+
+	__u32			cps;		/* current connection rate */
+	__u32			inpps;		/* current in packet rate */
+	__u32			outpps;		/* current out packet rate */
+	__u32			inbps;		/* current in byte rate */
+	__u32			outbps;		/* current out byte rate */
+
+	spinlock_t              lock;           /* spin lock */
+};
+
+struct ip_vs_conn;
+struct ip_vs_app;
+
+struct ip_vs_protocol {
+	struct ip_vs_protocol	*next;
+	char			*name;
+	__u16			protocol;
+	int			dont_defrag;
+	atomic_t		appcnt;		/* counter of proto app incs */
+	int			*timeout_table;	/* protocol timeout table */
+
+	void (*init)(struct ip_vs_protocol *pp);
+
+	void (*exit)(struct ip_vs_protocol *pp);
+
+	int (*conn_schedule)(struct sk_buff *skb,
+			     struct ip_vs_protocol *pp,
+			     int *verdict, struct ip_vs_conn **cpp);
+
+	struct ip_vs_conn *
+	(*conn_in_get)(const struct sk_buff *skb,
+		       struct ip_vs_protocol *pp,
+		       const struct iphdr *iph,
+		       unsigned int proto_off,
+		       int inverse);
+
+	struct ip_vs_conn *
+	(*conn_out_get)(const struct sk_buff *skb,
+			struct ip_vs_protocol *pp,
+			const struct iphdr *iph,
+			unsigned int proto_off,
+			int inverse);
+
+	int (*snat_handler)(struct sk_buff **pskb,
+			    struct ip_vs_protocol *pp, struct ip_vs_conn *cp);
+
+	int (*dnat_handler)(struct sk_buff **pskb,
+			    struct ip_vs_protocol *pp, struct ip_vs_conn *cp);
+
+	int (*csum_check)(struct sk_buff *skb, struct ip_vs_protocol *pp);
+
+	const char *(*state_name)(int state);
+
+	int (*state_transition)(struct ip_vs_conn *cp, int direction,
+				const struct sk_buff *skb,
+				struct ip_vs_protocol *pp);
+
+	int (*register_app)(struct ip_vs_app *inc);
+
+	void (*unregister_app)(struct ip_vs_app *inc);
+
+	int (*app_conn_bind)(struct ip_vs_conn *cp);
+
+	void (*debug_packet)(struct ip_vs_protocol *pp,
+			     const struct sk_buff *skb,
+			     int offset,
+			     const char *msg);
+
+	void (*timeout_change)(struct ip_vs_protocol *pp, int flags);
+
+	int (*set_state_timeout)(struct ip_vs_protocol *pp, char *sname, int to);
+};
+
+extern struct ip_vs_protocol * ip_vs_proto_get(unsigned short proto);
+
+/*
+ *	IP_VS structure allocated for each dynamically scheduled connection
+ */
+struct ip_vs_conn {
+	struct list_head        c_list;         /* hashed list heads */
+
+	/* Protocol, addresses and port numbers */
+	__u32                   caddr;          /* client address */
+	__u32                   vaddr;          /* virtual address */
+	__u32                   daddr;          /* destination address */
+	__u16                   cport;
+	__u16                   vport;
+	__u16                   dport;
+	__u16                   protocol;       /* Which protocol (TCP/UDP) */
+
+	/* counter and timer */
+	atomic_t		refcnt;		/* reference count */
+	struct timer_list	timer;		/* Expiration timer */
+	volatile unsigned long	timeout;	/* timeout */
+
+	/* Flags and state transition */
+	spinlock_t              lock;           /* lock for state transition */
+	volatile __u16          flags;          /* status flags */
+	volatile __u16          state;          /* state info */
+
+	/* Control members */
+	struct ip_vs_conn       *control;       /* Master control connection */
+	atomic_t                n_control;      /* Number of controlled ones */
+	struct ip_vs_dest       *dest;          /* real server */
+	atomic_t                in_pkts;        /* incoming packet counter */
+
+	/* packet transmitter for different forwarding methods.  If it
+	   mangles the packet, it must return NF_DROP or better NF_STOLEN,
+	   otherwise this must be changed to a sk_buff **.
+	 */
+	int (*packet_xmit)(struct sk_buff *skb, struct ip_vs_conn *cp,
+			   struct ip_vs_protocol *pp);
+
+	/* Note: we can group the following members into a structure,
+	   in order to save more space, and the following members are
+	   only used in VS/NAT anyway */
+	struct ip_vs_app        *app;           /* bound ip_vs_app object */
+	void                    *app_data;      /* Application private data */
+	struct ip_vs_seq        in_seq;         /* incoming seq. struct */
+	struct ip_vs_seq        out_seq;        /* outgoing seq. struct */
+};
+
+
+/*
+ *	The information about the virtual service offered to the net
+ *	and the forwarding entries
+ */
+struct ip_vs_service {
+	struct list_head	s_list;   /* for normal service table */
+	struct list_head	f_list;   /* for fwmark-based service table */
+	atomic_t		refcnt;   /* reference counter */
+	atomic_t		usecnt;   /* use counter */
+
+	__u16			protocol; /* which protocol (TCP/UDP) */
+	__u32			addr;	  /* IP address for virtual service */
+	__u16			port;	  /* port number for the service */
+	__u32                   fwmark;   /* firewall mark of the service */
+	unsigned		flags;	  /* service status flags */
+	unsigned		timeout;  /* persistent timeout in ticks */
+	__u32			netmask;  /* grouping granularity */
+
+	struct list_head	destinations;  /* real server d-linked list */
+	__u32			num_dests;     /* number of servers */
+	struct ip_vs_stats      stats;         /* statistics for the service */
+	struct ip_vs_app	*inc;	  /* bind conns to this app inc */
+
+	/* for scheduling */
+	struct ip_vs_scheduler	*scheduler;    /* bound scheduler object */
+	rwlock_t		sched_lock;    /* lock sched_data */
+	void			*sched_data;   /* scheduler application data */
+};
+
+
+/*
+ *	The real server destination forwarding entry
+ *	with ip address, port number, and so on.
+ */
+struct ip_vs_dest {
+	struct list_head	n_list;   /* for the dests in the service */
+	struct list_head	d_list;   /* for table with all the dests */
+
+	__u32			addr;		/* IP address of the server */
+	__u16			port;		/* port number of the server */
+	volatile unsigned	flags;		/* dest status flags */
+	atomic_t		conn_flags;	/* flags to copy to conn */
+	atomic_t		weight;		/* server weight */
+
+	atomic_t		refcnt;		/* reference counter */
+	struct ip_vs_stats      stats;          /* statistics */
+
+	/* connection counters and thresholds */
+	atomic_t		activeconns;	/* active connections */
+	atomic_t		inactconns;	/* inactive connections */
+	atomic_t		persistconns;	/* persistent connections */
+	__u32			u_threshold;	/* upper threshold */
+	__u32			l_threshold;	/* lower threshold */
+
+	/* for destination cache */
+	spinlock_t		dst_lock;	/* lock of dst_cache */
+	struct dst_entry	*dst_cache;	/* destination cache entry */
+	u32			dst_rtos;	/* RT_TOS(tos) for dst */
+
+	/* for virtual service */
+	struct ip_vs_service	*svc;		/* service it belongs to */
+	__u16			protocol;	/* which protocol (TCP/UDP) */
+	__u32			vaddr;		/* virtual IP address */
+	__u16			vport;		/* virtual port number */
+	__u32			vfwmark;	/* firewall mark of service */
+};
+
+
+/*
+ *	The scheduler object
+ */
+struct ip_vs_scheduler {
+	struct list_head	n_list;		/* d-linked list head */
+	char			*name;		/* scheduler name */
+	atomic_t		refcnt;		/* reference counter */
+	struct module		*module;	/* THIS_MODULE/NULL */
+
+	/* scheduler initializing service */
+	int (*init_service)(struct ip_vs_service *svc);
+	/* scheduling service finish */
+	int (*done_service)(struct ip_vs_service *svc);
+	/* scheduler updating service */
+	int (*update_service)(struct ip_vs_service *svc);
+
+	/* selecting a server from the given service */
+	struct ip_vs_dest* (*schedule)(struct ip_vs_service *svc,
+				       const struct sk_buff *skb);
+};
+
+
+/*
+ *	The application module object (a.k.a. app incarnation)
+ */
+struct ip_vs_app
+{
+	struct list_head	a_list;		/* member in app list */
+	int			type;		/* IP_VS_APP_TYPE_xxx */
+	char			*name;		/* application module name */
+	__u16			protocol;
+	struct module		*module;	/* THIS_MODULE/NULL */
+	struct list_head	incs_list;	/* list of incarnations */
+
+	/* members for application incarnations */
+	struct list_head	p_list;		/* member in proto app list */
+	struct ip_vs_app	*app;		/* its real application */
+	__u16			port;		/* port number in net order */
+	atomic_t		usecnt;		/* usage counter */
+
+	/* output hook: return false if can't linearize. diff set for TCP.  */
+	int (*pkt_out)(struct ip_vs_app *, struct ip_vs_conn *,
+		       struct sk_buff **, int *diff);
+
+	/* input hook: return false if can't linearize. diff set for TCP. */
+	int (*pkt_in)(struct ip_vs_app *, struct ip_vs_conn *,
+		      struct sk_buff **, int *diff);
+
+	/* ip_vs_app initializer */
+	int (*init_conn)(struct ip_vs_app *, struct ip_vs_conn *);
+
+	/* ip_vs_app finish */
+	int (*done_conn)(struct ip_vs_app *, struct ip_vs_conn *);
+
+
+	/* not used now */
+	int (*bind_conn)(struct ip_vs_app *, struct ip_vs_conn *,
+			 struct ip_vs_protocol *);
+
+	void (*unbind_conn)(struct ip_vs_app *, struct ip_vs_conn *);
+
+	int *			timeout_table;
+	int *			timeouts;
+	int			timeouts_size;
+
+	int (*conn_schedule)(struct sk_buff *skb, struct ip_vs_app *app,
+			     int *verdict, struct ip_vs_conn **cpp);
+
+	struct ip_vs_conn *
+	(*conn_in_get)(const struct sk_buff *skb, struct ip_vs_app *app,
+		       const struct iphdr *iph, unsigned int proto_off,
+		       int inverse);
+
+	struct ip_vs_conn *
+	(*conn_out_get)(const struct sk_buff *skb, struct ip_vs_app *app,
+			const struct iphdr *iph, unsigned int proto_off,
+			int inverse);
+
+	int (*state_transition)(struct ip_vs_conn *cp, int direction,
+				const struct sk_buff *skb,
+				struct ip_vs_app *app);
+
+	void (*timeout_change)(struct ip_vs_app *app, int flags);
+};
+
+
+/*
+ *      IPVS core functions
+ *      (from ip_vs_core.c)
+ */
+extern const char *ip_vs_proto_name(unsigned proto);
+extern unsigned int check_for_ip_vs_out(struct sk_buff **skb_p,
+					int (*okfn)(struct sk_buff *));
+extern void ip_vs_init_hash_table(struct list_head *table, int rows);
+#define IP_VS_INIT_HASH_TABLE(t) ip_vs_init_hash_table(t, sizeof(t)/sizeof(t[0]))
+
+#define IP_VS_APP_TYPE_UNSPEC	0
+#define IP_VS_APP_TYPE_FTP	1
+
+/*
+ *     ip_vs_conn handling functions
+ *     (from ip_vs_conn.c)
+ */
+
+/*
+ *     IPVS connection entry hash table
+ */
+#ifndef CONFIG_IP_VS_TAB_BITS
+#define CONFIG_IP_VS_TAB_BITS   12
+#endif
+/* make sure that IP_VS_CONN_TAB_BITS is located in [8, 20] */
+#if CONFIG_IP_VS_TAB_BITS < 8
+#define IP_VS_CONN_TAB_BITS	8
+#endif
+#if CONFIG_IP_VS_TAB_BITS > 20
+#define IP_VS_CONN_TAB_BITS	20
+#endif
+#if 8 <= CONFIG_IP_VS_TAB_BITS && CONFIG_IP_VS_TAB_BITS <= 20
+#define IP_VS_CONN_TAB_BITS	CONFIG_IP_VS_TAB_BITS
+#endif
+#define IP_VS_CONN_TAB_SIZE     (1 << IP_VS_CONN_TAB_BITS)
+#define IP_VS_CONN_TAB_MASK     (IP_VS_CONN_TAB_SIZE - 1)
+
+enum {
+	IP_VS_DIR_INPUT = 0,
+	IP_VS_DIR_OUTPUT,
+	IP_VS_DIR_INPUT_ONLY,
+	IP_VS_DIR_LAST,
+};
+
+extern struct ip_vs_conn *ip_vs_conn_in_get
+(int protocol, __u32 s_addr, __u16 s_port, __u32 d_addr, __u16 d_port);
+extern struct ip_vs_conn *ip_vs_conn_out_get
+(int protocol, __u32 s_addr, __u16 s_port, __u32 d_addr, __u16 d_port);
+
+/* put back the conn without restarting its timer */
+static inline void __ip_vs_conn_put(struct ip_vs_conn *cp)
+{
+	atomic_dec(&cp->refcnt);
+}
+extern void ip_vs_conn_put(struct ip_vs_conn *cp);
+extern void ip_vs_conn_fill_cport(struct ip_vs_conn *cp, __u16 cport);
+
+extern struct ip_vs_conn *
+ip_vs_conn_new(int proto, __u32 caddr, __u16 cport, __u32 vaddr, __u16 vport,
+	       __u32 daddr, __u16 dport, unsigned flags,
+	       struct ip_vs_dest *dest);
+extern void ip_vs_conn_expire_now(struct ip_vs_conn *cp);
+
+extern const char * ip_vs_state_name(__u16 proto, int state);
+
+extern void ip_vs_tcp_conn_listen(struct ip_vs_conn *cp);
+extern int ip_vs_check_template(struct ip_vs_conn *ct);
+extern void ip_vs_secure_tcp_set(int on);
+extern void ip_vs_random_dropentry(void);
+extern int ip_vs_conn_init(void);
+extern void ip_vs_conn_cleanup(void);
+
+static inline void ip_vs_control_del(struct ip_vs_conn *cp)
+{
+	struct ip_vs_conn *ctl_cp = cp->control;
+	if (!ctl_cp) {
+		IP_VS_ERR("request control DEL for uncontrolled: "
+			  "%d.%d.%d.%d:%d to %d.%d.%d.%d:%d\n",
+			  NIPQUAD(cp->caddr),ntohs(cp->cport),
+			  NIPQUAD(cp->vaddr),ntohs(cp->vport));
+		return;
+	}
+
+	IP_VS_DBG(7, "DELeting control for: "
+		  "cp.dst=%d.%d.%d.%d:%d ctl_cp.dst=%d.%d.%d.%d:%d\n",
+		  NIPQUAD(cp->caddr),ntohs(cp->cport),
+		  NIPQUAD(ctl_cp->caddr),ntohs(ctl_cp->cport));
+
+	cp->control = NULL;
+	if (atomic_read(&ctl_cp->n_control) == 0) {
+		IP_VS_ERR("BUG control DEL with n=0 : "
+			  "%d.%d.%d.%d:%d to %d.%d.%d.%d:%d\n",
+			  NIPQUAD(cp->caddr),ntohs(cp->cport),
+			  NIPQUAD(cp->vaddr),ntohs(cp->vport));
+		return;
+	}
+	atomic_dec(&ctl_cp->n_control);
+}
+
+static inline void
+ip_vs_control_add(struct ip_vs_conn *cp, struct ip_vs_conn *ctl_cp)
+{
+	if (cp->control) {
+		IP_VS_ERR("request control ADD for already controlled: "
+			  "%d.%d.%d.%d:%d to %d.%d.%d.%d:%d\n",
+			  NIPQUAD(cp->caddr),ntohs(cp->cport),
+			  NIPQUAD(cp->vaddr),ntohs(cp->vport));
+		ip_vs_control_del(cp);
+	}
+
+	IP_VS_DBG(7, "ADDing control for: "
+		  "cp.dst=%d.%d.%d.%d:%d ctl_cp.dst=%d.%d.%d.%d:%d\n",
+		  NIPQUAD(cp->caddr),ntohs(cp->cport),
+		  NIPQUAD(ctl_cp->caddr),ntohs(ctl_cp->cport));
+
+	cp->control = ctl_cp;
+	atomic_inc(&ctl_cp->n_control);
+}
+
+
+/*
+ *      IPVS application functions
+ *      (from ip_vs_app.c)
+ */
+#define IP_VS_APP_MAX_PORTS  8
+extern int register_ip_vs_app(struct ip_vs_app *app);
+extern void unregister_ip_vs_app(struct ip_vs_app *app);
+extern int ip_vs_bind_app(struct ip_vs_conn *cp, struct ip_vs_protocol *pp);
+extern void ip_vs_unbind_app(struct ip_vs_conn *cp);
+extern int
+register_ip_vs_app_inc(struct ip_vs_app *app, __u16 proto, __u16 port);
+extern int ip_vs_app_inc_get(struct ip_vs_app *inc);
+extern void ip_vs_app_inc_put(struct ip_vs_app *inc);
+
+extern int ip_vs_app_pkt_out(struct ip_vs_conn *, struct sk_buff **pskb);
+extern int ip_vs_app_pkt_in(struct ip_vs_conn *, struct sk_buff **pskb);
+extern int ip_vs_skb_replace(struct sk_buff *skb, int pri,
+			     char *o_buf, int o_len, char *n_buf, int n_len);
+extern int ip_vs_app_init(void);
+extern void ip_vs_app_cleanup(void);
+
+
+/*
+ *	IPVS protocol functions (from ip_vs_proto.c)
+ */
+extern int ip_vs_protocol_init(void);
+extern void ip_vs_protocol_cleanup(void);
+extern void ip_vs_protocol_timeout_change(int flags);
+extern int *ip_vs_create_timeout_table(int *table, int size);
+extern int
+ip_vs_set_state_timeout(int *table, int num, char **names, char *name, int to);
+extern void
+ip_vs_tcpudp_debug_packet(struct ip_vs_protocol *pp, const struct sk_buff *skb,
+			  int offset, const char *msg);
+
+extern struct ip_vs_protocol ip_vs_protocol_tcp;
+extern struct ip_vs_protocol ip_vs_protocol_udp;
+extern struct ip_vs_protocol ip_vs_protocol_icmp;
+extern struct ip_vs_protocol ip_vs_protocol_esp;
+extern struct ip_vs_protocol ip_vs_protocol_ah;
+
+
+/*
+ *      Registering/unregistering scheduler functions
+ *      (from ip_vs_sched.c)
+ */
+extern int register_ip_vs_scheduler(struct ip_vs_scheduler *scheduler);
+extern int unregister_ip_vs_scheduler(struct ip_vs_scheduler *scheduler);
+extern int ip_vs_bind_scheduler(struct ip_vs_service *svc,
+				struct ip_vs_scheduler *scheduler);
+extern int ip_vs_unbind_scheduler(struct ip_vs_service *svc);
+extern struct ip_vs_scheduler *ip_vs_scheduler_get(const char *sched_name);
+extern void ip_vs_scheduler_put(struct ip_vs_scheduler *scheduler);
+extern struct ip_vs_conn *
+ip_vs_schedule(struct ip_vs_service *svc, const struct sk_buff *skb);
+extern int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb,
+			struct ip_vs_protocol *pp);
+
+
+/*
+ *      IPVS control data and functions (from ip_vs_ctl.c)
+ */
+extern int sysctl_ip_vs_cache_bypass;
+extern int sysctl_ip_vs_expire_nodest_conn;
+extern int sysctl_ip_vs_sync_threshold[2];
+extern int sysctl_ip_vs_nat_icmp_send;
+extern struct ip_vs_stats ip_vs_stats;
+
+extern struct ip_vs_service *
+ip_vs_service_get(__u32 fwmark, __u16 protocol, __u32 vaddr, __u16 vport);
+
+static inline void ip_vs_service_put(struct ip_vs_service *svc)
+{
+	atomic_dec(&svc->usecnt);
+}
+
+extern struct ip_vs_dest *
+ip_vs_lookup_real_service(__u16 protocol, __u32 daddr, __u16 dport);
+extern int ip_vs_use_count_inc(void);
+extern void ip_vs_use_count_dec(void);
+extern int ip_vs_control_init(void);
+extern void ip_vs_control_cleanup(void);
+
+
+/*
+ *      IPVS sync daemon data and function prototypes
+ *      (from ip_vs_sync.c)
+ */
+extern volatile int ip_vs_sync_state;
+extern volatile int ip_vs_master_syncid;
+extern volatile int ip_vs_backup_syncid;
+extern char ip_vs_master_mcast_ifn[IP_VS_IFNAME_MAXLEN];
+extern char ip_vs_backup_mcast_ifn[IP_VS_IFNAME_MAXLEN];
+extern int start_sync_thread(int state, char *mcast_ifn, __u8 syncid);
+extern int stop_sync_thread(int state);
+extern void ip_vs_sync_conn(struct ip_vs_conn *cp);
+
+
+/*
+ *      IPVS rate estimator prototypes (from ip_vs_est.c)
+ */
+extern int ip_vs_new_estimator(struct ip_vs_stats *stats);
+extern void ip_vs_kill_estimator(struct ip_vs_stats *stats);
+extern void ip_vs_zero_estimator(struct ip_vs_stats *stats);
+
+/*
+ *	Various IPVS packet transmitters (from ip_vs_xmit.c)
+ */
+extern int ip_vs_null_xmit
+(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp);
+extern int ip_vs_bypass_xmit
+(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp);
+extern int ip_vs_nat_xmit
+(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp);
+extern int ip_vs_tunnel_xmit
+(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp);
+extern int ip_vs_dr_xmit
+(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp);
+extern int ip_vs_icmp_xmit
+(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp, int offset);
+extern void ip_vs_dst_reset(struct ip_vs_dest *dest);
+
+
+/*
+ *	This is a simple mechanism to ignore packets when
+ *	we are loaded. Just set ip_vs_drop_rate to 'n' and
+ *	we start to drop 1/rate of the packets
+ */
+extern int ip_vs_drop_rate;
+extern int ip_vs_drop_counter;
+
+static __inline__ int ip_vs_todrop(void)
+{
+	if (!ip_vs_drop_rate) return 0;
+	if (--ip_vs_drop_counter > 0) return 0;
+	ip_vs_drop_counter = ip_vs_drop_rate;
+	return 1;
+}
+
+/*
+ *      ip_vs_fwd_tag returns the forwarding tag of the connection
+ */
+#define IP_VS_FWD_METHOD(cp)  (cp->flags & IP_VS_CONN_F_FWD_MASK)
+
+extern __inline__ char ip_vs_fwd_tag(struct ip_vs_conn *cp)
+{
+	char fwd;
+
+	switch (IP_VS_FWD_METHOD(cp)) {
+	case IP_VS_CONN_F_MASQ:
+		fwd = 'M'; break;
+	case IP_VS_CONN_F_LOCALNODE:
+		fwd = 'L'; break;
+	case IP_VS_CONN_F_TUNNEL:
+		fwd = 'T'; break;
+	case IP_VS_CONN_F_DROUTE:
+		fwd = 'R'; break;
+	case IP_VS_CONN_F_BYPASS:
+		fwd = 'B'; break;
+	default:
+		fwd = '?'; break;
+	}
+	return fwd;
+}
+
+extern int ip_vs_make_skb_writable(struct sk_buff **pskb, int len);
+extern void ip_vs_nat_icmp(struct sk_buff *skb, struct ip_vs_protocol *pp,
+		struct ip_vs_conn *cp, int dir);
+
+extern u16 ip_vs_checksum_complete(struct sk_buff *skb, int offset);
+
+static inline u16 ip_vs_check_diff(u32 old, u32 new, u16 oldsum)
+{
+	u32 diff[2] = { old, new };
+
+	return csum_fold(csum_partial((char *) diff, sizeof(diff),
+				      oldsum ^ 0xFFFF));
+}
+
+#endif /* __KERNEL__ */
+
+#endif	/* _IP_VS_H */
