Wanpipe installation error

why i’m getting when i install wanpipe .

/usr/include/wanpipe/wanpipe_common.h: In function wan_netif_set_ticks: //usr/include/wanpipe/wanpipe_common.h:2646:5: error: struct net_device has no member named trans_start dev->trans_start = ticks; ^ make[2]: *** [/usr/src/wanpipe-7.0.20/kdrvtmp/sdladrv_src.o] Error 1 make[1]: *** [module/usr/src/wanpipe-7.0.20/kdrvtmp] Error 2 make[1]: Leaving directory `/usr/src/kernels/3.10.0-693.2.2.el7.x86_64’ make: *** [all] Error 2

OS : centos 7 64 bit
kernel : 3.10.0-693.2.2.el7

Issue fixed : declaration of memcpy_from_msg function wanpipe driver was the issue . Current wanpipe driver is not compatible with kernel 3.10.0-693.2.2.el7

Hi!

Current Wanpipe (7.0.20.13-1) for the FreePBX distro (from its repo) is. I am running 3.10.0-693.2.2.el7…

Whatever is needed to make Wanpipe works has already done, it just need to be published to wherever you got it from (where?).

Good luck and have a nice day!

Nick

I’m also running latest wanpipe on latest kernel without any issue:

[root@freepbx uk]# uname -r
3.10.0-693.2.2.el7.x86_64
[root@freepbx uk]# yum list *wanpipe*
Loaded plugins: fastestmirror, kmod, versionlock
Loading mirror speeds from cached hostfile
Installed Packages
kmod-wanpipe.x86_64                                                     7.0.20.13-1.sng7                                                     @sng-pkgs
wanpipe.x86_64                                                          7.0.20.13-1.sng7                                                     @sng-pkgs
Available Packages
wanpipe-devel.x86_64                                                    7.0.20.13-1.sng7                                                     sng-pkgs
[root@freepbx uk]#

Hi chaser!

He is not using the FreePBX distro but a “real” Centos…

The package we use would quite likely be compatible (especially since Sangoma 7 is derived from Centos 7) but I am not sure I would start mix and matching packages like that… If something in the repo is ever meant solely for Sangoma 7 (s)he might break his system…

Have a nice day!

Nick

Hi,

I’m not using freepbx distro. I’m using centos 7 & wanpipe from ftp://ftp.sangoma.com/linux/current_wanpipe/wanpipe-current.tgz .

The issue i found was a duplicate declaration function in wanpipe wanpipe-7.0.21/kdrvtmp/af_wanpipe_src.c memcpy_from_msg(void *data, struct msghdr *msg, int len) . So i modified the file /usr/src/kernels/3.10.0-693.2.2.el7.x86_64/include/linux/skbuff.h and commented the function . It’s working fine . Hope this will help some one until it get fixed
Thanks

Hi!

The real solution would be to have the modifications that were done for the distro published on the FTP site…

I opened a ticket for this for the distro a few days ago (we needed a new package because of the kernel change) and it is still not closed because there is something else to take care of.

While this is not a FreePBX distro issue I am sure that the person who is taking care of the Wanpipe package for the FreePBX distro will know what to do so I will put a comment about your issue there…

Have a nice day!

Nick

Ps: I am currently writing this from my phone as I am currently on my way to work. It’s possible I might have to wait until I get there to add that comment because it truly is a pain to write on the phone with the nice roads we have here…

Hi!

I added a comment to the ticket I had opened for this problem for the FreePBX distro.

re: Latest system updates (October 2017) breaks Wanpipe drivers.

I am not sure the FreePBX devs can take care of this but they will surely be able to forward this information to the appropriate people.

Have a nice day!

Nick

I’m having this same issue - is there a workaround for now? Like something in the source I can modify to get it to compile. Or a specific earlier version of wanpipe?

To expand on the error for anyone trying to help:

  CC [M]  /usr/src/wanpipe-7.0.21/kdrvtmp/af_wanpipe_src.o
/usr/src/wanpipe-7.0.21/kdrvtmp/af_wanpipe_src.c:88:19: error: redefinition of ‘memcpy_from_msg’
 static inline int memcpy_from_msg(void *data, struct msghdr *msg, int len)
               ^
In file included from include/linux/ip.h:20:0,
             from include/net/ip.h:26,
             from //usr/include/wanpipe/linux/wanpipe_includes.h:259,
             from /usr/src/wanpipe-7.0.21/kdrvtmp/af_wanpipe_src.c:36:
include/linux/skbuff.h:3064:19: note: previous definition of ‘memcpy_from_msg’ was here
 static inline int memcpy_from_msg(void *data, struct msghdr *msg, int len)
               ^
