Re: Cisco vpnclient-linux 4.7.00.0640-k9 & kernel-2.6.14-1.1637_FC4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Terry:

The files

       /lib/modules/2.6.13-1.1532_FC4/build/include/linux/skbuff.h
       /lib/modules/2.6.14-1.1637_FC4/build/include/linux/skbuff.h

       /lib/modules/2.6.14-1.1637_FC4/build/include/linux/time.h
       /lib/modules/2.6.14-1.1637_FC4/build/include/linux/types.h

show that a structure "sk_buff" has changed the "stamp" field into "tstamp" with a different type, going from 2.6.14 from 2.6.13. This affects the function call to
   extern void do_gettimeofday(struct timeval *tv);

in the file "linuxcniapi.c" in the vpnclient directory.

The enclosed patch file casts the types returned by do_gettimeofday into the types required for skb->tstamp. There are still some warnings for incompatible pointers in the file "interceptor.c". I think they are related to the same structure. But, the compiled vpn seems to work without the warnings.

I applied the patch as follows:

tar -xf vpnclient-linux-4.7.00.0640-k9.tar
cd vpnclient
patch < (patch file name)
vpn_install

Hope this helps, Erwin



--- linuxcniapi.c	2005-11-12 11:53:06.000000000 -0600
+++ 2.6.14-vpnclient-linux-4.7.00.0640-linuxcniapi.c	2005-11-12 11:49:20.000000000 -0600
@@ -276,6 +276,8 @@
     struct sk_buff *skb = NULL;
     unsigned char *pIP = NULL, *pMac = NULL;
 
+    struct timeval timecount;
+
     /* we need to build the actual sk_buff from the packet structure */
     pBinding = (PBINDING) Binding;
     lpPacketDescriptor = (LPPACKETDESCRIPTOR) Packet;
@@ -289,7 +291,10 @@
         goto exit_gracefully;
     }
     /* move the data into the packet */
-    do_gettimeofday(&skb->stamp);
+    do_gettimeofday(&timecount);
+
+    skb->tstamp.off_sec = (u32) timecount.tv_sec;
+    skb->tstamp.off_usec = (u32) timecount.tv_usec;
 
     pIP = skb_put(skb, lpPacketDescriptor->uiPacketSize);
 
@@ -389,6 +394,8 @@
     unsigned char *pIP = NULL, *pMac = NULL;
     int tmp_rc = 0;
 
+    struct timeval timecount;
+
     int (*tmp_InjectSend) (struct sk_buff * skb, struct net_device * dev);
     tmp_InjectSend = NULL;
 
@@ -429,7 +436,10 @@
     CniGetPacketData(Packet, 0, lpPacketDescriptor->uiPacketSize, pIP);
 
     /* put the mac header on */
-    do_gettimeofday(&skb->stamp);
+    do_gettimeofday(&timecount);
+
+    skb->tstamp.off_sec = (u32) timecount.tv_sec;
+    skb->tstamp.off_usec = (u32) timecount.tv_usec;
 
     skb->dev = pBinding->pDevice;
 

[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux