From burg@is.ge.com  Wed Jul  5 01:37:37 1995
Received: from ns.ge.com (ns.ge.com [192.35.39.24])
          by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id BAA11653
          for <FreeBSD-gnats-submit@freebsd.org>; Wed, 5 Jul 1995 01:37:36 -0700
Received: from burgpc.is.ge.com ([3.19.120.86]) by ns.ge.com (8.6.12/8.6.11) with ESMTP id EAA26529 for <FreeBSD-gnats-submit@freebsd.org>; Wed, 5 Jul 1995 04:37:33 -0400
Received: (from burg@localhost) by burgpc.is.ge.com (8.6.11/8.6.9) id KAA02076; Wed, 5 Jul 1995 10:35:49 +0200
Message-Id: <199507050835.KAA02076@burgpc.is.ge.com>
Date: Wed, 5 Jul 1995 10:35:49 +0200
From: burg@is.ge.com
Reply-To: burg@is.ge.com
To: FreeBSD-gnats-submit@freebsd.org
Subject: ppp fails on Shiva LanRover
X-Send-Pr-Version: 3.2

>Number:         591
>Category:       bin
>Synopsis:       SPAP request REJexted in stead of NAKed
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    brian
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jul  5 01:40:01 1995
>Closed-Date:    Sun Apr 12 17:44:01 PDT 1998
>Last-Modified:  Sun Apr 12 17:50:30 PDT 1998
>Originator:     Dick van den Burg
>Release:        FreeBSD 2.0.5-RELEASE i386
>Organization:
>Environment:
>Description:
When trying to connect with ppp to a Shiva Lanrover (version 3.2) the
authentication fails because the SPAP (Shiva Secure PAP) configuration
request the is sent by Shive is REJected by ppp in stead of NAKed.

Strictly speaking, Shive is also at fault, because the should not resend
the SPAP configuration request after a REJ. 

>How-To-Repeat:

Following is a log of the failing session:

07-04 21:09:08 [171] LCP: SendConfigReq
07-04 21:09:08 [171]  ACFCOMP
07-04 21:09:08 [171]  PROTOCOMP
07-04 21:09:08 [171]  ACCMAP [6] 00000000
07-04 21:09:08 [171]  MRU [4] 1500
07-04 21:09:08 [171]  MAGICNUM [6] 14a83a47
07-04 21:09:08 [171] LCP: state change Closed --> Req-Sent
07-04 21:09:11 [171] LCP: SendConfigReq
07-04 21:09:11 [171]  ACFCOMP
07-04 21:09:11 [171]  PROTOCOMP
07-04 21:09:11 [171]  ACCMAP [6] 00000000
07-04 21:09:11 [171]  MRU [4] 1500
07-04 21:09:11 [171]  MAGICNUM [6] 14a83a47
07-04 21:09:12 [171] LCP: Received Configure Request (2) state = Req-Sent (6)
07-04 21:09:12 [171]  MRU 1522
07-04 21:09:12 [171]  ACCMAP 000a0000
07-04 21:09:12 [171]  AUTHPROTO proto = c027
07-04 21:09:12 [171]  AUTHPROTO not implemented.
07-04 21:09:12 [171]  MAGICNUM 247467d0
07-04 21:09:12 [171]  ACFCOMP
07-04 21:09:12 [171] LCP:  SendConfigRej(Req-Sent)
07-04 21:09:12 [171]  AUTHPROTO proto = c027
07-04 21:09:12 [171] LCP: Received Configure Ack (2) state = Req-Sent (6)
07-04 21:09:12 [171] LCP: state change Req-Sent --> Ack-Rcvd
07-04 21:09:12 [171] LCP: Received Configure Request (3) state = Ack-Rcvd (7)
07-04 21:09:12 [171]  MRU 1522
07-04 21:09:12 [171]  ACCMAP 000a0000
07-04 21:09:12 [171]  AUTHPROTO proto = c027
07-04 21:09:12 [171]  AUTHPROTO not implemented.
07-04 21:09:12 [171]  MAGICNUM 247467d0
07-04 21:09:12 [171]  ACFCOMP
07-04 21:09:12 [171] LCP:  SendConfigRej(Ack-Rcvd)
07-04 21:09:12 [171]  AUTHPROTO proto = c027
07-04 21:09:12 [171] LCP: Received Configure Request (4) state = Ack-Rcvd (7)
07-04 21:09:12 [171]  MRU 1522
07-04 21:09:12 [171]  ACCMAP 000a0000
07-04 21:09:12 [171]  AUTHPROTO proto = c027
07-04 21:09:12 [171]  AUTHPROTO not implemented.
07-04 21:09:12 [171]  MAGICNUM 247467d0
07-04 21:09:12 [171]  ACFCOMP
07-04 21:09:12 [171] LCP:  SendConfigRej(Ack-Rcvd)
07-04 21:09:12 [171]  AUTHPROTO proto = c027

