summaryrefslogtreecommitdiffstats
path: root/examples/rtnl-route-dump.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2010-04-22 13:59:45 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2010-04-22 13:59:45 +0200
commita4ae4201a45858516cfb3e63ffd12c2d12acbb70 (patch)
tree22a4c98666bb0d4cb0d781475aab1fd905713009 /examples/rtnl-route-dump.c
parentc0d2aec13192ece4211894554348cdf9ddcb5837 (diff)
fix lots of compilation warnings in example files
They have been spotted by -Wall -Wextra Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'examples/rtnl-route-dump.c')
-rw-r--r--examples/rtnl-route-dump.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/examples/rtnl-route-dump.c b/examples/rtnl-route-dump.c
index 4241cf8..41ab10d 100644
--- a/examples/rtnl-route-dump.c
+++ b/examples/rtnl-route-dump.c
@@ -1,6 +1,8 @@
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
+#include <time.h>
+#include <arpa/inet.h>
#include <libmnl/libmnl.h>
#include <linux/if.h>
@@ -9,9 +11,6 @@
static int data_attr_cb2(const struct nlattr *attr, void *data)
{
- const struct nlattr **tb = (const struct nlattr **)data;
- int type = mnl_attr_get_type(attr);
-
if (mnl_attr_type_valid(attr, RTAX_MAX) < 0) {
perror("mnl_attr_type_valid");
return MNL_CB_ERROR;
@@ -29,10 +28,12 @@ static void attributes_show_ipv4(struct nlattr *tb[])
printf("table=%u ", mnl_attr_get_u32(tb[RTA_TABLE]));
}
if (tb[RTA_DST]) {
- printf("dst=%s ", inet_ntoa(mnl_attr_get_u32(tb[RTA_DST])));
+ struct in_addr *addr = mnl_attr_get_payload(tb[RTA_DST]);
+ printf("dst=%s ", inet_ntoa(*addr));
}
if (tb[RTA_SRC]) {
- printf("src=%s ", inet_ntoa(mnl_attr_get_u32(tb[RTA_SRC])));
+ struct in_addr *addr = mnl_attr_get_payload(tb[RTA_SRC]);
+ printf("src=%s ", inet_ntoa(*addr));
}
if (tb[RTA_OIF]) {
printf("oif=%u ", mnl_attr_get_u32(tb[RTA_OIF]));
@@ -41,11 +42,12 @@ static void attributes_show_ipv4(struct nlattr *tb[])
printf("flow=%u ", mnl_attr_get_u32(tb[RTA_FLOW]));
}
if (tb[RTA_PREFSRC]) {
- printf("prefsrc=%s ",
- inet_ntoa(mnl_attr_get_u32(tb[RTA_PREFSRC])));
+ struct in_addr *addr = mnl_attr_get_payload(tb[RTA_PREFSRC]);
+ printf("prefsrc=%s ", inet_ntoa(*addr));
}
if (tb[RTA_GATEWAY]) {
- printf("gw=%s ", inet_ntoa(mnl_attr_get_u32(tb[RTA_GATEWAY])));
+ struct in_addr *addr = mnl_attr_get_payload(tb[RTA_GATEWAY]);
+ printf("gw=%s ", inet_ntoa(*addr));
}
if (tb[RTA_METRICS]) {
int i;
@@ -56,7 +58,7 @@ static void attributes_show_ipv4(struct nlattr *tb[])
for (i=0; i<RTAX_MAX; i++) {
if (tbx[i]) {
printf("metrics[%d]=%u ",
- mnl_attr_get_u32(tbx[i]));
+ i, mnl_attr_get_u32(tbx[i]));
}
}
}
@@ -101,8 +103,6 @@ static int data_cb(const struct nlmsghdr *nlh, void *data)
{
struct nlattr *tb[RTA_MAX+1] = {};
struct rtmsg *rm = mnl_nlmsg_get_payload(nlh);
- int len = nlh->nlmsg_len;
- struct nlattr *attr;
/* protocol family = AF_INET | AF_INET6 */
printf("family=%u ", rm->rtm_family);