make[2]: *** [/usr/src/wanpipe-7.0.21/kdrvtmp/af_wanpipe_src.o] Error 1

Please check my solution it worked fine for me

modify and comment the function memcpy_from_msg

I feel like it would be better to modify wanpipe rather than anything in the kernel’s source directory right?

I tried it but will not work . Just comment the kernel source. after compilation just remove the comment

Hi!

When I had that problem last week I temporarily switched to the previous kernel until it was resolved (the problem has been fixed in the FreePBX distro as I mentioned earlier).

There are security issues in the previous kernel, some of them don’t require actual access to your system (but require physical proximity to the system) like Blueborne (Bluetooth vulnerability which affects Linux, Android, Windows and some versions of ios…). If you have the Bluetooth hardware and it is active you could be hacked that way…

I notified @tm1000 and @xrobau in the ticket I created for the FreePBX distro (Latest system updates (October 2017) breaks Wanpipe drivers.) to see if they could help with your problem…

They might not be the people who will actually take care of getting this updated but I am sure they know who will…

As for using a specific version of Wanpipe, the package we use for the FreePBX distro (7.0.20.13-1) might work but I would not recommend you add the FreePBX distro repos on your system, this sounds like an eventual recipe for disaster…

Good luck and have a nice day!

Nick

AGAIN issue in KERNEL 3.10.0-862.2.3.el7

make[1]: Entering directory /usr/src/kernels/3.10.0-862.2.3.el7.x86_64' CC [M] /usr/src/wanpipe-7.0.25/kdrvtmp/wan_aften_src.o CC [M] /usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.o In file included from /usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.c:20:0: /usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.c: In function 'wan_iface_attach_eth': //usr/include/wanpipe/linux/wanpipe_defines.h:914:51: error: 'struct net_device_ops' has no member named 'ndo_change_mtu' #define WAN_NETDEV_OPS_MTU(dev,ops,wan_mtu) ops.ndo_change_mtu = wan_mtu ^ /usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.c:152:3: note: in expansion of macro 'WAN_NETDEV_OPS_MTU' WAN_NETDEV_OPS_MTU(dev,wan_netdev_ops,&wan_iface_change_mtu); ^ /usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.c: In function 'wan_iface_attach': //usr/include/wanpipe/linux/wanpipe_defines.h:914:51: error: 'struct net_device_ops' has no member named 'ndo_change_mtu' #define WAN_NETDEV_OPS_MTU(dev,ops,wan_mtu) ops.ndo_change_mtu = wan_mtu ^ /usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.c:195:3: note: in expansion of macro 'WAN_NETDEV_OPS_MTU' WAN_NETDEV_OPS_MTU(dev,wan_netdev_ops,&wan_iface_change_mtu); ^ /usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.c: In function 'wan_iface_init': //usr/include/wanpipe/linux/wanpipe_defines.h:914:51: error: 'struct net_device_ops' has no member named 'ndo_change_mtu' #define WAN_NETDEV_OPS_MTU(dev,ops,wan_mtu) ops.ndo_change_mtu = wan_mtu ^ /usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.c:251:2: note: in expansion of macro 'WAN_NETDEV_OPS_MTU' WAN_NETDEV_OPS_MTU(dev,wan_netdev_ops,&wan_iface_change_mtu); ^ make[2]: *** [/usr/src/wanpipe-7.0.25/kdrvtmp/wanpipe_linux_iface.o] Error 1 make[1]: *** [_module_/usr/src/wanpipe-7.0.25/kdrvtmp] Error 2 make[1]: Leaving directory/usr/src/kernels/3.10.0-862.2.3.el7.x86_64’
make: *** [all] Error 2

Any fix on this? i am facing the same problem

I’ve just released 7.5 - just ‘yum update’ and you’ll get the new kernel and wanpipe drivers. If you’re compiling wanpipe yourself under RHEL (which you should never do for FreePBX!!) then you’ll need to fix wanpipe due to the changes in the RHEL 7.5 kernel.

If you don’t have RHEL support, this is what the ticket says:

Resolution

Either

  • Rename the use of ndo_change_mtu in the code to ndo_change_mtu_rh74
  • Inspect the existing implementation of the driver mtu-change routine and the new generic routine facility provided by dev_set_mtu(), dev->extended->min_mtu and ~max_mtu. Convert the driver to using the generic facility if the checks provided are sufficient.

hi, when i run
“yum update” i got
“No packages marked for update”

Are you sure you’re running FreePBX Distro/SNG7?

no, i’m using issabel