...... 20 more request /reject deleted

07-04 21:09:18 [171] LCP: Received Configure Request (24) state = Ack-Rcvd (7)
07-04 21:09:18 [171]  MRU 1522
07-04 21:09:18 [171]  ACCMAP 000a0000
07-04 21:09:18 [171]  AUTHPROTO proto = c027
07-04 21:09:18 [171]  AUTHPROTO not implemented.
07-04 21:09:18 [171]  MAGICNUM 247467d0
07-04 21:09:18 [171]  ACFCOMP
07-04 21:09:18 [171] LCP:  SendConfigRej(Ack-Rcvd)
07-04 21:09:18 [171]  AUTHPROTO proto = c027
07-04 21:09:18 [171] LCP: Received Configure Request (25) state = Ack-Rcvd (7)
07-04 21:09:18 [171]  MRU 1522
07-04 21:09:18 [171]  ACCMAP 000a0000
07-04 21:09:18 [171]  AUTHPROTO proto = c027
07-04 21:09:18 [171]  AUTHPROTO not implemented.
07-04 21:09:18 [171]  MAGICNUM 247467d0
07-04 21:09:18 [171]  ACFCOMP
07-04 21:09:18 [171] LCP:  SendConfigRej(Ack-Rcvd)
07-04 21:09:18 [171]  AUTHPROTO proto = c027
07-04 21:09:18 [171] LCP: Received Terminate Request (2) state = Ack-Rcvd (7)
07-04 21:09:18 [171] LCP: SendTerminateAck.
07-04 21:09:18 [171] LCP: state change Ack-Rcvd --> Req-Sent
07-04 21:10:27 [171] LCP: SendTerminateReq.
07-04 21:10:27 [171] LCP: state change Req-Sent --> Closing
07-04 21:10:27 [171] LCP: Received Configure Request (2) state = Closing (4)
## state = 4
07-04 21:10:27 [171] LCP: Received Terminate Ack (4) state = Closing (4)
07-04 21:10:27 [171] LCP: state change Closing --> Closed
07-04 21:10:27 [171] LCP: LayerFinish
07-04 21:10:27 [171] Phase: Dead
07-04 21:10:32 [171] PPP Terminated.

 

>Fix:
	

*** lcp.c.orig	Wed Jul  5 09:40:26 1995
--- lcp.c	Wed Jul  5 09:45:40 1995
***************
*** 517,525 ****
  	    goto reqreject;
  	  break;
  	default:
! 	  LogPrintf(LOG_LCP, " %s not implemented.\n", request);
! 	  goto reqreject;
! 	}
  	break;
        case MODE_NAK:
  	break;
--- 517,527 ----
  	    goto reqreject;
  	  break;
  	default:
! 	  LogPrintf(LOG_LCP, " %s not implemented, NAK.\n", request);
!           bcopy(cp, nakp, length);
!           nakp += length;
!           break;
!         }
  	break;
        case MODE_NAK:
  	break;

This is a trace after the patch has been applied


