add handling of `rx connect speed' avp to ignore the bug of xl2tpd.
reported by sebastia@ on misc@.
ok?
Index: usr.sbin/npppd/l2tp/l2tp_call.c
===================================================================
RCS file: /cvs/src/usr.sbin/npppd/l2tp/l2tp_call.c,v
retrieving revision 1.9
diff -u -p -r1.9 l2tp_call.c
--- usr.sbin/npppd/l2tp/l2tp_call.c 18 Jan 2012 03:13:04 -0000 1.9
+++ usr.sbin/npppd/l2tp/l2tp_call.c 20 Jan 2012 06:57:38 -0000
@@ -504,6 +504,14 @@ l2tp_call_recv_ICCN(l2tp_call *_this, u_
case L2TP_AVP_TYPE_MESSAGE_TYPE:
AVP_SIZE_CHECK(avp, ==, 8);
continue;
+ case L2TP_AVP_TYPE_RX_CONNECT_SPEED:
+ /*
+ * As RFC 2661 this AVP is not mandatory. But `xl2tpd'
+ * sends this as a mandatory AVP. Handle this to
+ * ignore the xl2tpd' bug.
+ */
+ AVP_SIZE_CHECK(avp, ==, 10);
+ continue;
case L2TP_AVP_TYPE_TX_CONNECT_SPEED:
AVP_SIZE_CHECK(avp, ==, 10);
tx_conn_speed = avp_get_val32(avp);