wanpipe-7.0.8.tgz

This commit is contained in:
Harald Welte 2021-12-29 18:59:45 +01:00
parent 1da67d9379
commit 0bb90ed888
20 changed files with 85 additions and 44 deletions

View File

@ -1,2 +1,2 @@
wanpipe_linux: git ver 23ab060 wanpipe_linux: git ver f340d42
wanpipe_common: git ver c71136f wanpipe_common: git ver fb45280

View File

@ -1 +1 @@
wanpipe-7.0.6 wanpipe-7.0.8

View File

@ -8,14 +8,15 @@ Copyright (c) 1995-2013 Sangoma Technologies Inc.
For more info visit: http://wiki.sangoma.com For more info visit: http://wiki.sangoma.com
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
* Wed Sep 25 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.6 * Wed Nov 14 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.8
================================================================== ==================================================================
- Updated wanpipemon to trace on multipel dchan in a single span - Updated wanpipemon to trace on multiple dchan in a single span
eg: wanpipemon -i w1g1 -chan 1 -c trd eg: wanpipemon -i w1g1 -chan 1 -c trd
If chan is not specificed then all dchans will be traced together. If chan is not specificed then all dchans will be traced together.
- Updated sample tapping application. - Updated sample tapping application.
Allow configuration for dchan and seven bit hdlc Allow configuration for dchan and seven bit hdlc
- Fixed GSM drivers for Windows
* Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5 * Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5
================================================================== ==================================================================

2
Setup
View File

@ -7338,7 +7338,7 @@ KERNEL_UNAME=`uname -r`
PKG_NAME=wanpipe PKG_NAME=wanpipe
DISTR_NAME="WANPIPE" DISTR_NAME="WANPIPE"
PROD=wanrouter PROD=wanrouter
PROD_VER=7.0.6 PROD_VER=7.0.8
PROD_HOME=`pwd` PROD_HOME=`pwd`
META_CONF=$PROD_HOME/$PROD.rc META_CONF=$PROD_HOME/$PROD.rc
WAN_INTR_DIR=$PROD_HOME/interfaces WAN_INTR_DIR=$PROD_HOME/interfaces

View File

