If the client asks for CBCP, then replies with CBCP_NONUM

to our REQ, allow no dialback - but only if we've
``set cbcp *''..
Suggested by: Andrzej Tobola <san@koziolek.lublin.top.pl>
This commit is contained in:
Brian Somers 1998-10-17 12:28:08 +00:00
parent cf784a89b7
commit f21c8aecd1

View File

@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: cbcp.c,v 1.1 1998/08/07 18:44:16 brian Exp $
* $Id: cbcp.c,v 1.2 1998/08/26 17:39:38 brian Exp $
*/
#include <sys/types.h>
@ -548,6 +548,13 @@ cbcp_CheckResponse(struct cbcp *cbcp, struct cbcp_data *data)
log_Printf(LogPHASE, "Internal CBCP error - agreed on %d ??!?\n",
(int)cbcp->fsm.type);
return CBCP_ACTION_DOWN;
} else if (data->type == CBCP_NONUM && cbcp->fsm.type == CBCP_CLIENTNUM) {
/*
* Client doesn't want CBCP after all....
* We only allow this when ``set cbcp *'' has been specified.
*/
cbcp->fsm.type = CBCP_NONUM;
return CBCP_ACTION_ACK;
}
log_Printf(LogCBCP, "Invalid peer RESPONSE\n");
return CBCP_ACTION_REQ;