[dahdi-commits] sruffell: linux/trunk r6692 - in /linux/trunk/drivers/dahdi: ./ wctdm24xxp/
SVN commits to the DAHDI project
dahdi-commits at lists.digium.com
Thu Jun 18 13:03:30 CDT 2009
Author: sruffell
Date: Thu Jun 18 13:03:26 2009
New Revision: 6692
URL: http://svn.asterisk.org/svn-view/dahdi?view=rev&rev=6692
Log:
wctdm, wctdm24xxp, wcfxo: Fix calls to dahdi_hooksig.
When JAPAN, AUDIO_RINGCHECK, or ZERO_BATT_RING compile time options are
selected it is possible to get a kernel panic due to an invalid pointer passed
to the dahdi_hooksig function.
(closes issue #15350)
Patch by: alecdavis
Modified:
linux/trunk/drivers/dahdi/wcfxo.c
linux/trunk/drivers/dahdi/wctdm.c
linux/trunk/drivers/dahdi/wctdm24xxp/base.c
Modified: linux/trunk/drivers/dahdi/wcfxo.c
URL: http://svn.asterisk.org/svn-view/dahdi/linux/trunk/drivers/dahdi/wcfxo.c?view=diff&rev=6692&r1=6691&r2=6692
==============================================================================
--- linux/trunk/drivers/dahdi/wcfxo.c (original)
+++ linux/trunk/drivers/dahdi/wcfxo.c Thu Jun 18 13:03:26 2009
@@ -488,7 +488,7 @@
wc->battery = 0;
#ifdef JAPAN
if ((!wc->ohdebounce) && wc->offhook) {
- dahdi_hooksig(&wc->chan, DAHDI_RXSIG_ONHOOK);
+ dahdi_hooksig(wc->chan, DAHDI_RXSIG_ONHOOK);
if (debug)
printk(KERN_DEBUG "Signalled On Hook\n");
#ifdef ZERO_BATT_RING
@@ -516,7 +516,7 @@
#ifdef ZERO_BATT_RING
if (wc->onhook) {
wc->onhook = 0;
- dahdi_hooksig(&wc->chan, DAHDI_RXSIG_OFFHOOK);
+ dahdi_hooksig(wc->chan, DAHDI_RXSIG_OFFHOOK);
if (debug)
printk(KERN_DEBUG "Signalled Off Hook\n");
}
Modified: linux/trunk/drivers/dahdi/wctdm.c
URL: http://svn.asterisk.org/svn-view/dahdi/linux/trunk/drivers/dahdi/wctdm.c?view=diff&rev=6692&r1=6691&r2=6692
==============================================================================
--- linux/trunk/drivers/dahdi/wctdm.c (original)
+++ linux/trunk/drivers/dahdi/wctdm.c Thu Jun 18 13:03:26 2009
@@ -378,14 +378,14 @@
if (debug)
printk(KERN_DEBUG "RING on %d/%d!\n", wc->span.spanno, card + 1);
if (!wc->mod[card].fxo.offhook)
- dahdi_hooksig(&wc->chans[card], DAHDI_RXSIG_RING);
+ dahdi_hooksig(wc->chans[card], DAHDI_RXSIG_RING);
wc->mod[card].fxo.ring = 1;
}
if (wc->mod[card].fxo.ring && !wc->mod[card].fxo.pegcount) {
/* No more ring */
if (debug)
printk(KERN_DEBUG "NO RING on %d/%d!\n", wc->span.spanno, card + 1);
- dahdi_hooksig(&wc->chans[card], DAHDI_RXSIG_OFFHOOK);
+ dahdi_hooksig(wc->chans[card], DAHDI_RXSIG_OFFHOOK);
wc->mod[card].fxo.ring = 0;
}
}
@@ -864,7 +864,7 @@
printk(KERN_DEBUG "NO BATTERY on %d/%d!\n", wc->span.spanno, card + 1);
#ifdef JAPAN
if (!wc->ohdebounce && wc->offhook) {
- dahdi_hooksig(&wc->chans[card], DAHDI_RXSIG_ONHOOK);
+ dahdi_hooksig(wc->chans[card], DAHDI_RXSIG_ONHOOK);
if (debug)
printk(KERN_DEBUG "Signalled On Hook\n");
#ifdef ZERO_BATT_RING
@@ -908,7 +908,7 @@
#ifdef ZERO_BATT_RING
if (wc->onhook) {
wc->onhook = 0;
- dahdi_hooksig(&wc->chans[card], DAHDI_RXSIG_OFFHOOK);
+ dahdi_hooksig(wc->chans[card], DAHDI_RXSIG_OFFHOOK);
if (debug)
printk(KERN_DEBUG "Signalled Off Hook\n");
}
Modified: linux/trunk/drivers/dahdi/wctdm24xxp/base.c
URL: http://svn.asterisk.org/svn-view/dahdi/linux/trunk/drivers/dahdi/wctdm24xxp/base.c?view=diff&rev=6692&r1=6691&r2=6692
==============================================================================
--- linux/trunk/drivers/dahdi/wctdm24xxp/base.c (original)
+++ linux/trunk/drivers/dahdi/wctdm24xxp/base.c Thu Jun 18 13:03:26 2009
@@ -1426,7 +1426,7 @@
printk(KERN_DEBUG "NO BATTERY on %d/%d!\n", wc->span.spanno, card + 1);
#ifdef JAPAN
if (!wc->ohdebounce && wc->offhook) {
- dahdi_hooksig(&wc->chans[card], DAHDI_RXSIG_ONHOOK);
+ dahdi_hooksig(wc->chans[card], DAHDI_RXSIG_ONHOOK);
if (debug)
printk(KERN_DEBUG "Signalled On Hook\n");
#ifdef ZERO_BATT_RING
@@ -1470,7 +1470,7 @@
#ifdef ZERO_BATT_RING
if (wc->onhook) {
wc->onhook = 0;
- dahdi_hooksig(&wc->chans[card], DAHDI_RXSIG_OFFHOOK);
+ dahdi_hooksig(wc->chans[card], DAHDI_RXSIG_OFFHOOK);
if (debug)
printk(KERN_DEBUG "Signalled Off Hook\n");
}
More information about the dahdi-commits
mailing list