Tested peer (quagga) doesn't interpret it nicely (i.e. it shuts the connection
down). Better not tell anything.
Signed-off-by: Benjamin Cama <benoar@dolka.fr>
We would advertise IPv6 routes to non-multiprotocol aware peers. Fix that.
Also, fix the way we parse options, to handle multiple optional parameters with
one capability in it (or many; it's just the way quagga send them).
Signed-off-by: Benjamin Cama <benoar@dolka.fr>
Add IPv6 routes advertisement handling, with MP path attributes heading
prepared on initialization.
BTW, fix a bug in attribute size calculation (for extended attr).
Signed-off-by: Benjamin Cama <benoar@dolka.fr>
Will be used to set the NEXT_HOP for IPv6 routes, otherwise our address in
ipv6_prefix is used as the next hop.
Signed-off-by: Benjamin Cama <benoar@dolka.fr>
We will need to do that when we will send IPv6 routes (RFC4760 says we SHOULD
NOT carry this attribute when we will send UPDATE without NLRI). So, we save
the length of all the attributes except NEXT_HOP for later memcpy().
Signed-off-by: Benjamin Cama <benoar@dolka.fr>
Optional Parameters is defined in RFC4271 and Capability advertisement in
RFC3392. For now, we only hande them upon receiving an OPEN message.
Signed-off-by: Benjamin Cama <benoar@dolka.fr>
thanks. Changes:
- Handle session shutdown gracefully regarding leaving the bundle (bug that is
caused when a all session leaves a bundle then another join)
- IP assignment is done only for the first session in the bundle (save IP
waste for multiple MLPPP sessions)
- Route is being added only for the first session in the bundle (less routes
on l2tpns system)
- Fix route deletion problem for MLPPP sessions (bug that caused when a
session leaves a bundle)
- Uniformity of sequence number space satisfied (according to RFC1990)
- Fix reassembling fragmented packets and handling lost fragments (according
to RFC 1990)
- FragmentatConnection to l2tpns.cvs.sourceforge.net closed by remote host.n
across N session rather than two)
- Sequence numbers extraction mask has been corrected (bug in extracting
sequence numbers)
- some clustering support fixes
- Upload/Download statistics has been corrected
- add "kill_timedout_sessions" config option