35
35
#include "libvdeplug_mod.h"
36
36
#include <pcap.h>
37
37
38
- static VDECONN * vde_pcap_open (char * given_vde_url , char * descr ,int interface_version ,
38
+ static VDECONN * vde_pcap_open (char * given_vde_url , char * descr , int interface_version ,
39
39
struct vde_open_args * open_args );
40
- static ssize_t vde_pcap_recv (VDECONN * conn ,void * buf ,size_t len ,int flags );
41
- static ssize_t vde_pcap_send (VDECONN * conn ,const void * buf ,size_t len ,int flags );
40
+ static ssize_t vde_pcap_recv (VDECONN * conn , void * buf , size_t len , int flags );
41
+ static ssize_t vde_pcap_send (VDECONN * conn , const void * buf , size_t len , int flags );
42
42
static int vde_pcap_datafd (VDECONN * conn );
43
43
static int vde_pcap_ctlfd (VDECONN * conn );
44
44
static int vde_pcap_close (VDECONN * conn );
@@ -62,10 +62,10 @@ struct vde_pcap_conn {
62
62
63
63
static void gethwaddr (const char * ifname , char * hwaddr ) {
64
64
int s ;
65
- int ioctlok ;
65
+ int ioctlok = 0 ;
66
66
struct ifreq ifr ;
67
- strncpy (ifr .ifr_name , ifname , sizeof (ifr .ifr_name ));
68
- if ((s = socket (AF_INET , SOCK_DGRAM , 0 )) > 0 ) {
67
+ snprintf (ifr .ifr_name , sizeof (ifr .ifr_name ), "%s" , ifname );
68
+ if ((s = socket (AF_INET , SOCK_DGRAM , 0 )) >= 0 ) {
69
69
ioctlok = ioctl (s , SIOCGIFHWADDR , & ifr );
70
70
close (s );
71
71
}
@@ -75,12 +75,15 @@ static void gethwaddr(const char *ifname, char *hwaddr) {
75
75
memcpy (hwaddr , & ifr .ifr_hwaddr .sa_data , ETH_ALEN );
76
76
}
77
77
78
- static VDECONN * vde_pcap_open (char * given_vde_url , char * descr ,int interface_version ,
78
+ static VDECONN * vde_pcap_open (char * given_vde_url , char * descr , int interface_version ,
79
79
struct vde_open_args * open_args )
80
80
{
81
+ (void ) descr ;
82
+ (void ) interface_version ;
83
+ (void ) open_args ;
81
84
struct vde_pcap_conn * newconn ;
82
85
char * ifname = given_vde_url ;
83
- if ((newconn = calloc (1 ,sizeof (struct vde_pcap_conn )))== NULL ) {
86
+ if ((newconn = calloc (1 , sizeof (struct vde_pcap_conn )))== NULL ) {
84
87
errno = ENOMEM ;
85
88
return NULL ;
86
89
}
@@ -120,8 +123,9 @@ static VDECONN *vde_pcap_open(char *given_vde_url, char *descr,int interface_ver
120
123
return NULL ;
121
124
}
122
125
123
- static ssize_t vde_pcap_recv (VDECONN * conn ,void * buf ,size_t len ,int flags )
126
+ static ssize_t vde_pcap_recv (VDECONN * conn , void * buf , size_t len , int flags )
124
127
{
128
+ (void ) flags ;
125
129
struct vde_pcap_conn * vde_conn = (struct vde_pcap_conn * )conn ;
126
130
const u_char * data ;
127
131
struct pcap_pkthdr hdr ;
@@ -138,8 +142,9 @@ static ssize_t vde_pcap_recv(VDECONN *conn,void *buf,size_t len,int flags)
138
142
return 1 ;
139
143
}
140
144
141
- static ssize_t vde_pcap_send (VDECONN * conn ,const void * buf ,size_t len ,int flags )
145
+ static ssize_t vde_pcap_send (VDECONN * conn , const void * buf , size_t len , int flags )
142
146
{
147
+ (void ) flags ;
143
148
struct vde_pcap_conn * vde_conn = (struct vde_pcap_conn * )conn ;
144
149
return pcap_inject (vde_conn -> pcap , buf , len );
145
150
}
@@ -152,6 +157,7 @@ static int vde_pcap_datafd(VDECONN *conn)
152
157
153
158
static int vde_pcap_ctlfd (VDECONN * conn )
154
159
{
160
+ (void ) conn ;
155
161
return -1 ;
156
162
}
157
163
0 commit comments