diff options
author | Alan Pevec <apevec@fedoraproject.org> | 2010-03-16 22:31:29 +0000 |
---|---|---|
committer | Alan Pevec <apevec@fedoraproject.org> | 2010-03-16 22:31:29 +0000 |
commit | 86e28255f1c9fe0141397ec7d484be33ac1b79d2 (patch) | |
tree | e5e461ed09b66fdd929e69b81d4434130771d3c2 | |
parent | b1641d7b868e61d63fc008a3155fa288e1ba21f8 (diff) | |
download | collectd-86e28255f1c9fe0141397ec7d484be33ac1b79d2.tar.gz collectd-86e28255f1c9fe0141397ec7d484be33ac1b79d2.tar.xz collectd-86e28255f1c9fe0141397ec7d484be33ac1b79d2.zip |
- New upstream version 4.8.3 http://collectd.org/news.shtml#news81
- FTBFS bz#564943 - system libiptc is not usable and owniptc fails to
compile: add a patch from upstream iptables.git to fix owniptc
compilation
-rw-r--r-- | .cvsignore | 2 | ||||
-rw-r--r-- | collectd-4.5.4-fix-condrestart.patch | 11 | ||||
-rw-r--r-- | collectd-4.5.4-libvirt-reconnect.patch | 61 | ||||
-rw-r--r-- | collectd-4.6.2-include-collectd.d.patch | 130 | ||||
-rw-r--r-- | collectd.spec | 49 | ||||
-rw-r--r-- | libiptc-avoid-strict-aliasing-warnings.patch | 113 | ||||
-rw-r--r-- | sources | 2 |
7 files changed, 220 insertions, 148 deletions
@@ -1 +1 @@ -collectd-4.6.5.tar.bz2 +collectd-4.8.3.tar.bz2 diff --git a/collectd-4.5.4-fix-condrestart.patch b/collectd-4.5.4-fix-condrestart.patch deleted file mode 100644 index 3982a16..0000000 --- a/collectd-4.5.4-fix-condrestart.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- contrib/fedora/init.d-collectd.orig 2009-08-11 01:50:15.000000000 +0200 -+++ contrib/fedora/init.d-collectd 2009-08-11 01:51:10.000000000 +0200 -@@ -54,7 +54,7 @@ - start - ;; - condrestart) -- [ -f /var/lock/subsys/$prog ] && restart || : -+ [ -f /var/lock/subsys/$prog ] && stop && start || : - ;; - *) - echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}" diff --git a/collectd-4.5.4-libvirt-reconnect.patch b/collectd-4.5.4-libvirt-reconnect.patch deleted file mode 100644 index a0de7ce..0000000 --- a/collectd-4.5.4-libvirt-reconnect.patch +++ /dev/null @@ -1,61 +0,0 @@ ---- a/src/libvirt.c 2009-08-11 23:27:35.000000000 +0200 -+++ b/src/libvirt.c 2009-08-12 00:14:58.000000000 +0200 -@@ -49,6 +49,8 @@ - - /* Connection. */ - static virConnectPtr conn = 0; -+static char *conn_string = NULL; -+static int conn_count = 0; - - /* Seconds between list refreshes, 0 disables completely. */ - static int interval = 60; -@@ -153,14 +155,14 @@ - il_interface_devices = ignorelist_create (1); - - if (strcasecmp (key, "Connection") == 0) { -- if (conn != 0) { -+ if (conn_count++ != 0) { - ERROR ("Connection may only be given once in config file"); - return 1; - } -- conn = virConnectOpenReadOnly (value); -- if (!conn) { -- VIRT_ERROR (NULL, "connection failed"); -- return 1; -+ conn_string = strdup(value); -+ if (conn_string == NULL) { -+ ERROR ("libvirt plugin: Connection strdup failed."); -+ return -1; - } - return 0; - } -@@ -253,10 +255,11 @@ - int i; - - if (conn == NULL) { -- ERROR ("libvirt plugin: Not connected. Use Connection in " -- "config file to supply connection URI. For more information " -- "see <http://libvirt.org/uri.html>"); -- return -1; -+ conn = virConnectOpenReadOnly (conn_string); -+ if (conn == NULL) { -+ ERROR ("libvirt plugin: Not connected."); -+ return -1; -+ } - } - - time (&t); -@@ -264,8 +267,12 @@ - /* Need to refresh domain or device lists? */ - if ((last_refresh == (time_t) 0) || - ((interval > 0) && ((last_refresh + interval) <= t))) { -- if (refresh_lists () != 0) -+ if (refresh_lists () != 0) { -+ if (conn != NULL) -+ virConnectClose (conn); -+ conn = NULL; - return -1; -+ } - last_refresh = t; - } - diff --git a/collectd-4.6.2-include-collectd.d.patch b/collectd-4.6.2-include-collectd.d.patch index 2fec0d3..f4fba0f 100644 --- a/collectd-4.6.2-include-collectd.d.patch +++ b/collectd-4.6.2-include-collectd.d.patch @@ -1,63 +1,71 @@ -diff -up collectd-4.6.5/src/collectd.conf.in.orig collectd-4.6.5/src/collectd.conf.in ---- collectd-4.6.5/src/collectd.conf.in.orig 2009-09-10 14:16:52.000000000 -0400 -+++ collectd-4.6.5/src/collectd.conf.in 2009-09-11 19:34:18.865782426 -0400 -@@ -26,7 +26,6 @@ FQDNLookup true - # LogLevel info - #</Plugin> +diff -rup collectd-4.8.3-orig/src/collectd.conf.in collectd-4.8.3/src/collectd.conf.in +--- collectd-4.8.3-orig/src/collectd.conf.in 2010-01-14 15:04:27.000000000 +0100 ++++ collectd-4.8.3/src/collectd.conf.in 2010-02-16 17:57:11.000000000 +0100 +@@ -50,7 +50,6 @@ FQDNLookup true + # to missing dependencies or because they have been deactivated explicitly. # + ############################################################################## --@BUILD_PLUGIN_APACHE_TRUE@LoadPlugin apache - @BUILD_PLUGIN_APCUPS_TRUE@LoadPlugin apcups - @BUILD_PLUGIN_APPLE_SENSORS_TRUE@LoadPlugin apple_sensors - @BUILD_PLUGIN_ASCENT_TRUE@LoadPlugin ascent -@@ -39,45 +38,33 @@ FQDNLookup true - @BUILD_PLUGIN_DBI_TRUE@LoadPlugin dbi - @BUILD_PLUGIN_DF_TRUE@LoadPlugin df - @BUILD_PLUGIN_DISK_TRUE@LoadPlugin disk --@BUILD_PLUGIN_DNS_TRUE@LoadPlugin dns --@BUILD_PLUGIN_EMAIL_TRUE@LoadPlugin email - @BUILD_PLUGIN_ENTROPY_TRUE@LoadPlugin entropy - @BUILD_PLUGIN_EXEC_TRUE@LoadPlugin exec - @BUILD_PLUGIN_FILECOUNT_TRUE@LoadPlugin filecount - @BUILD_PLUGIN_HDDTEMP_TRUE@LoadPlugin hddtemp - @BUILD_PLUGIN_INTERFACE_TRUE@LoadPlugin interface - @BUILD_PLUGIN_IPTABLES_TRUE@LoadPlugin iptables --@BUILD_PLUGIN_IPMI_TRUE@LoadPlugin ipmi - @BUILD_PLUGIN_IPVS_TRUE@LoadPlugin ipvs - @BUILD_PLUGIN_IRQ_TRUE@LoadPlugin irq --@BUILD_PLUGIN_LIBVIRT_TRUE@LoadPlugin libvirt - @BUILD_PLUGIN_LOAD_TRUE@LoadPlugin load - @BUILD_PLUGIN_MBMON_TRUE@LoadPlugin mbmon - @BUILD_PLUGIN_MEMCACHED_TRUE@LoadPlugin memcached - @BUILD_PLUGIN_MEMORY_TRUE@LoadPlugin memory - @BUILD_PLUGIN_MULTIMETER_TRUE@LoadPlugin multimeter --@BUILD_PLUGIN_MYSQL_TRUE@LoadPlugin mysql - @BUILD_PLUGIN_NETLINK_TRUE@LoadPlugin netlink - @BUILD_PLUGIN_NETWORK_TRUE@LoadPlugin network - @BUILD_PLUGIN_NFS_TRUE@LoadPlugin nfs --@BUILD_PLUGIN_NGINX_TRUE@LoadPlugin nginx - @BUILD_PLUGIN_NOTIFY_DESKTOP_TRUE@LoadPlugin notify_desktop - @BUILD_PLUGIN_NOTIFY_EMAIL_TRUE@LoadPlugin notify_email - @BUILD_PLUGIN_NTPD_TRUE@LoadPlugin ntpd --@BUILD_PLUGIN_NUT_TRUE@LoadPlugin nut - @BUILD_PLUGIN_ONEWIRE_TRUE@LoadPlugin onewire - @BUILD_PLUGIN_OPENVPN_TRUE@LoadPlugin openvpn - @BUILD_PLUGIN_ORACLE_TRUE@LoadPlugin oracle --@BUILD_PLUGIN_PERL_TRUE@LoadPlugin perl - @BUILD_PLUGIN_PING_TRUE@LoadPlugin ping --@BUILD_PLUGIN_POSTGRESQL_TRUE@LoadPlugin postgresql - @BUILD_PLUGIN_POWERDNS_TRUE@LoadPlugin powerdns - @BUILD_PLUGIN_PROCESSES_TRUE@LoadPlugin processes - @BUILD_PLUGIN_RRDCACHED_TRUE@LoadPlugin rrdcached --@BUILD_PLUGIN_RRDTOOL_TRUE@LoadPlugin rrdtool --@BUILD_PLUGIN_SENSORS_TRUE@LoadPlugin sensors - @BUILD_PLUGIN_SERIAL_TRUE@LoadPlugin serial --@BUILD_PLUGIN_SNMP_TRUE@LoadPlugin snmp - @BUILD_PLUGIN_SWAP_TRUE@LoadPlugin swap - @BUILD_PLUGIN_TAIL_TRUE@LoadPlugin tail - @BUILD_PLUGIN_TAPE_TRUE@LoadPlugin tape -@@ -560,3 +547,5 @@ FQDNLookup true - #<Chain "PostCache"> - # Target "write" - #</Chain> -+ +-#@BUILD_PLUGIN_APACHE_TRUE@LoadPlugin apache + #@BUILD_PLUGIN_APCUPS_TRUE@LoadPlugin apcups + #@BUILD_PLUGIN_APPLE_SENSORS_TRUE@LoadPlugin apple_sensors + #@BUILD_PLUGIN_ASCENT_TRUE@LoadPlugin ascent +@@ -65,8 +64,6 @@ FQDNLookup true + #@BUILD_PLUGIN_DBI_TRUE@LoadPlugin dbi + #@BUILD_PLUGIN_DF_TRUE@LoadPlugin df + #@BUILD_PLUGIN_DISK_TRUE@LoadPlugin disk +-#@BUILD_PLUGIN_DNS_TRUE@LoadPlugin dns +-#@BUILD_PLUGIN_EMAIL_TRUE@LoadPlugin email + #@BUILD_PLUGIN_ENTROPY_TRUE@LoadPlugin entropy + #@BUILD_PLUGIN_EXEC_TRUE@LoadPlugin exec + #@BUILD_PLUGIN_FILECOUNT_TRUE@LoadPlugin filecount +@@ -75,11 +72,9 @@ FQDNLookup true + #@BUILD_PLUGIN_HDDTEMP_TRUE@LoadPlugin hddtemp + @BUILD_PLUGIN_INTERFACE_TRUE@@BUILD_PLUGIN_INTERFACE_TRUE@LoadPlugin interface + #@BUILD_PLUGIN_IPTABLES_TRUE@LoadPlugin iptables +-#@BUILD_PLUGIN_IPMI_TRUE@LoadPlugin ipmi + #@BUILD_PLUGIN_IPVS_TRUE@LoadPlugin ipvs + #@BUILD_PLUGIN_IRQ_TRUE@LoadPlugin irq + #@BUILD_PLUGIN_JAVA_TRUE@LoadPlugin java +-#@BUILD_PLUGIN_LIBVIRT_TRUE@LoadPlugin libvirt + @BUILD_PLUGIN_LOAD_TRUE@@BUILD_PLUGIN_LOAD_TRUE@LoadPlugin load + #@BUILD_PLUGIN_MADWIFI_TRUE@LoadPlugin madwifi + #@BUILD_PLUGIN_MBMON_TRUE@LoadPlugin mbmon +@@ -87,30 +82,22 @@ FQDNLookup true + #@BUILD_PLUGIN_MEMCACHED_TRUE@LoadPlugin memcached + @BUILD_PLUGIN_MEMORY_TRUE@@BUILD_PLUGIN_MEMORY_TRUE@LoadPlugin memory + #@BUILD_PLUGIN_MULTIMETER_TRUE@LoadPlugin multimeter +-#@BUILD_PLUGIN_MYSQL_TRUE@LoadPlugin mysql + #@BUILD_PLUGIN_NETLINK_TRUE@LoadPlugin netlink + @LOAD_PLUGIN_NETWORK@LoadPlugin network + #@BUILD_PLUGIN_NFS_TRUE@LoadPlugin nfs +-#@BUILD_PLUGIN_NGINX_TRUE@LoadPlugin nginx + #@BUILD_PLUGIN_NOTIFY_DESKTOP_TRUE@LoadPlugin notify_desktop + #@BUILD_PLUGIN_NOTIFY_EMAIL_TRUE@LoadPlugin notify_email + #@BUILD_PLUGIN_NTPD_TRUE@LoadPlugin ntpd +-#@BUILD_PLUGIN_NUT_TRUE@LoadPlugin nut + #@BUILD_PLUGIN_OLSRD_TRUE@LoadPlugin olsrd + #@BUILD_PLUGIN_ONEWIRE_TRUE@LoadPlugin onewire + #@BUILD_PLUGIN_OPENVPN_TRUE@LoadPlugin openvpn + #@BUILD_PLUGIN_ORACLE_TRUE@LoadPlugin oracle +-#@BUILD_PLUGIN_PERL_TRUE@LoadPlugin perl + #@BUILD_PLUGIN_PING_TRUE@LoadPlugin ping +-#@BUILD_PLUGIN_POSTGRESQL_TRUE@LoadPlugin postgresql + #@BUILD_PLUGIN_POWERDNS_TRUE@LoadPlugin powerdns + #@BUILD_PLUGIN_PROCESSES_TRUE@LoadPlugin processes + #@BUILD_PLUGIN_PROTOCOLS_TRUE@LoadPlugin protocols + #@BUILD_PLUGIN_RRDCACHED_TRUE@LoadPlugin rrdcached +-@LOAD_PLUGIN_RRDTOOL@LoadPlugin rrdtool +-#@BUILD_PLUGIN_SENSORS_TRUE@LoadPlugin sensors + #@BUILD_PLUGIN_SERIAL_TRUE@LoadPlugin serial +-#@BUILD_PLUGIN_SNMP_TRUE@LoadPlugin snmp + #@BUILD_PLUGIN_SWAP_TRUE@LoadPlugin swap + #@BUILD_PLUGIN_TABLE_TRUE@LoadPlugin table + #@BUILD_PLUGIN_TAIL_TRUE@LoadPlugin tail +@@ -586,6 +573,7 @@ FQDNLookup true + # CreateFiles true + # CollectStatistics true + #</Plugin> +Include "/etc/collectd.d" + + #<Plugin rrdtool> + # DataDir "@prefix@/var/lib/@PACKAGE_NAME@/rrd" diff --git a/collectd.spec b/collectd.spec index b098e4d..150e6f6 100644 --- a/collectd.spec +++ b/collectd.spec @@ -1,6 +1,6 @@ Summary: Statistics collection daemon for filling RRD files Name: collectd -Version: 4.6.5 +Version: 4.8.3 Release: 1%{?dist} License: GPLv2 Group: System Environment/Daemons @@ -10,6 +10,8 @@ Source: http://collectd.org/files/%{name}-%{version}.tar.bz2 Patch0: %{name}-4.6.2-include-collectd.d.patch # bug 468067 "pkg-config --libs OpenIPMIpthread" fails Patch1: %{name}-4.6.2-configure-OpenIPMI.patch +# bug 564943 FTBFS system libiptc is not usable anymore, fix owniptc +Patch2: libiptc-avoid-strict-aliasing-warnings.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root @@ -30,16 +32,7 @@ BuildRequires: mysql-devel BuildRequires: OpenIPMI-devel BuildRequires: postgresql-devel BuildRequires: nut-devel - -# In function 'strncpy', -# inlined from 'ping_send_one_ipv6' at liboping.c:626: -# /usr/include/bits/string3.h:122: error: call to __builtin___strncpy_chk will always overflow destination buffer -# In function 'strncpy', -# inlined from 'ping_send_one_ipv4' at liboping.c:579: -# /usr/include/bits/string3.h:122: error: call to __builtin___strncpy_chk will always overflow destination buffer - -# PPC/PPC64 disabled due to above error. -ExcludeArch: ppc ppc64 +BuildRequires: iptables-devel %description collectd is a small daemon written in C for performance. It reads various @@ -161,6 +154,7 @@ This plugin collects information from virtualized guests. %setup -q %patch0 -p1 %patch1 -p0 +%patch2 -p1 sed -i.orig -e 's|-Werror||g' Makefile.in */Makefile.in @@ -180,6 +174,8 @@ sed -i.orig -e 's|-Werror||g' Makefile.in */Makefile.in --enable-nut \ --enable-postgresql \ --enable-iptables \ + --disable-ping \ + --with-libiptc \ --with-perl-bindings=INSTALLDIRS=vendor %{__make} %{?_smp_mflags} @@ -295,6 +291,8 @@ fi %{_libdir}/collectd/irq.so %{_libdir}/collectd/load.so %{_libdir}/collectd/logfile.so +%{_libdir}/collectd/madwifi.so +%{_libdir}/collectd/match_empty_counter.so %{_libdir}/collectd/mbmon.so %{_libdir}/collectd/memcached.so %{_libdir}/collectd/memory.so @@ -302,7 +300,7 @@ fi %{_libdir}/collectd/network.so %{_libdir}/collectd/nfs.so %{_libdir}/collectd/ntpd.so -%{_libdir}/collectd/ping.so +%{_libdir}/collectd/olsrd.so %{_libdir}/collectd/powerdns.so %{_libdir}/collectd/processes.so %{_libdir}/collectd/serial.so @@ -318,17 +316,25 @@ fi %{_libdir}/collectd/vmem.so %{_libdir}/collectd/vserver.so %{_libdir}/collectd/wireless.so -%{_datadir}/collectd/types.db +%{_libdir}/collectd/write_http.so %{_libdir}/collectd/bind.so +%{_libdir}/collectd/conntrack.so %{_libdir}/collectd/curl.so +%{_libdir}/collectd/fscache.so %{_libdir}/collectd/match_regex.so %{_libdir}/collectd/match_timediff.so %{_libdir}/collectd/match_value.so %{_libdir}/collectd/openvpn.so +%{_libdir}/collectd/protocols.so +%{_libdir}/collectd/table.so %{_libdir}/collectd/target_notification.so %{_libdir}/collectd/target_replace.so %{_libdir}/collectd/target_set.so +%{_libdir}/collectd/ted.so +%{_libdir}/collectd/uptime.so + +%{_datadir}/collectd/types.db # collectdclient - TBD reintroduce -devel subpackage? %{_libdir}/libcollectdclient.so @@ -344,6 +350,7 @@ fi %doc %{_mandir}/man1/collectdmon.1* %doc %{_mandir}/man5/collectd.conf.5* %doc %{_mandir}/man5/collectd-exec.5* +%doc %{_mandir}/man5/collectd-java.5* %doc %{_mandir}/man5/collectd-unixsock.5* %doc %{_mandir}/man5/types.db.5* @@ -435,6 +442,22 @@ fi %changelog +* Tue Feb 16 2010 Alan Pevec <apevec@redhat.com> 4.8.3-1 +- New upstream version 4.8.3 + http://collectd.org/news.shtml#news81 +- FTBFS bz#564943 - system libiptc is not usable and owniptc fails to compile: + add a patch from upstream iptables.git to fix owniptc compilation + +* Fri Dec 4 2009 Stepan Kasal <skasal@redhat.com> - 4.8.1-3 +- rebuild against perl 5.10.1 + +* Fri Nov 27 2009 Alan Pevec <apevec@redhat.com> 4.8.1-2 +- use Fedora libiptc, owniptc in collectd sources fails to compile + +* Wed Nov 25 2009 Alan Pevec <apevec@redhat.com> 4.8.1-1 +- update to 4.8.1 (Florian La Roche) bz# 516276 +- disable ping plugin until liboping is packaged bz# 541744 + * Fri Sep 11 2009 Tom "spot" Callaway <tcallawa@redhat.com> 4.6.5-1 - update to 4.6.5 - disable ppc/ppc64 due to compile error diff --git a/libiptc-avoid-strict-aliasing-warnings.patch b/libiptc-avoid-strict-aliasing-warnings.patch new file mode 100644 index 0000000..2392ded --- /dev/null +++ b/libiptc-avoid-strict-aliasing-warnings.patch @@ -0,0 +1,113 @@ +From 43db56e316b1dae1515d4ddf0085435731d3b9be Mon Sep 17 00:00:00 2001 +From: Jan Engelhardt <jengelh@medozas.de> +Date: Fri, 23 Oct 2009 21:35:49 +0200 +Subject: [PATCH] libiptc: avoid strict-aliasing warnings +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +libiptc: avoid strict-aliasing warnings + +In file included from libiptc/libip4tc.c:117:0: +libiptc/libiptc.c: In function ‘__iptcc_p_del_policy’: +libiptc/libiptc.c:826:4: warning: dereferencing type-punned pointer will break +strict-aliasing rules +libiptc/libiptc.c: In function ‘iptc_get_target’: +libiptc/libiptc.c:1650:4: warning: dereferencing type-punned pointer will break +strict-aliasing rules +libiptc/libip4tc.c: In function ‘dump_entry’: +libiptc/libip4tc.c:157:3: warning: dereferencing type-punned pointer will break +strict-aliasing rules + CC libiptc/libip6tc.lo +In file included from libiptc/libip6tc.c:112:0: +libiptc/libiptc.c: In function ‘__iptcc_p_del_policy’: +libiptc/libiptc.c:826:4: warning: dereferencing type-punned pointer will break +strict-aliasing rules +libiptc/libiptc.c: In function ‘ip6tc_get_target’: +libiptc/libiptc.c:1650:4: warning: dereferencing type-punned pointer will break +strict-aliasing rules +libiptc/libip6tc.c: In function ‘dump_entry’: +libiptc/libip6tc.c:188:3: warning: dereferencing type-punned pointer will break +strict-aliasing rules + +Signed-off-by: Jan Engelhardt <jengelh@medozas.de> + +Rebased for collectd/src/owniptc: Alan Pevec <apevec@gmail.com> +--- + src/owniptc/libip4tc.c | 3 ++- + src/owniptc/libip6tc.c | 3 ++- + src/owniptc/libiptc.c | 10 +++++++--- + 3 files changed, 11 insertions(+), 5 deletions(-) + +diff --git a/src/owniptc/libip4tc.c b/src/owniptc/libip4tc.c +index 66abb44..bf7327c 100644 +--- a/src/owniptc/libip4tc.c ++++ b/src/owniptc/libip4tc.c +@@ -173,7 +173,8 @@ dump_entry(STRUCT_ENTRY *e, const TC_HANDLE_T handle) + t = GET_TARGET(e); + printf("Target name: `%s' [%u]\n", t->u.user.name, t->u.target_size); + if (strcmp(t->u.user.name, STANDARD_TARGET) == 0) { +- int pos = *(int *)t->data; ++ const unsigned char *data = t->data; ++ int pos = *(const int *)data; + if (pos < 0) + printf("verdict=%s\n", + pos == -NF_ACCEPT-1 ? "NF_ACCEPT" +diff --git a/src/owniptc/libip6tc.c b/src/owniptc/libip6tc.c +index 276b7af..672dae1 100644 +--- a/src/owniptc/libip6tc.c ++++ b/src/owniptc/libip6tc.c +@@ -204,7 +204,8 @@ dump_entry(struct ip6t_entry *e, const ip6tc_handle_t handle) + t = ip6t_get_target(e); + printf("Target name: `%s' [%u]\n", t->u.user.name, t->u.target_size); + if (strcmp(t->u.user.name, IP6T_STANDARD_TARGET) == 0) { +- int pos = *(int *)t->data; ++ const unsigned char *data = t->data; ++ int pos = *(const int *)data; + if (pos < 0) + printf("verdict=%s\n", + pos == -NF_ACCEPT-1 ? "NF_ACCEPT" +diff --git a/src/owniptc/libiptc.c b/src/owniptc/libiptc.c +index 5e5fde0..8f0b0f0 100644 +--- a/src/owniptc/libiptc.c ++++ b/src/owniptc/libiptc.c +@@ -744,14 +744,16 @@ static void iptcc_delete_rule(struct rule_head *r) + * to be called from specific places within the parser */ + static int __iptcc_p_del_policy(TC_HANDLE_T h, unsigned int num) + { ++ const unsigned char *data; ++ + if (h->chain_iterator_cur) { + /* policy rule is last rule */ + struct rule_head *pr = (struct rule_head *) + h->chain_iterator_cur->rules.prev; + + /* save verdict */ +- h->chain_iterator_cur->verdict = +- *(int *)GET_TARGET(pr->entry)->data; ++ data = GET_TARGET(pr->entry)->data; ++ h->chain_iterator_cur->verdict = *(const int *)data; + + /* save counter and counter_map information */ + h->chain_iterator_cur->counter_map.maptype = +@@ -1563,6 +1565,7 @@ const char *TC_GET_TARGET(const STRUCT_ENTRY *ce, + { + STRUCT_ENTRY *e = (STRUCT_ENTRY *)ce; + struct rule_head *r = container_of(e, struct rule_head, entry[0]); ++ const unsigned char *data; + + iptc_fn = TC_GET_TARGET; + +@@ -1576,7 +1579,8 @@ const char *TC_GET_TARGET(const STRUCT_ENTRY *ce, + return r->jump->name; + break; + case IPTCC_R_STANDARD: +- spos = *(int *)GET_TARGET(e)->data; ++ data = GET_TARGET(e)->data; ++ spos = *(const int *)data; + DEBUGP("r=%p, spos=%d'\n", r, spos); + return standard_target_map(spos); + break; +-- +1.6.0.6 + @@ -1 +1 @@ -131e6fbb55f0cf6a069a98eedd21d293 collectd-4.6.5.tar.bz2 +34e47c23515b52247d8af57e294396a8 collectd-4.8.3.tar.bz2 |