07-04 22:06:43 [1201] LCP: SendConfigReq
07-04 22:06:43 [1201]  ACFCOMP
07-04 22:06:43 [1201]  PROTOCOMP
07-04 22:06:43 [1201]  ACCMAP [6] 00000000
07-04 22:06:43 [1201]  MRU [4] 1500
07-04 22:06:43 [1201]  MAGICNUM [6] 10d2be1e
07-04 22:06:43 [1201] LCP: state change Closed --> Req-Sent
07-04 22:06:46 [1201] LCP: SendConfigReq
07-04 22:06:46 [1201]  ACFCOMP
07-04 22:06:46 [1201]  PROTOCOMP
07-04 22:06:46 [1201]  ACCMAP [6] 00000000
07-04 22:06:46 [1201]  MRU [4] 1500
07-04 22:06:46 [1201]  MAGICNUM [6] 10d2be1e
07-04 22:06:47 [1201] LCP: Received Configure Request (2) state = Req-Sent (6)
07-04 22:06:47 [1201]  MRU 1522
07-04 22:06:47 [1201]  ACCMAP 000a0000
07-04 22:06:47 [1201]  AUTHPROTO proto = c027
07-04 22:06:47 [1201]  AUTHPROTO not implemented, NAK.
07-04 22:06:47 [1201]  MAGICNUM 993c0be7
07-04 22:06:47 [1201]  ACFCOMP
07-04 22:06:47 [1201] LCP:  SendConfigNak(Req-Sent)
07-04 22:06:47 [1201]  AUTHPROTO proto = c027
07-04 22:06:47 [1201] LCP: Received Configure Ack (2) state = Req-Sent (6)
07-04 22:06:47 [1201] LCP: state change Req-Sent --> Ack-Rcvd
07-04 22:06:47 [1201] LCP: Received Configure Request (3) state = Ack-Rcvd (7)
07-04 22:06:47 [1201]  MRU 1522
07-04 22:06:47 [1201]  ACCMAP 000a0000
07-04 22:06:47 [1201]  AUTHPROTO proto = c123
07-04 22:06:47 [1201]  AUTHPROTO not implemented.
07-04 22:06:47 [1201]  MAGICNUM 993c0be7
07-04 22:06:47 [1201]  ACFCOMP
07-04 22:06:47 [1201] LCP:  SendConfigNak(Ack-Rcvd)
07-04 22:06:47 [1201]  AUTHPROTO proto = c123
07-04 22:06:47 [1201] LCP: Received Configure Request (4) state = Ack-Rcvd (7)
07-04 22:06:47 [1201]  MRU 1522
07-04 22:06:47 [1201]  ACCMAP 000a0000
07-04 22:06:47 [1201]  AUTHPROTO proto = c023
07-04 22:06:47 [1201]  MAGICNUM 993c0be7
07-04 22:06:47 [1201]  ACFCOMP
07-04 22:06:47 [1201] LCP:  SendConfigAck(Ack-Rcvd)
07-04 22:06:47 [1201]  MRU 1522
07-04 22:06:47 [1201]  ACCMAP 000a0000
07-04 22:06:47 [1201]  AUTHPROTO proto = c023
07-04 22:06:47 [1201]  MAGICNUM 993c0be7
07-04 22:06:47 [1201]  ACFCOMP
07-04 22:06:47 [1201] LCP: state change Ack-Rcvd --> Opend
07-04 22:06:47 [1201] LCP: LayerUp
07-04 22:06:47 [1201] Phase: Authenticate
07-04 22:06:47 [1201]  his = c023, mine = 0
07-04 22:06:47 [1201] PAP: yyyy (xxxx)
07-04 22:06:48 [1201] PapInput: ACK
07-04 22:06:48 [1201] Received PAP_ACK (Welcome)
07-04 22:06:48 [1201] Phase: Network
07-04 22:06:48 [1201] IPCP: state change Initial --> Closed
07-04 22:06:48 [1201] IPCP Up event!!
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->phk 
Responsible-Changed-By: scrappy 
Responsible-Changed-When: Sun May 26 16:23:18 PDT 1996 
Responsible-Changed-Why:  
last to modify, patch is included 
Responsible-Changed-From-To: phk->brian 
Responsible-Changed-By: phk 
Responsible-Changed-When: Sun Apr 12 10:51:34 PDT 1998 
Responsible-Changed-Why:  
Brian, as Mr PPP, can you check if this is a problem still ? 
State-Changed-From-To: open->closed 
State-Changed-By: brian 
State-Changed-When: Sun Apr 12 17:44:01 PDT 1998 
State-Changed-Why:  
Invalid AUTHPROTO requests are now NAKd with the message 

AUTHPROTO 0xNNNN - not recognised, NAK 
>Unformatted:


