patch-2.3.99-pre3 linux/drivers/isdn/hisax/callc.c
Next file: linux/drivers/isdn/hisax/l3dss1.c
Previous file: linux/drivers/isdn/eicon/eicon_idi.c
Back to the patch index
Back to the overall index
- Lines: 64
- Date:
Thu Mar 23 08:38:57 2000
- Orig file:
v2.3.99-pre2/linux/drivers/isdn/hisax/callc.c
- Orig date:
Wed Feb 16 17:03:52 2000
diff -u --recursive --new-file v2.3.99-pre2/linux/drivers/isdn/hisax/callc.c linux/drivers/isdn/hisax/callc.c
@@ -1,4 +1,4 @@
-/* $Id: callc.c,v 2.40 1999/12/19 12:59:56 keil Exp $
+/* $Id: callc.c,v 2.41 2000/03/17 07:07:42 kai Exp $
* Author Karsten Keil (keil@isdn4linux.de)
* based on the teles driver from Jan den Ouden
@@ -11,6 +11,9 @@
* Fritz Elfert
*
* $Log: callc.c,v $
+ * Revision 2.41 2000/03/17 07:07:42 kai
+ * fixed oops when dialing out without l3 protocol selected
+ *
* Revision 2.40 1999/12/19 12:59:56 keil
* fix leased line handling
* and cosmetics
@@ -167,7 +170,7 @@
#define MOD_USE_COUNT ( GET_USE_COUNT (&__this_module))
#endif /* MODULE */
-const char *lli_revision = "$Revision: 2.40 $";
+const char *lli_revision = "$Revision: 2.41 $";
extern struct IsdnCard cards[];
extern int nrcards;
@@ -349,6 +352,8 @@
{
isdn_ctrl ic;
+ if (!chanp->proc)
+ return;
if (chanp->proc->para.cause == NO_CAUSE)
return;
ic.driver = chanp->cs->myid;
@@ -641,7 +646,8 @@
lli_leased_hup(fi, chanp);
} else {
FsmChangeState(fi, ST_WAIT_DRELEASE);
- chanp->proc->para.cause = 0x10; /* Normal Call Clearing */
+ if (chanp->proc)
+ chanp->proc->para.cause = 0x10; /* Normal Call Clearing */
chanp->d_st->lli.l4l3(chanp->d_st, CC_DISCONNECT | REQUEST,
chanp->proc);
}
@@ -656,7 +662,8 @@
lli_leased_hup(fi, chanp);
} else {
FsmChangeState(fi, ST_WAIT_DRELEASE);
- chanp->proc->para.cause = 0x15; /* Call Rejected */
+ if (chanp->proc)
+ chanp->proc->para.cause = 0x15; /* Call Rejected */
chanp->d_st->lli.l4l3(chanp->d_st, CC_DISCONNECT | REQUEST,
chanp->proc);
}
@@ -688,7 +695,8 @@
return;
}
#ifndef ALERT_REJECT
- chanp->proc->para.cause = 0x15; /* Call Rejected */
+ if (chanp->proc)
+ chanp->proc->para.cause = 0x15; /* Call Rejected */
chanp->d_st->lli.l4l3(chanp->d_st, CC_REJECT | REQUEST, chanp->proc);
lli_dhup_close(fi, event, arg);
#else
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)