Date: Wed, 29 Sep 1999 16:51:58 +0100 From: "Daniel Hilevich" <danhil@cwnt.com> To: <freebsd-questions@FreeBSD.ORG>, <freebsd-hackers@FreeBSD.ORG> Subject: A bug in the sppp driver? Message-ID: <033a01bf0a92$8fe1b4e0$2e00a8c0@nt46daniel>
next in thread | raw e-mail | index | archive | help
While trying to use the sppp, I came across this situation and I think it's
a bug:
When you trying to establish connection from one peer (local) to another
(remote), you sent a CONF_REQ message to the remote peer. The remote peer
should answer with a CONF_ACK message. In the code of the sppp driver
(net/if_spppsubr.c, lines 1321 - 1357) you can see that the remote peer
send's a CONF_ACK message to the local peer
(in the line: rv = (cp->RCR)(sp, h, len);) but doesn't change it state to
STATE_ACK_SENT (as I think it should do) . Further more, you can see that
after a few lines, there are these strange lines:
case STATE_ACK_SENT:
case STATE_REQ_SENT:
sppp_cp_change_state(cp, sp, rv?
STATE_ACK_SENT: STATE_REQ_SENT);
break;
Question: if you are in the STATE_ACK_SENT why change the state to the same
one according to the value of rv?
As I understand, the state should be changed according to the value of rv,
but it should be done right after the call to cp->RCR. The it is implemented
now, the state won't be changed.
(I have a lot of problems with this driver and any help will be
appreciative)
Thank you,
--
Daniel Hilevich
mailto:danhil@cwnt.com
Charlotte's Web Networks LTD.
Tel: +972-4-9592203 ext. 214
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?033a01bf0a92$8fe1b4e0$2e00a8c0>
