summaryrefslogtreecommitdiff
path: root/accel-pppd/ppp
diff options
context:
space:
mode:
authorKozlov Dmitry <xeb@mail.ru>2012-08-03 14:32:32 +0400
committerKozlov Dmitry <xeb@mail.ru>2012-08-03 14:32:32 +0400
commitbc071ac4349a96ec757ee418c08ffac509e6b6e4 (patch)
treed41b9ed72de3979aa5a0a3e45789b9030ad98abe /accel-pppd/ppp
parent95586a13a28c93e60f8da6b728b0e7b57cdff5f1 (diff)
downloadaccel-ppp-xebd-bc071ac4349a96ec757ee418c08ffac509e6b6e4.tar.gz
accel-ppp-xebd-bc071ac4349a96ec757ee418c08ffac509e6b6e4.zip
fixed complilation for 3.4 kernel
Diffstat (limited to 'accel-pppd/ppp')
-rw-r--r--accel-pppd/ppp/ppp_lcp.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/accel-pppd/ppp/ppp_lcp.c b/accel-pppd/ppp/ppp_lcp.c
index 0318e54..f3e8227 100644
--- a/accel-pppd/ppp/ppp_lcp.c
+++ b/accel-pppd/ppp/ppp_lcp.c
@@ -12,6 +12,7 @@
#include "ppp.h"
#include "ppp_lcp.h"
#include "events.h"
+#include "iplink.h"
#include "memdebug.h"
@@ -638,7 +639,7 @@ static void send_echo_reply(struct ppp_lcp_t *lcp)
static void send_echo_request(struct triton_timer_t *t)
{
struct ppp_lcp_t *lcp = container_of(t, typeof(*lcp), echo_timer);
- struct ifpppstatsreq ifreq;
+ struct rtnl_link_stats stats;
int f = 0;
time_t ts;
struct lcp_echo_req_t
@@ -657,20 +658,13 @@ static void send_echo_request(struct triton_timer_t *t)
if (conf_echo_timeout) {
if (lcp->echo_sent == 2) {
- memset(&ifreq, 0, sizeof(ifreq));
- ifreq.stats_ptr = (void *)&ifreq.stats;
- strcpy(ifreq.ifr__name, lcp->ppp->ses.ifname);
-
- if (ioctl(sock_fd, SIOCGPPPSTATS, &ifreq) == 0)
- lcp->last_ipackets = ifreq.stats.p.ppp_ipackets;
+ if (iplink_get_stats(lcp->ppp->ses.ifindex, &stats) == 0)
+ lcp->last_ipackets = stats.rx_packets;
time(&lcp->last_echo_ts);
} else if (lcp->echo_sent > 2) {
time(&ts);
- memset(&ifreq, 0, sizeof(ifreq));
- ifreq.stats_ptr = (void *)&ifreq.stats;
- strcpy(ifreq.ifr__name, lcp->ppp->ses.ifname);
- if (ioctl(sock_fd, SIOCGPPPSTATS, &ifreq) == 0 && lcp->last_ipackets != ifreq.stats.p.ppp_ipackets) {
+ if (iplink_get_stats(lcp->ppp->ses.ifindex, &stats) == 0 && lcp->last_ipackets != stats.rx_packets) {
lcp->echo_sent = 1;
lcp_update_echo_timer(lcp);
} else if (ts - lcp->last_echo_ts > conf_echo_timeout) {