 +static void pcap_receive(void *opaque, const uint8_t *buf, int size);
 +char* eth_getname_bydesc(char* desc, char* name);
 +char* eth_getname(int number, char* name);
-+void eth_callback(u_char *user, struct pcap_pkthdr *phdr, u_char *pdata);
++void eth_callback(u_char *user, const struct pcap_pkthdr *phdr, const u_char *pdata);
 +void *pcap_send(void *threadid);
 +int eth_open(char* name);
 +

+        FD_ZERO(&setl);
+        status = pcap_dispatch((pcap_t*)pcaphandle, 1, &eth_callback, NULL);
+    }
+}
+
+void eth_callback(u_char *user, struct pcap_pkthdr *phdr, u_char *pdata)
+{
+    if(phdr->len<1501)
+    {

+
+void *pcap_send(void *threadid)
+{
+    struct timeval timeout;
+    timeout.tv_sec = 0;
+    timeout.tv_usec = 200*1000;
