<---- template headericclude ----->
Apani Nortel VPN Client on Fedora Core 4 (2.6.14.xx)
FedoraForum.org - Fedora Support Forums and Community
Page 1 of 4 123 ... LastLast
Results 1 to 15 of 59
  1. #1
    supervij Guest

    Apani Nortel VPN Client on Fedora Core 4 (2.6.14.xx)

    Hello All,

    I am not sure if this is the most appropriate forum to post this information or not, but it's worth a shot and may help someone along the way.

    Last week, I got a licensed copy of Apini's (Nortel) VPN client for linux cvc_linux-rh-gcc3-3.3 and I tried to install it against my fedora core 4 laptop with all the stable updates (including the kernel). Currently, I am at kernel version 2.6.14.xx.

    Out of the box, when I invoked the make on Fedora Core 4 with 2.6.14-1, I got:
    [root@hadji cvc_linux-rh-gcc3-3.3]# make all
    cd src && make all
    make[1]: Entering directory `/usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src'
    cd k2.6 && make
    make[2]: Entering directory `/usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make -C /lib/modules/2.6.14-1.1644_FC4/build SUBDIRS=/usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6 modules
    make[3]: Entering directory `/usr/src/kernels/2.6.14-1.1644_FC4-i686'
    CC [M] /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.o
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c: In function ‘nl_ip_rcv’:
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:418: error: too few arguments to function ‘ip_rcv’
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c: In function ‘nl_skb_dup’:
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:526: error: ‘struct sk_buff’ has no member named ‘stamp’
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:526: error: ‘struct sk_buff’ has no member named ‘stamp’
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:527: error: ‘struct sk_buff’ has no member named ‘security’
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:527: error: ‘struct sk_buff’ has no member named ‘security’
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c: In function ‘nl_skb_hdr_copy’:
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:553: error: ‘struct sk_buff’ has no member named ‘stamp’
    /usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:553: error: ‘struct sk_buff’ has no member named ‘stamp’
    make[4]: *** [/usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.o] Error 1
    make[3]: *** [_module_/usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6] Error 2
    make[3]: Leaving directory `/usr/src/kernels/2.6.14-1.1644_FC4-i686'
    make[2]: *** [kmod_build] Error 2
    make[2]: Leaving directory `/usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make[1]: *** [all] Error 2
    make[1]: Leaving directory `/usr/src/redhat/TARBALLS/cvc_linux-rh-gcc3-3.3/src'
    make: *** [all] Error 2

    The compilation errors are due to the fact that sk_buff has undergone some changes between 2.6.13 and 2.6.14, namely, stamp has been redefined as tstamp (for time stamp) and security has been redefined to sp (for security path). I am guessing for clarity ?? Since the functions that use the sk_buff attributes are simply doing a copy from sk_buff structure to sk_buff structure, I felt it was safe to just make a global substitution for these attributes.

    The other change in the 2.6.14 kernel is that ip_rcv takes an extra pointer to sk_buff than it had previously. If I'm not mistaken, this change was made several releases prior? The current prototype looks like this:

    extern int ip_rcv(struct sk_buff *skb, struct net_device *dev,
    struct packet_type *pt, struct net_device *orig_dev);

    I initially thought by passing the same pointer twice would solve the problem. When I did this, I got...

    [root@hadji cvc_linux-rh-gcc3-3.3]# make all
    cd src && make all
    make[1]: Entering directory `/usr/local/cvc_linux-rh-gcc3-3.3/src'
    cd k2.6 && make
    make[2]: Entering directory `/usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make -C /lib/modules/2.6.14-1.1644_FC4/build SUBDIRS=/usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6 modules
    make[3]: Entering directory `/usr/src/kernels/2.6.14-1.1644_FC4-i686'
    Building modules, stage 2.
    MODPOST
    Warning: could not find /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/../.libmishim-2.6.a.cmd for /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/../libmishim-2.6.a
    *** Warning: "ip_rcv" [/usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/mishim.ko] undefined!
    make[3]: Leaving directory `/usr/src/kernels/2.6.14-1.1644_FC4-i686'
    make[2]: Leaving directory `/usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make[1]: Leaving directory `/usr/local/cvc_linux-rh-gcc3-3.3/src'

    Unfortunately, the problem with that was that the new kernel (in ip_input.c) the EXPORT_SYMBOL(ip_rcv) was removed so that modules cannot directly call on ip routines. I noticed in the kernel mailing lists somewhere that modules should use netif calls instead (in this case, netif_rx which takes a single argument, the pointer to sk_buff). After making that change, I invoked make again and got:
    [root@hadji cvc_linux-rh-gcc3-3.3]# make all
    cd src && make all
    make[1]: Entering directory `/usr/local/cvc_linux-rh-gcc3-3.3/src'
    cd k2.6 && make
    make[2]: Entering directory `/usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make -C /lib/modules/2.6.14-1.1653_FC4/build SUBDIRS=/usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6 modules
    make[3]: Entering directory `/usr/src/kernels/2.6.14-1.1653_FC4-i686'
    CC [M] /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.o
    LD [M] /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/mishim.o
    CC [M] /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/nlvcard.o
    Building modules, stage 2.
    MODPOST
    Warning: could not find /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/../.libmishim-2.6.a.cmd for /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/../libmishim-2.6.a
    CC /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/mishim.mod.o
    LD [M] /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/mishim.ko
    CC /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/nlvcard.mod.o
    LD [M] /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/nlvcard.ko
    make[3]: Leaving directory `/usr/src/kernels/2.6.14-1.1653_FC4-i686'
    make[2]: Leaving directory `/usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make[1]: Leaving directory `/usr/local/cvc_linux-rh-gcc3-3.3/src'

    This last error is a little puzzling to me. At this current moment, I am kind of leaning to a problem in the makefile. Maybe someone can shed some light on it. So far as I can tell, the makefile is trying to link in some static libraries (archives) but for some reason, the kernel make system does not seem to know how handle them or that they are not being specified correctly in the makefile such that the kernel make system can generate a proper command for linking in these static libraries.

    Is there somewhere else that I should be looking at?

    # Makefile
    obj-m += mishim.o nlvcard.o
    mishim-libs += ../libmishim-2.6.a ../libnlcmp.a ../libz.a ../liblzs.a
    mishim-c-objs += linux_wrapper.o
    mishim-objs += $(mishim-c-objs) $(mishim-libs)

    EXTRA_CFLAGS += -fno-common -w

    ifeq ($(KERNELRELEASE),)

    KVER = $(shell uname -r)

    ifeq (1,1)
    KDIR = /lib/modules/$(KVER)/build
    else
    KDIR = /usr/src/linux-$(KVER)
    endif

    PWD = $(shell pwd)

    mishim-cfiles = ${mishim-c-objs:.o=.c}


    kmod_build:: $(mishim-libs) $(mishim-cfiles)
    $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
    @cp mishim.ko ../mishim.o
    @cp nlvcard.ko ../nlvcard.o

    %.c:
    @ln -s ../linux_wrapper.c

    clean:
    -rm -rf *.o *.ko *.mod.* .??*

    install: all
    @echo "Installing VPN agent."
    cd .. && ./install.sh

    uninstall:
    @echo "Uninstalling VPN agent."
    cd .. && ./uninstall.sh

    endif

  2. #2
    Join Date
    Jul 2004
    Posts
    21
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Went into the exact same problem... You gave me the final clue with the netif_rx info.

    Here is the recusrive diff:
    diff -C3 --recursive cvc_linux-rh-gcc3-3.3-FC4_2.6.14/src/linux_wrapper.c cvc_linux-rh-gcc3-3.3-DIST/src/linux_wrapper.c
    *** cvc_linux-rh-gcc3-3.3-FC4_2.6.14/src/linux_wrapper.c 2005-12-31 16:15:35.000000000 +0000
    --- cvc_linux-rh-gcc3-3.3-DIST/src/linux_wrapper.c 2005-07-12 23:52:40.000000000 +0000
    ***************
    *** 415,422 ****

    int nl_ip_rcv(struct sk_buff *skb, struct packet_type *pt)
    {
    ! /* return ip_rcv(skb, skb->dev, pt); */
    ! return netif_rx(skb);
    }

    void nl_ip_send_check(struct iphdr *iph)
    --- 415,421 ----

    int nl_ip_rcv(struct sk_buff *skb, struct packet_type *pt)
    {
    ! return ip_rcv(skb, skb->dev, pt);
    }

    void nl_ip_send_check(struct iphdr *iph)
    ***************
    *** 524,530 ****
    memcpy(new_skb->cb, skb->cb, sizeof(skb->cb));
    new_skb->priority = skb->priority;
    new_skb->protocol = skb->protocol;
    ! /* new_skb->security = skb->security; */
    #if ((LINUX_VERSION_CODE >= 0x020200) && (LINUX_VERSION_CODE < 0x020300))
    new_skb->used = skb->used;
    #endif
    --- 523,530 ----
    memcpy(new_skb->cb, skb->cb, sizeof(skb->cb));
    new_skb->priority = skb->priority;
    new_skb->protocol = skb->protocol;
    ! new_skb->stamp = skb->stamp;
    ! new_skb->security = skb->security;
    #if ((LINUX_VERSION_CODE >= 0x020200) && (LINUX_VERSION_CODE < 0x020300))
    new_skb->used = skb->used;
    #endif
    ***************
    *** 550,555 ****
    --- 550,556 ----
    memcpy(skb_to->cb, skb_from->cb, sizeof(skb_from->cb));
    skb_to->priority = skb_from->priority;
    skb_to->protocol = skb_from->protocol;
    + skb_to->stamp = skb_from->stamp;
    #if ((LINUX_VERSION_CODE >= 0x020200) && (LINUX_VERSION_CODE < 0x020300))
    skb_to->used = skb_from->used;
    #else

    I have also modified the spec file:
    *** cvc_linux-rh-gcc3-3.3.spec-DIST 2005-07-12 23:52:52.000000000 +0000
    --- cvc_linux-rh-gcc3-3.3.spec-FC4_2.6.14 2005-12-31 16:04:30.000000000 +0000
    ***************
    *** 1,10 ****
    Summary: A program that secures end to end network communication.
    Name: cvc_linux-rh-gcc3
    Version: 3.3
    ! Release: 0
    ! Copyright: COMMERCIAL
    Group: System Environment/Base
    ! Source: cvc_linux-rh-gcc3-3.3.tar.gz
    AutoReqProv: no
    BuildRoot: /tmp/cvc_linux-rh-gcc3
    %description
    --- 1,10 ----
    Summary: A program that secures end to end network communication.
    Name: cvc_linux-rh-gcc3
    Version: 3.3
    ! Release: FC4_2.6.14
    ! License: COMMERCIAL
    Group: System Environment/Base
    ! Source: cvc_linux-rh-gcc3-%{version}-%{release}.tar.gz
    AutoReqProv: no
    BuildRoot: /tmp/cvc_linux-rh-gcc3
    %description

    And the .tar.gz file is now named cvc_linux-rh-gcc3-3.3-FC4_2.6.14.tar.gz instead of cvc_linux-rh-gcc3-3.3.tar.gz

    So you can simply install the src.rpm, extract the .tar.gz into the redhat/SOURCES/, modify the linux_wrapper.c, recreate a package with the new name, modify the spec file from the redhat/SPECS/ and invoke "rpmbuild --ba cvc_linux-rh-gcc3-3.3.spec"

    It compiled properly on 2.6.14-1653

    A big thnx for the missin part I was looking for!!!!

    - vin

  3. #3
    supervij Guest
    Hey Vin,

    Unfortunately, when I try against the 1653 build, I seem to get the same error. It's not a compile error per say, but a link error. I checked your diff and it seems you and it looks like your changes are the same as mine.

    This is the warning I see during the make

    Warning: could not find /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/../.libmishim-2.6.a.cmd for /usr/local/cvc_linux-rh-gcc3-3.3/src/k2.6/../libmishim-2.6.a

    Do you also see this error when you invoke make by hand?

    Also, hate to ask...does the program work?

  4. #4
    jgraves Guest
    Thank you for the hints. I was able to build the modules and they install with no errors. (Well, the syslog gives me one warning:
    net.agent[8131]: add event not handled

    However, when I try to use the network my machine hangs. If I simply do a ping, it core dumps without locking the system.

    Has anyone actually got this to work on 2.6.14?

    Thank you.

    -John

  5. #5
    Join Date
    Jul 2004
    Posts
    21
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Sorry for not having posted back any answer...

    Anyhow, I did not got any of thoses two errors... and it works properly on my 1653 kernel at the moment...
    This week I'll try to make it work with the latest (2.6.15-1.1830 or what ever..) and repost an howto if I get it working.

    - vin

  6. #6
    Huffleme Guest
    Quote Originally Posted by th0ma7
    Sorry for not having posted back any answer...

    Anyhow, I did not got any of thoses two errors... and it works properly on my 1653 kernel at the moment...
    This week I'll try to make it work with the latest (2.6.15-1.1830 or what ever..) and repost an howto if I get it working.
    Did you have any luck with it? I'm suffering from the same problems as others - not finding the libmishim-2.6.a.cmd file after making the changes you suggested - so I'll be very interested to find out if you've managed to get around that.


    Pip

  7. #7
    sbergens Guest

    Thumbs up It works under 2.6.15!

    The diff in a previous posting got me a little confused, but here's a snippet from my working linux_wrapper.c. This is NOT a diff output (obviously).

    Cheers
    /Sam

    ------------- snippet from linux_wrapper.c -----------------
    int nl_ip_rcv(struct sk_buff *skb, struct packet_type *pt)
    {
    //return ip_rcv(skb, skb->dev, pt);
    return netif_rx(skb);

    }

    void nl_ip_send_check(struct iphdr *iph)
    {
    ip_send_check(iph);
    }

    int nl_ip_route_output(struct rtable **rp, u32 daddr, u32 saddr, u32 tos, int oif)
    {
    return ip_route_output(rp, daddr, saddr, tos, oif);
    }

    int nl_register_netdevice_notifier(struct notifier_block *nb)
    {
    return register_netdevice_notifier (nb);
    }

    int nl_unregister_netdevice_notifier(struct notifier_block *nb)
    {
    return unregister_netdevice_notifier (nb);
    }

    char *dev_name (net_device_t *dev)
    {
    return (dev->name);
    }

    int dev_name_len (net_device_t *dev)
    {
    return (strlen(dev->name));
    }
    unsigned *dev_mtu_ptr (net_device_t *dev)
    {
    return (&dev->mtu);
    }
    unsigned dev_mtu (net_device_t *dev)
    {
    return (dev->mtu);
    }
    int dev_ifindex (net_device_t *dev)
    {
    return (dev->ifindex);
    }
    void *dev_ip_ptr (net_device_t *dev)
    {
    return (dev->ip_ptr);
    }
    net_device_t *dev_next (net_device_t *dev)
    {
    return (dev->next);
    }
    int ip_summed(struct sk_buff *skb)
    {
    return (skb->ip_summed);
    }
    /* This structure will hold the functions to be called
    * when a process does something to the device we
    * created. Since a pointer to this structure is kept in
    * the devices table, it can't be local to
    * init_module. NULL is for unimplemented functions. */
    struct file_operations kmsp_fops = {
    #if LINUX_KERNEL_VERSION >= KERNEL_VERSION(2,4,0)
    owner: THIS_MODULE,
    #endif
    read: nl_read_message,
    write: nl_write_message,
    poll: nl_poll,
    ioctl: nl_ioctl,
    open: nl_open,
    release: nl_release,
    };

    int max_skb_headroom (int type, struct sk_buff *skb)
    {
    return (type == PACKET_HOST)?skb_headroom(skb):MAX_HEADER;
    }

    void nl_skb_reserve (struct sk_buff *skb, int len)
    {
    skb_reserve(skb, len);
    }

    unsigned char * nl_skb_dataptr (struct sk_buff *skb)
    {
    return skb->data;
    }

    int nl_skb_len(struct sk_buff *skb)
    {
    return skb->len;
    }

    void nl_skb_dup (struct sk_buff *new_skb, struct sk_buff *skb, int type)
    {
    int head_offset;

    if (type == PACKET_HOST)
    {
    head_offset = new_skb->head - skb->head;
    new_skb->dev = skb->dev;
    new_skb->dst = dst_clone(skb->dst);
    new_skb->h.raw = skb->h.raw+head_offset;
    new_skb->nh.raw = skb->nh.raw+head_offset;
    new_skb->mac.raw = skb->mac.raw+head_offset;
    memcpy(new_skb->cb, skb->cb, sizeof(skb->cb));
    new_skb->priority = skb->priority;
    new_skb->protocol = skb->protocol;
    //new_skb->stamp = skb->stamp;
    //new_skb->security = skb->security;

    #if ((LINUX_VERSION_CODE >= 0x020200) && (LINUX_VERSION_CODE < 0x020300))
    new_skb->used = skb->used;
    #endif
    }

    #if ((LINUX_VERSION_CODE >= 0x020200) && (LINUX_VERSION_CODE < 0x020300))
    new_skb->is_clone = 0;
    #else
    new_skb->ip_summed = skb->ip_summed;
    new_skb->cloned = 0;
    #endif
    new_skb->pkt_type = type;
    new_skb->destructor = NULL;
    }

    void nl_skb_hdr_copy (struct sk_buff *skb_to, struct sk_buff *skb_from)
    {
    skb_to->dev = skb_from->dev;
    skb_to->dst = skb_from->dst;
    skb_to->h.raw = skb_from->h.raw;
    skb_to->nh.raw = skb_from->nh.raw;
    skb_to->mac.raw = skb_from->mac.raw;
    memcpy(skb_to->cb, skb_from->cb, sizeof(skb_from->cb));
    skb_to->priority = skb_from->priority;
    skb_to->protocol = skb_from->protocol;
    //skb_to->stamp = skb_from->stamp;
    #if ((LINUX_VERSION_CODE >= 0x020200) && (LINUX_VERSION_CODE < 0x020300))
    skb_to->used = skb_from->used;
    #else
    skb_to->ip_summed = skb_from->ip_summed;
    #endif

    skb_to->data = skb_from->data;
    skb_to->head = skb_from->head;
    }
    -------------- end snippet from linux_wrapper.c ------------------

  8. #8
    Huffleme Guest
    Quote Originally Posted by sbergens
    The diff in a previous posting got me a little confused, but here's a snippet from my working linux_wrapper.c. This is NOT a diff output (obviously)
    Quite so. It looks like the major difference lie in deleting the offending lines which have changed between kernels:

    Quote Originally Posted by sbergens
    //new_skb->stamp = skb->stamp;
    //new_skb->security = skb->security;

    ...
    //skb_to->stamp = skb_from->stamp;
    which eliminates that error, but then allows another to crop up -

    Warning: could not find /var/Netted/Contivity/cvc_linux-rh-gcc3-3.3/src/k2.6/../.libmishim-2.6.a.cmd for /var/Netted/Contivity/cvc_linux-rh-gcc3-3.3/src/k2.6/../libmishim-2.6.a

    Did you make changes to other files as well? And does your program connect properly to Contivity? What kernel do you have (mine is 2.6.15-1.1831_FC4)?
    Thanks for the help so far.


    Pip

  9. #9
    Join Date
    Jul 2004
    Posts
    21
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'm currently using cvc v3.3.0 with my 2.6.15-1.1831-FC4 kernel.

    Here is how to proceed:
    install the cvc_linux-rh-gcc3-3.3-0.src.rpm package using "rpm -ivh cvc_linux-rh-gcc3-3.3-0.src.rpm"

    1-Modify the SPEC file located at /usr/src/redhat/SPECS/cvc_linux-rh-gcc3-3.3.spec
    Here is an "sdiff -s" between my original file and the new one:
    [root@gustav SPECS]# sdiff -s cvc_linux-rh-gcc3-3.3.spec-DIST cvc_linux-rh-gcc3-3.3.spec
    Release: 0 | Release: FC4_2.6.15
    Copyright: COMMERCIAL | License: COMMERCIAL
    Source: cvc_linux-rh-gcc3-3.3.tar.gz | Source: cvc_linux-rh-gcc3-%{version}-%{release}.tar.gz


    I've changed the "Copyright" to "Licence" and made my kernel version reflect the final package name.

    ===============================================

    2- The only other file I've modified is the linux_wrapper.c from the tar ball.
    So first uncompress the cvc_linux-rh-gcc3-3.3.tar.gz file located in /usr/src/redhat/SOURCES/ using "tar -zxvf cvc_linux-rh-gcc3-3.3.tar.gz"

    Then, using your prefered editor (vi) edit the file /usr/src/redhat/SOURCES/cvc_linux-rh-gcc3-3.3/src/linux_wrapper.c
    There are 3 modifications in that file:

    At line 416 change:
    int nl_ip_rcv(struct sk_buff *skb, struct packet_type *pt)
    {
    return ip_rcv(skb, skb->dev, pt);
    }

    for
    int nl_ip_rcv(struct sk_buff *skb, struct packet_type *pt)
    {
    /* return ip_rcv(skb, skb->dev, pt); */
    return netif_rx(skb);
    }

    Note that using GCC 4.x it is important to use /* */ as delimiters to comment out a line instead of //
    -----------------------------
    The second modification is to comment out line 527:
    Change:
    new_skb->security = skb->security;

    To:
    /* new_skb->security = skb->security; */
    -----------------------------
    The third modification it to comment out line 553
    Change:
    skb_to->stamp = skb_from->stamp;

    To:
    /* skb_to->stamp = skb_from->stamp; */
    -----------------------------
    Now you need to recreate a tar.gz package in you're /usr/src/redhat/SOURCES
    To do so:
    cd /usr/src/redhat/SOURCES
    tar -zcvf cvc_linux-rh-gcc3-3.3-FC4_2.6.15.tar.gz cvc_linux-rh-gcc3-3.3
    -----------------------------

    Now everything should be ready to build your new RPM's

    Go to /usr/src/redhat/SPECS directory and invoke the building system:
    "rpmbuild -ba cvc_linux-rh-gcc3-3.3.spec"

    You should get at the end of the output:
    Wrote: /usr/src/redhat/SRPMS/cvc_linux-rh-gcc3-3.3-FC4_2.6.15.src.rpm
    Wrote: /usr/src/redhat/RPMS/i386/cvc_linux-rh-gcc3-3.3-FC4_2.6.15.i386.rpm
    Wrote: /usr/src/redhat/RPMS/i386/cvc_linux-rh-gcc3-debuginfo-3.3-FC4_2.6.15.i386.rpm

    You can then install the new rpm using:
    rpm -Uvh /usr/src/redhat/RPMS/i386/cvc_linux-rh-gcc3-3.3-FC4_2.6.15.i386.rpm

    -----------------------------

    After that just make sure to keep both the i386.rpm and src.rpm and clean up all of you /usr/src/redhat/* directories...

    All I can say is that it really works well... and I don't have any problems using the 1831 kernel..

    Hoping this helps

    - vin

  10. #10
    Huffleme Guest
    Quote Originally Posted by th0ma7
    I'm currently using cvc v3.3.0 with my 2.6.15-1.1831-FC4 kernel.

    Here is how to proceed:

    ...

    The second modification is to comment out line 527:
    Change:
    new_skb->security = skb->security;

    To:
    /* new_skb->security = skb->security; */
    -----------------------------
    Also, while you're there, comment out the previous line -

    new_skb->stamp = skb->stamp

    to

    /* new_skb->stamp = skb->stamp;*/

    Thank you for an excellent series of instructions, which has allowed me to install the rpm, and may even let me connect to my work site, though the evaluation copy doesn't seem able to get over the negotiation stage (SSH_IKE_NOTIFY_MESSAGE_TIMEOUT), possibly because of certificates. I've got the Windows version installed, so there must be the necessary files in there somewhere.

    Again, thanks for the superb guidance.


    Pip

  11. #11
    sploscaru Guest
    Thank you very much, it's working also with 1833 kernel :P

  12. #12
    sploscaru Guest
    Hello all,

    Could somebody help me again with this vpn client? On FC4 works fine, but on FC5 failed with this error:

    + make all
    cd src && make all
    make[1]: Entering directory `/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src'
    cd k2.6 && make
    make[2]: Entering directory `/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make -C /lib/modules/2.6.15-1.2054_FC5/build SUBDIRS=/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6 modules
    make[3]: Entering directory `/usr/src/kernels/2.6.15-1.2054_FC5-i686'
    CC [M] /usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.o
    /usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c: In function 'nl_send_skb':
    /usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:604: error: dereferencing pointer to incomplete type
    make[4]: *** [/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.o] Error 1
    make[3]: *** [_module_/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6] Error 2
    make[3]: Leaving directory `/usr/src/kernels/2.6.15-1.2054_FC5-i686'
    make[2]: *** [kmod_build] Error 2
    make[2]: Leaving directory `/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make[1]: *** [all] Error 2
    make[1]: Leaving directory `/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src'
    make: *** [all] Error 2
    error: Bad exit status from /var/tmp/rpm-tmp.81178 (%build)


    RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.81178 (%build)


    thanks

  13. #13
    satyakamg Guest
    same errors here too , i am trying it on FC5 with kernel 2.6.16-1.2080

    + make all
    cd src && make all
    make[1]: Entering directory `/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src'
    cd k2.6 && make
    make[2]: Entering directory `/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make -C /lib/modules/2.6.16-1.2080_FC5/build SUBDIRS=/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6 modules
    make[3]: Entering directory `/usr/src/kernels/2.6.16-1.2080_FC5-i686'
    CC [M] /usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.o
    /usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c: In function 'nl_send_skb':
    /usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.c:604: error: dereferencing pointer to incomplete type
    make[4]: *** [/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6/linux_wrapper.o] Error 1
    make[3]: *** [_module_/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6] Error 2
    make[3]: Leaving directory `/usr/src/kernels/2.6.16-1.2080_FC5-i686'
    make[2]: *** [kmod_build] Error 2
    make[2]: Leaving directory `/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src/k2.6'
    make[1]: *** [all] Error 2
    make[1]: Leaving directory `/usr/src/redhat/BUILD/cvc_linux-rh-gcc3-3.3/src'
    make: *** [all] Error 2
    error: Bad exit status from /var/tmp/rpm-tmp.41891 (%build)


    RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.41891 (%build)

  14. #14
    Join Date
    May 2006
    Posts
    11
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Include the route.h header...

    I had this problem too.

    It's related to the struct used in linuxwrapper.c which is defined in route.h (from kernel source).

    Unfortunately, the #IF constructs seem to remove it for 2.6.16 so you need to move it's inclusion outside the #IF section and then it works! :-)

    Happy hacking...

    BTW: Once you reach 2.6.16-1.2107 you'll probably find it builds, the 9161 port is open, but you can't connect. If anyone has ideas on this, I'd be very grateful!

    Cheers

    JAA

  15. #15
    Join Date
    May 2006
    Posts
    11
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    In english....

    Sorry for the garbled message previously, .. suffering from jet lag.

    You need to move the line #include <net/route.h> to the line immediately above the one that defines the rtable structure and following the line #include <net/flow.h>

    Shold read:

    #include <net/flow.h>
    #include <net/route.h>
    struct rtable;

    Cheers

    JAA

Page 1 of 4 123 ... LastLast

Similar Threads

  1. Apani VPN client and Fedora 9 x86
    By rrheault in forum Using Fedora
    Replies: 2
    Last Post: 7th September 2008, 01:40 AM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
[[template footer(Guest)]]