[En-Nut-Discussion] PPP: compression reject, DNS

Michel unreal at home.nl
Thu Dec 18 20:34:47 CET 2003


Hi Harald,

Sorry it took so long, but I managed to find the problem.
In the IpcpRxConfReq function the rejected option is copied
into the reply. But it copies data from the previous option,
not the option it is rejecting at that moment.

Anyway, I fixed it. Here's the code:

        if (len) {
            if(xcpr != xcpo) {
                xcpr->xcpo_type = xcpo->xcpo_type;
                xcpr->xcpo_len = len;
                for(i = 0; i < len - 2; i++)
                    //xcpr->xcpo_.uc[i] = xcpr->xcpo_.uc[i];
		      //mhe copy from xcpo, not xcpr
                    xcpr->xcpo_.uc[i] = xcpo->xcpo_.uc[i];
            }
            xcpr = (XCPOPT *)((char *)xcpr + len);
            xcps += len;
        }
        xcpl -= xcpo->xcpo_len;
        xcpo = (XCPOPT *)((char *)xcpo + xcpo->xcpo_len);
    }


Should I commit it to CVS? (Can I?)

Because In the received packet there were 2 options, so that was why it
failed with my setup. For the interested: Here's a log of what went wrong:


.......
sent [IPCP ConfReq id=0x1 <addr 1.1.1.1> <compress VJ 0f 01>] Timeout
0x8050200:0x8073708 in 3 seconds. 
rcvd [IPCP ConfRej id=0x1 <compress 0x101 01 01>]
ipcp_rejci: received bad Reject!
Received bad configure-nak/rej:  02 06 01 01 01 01
.......

Greetings,

Michel Hendriks

BTW. I used the pppc sample to setup the nameserver and default
route and it works perfectly. Many thanks.




More information about the En-Nut-Discussion mailing list