Add a small library to deal with TCP-MD5 socket option

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Initializing the variable 's' so that the get_desc_stats() call does not cause an exceptions when there are no messages

Signed-off-by: Srini Seetharaman <srini.seetharaman@gmail.com>
Reviewed-by: TAKAHASHI Minoru <takahashi.minoru7@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
bgp: clean up getpeername() and getsockname() usage

The current code calls getpeername() and getsockname() at lots of
places. The formats of the return values of getpeername() and
getsockname() are different between ipv4 and v6. So the code became
messy.

Calling getpeername() and getsockname() at one place and caching the
results is ideal. But that needs some refactoring. This patch is kinda
halfway.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
packet/bgp: fix BGPPathAttributeMpReachNLRI next_hop parser and serializer

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
bgp: add IPv6 advertisement support

You can advertize IPv6 addresses to IPv6 neighbors.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
bgp: support specifying next hop for neighbor

neighbor_add method takes 'next_hop' parameter. If not specified, like
before, host's ip connected to the neighbor is used as a next hop.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
sw test too: use assured Forwarding behavior DSCP value for dscp_remark

OpenFlow spec describes "DSCP values that do not encode a drop
precedence are not modified".

Diffserv Assured Forwarding described in rfc2597(+rfc3260) has
DSCP values which encodes "drop precedence".

I think we'd better test OFPMBT_DSCP_REMARK works on AF21 -> AF22
rating, for example.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
bgp: fix withdraw in EventPrefix notification

A lost path's is_withdraw is not True so we can't use it. Let's pass
path and is_withdraw information separately to emit_signal().

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Reviewed-by: Hiroshi Yokoi <yokoi.hiroshi@po.ntts.co.jp>
bgp: support md5 authentication for pro-active sessions

For now, only Linux is supported.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
bgp: support md5 authentication for re-active sessions

For now, only Linux is supported.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
ospf: support for opaque message

Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
ospf: fix bug in encoding

Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
ospf: add segment routing opaque types

Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
ospf: describe prefix in one attribute 'prefix' for ease of use

Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Ryu 3.11

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
bgp: fix send_notificaiton crash

self._localname() is invalid before a connection establishes.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>