summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-02-20 14:32:25 -0800
committerDavid S. Miller <davem@davemloft.net>2011-02-20 14:32:25 -0800
commitcb6e764a3d6a3db265f6f7d3b181da18754e3fcc (patch)
treed1231562e9d5bdd955d4a473668f51270eed7c2a
parent94f06418cee89dda10e4d0180f05db61041077d8 (diff)
downloadnet_test_tools-cb6e764a3d6a3db265f6f7d3b181da18754e3fcc.tar.gz
route_bench: Remove knowledge of libmnl internals, not needed.
Since mnl_socket_get_fd() exists, we can use that. Thanks to Pablo. Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--route_bench.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/route_bench.c b/route_bench.c
index 6c6b525..063b15e 100644
--- a/route_bench.c
+++ b/route_bench.c
@@ -24,16 +24,6 @@
#include <linux/rtnetlink.h>
#include <linux/filter.h>
-/* XXX Ugly knowledge of internals, but there is currently no way
- * XXX provided by the libmnl library to set socket options that are
- * XXX of level other than SOL_NETLINK. And we need to set one of
- * XXX level SOL_SOCKET to install the socket filter.
- */
-struct mnl_socket {
- int fd;
- struct sockaddr_nl addr;
-};
-
static int usage(void)
{
printf("usage: route_bench [ -o ] [ -l count ]\n");
@@ -178,7 +168,8 @@ static int do_bench(int count, in_addr_t src_addr, in_addr_t dst_addr,
portid = mnl_socket_get_portid(nl);
- err = setsockopt(nl->fd, SOL_SOCKET, SO_ATTACH_FILTER, &filter, sizeof(filter));
+ err = setsockopt(mnl_socket_get_fd(nl), SOL_SOCKET,
+ SO_ATTACH_FILTER, &filter, sizeof(filter));
if (err) {
perror("setsockopt");
return -1;