Hello
I have had some problems getting CBCP to work (callback extension to PPP).
I believe there is a bug in the CBCP code.
"3.2.3 Callback to a pre-specified or administrator specified number.
The Caller will be called back at specified address. The Callback
Type field is set to 3.
Only the Callback Delay field is present in the is Callback Request.
The Caller MAY modify the Callback Delay field."
(from the now expired draft from ftp.microsoft.com)
The cbcp code includes an extra 0 field (byte) after the 'Callback Delay'
field. The following patch removes this extra (?) byte.
--- cbcp.c.org Tue Sep 7 20:07:55 1998
+++ cbcp.c Tue Sep 7 20:08:25 1998
@@ -343,10 +343,9 @@
if (cb_type & ( 1 << CB_CONF_ADMIN ) ) {
syslog(LOG_DEBUG, "cbcp_resp CONF_ADMIN");
PUTCHAR(CB_CONF_ADMIN, bufp);
- len = 3 + 1;
+ len = 3;
PUTCHAR(len , bufp);
PUTCHAR(5, bufp); /* delay */
- PUTCHAR(0, bufp);
cbcp_send(us, CBCP_RESP, buf, len);
return;
}
The symptoms before applying this for me was that both server and client
wanted to use 'AdminDefined' for the callback, but the server kept
requesting this. Here is some debug output:
Sep 7 18:17:48 nirvana pppd[228]: rcvd [CBCP Request id=0x59 < AdminDefined del
ay = 0>]
Sep 7 18:17:48 nirvana pppd[228]: length: 3
Sep 7 18:17:48 nirvana pppd[228]: user admin defined allowed
Sep 7 18:17:48 nirvana pppd[228]: cbcp_resp cb_type=8
Sep 7 18:17:48 nirvana pppd[228]: cbcp_resp CONF_ADMIN
Sep 7 18:17:48 nirvana pppd[228]: sent [CBCP Response id=0x59 < AdminDefined de
lay = 0 number = >]
Sep 7 18:17:50 nirvana pppd[228]: rcvd [CBCP Request id=0x5a < AdminDefined del
ay = 0>]
Sep 7 18:17:50 nirvana pppd[228]: length: 3
Sep 7 18:17:50 nirvana pppd[228]: user admin defined allowed
Sep 7 18:17:50 nirvana pppd[228]: cbcp_resp cb_type=8
Sep 7 18:17:50 nirvana pppd[228]: cbcp_resp CONF_ADMIN
Sep 7 18:17:50 nirvana pppd[228]: sent [CBCP Response id=0x5a < AdminDefined de
lay = 0 number = >]
and so on ...
With the patched code the above is changed to:
Sep 7 20:34:24 nirvana pppd[855]: rcvd [CHAP Success id=0xf9 ""]
Sep 7 20:34:24 nirvana pppd[855]: cbcp_open
Sep 7 20:34:24 nirvana pppd[855]: rcvd [CBCP Request id=0x14 < AdminDefined del
ay = 0>]
Sep 7 20:34:24 nirvana pppd[855]: length: 3
Sep 7 20:34:24 nirvana pppd[855]: user admin defined allowed
Sep 7 20:34:24 nirvana pppd[855]: cbcp_resp cb_type=8
Sep 7 20:34:24 nirvana pppd[855]: cbcp_resp CONF_ADMIN
Sep 7 20:34:24 nirvana pppd[855]: sent [CBCP Response id=0x14 < AdminDefined de
lay = 0>]
Sep 7 20:34:24 nirvana pppd[855]: rcvd [CBCP Ack id=0x15 < AdminDefined delay =
0>]
Sep 7 20:34:24 nirvana pppd[855]: id doesn't match: expected 20 recv 21
Sep 7 20:34:24 nirvana pppd[855]: sent [LCP TermReq id=0x2 "Call me back, pleas
e"]
Sep 7 20:34:24 nirvana pppd[855]: rcvd [LCP TermAck id=0x2]
Which seems a lot better, except for that "id doesn't match", which
probably (hopefully) is a server bug ...
/Urban
---
Urban Widmark [EMAIL PROTECTED]
Svenska Test AB +46 90 71 71 23
-
To unsubscribe from this list: send the line "unsubscribe linux-ppp" in
the body of a message to [EMAIL PROTECTED]