@ -16,7 +16,7 @@ PhoneToneDecoder::PhoneToneDecoder(void)
{ {
rate = 8000; rate = 8000;
bufSize = 256; bufSize = 256;
printf("Init FSK demodulator rate:%d buffer:%d\n", rate, bufSize); printf("Init FSK demodulator rate:%d buffer:%zu\n", rate, bufSize);
fskInit = fskEnable = dtmfInit = dtmfEnable = false; fskInit = fskEnable = dtmfInit = dtmfEnable = false;

View File

@ -158,7 +158,7 @@ void OnCallerID(void *callback_obj, char *Name, char *CallerNumber, char *Called
CStelephony* stelObj = (CStelephony*)callback_obj; CStelephony* stelObj = (CStelephony*)callback_obj;
stelephony_callback_functions_t cbf; stelephony_callback_functions_t cbf;
DBG_STEL("%s(): Name: %s(%d), CallerNumber: %s(%d), CalledNumber: %s, DateTime: %s\r\n", DBG_STEL("%s(): Name: %s(%zu), CallerNumber: %s(%zu), CalledNumber: %s, DateTime: %s\r\n",
__FUNCTION__, Name, strlen(Name), CallerNumber, strlen(CallerNumber), CalledNumber, DateTime); __FUNCTION__, Name, strlen(Name), CallerNumber, strlen(CallerNumber), CalledNumber, DateTime);
stelObj->GetCallbackFunctions(&cbf); stelObj->GetCallbackFunctions(&cbf);

View File

@ -1,5 +1,5 @@
Package: wanpipe Package: wanpipe
Version: 7.0.6-0 Version: 7.0.8-0
Section: networking Section: networking
Priority: optional Priority: optional
Architecture: all Architecture: all

View File

@ -13,6 +13,7 @@
# include "wanpipe_tdm_api.h" /* wanpipe_tdm_api_dev_t */ # include "wanpipe_tdm_api.h" /* wanpipe_tdm_api_dev_t */
# include "aft_core_bert.h" /* wp_bert_t */ # include "aft_core_bert.h" /* wp_bert_t */
# include "wanpipe_mtp1.h" # include "wanpipe_mtp1.h"
# include "sdla_gsm.h"
/*================================================================= /*=================================================================
@ -492,6 +493,10 @@ typedef struct private_area
u8 sw_hdlc_mode; u8 sw_hdlc_mode;
void *sw_hdlc_dev; void *sw_hdlc_dev;
unsigned int uart_rx_status;
char uart_rx_buffer[AFT_GSM_UART_RX_FIFO_SIZE];
unsigned int uart_rx_sz;
#ifdef AFT_DMA_TRANSACTION #ifdef AFT_DMA_TRANSACTION
#warning "AFT DMA Transaction History Enabled" #warning "AFT DMA Transaction History Enabled"

View File

@ -353,6 +353,7 @@ typedef struct aft_driver_bh_stats {
unsigned long rx_stack; unsigned long rx_stack;
unsigned long rx_bri_dchan; unsigned long rx_bri_dchan;
unsigned long tx_post; unsigned long tx_post;
unsigned long rx_gsm_dchan;
}aft_driver_bh_stats_t; }aft_driver_bh_stats_t;
typedef struct aft_driver_port_task_stats { typedef struct aft_driver_port_task_stats {

View File

@ -10,14 +10,14 @@
#define WANPIPE_COMPANY "Sangoma Technologies Inc" #define WANPIPE_COMPANY "Sangoma Technologies Inc"
/********** LINUX **********/ /********** LINUX **********/
#define WANPIPE_VERSION "7.0.6" #define WANPIPE_VERSION "7.0.8"
#define WANPIPE_SUB_VERSION "0" #define WANPIPE_SUB_VERSION "0"
#define WANPIPE_LITE_VERSION "1.1.1" #define WANPIPE_LITE_VERSION "1.1.1"
#if defined(__LINUX__) #if defined(__LINUX__)
#define WANPIPE_VERSION_MAJOR 7 #define WANPIPE_VERSION_MAJOR 7
#define WANPIPE_VERSION_MINOR 0 #define WANPIPE_VERSION_MINOR 0
#define WANPIPE_VERSION_MINOR1 6 #define WANPIPE_VERSION_MINOR1 8
#define WANPIPE_VERSION_MINOR2 0 #define WANPIPE_VERSION_MINOR2 0
#endif #endif

View File

@ -6483,6 +6483,33 @@ static void wp_bh (void *data, int pending)
} }
}while(skb); }while(skb);
if (wan_test_bit(0,&chan->uart_rx_status)){
int uart_len=chan->uart_rx_sz;
if (uart_len && uart_len < sizeof(chan->uart_rx_buffer)) {
netskb_t *skb;
skb=wan_skb_alloc(uart_len+10);
if (skb) {
unsigned char *buf=wan_skb_put(skb,uart_len);
memcpy (buf,chan->uart_rx_buffer,uart_len);
if (top_chan) {
wan_capture_trace_packet(chan->card,
&top_chan->trace_info,
skb,TRC_INCOMING_FRM);
}
AFT_PERF_STAT_INC(card,bh,rx_gsm_dchan);
err=aft_bh_rx(chan, skb, 0, wan_skb_len(skb));
if (err) {
wan_skb_free(skb);
}
}
} else {
WP_AFT_CHAN_ERROR_STATS(chan->chan_stats,rx_errors);
}
wan_clear_bit(0,&chan->uart_rx_status);
}
/* This case is only used for HDLC DMA Chain mode /* This case is only used for HDLC DMA Chain mode
Not for transparent */ Not for transparent */
do { do {
@ -12350,7 +12377,7 @@ static int aft_dma_rx_tdmv(sdla_t *card, private_area_t *chan)
err = card->wandev.fe_iface.watchdog(card); err = card->wandev.fe_iface.watchdog(card);
} }
} else { } else {
if (card->u.aft.tdmv_mtu == 8) { if (card->u.aft.tdmv_mtu == 8) {
if (card->wandev.fe_iface.watchdog) { if (card->wandev.fe_iface.watchdog) {
err = card->wandev.fe_iface.watchdog(card); err = card->wandev.fe_iface.watchdog(card);
} }

View File

@ -362,9 +362,6 @@ static int wp_gsm_watchdog(void *card_ptr)
sdla_fe_t *fe = &card->fe; sdla_fe_t *fe = &card->fe;
sdla_gsm_param_t *gsm_data = &fe->fe_param.gsm; sdla_gsm_param_t *gsm_data = &fe->fe_param.gsm;
private_area_t *chan = NULL; private_area_t *chan = NULL;
netskb_t *skb = NULL;
unsigned char *skb_data_area = NULL;
char uart_rx_buffer[AFT_GSM_UART_RX_FIFO_SIZE];
int txlen = 0; int txlen = 0;
int avail = 0; int avail = 0;
int kick_user = 0; int kick_user = 0;
@ -379,6 +376,9 @@ static int wp_gsm_watchdog(void *card_ptr)
wp_gsm_update_sim_status(card); wp_gsm_update_sim_status(card);
chan = card->u.aft.dev_to_ch_map[GSM_DCHAN_LOGIC_CHAN]; chan = card->u.aft.dev_to_ch_map[GSM_DCHAN_LOGIC_CHAN];
if (!chan || wan_test_bit(0,&chan->interface_down)) {
return 0;
}
/* tx until done and call wanpipe_wake_stack() when finished */ /* tx until done and call wanpipe_wake_stack() when finished */
wan_spin_lock_irq(&fe->lockirq, &flags); wan_spin_lock_irq(&fe->lockirq, &flags);
@ -402,14 +402,12 @@ static int wp_gsm_watchdog(void *card_ptr)
} }
} }
/* service the rx fifo */ if (!wan_test_bit(0,&chan->uart_rx_status)){
avail = wp_gsm_uart_rx_fifo(card, uart_rx_buffer, sizeof(uart_rx_buffer)); /* service the rx fifo */
if (avail) { avail = wp_gsm_uart_rx_fifo(card, chan->uart_rx_buffer, sizeof(chan->uart_rx_buffer));
skb = wan_skb_alloc(avail); if (avail) {
if (skb) { chan->uart_rx_sz=avail;
skb_data_area = wan_skb_put(skb, avail); wan_set_bit(0,&chan->uart_rx_status);
memcpy(skb_data_area, uart_rx_buffer, avail);
wan_skb_queue_tail(&chan->wp_rx_bri_dchan_complete_list, skb);
WAN_TASKLET_SCHEDULE((&chan->common.bh_task)); WAN_TASKLET_SCHEDULE((&chan->common.bh_task));
} }
} }

