From owner-freebsd-isdn@FreeBSD.ORG Sat Jan 6 21:20:51 2007 Return-Path: X-Original-To: freebsd-isdn@freebsd.org Delivered-To: freebsd-isdn@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 9BA4216A403 for ; Sat, 6 Jan 2007 21:20:51 +0000 (UTC) (envelope-from maillist@ovb.ch) Received: from ovbis01.ovb.ch (ovbis01.ovb.ch [213.188.32.144]) by mx1.freebsd.org (Postfix) with ESMTP id 6665713C467 for ; Sat, 6 Jan 2007 21:20:51 +0000 (UTC) (envelope-from maillist@ovb.ch) Received: from ovbas00.ovb.ch ([213.180.173.192] helo=[192.168.30.100]) by ovbis01.ovb.ch with esmtp (Exim 4.51) id 1H3IyA-000LID-Fk; Sat, 06 Jan 2007 22:20:50 +0100 Message-ID: <45A012B3.9050809@ovb.ch> Date: Sat, 06 Jan 2007 22:20:51 +0100 From: Oliver von Bueren User-Agent: Thunderbird 1.5.0.9 (Windows/20061207) MIME-Version: 1.0 To: freebsd-isdn@freebsd.org References: <459FCD1E.9080303@ovb.ch> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: ISDN4BSD - Dropped Calls X-BeenThere: freebsd-isdn@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Using ISDN with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 06 Jan 2007 21:20:51 -0000 Hello Hans Petter Thanks for pointing me to the reason for the STATUS_ENQUIRY messages with an invalid call reference. I've checked the behaviour after changing the code in dss1_l2_get_mbuf to not append any data but send the packet on without the STATUS_ENQUIRY attached. This did not change the overall result, except of course that the releasing of the "fake" call does not happen any more. Kind of a prove that this method used here does not confuse the PBX. As you wrote, a STATUS_ENQUIRY (I'm now talking about the one for the real call) needs to be answered by the PBX, which according to the trace, it does not. No idea why this is, I'll try to get a trace form the PBX. The strange thing is, that a lot of other applications connected to that PBX/port run without problem, even a FreeBSD 4.3 with the then-current i4b and some voice response system. Amongst the other working things are hardware phones/modems and even an active Card (Eicon Diva Pro 2.0) running under windows with the sort-of cygwin-port of Asterisk (from http://www.asteriskwin32.com/) runs without any problems. But as you can guess, I'd like to get away from that stone-age Asterisk version and change to my FreeBSD server. If I find anything, I'll keep you posted. If you've any ideas on how to fix my problem, drop me a note. Thanks! Oliver Hans Petter wrote: > > - F97/F98 is quite strange, here TE makes two > >STATUS_ENQUIRY for call 0x7F. > > These are dummy messages, which are part of the procedure to bring up > the layer 2 "TCP" connection. The idea was to send a zero length > I-frame, but many PBX's simply lack a check for zero length I-frames > and will continue to process the frame as if data was present leading > to crashes in most cases. To avoid this, I send four extra bytes, > which makes up the STATUS_ENQUIRY message. > [...] > > - F116: TE makes a STAT_ENQ for Call 0x35 > > > > - F118: TE sends a REL_COMPLETE for Call 0x35 => ?? > > I4B will hangup the call if the NT-side does not respond to > STATUS_ENQUIRY, after 8 to 16 seconds. This is just a safety > mechanism. The DSS1 specification says that implementing > STATUS_ENQUIRY response is mandatory.