Bug 28748

Summary: HARP may reject SVCs from certain ATM switches
Product: Base System Reporter: rh <rh>
Component: kernAssignee: Jim Pirzyk <pirzyk>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Unspecified   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
file.diff none

Description rh 2001-07-06 01:30:01 UTC
This problem was first noticed with a Xylan/Omniswitch ATM switch.  In
this case, HARP could not connect to the ARP server.  The switch sent
CALL PROCEEDING and CONNECT, but HARP replied with RELEASE, and cause
code "missing connection ID".  Unlike Fore switches, the Xylan switch
sent the connection ID in the CALL PROCEEDING message, but not CONNECT.
This is allowed (UNI 3.1, 5.3.1.3, page 170).

The CONNECT code in netatm/uni/unisig_vc_state.c checks for the connection ID
from a previous CALL PROCEEDING message, but fails to allow for a VPI value
of zero (!)  It is likely that the HARP authors used exclusively Fore
switches, and this code was probably not tested.

Fix: The following patch allows the VPI to be any value, including zero.  In
fact, zero is probably the most common case for an SVC.
How-To-Repeat: To demonstrate this problem, connect a FreeBSD/HARP system to a switch
that does not send the connection ID (VPI and VCI) with CONNECT.  This
is known to be the case with Xylan, and presumably others may also have
this behavior.  HARP will set up an SVC, but disconnect (RELEASE) at the
very end.  This can be seen by configuring an external ARP server.
Comment 1 Jim Pirzyk freebsd_committer freebsd_triage 2001-07-06 18:43:43 UTC
Responsible Changed
From-To: freebsd-bugs->pirzyk

Took on the HARP ATM problems and I will check out the fix, seems  
straigt forward.
Comment 2 Jim Pirzyk freebsd_committer freebsd_triage 2001-07-25 21:54:02 UTC
State Changed
From-To: open->closed

Commited changes