View File

@ -1,6 +1,6 @@
%define WANPIPE_VER wanpipe-modules %define WANPIPE_VER wanpipe-modules
%define name %{WANPIPE_VER} %define name %{WANPIPE_VER}
%define version 7.0.6 %define version 7.0.8
%define release 0 %define release 0
%define serial 1 %define serial 1
%define MODULES_DIR /lib/modules %define MODULES_DIR /lib/modules
@ -59,14 +59,15 @@ fi
%changelog %changelog
* Wed Sep 25 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.6 * Wed Nov 14 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.8
================================================================== ==================================================================
- Updated wanpipemon to trace on multipel dchan in a single span - Updated wanpipemon to trace on multiple dchan in a single span
eg: wanpipemon -i w1g1 -chan 1 -c trd eg: wanpipemon -i w1g1 -chan 1 -c trd
If chan is not specificed then all dchans will be traced together. If chan is not specificed then all dchans will be traced together.
- Updated sample tapping application. - Updated sample tapping application.
Allow configuration for dchan and seven bit hdlc Allow configuration for dchan and seven bit hdlc
- Fixed GSM drivers for Windows
* Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5 * Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5
================================================================== ==================================================================

View File

@ -1,6 +1,6 @@
%define WANPIPE_VER wanpipe-util %define WANPIPE_VER wanpipe-util
%define name %{WANPIPE_VER} %define name %{WANPIPE_VER}
%define version 7.0.6 %define version 7.0.8
%define release 0 %define release 0
%define serial 1 %define serial 1
%define UTILS_DIR /usr/sbin %define UTILS_DIR /usr/sbin
@ -229,14 +229,15 @@ chmod 755 /usr/local/sbin/setup-sangoma
%changelog %changelog
* Wed Sep 25 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.6 * Wed Nov 14 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.8
================================================================== ==================================================================
- Updated wanpipemon to trace on multipel dchan in a single span - Updated wanpipemon to trace on multiple dchan in a single span
eg: wanpipemon -i w1g1 -chan 1 -c trd eg: wanpipemon -i w1g1 -chan 1 -c trd
If chan is not specificed then all dchans will be traced together. If chan is not specificed then all dchans will be traced together.
- Updated sample tapping application. - Updated sample tapping application.
Allow configuration for dchan and seven bit hdlc Allow configuration for dchan and seven bit hdlc
- Fixed GSM drivers for Windows
* Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5 * Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5
================================================================== ==================================================================

