/* User HANGUP on active/call proceeding state send disc.req  */
void cb_disc_2(struct pcbit_dev *dev, struct pcbit_chan *chan, struct callb_data *data)
/* User HANGUP on active/call proceeding state send disc.req  */
void cb_disc_2(struct pcbit_dev *dev, struct pcbit_chan *chan, struct callb_data *data)
{
 	struct sk_buff *skb;
	int len;
        ushort refnum;
        if ((len = capi_disc_req(chan->callref, &skb, CAUSE_NORMAL)) < 0)
        {
                printk("capi_disc_req failed\n");
                return;
        }
        refnum = last_ref_num++ & 0x7fffU;
        chan->s_refnum = refnum;
        pcbit_l2_write(dev, MSG_DISC_REQ, refnum, skb, len);  
}