View File

@ -1,7 +1,7 @@
%define KERNEL_VERSION %{?kern_ver} %define KERNEL_VERSION %{?kern_ver}
%define WANPIPE_VER wanpipe %define WANPIPE_VER wanpipe
%define name %{WANPIPE_VER} %define name %{WANPIPE_VER}
%define version 7.0.6 %define version 7.0.8
%define release 0 %define release 0
%define serial 1 %define serial 1
%define UTILS_DIR /usr/sbin %define UTILS_DIR /usr/sbin
@ -246,14 +246,15 @@ chmod 755 /usr/local/sbin/setup-sangoma
%changelog %changelog
* Wed Sep 25 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.6 * Wed Nov 14 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.8
================================================================== ==================================================================
- Updated wanpipemon to trace on multipel dchan in a single span - Updated wanpipemon to trace on multiple dchan in a single span
eg: wanpipemon -i w1g1 -chan 1 -c trd eg: wanpipemon -i w1g1 -chan 1 -c trd
If chan is not specificed then all dchans will be traced together. If chan is not specificed then all dchans will be traced together.
- Updated sample tapping application. - Updated sample tapping application.
Allow configuration for dchan and seven bit hdlc Allow configuration for dchan and seven bit hdlc
- Fixed GSM drivers for Windows
* Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5 * Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5
================================================================== ==================================================================

View File

@ -2231,7 +2231,7 @@ init_global_params()
{ {
if [ $OSYSTEM = "Linux" ]; then if [ $OSYSTEM = "Linux" ]; then
ROUTER_VERSION=7.0.6 ROUTER_VERSION=7.0.8
IFCONFIG_LIST=ifconfig IFCONFIG_LIST=ifconfig
MODULE_STAT=lsmod MODULE_STAT=lsmod
WAN_DRIVERS="wanpipe" WAN_DRIVERS="wanpipe"

View File

@ -105,7 +105,7 @@ inline void init() {
#if EXTENDED_STATS #if EXTENDED_STATS
avg_length=0; avg_length=0;
#endif #endif
output_unit=BYTES_OUT; output_unit=BITS_OUT;
output_type=RATE_OUT; output_type=RATE_OUT;
show_all_if=0; show_all_if=0;
#ifdef HAVE_CURSES #ifdef HAVE_CURSES

View File

@ -169,6 +169,8 @@ char *token, *value;
} }
buffer = (char*)malloc( sizeof(char) * 4096 ); buffer = (char*)malloc( sizeof(char) * 4096 );
dynamic=1;
while( fgets( buffer, 4096, fp ) ) { while( fgets( buffer, 4096, fp ) ) {
value = trim_whitespace( buffer ); value = trim_whitespace( buffer );
@ -264,6 +266,8 @@ void get_cmdln_options(int argc, char *argv[]) {
#endif #endif
#ifdef LONG_OPTIONS #ifdef LONG_OPTIONS
int option_index = 0; int option_index = 0;
dynamic=1;
output_unit=BITS_OUT;
static struct option long_options[] = { static struct option long_options[] = {
{"timeout", 1, 0, 't'}, {"timeout", 1, 0, 't'},
#ifdef PROC_NET_DEV #ifdef PROC_NET_DEV
@ -480,7 +484,7 @@ void get_cmdln_options(int argc, char *argv[]) {
#endif #endif
if ((output_unit==ERRORS_OUT && !net_input_method(input_method)) || if ((output_unit==ERRORS_OUT && !net_input_method(input_method)) ||
(output_unit==PACKETS_OUT && input_method==LIBSTATDISK_IN)) (output_unit==PACKETS_OUT && input_method==LIBSTATDISK_IN))
output_unit=BYTES_OUT; output_unit=BITS_OUT;
return; return;
} }

View File

@ -1103,12 +1103,7 @@ static void line_trace(int trace_mode)
hdlc_trace_iface.usec = trace_iface.usec; hdlc_trace_iface.usec = trace_iface.usec;
curr_pos += sizeof(wan_trace_pkt_t); curr_pos += sizeof(wan_trace_pkt_t);
if (tdmv_chan) {
if (trace_pkt->channel != tdmv_chan) {
continue;
}
}
if (trace_pkt->real_length >= WAN_MAX_DATA_SIZE){ if (trace_pkt->real_length >= WAN_MAX_DATA_SIZE){
printf("\t:the frame data is to big (%u)!", printf("\t:the frame data is to big (%u)!",
@ -1141,6 +1136,11 @@ static void line_trace(int trace_mode)
continue; continue;
} }
if (tdmv_chan) {
if (trace_pkt->channel != tdmv_chan) {
continue;
}
}
/* /*
if (raw_data) { if (raw_data) {
@ -1933,6 +1933,7 @@ static void aft_perf_stats( void )
printf("Rx ...............................%lu\n",aft_perf->bh.rx); printf("Rx ...............................%lu\n",aft_perf->bh.rx);
printf("Rx Stack .........................%lu\n",aft_perf->bh.rx_stack); printf("Rx Stack .........................%lu\n",aft_perf->bh.rx_stack);
printf("Rx Bri Dchan .....................%lu\n",aft_perf->bh.rx_bri_dchan); printf("Rx Bri Dchan .....................%lu\n",aft_perf->bh.rx_bri_dchan);
printf("Rx Gsm Dchan .....................%lu\n",aft_perf->bh.rx_gsm_dchan);
printf("Tx Post ..........................%lu\n",aft_perf->bh.tx_post); printf("Tx Post ..........................%lu\n",aft_perf->bh.tx_post);
printf(" Port Task\n"); printf(" Port Task\n");
printf("===========================================\n"); printf("===========================================\n");

View File

@ -25,7 +25,7 @@
# #
%define NAME wanpipe %define NAME wanpipe
%define VERSION 7.0.6 %define VERSION 7.0.8
%define RELEASE 0 %define RELEASE 0
%define KVERSION %{?kernel} %define KVERSION %{?kernel}
%define KSRC %{?ksrc} %define KSRC %{?ksrc}
@ -259,14 +259,15 @@ fi
%changelog %changelog
* Wed Sep 25 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.6 * Wed Nov 14 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.8
================================================================== ==================================================================
- Updated wanpipemon to trace on multipel dchan in a single span - Updated wanpipemon to trace on multiple dchan in a single span
eg: wanpipemon -i w1g1 -chan 1 -c trd eg: wanpipemon -i w1g1 -chan 1 -c trd
If chan is not specificed then all dchans will be traced together. If chan is not specificed then all dchans will be traced together.
- Updated sample tapping application. - Updated sample tapping application.
Allow configuration for dchan and seven bit hdlc Allow configuration for dchan and seven bit hdlc
- Fixed GSM drivers for Windows
* Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5 * Mon Jul 15 2013 Nenad Corbic <ncorbic@sangoma.com> - 7.0.5
================================================================== ==================================================================