[Xorp-hackers] [PATCH 1/2] trivial: ws fixes
igorm at etf.rs
igorm at etf.rs
Mon Apr 2 08:12:48 PDT 2012
From: Igor Maravic <igorm at etf.rs>
Signed-off-by: Igor Maravic <igorm at etf.rs>
---
xorp/fea/data_plane/io/io_ip_dummy.cc | 10 +-
xorp/fea/data_plane/io/io_ip_dummy.hh | 22 ++--
xorp/fea/data_plane/io/io_ip_socket.cc | 166 ++++++++++++++++----------------
xorp/fea/data_plane/io/io_ip_socket.hh | 36 ++++----
xorp/fea/io_ip.cc | 4 +-
xorp/fea/io_ip.hh | 24 +++---
xorp/fea/io_ip_manager.cc | 4 +-
xorp/fea/io_ip_manager.hh | 12 +-
8 files changed, 139 insertions(+), 139 deletions(-)
diff --git a/xorp/fea/data_plane/io/io_ip_dummy.cc b/xorp/fea/data_plane/io/io_ip_dummy.cc
index 4e6deb4..b2f4656 100644
--- a/xorp/fea/data_plane/io/io_ip_dummy.cc
+++ b/xorp/fea/data_plane/io/io_ip_dummy.cc
@@ -7,13 +7,13 @@
// 1991 as published by the Free Software Foundation. Redistribution
// and/or modification of this program under the terms of any other
// version of the GNU General Public License is not permitted.
-//
+//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
// see the GNU General Public License, Version 2, a copy of which can be
// found in the XORP LICENSE.gpl file.
-//
+//
// XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
// http://xorp.net
@@ -135,7 +135,7 @@ IoIpDummy::set_default_multicast_interface(const string& if_name,
_default_multicast_interface = if_name;
_default_multicast_vif = vif_name;
-
+
return (XORP_OK);
}
@@ -157,7 +157,7 @@ IoIpDummy::join_multicast_group(const string& if_name,
vif_name.c_str());
return (XORP_ERROR);
}
-
+
#if 0 // TODO: enable or disable the enabled() check?
if (! vifp->enabled()) {
error_msg = c_format("Cannot join group %s on interface %s vif %s: "
@@ -194,7 +194,7 @@ IoIpDummy::leave_multicast_group(const string& if_name,
vif_name.c_str());
return (XORP_ERROR);
}
-
+
#if 0 // TODO: enable or disable the enabled() check?
if (! vifp->enabled()) {
error_msg = c_format("Cannot leave group %s on interface %s vif %s: "
diff --git a/xorp/fea/data_plane/io/io_ip_dummy.hh b/xorp/fea/data_plane/io/io_ip_dummy.hh
index 6fe16a2..2708acd 100644
--- a/xorp/fea/data_plane/io/io_ip_dummy.hh
+++ b/xorp/fea/data_plane/io/io_ip_dummy.hh
@@ -7,13 +7,13 @@
// 1991 as published by the Free Software Foundation. Redistribution
// and/or modification of this program under the terms of any other
// version of the GNU General Public License is not permitted.
-//
+//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
// see the GNU General Public License, Version 2, a copy of which can be
// found in the XORP LICENSE.gpl file.
-//
+//
// XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
// http://xorp.net
@@ -38,7 +38,7 @@
/**
* @short A base class for Dummy I/O IP raw communication.
- *
+ *
* Each protocol 'registers' for I/O and gets assigned one object
* of this class.
*/
@@ -46,7 +46,7 @@ class IoIpDummy : public IoIp {
public:
/**
* Constructor for a given address family and protocol.
- *
+ *
* @param fea_data_plane_manager the corresponding data plane manager
* (@ref FeaDataPlaneManager).
* @param iftree the interface tree to use.
@@ -64,7 +64,7 @@ public:
/**
* Start operation.
- *
+ *
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
*/
@@ -72,7 +72,7 @@ public:
/**
* Stop operation.
- *
+ *
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
*/
@@ -81,7 +81,7 @@ public:
/**
* Set the default TTL (or hop-limit in IPv6) for the outgoing multicast
* packets.
- *
+ *
* @param ttl the desired IP TTL (a.k.a. hop-limit in IPv6) value.
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
@@ -103,7 +103,7 @@ public:
/**
* Set default interface for transmitting multicast packets.
- *
+ *
* @param if_name the name of the interface that would become the default
* multicast interface.
* @param vif_name the name of the vif that would become the default
@@ -117,7 +117,7 @@ public:
/**
* Join a multicast group on an interface.
- *
+ *
* @param if_name the name of the interface to join the multicast group.
* @param vif_name the name of the vif to join the multicast group.
* @param group the multicast group to join.
@@ -128,10 +128,10 @@ public:
const string& vif_name,
const IPvX& group,
string& error_msg);
-
+
/**
* Leave a multicast group on an interface.
- *
+ *
* @param if_name the name of the interface to leave the multicast group.
* @param vif_name the name of the vif to leave the multicast group.
* @param group the multicast group to leave.
diff --git a/xorp/fea/data_plane/io/io_ip_socket.cc b/xorp/fea/data_plane/io/io_ip_socket.cc
index 5f7b202..a7f4a4d 100644
--- a/xorp/fea/data_plane/io/io_ip_socket.cc
+++ b/xorp/fea/data_plane/io/io_ip_socket.cc
@@ -8,13 +8,13 @@
// 1991 as published by the Free Software Foundation. Redistribution
// and/or modification of this program under the terms of any other
// version of the GNU General Public License is not permitted.
-//
+//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
// see the GNU General Public License, Version 2, a copy of which can be
// found in the XORP LICENSE.gpl file.
-//
+//
// XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
// http://xorp.net
@@ -141,7 +141,7 @@ typedef char *caddr_t;
#endif
#define CMSG_DATA(cmsg) \
- ((unsigned char *)(cmsg) + _ALIGN(sizeof(struct cmsghdr)))
+ ((unsigned char *)(cmsg) + _ALIGN(sizeof(struct cmsghdr)))
#define CMSG_NXTHDR(mhdr, cmsg) \
(((char *)(cmsg) + _ALIGN((cmsg)->cmsg_len) + \
_ALIGN(sizeof(struct cmsghdr)) > \
@@ -247,7 +247,7 @@ IoIpSocket::IoIpSocket(FeaDataPlaneManager& fea_data_plane_manager,
memcpy(&ra_opt6[2], (caddr_t)&rtalert_code6, sizeof(rtalert_code6));
#endif // ! HAVE_RFC3542
#endif // HAVE_IPV6
-
+
// Allocate the buffers
_rcvbuf = new uint8_t[IO_BUF_SIZE];
_sndbuf = new uint8_t[IO_BUF_SIZE];
@@ -359,7 +359,7 @@ IoIpSocket::set_multicast_ttl(int ttl, string& error_msg)
case AF_INET:
{
u_char ip_ttl = ttl; // XXX: In IPv4 the value argument is 'u_char'
-
+
if (setsockopt(_proto_socket_out, IPPROTO_IP, IP_MULTICAST_TTL,
XORP_SOCKOPT_CAST(&ip_ttl), sizeof(ip_ttl)) < 0) {
error_msg = c_format("setsockopt(IP_MULTICAST_TTL, %u) failed: %s",
@@ -368,7 +368,7 @@ IoIpSocket::set_multicast_ttl(int ttl, string& error_msg)
}
}
break;
-
+
#ifdef HAVE_IPV6
case AF_INET6:
{
@@ -378,7 +378,7 @@ IoIpSocket::set_multicast_ttl(int ttl, string& error_msg)
return (XORP_ERROR);
#else
int ip_ttl = ttl;
-
+
if (setsockopt(_proto_socket_out, IPPROTO_IPV6, IPV6_MULTICAST_HOPS,
XORP_SOCKOPT_CAST(&ip_ttl), sizeof(ip_ttl)) < 0) {
error_msg = c_format("setsockopt(IPV6_MULTICAST_HOPS, %u) failed: %s",
@@ -389,13 +389,13 @@ IoIpSocket::set_multicast_ttl(int ttl, string& error_msg)
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
error_msg = c_format("Invalid address family %d", family());
return (XORP_ERROR);
}
-
+
return (XORP_OK);
}
@@ -406,7 +406,7 @@ IoIpSocket::enable_multicast_loopback(bool is_enabled, string& error_msg)
case AF_INET:
{
u_char loop = is_enabled;
-
+
if (setsockopt(_proto_socket_out, IPPROTO_IP, IP_MULTICAST_LOOP,
XORP_SOCKOPT_CAST(&loop), sizeof(loop)) < 0) {
error_msg = c_format("setsockopt(IP_MULTICAST_LOOP, %u) failed: %s",
@@ -415,7 +415,7 @@ IoIpSocket::enable_multicast_loopback(bool is_enabled, string& error_msg)
}
}
break;
-
+
#ifdef HAVE_IPV6
case AF_INET6:
{
@@ -425,7 +425,7 @@ IoIpSocket::enable_multicast_loopback(bool is_enabled, string& error_msg)
return (XORP_ERROR);
#else
uint loop6 = is_enabled;
-
+
if (setsockopt(_proto_socket_out, IPPROTO_IPV6, IPV6_MULTICAST_LOOP,
XORP_SOCKOPT_CAST(&loop6), sizeof(loop6)) < 0) {
error_msg = c_format("setsockopt(IPV6_MULTICAST_LOOP, %u) failed: %s",
@@ -436,13 +436,13 @@ IoIpSocket::enable_multicast_loopback(bool is_enabled, string& error_msg)
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
error_msg = c_format("Invalid address family %d", family());
return (XORP_ERROR);
}
-
+
return (XORP_OK);
}
@@ -487,7 +487,7 @@ IoIpSocket::set_default_multicast_interface(const string& if_name,
}
}
break;
-
+
#ifdef HAVE_IPV6
case AF_INET6:
{
@@ -497,7 +497,7 @@ IoIpSocket::set_default_multicast_interface(const string& if_name,
return (XORP_ERROR);
#else
u_int pif_index = vifp->pif_index();
-
+
if (setsockopt(_proto_socket_out, IPPROTO_IPV6, IPV6_MULTICAST_IF,
XORP_SOCKOPT_CAST(&pif_index), sizeof(pif_index)) < 0) {
error_msg = c_format("setsockopt(IPV6_MULTICAST_IF, %s/%s) failed: %s",
@@ -508,13 +508,13 @@ IoIpSocket::set_default_multicast_interface(const string& if_name,
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
error_msg = c_format("Invalid address family %d", family());
return (XORP_ERROR);
}
-
+
return (XORP_OK);
}
@@ -547,7 +547,7 @@ IoIpSocket::join_multicast_group(const string& if_name,
error_msg += em;
goto out_err;
}
-
+
#if 0 // TODO: enable or disable the enabled() check?
if (! vifp->enabled()) {
error_msg += c_format("Cannot join group %s on interface %s vif %s: "
@@ -558,7 +558,7 @@ IoIpSocket::join_multicast_group(const string& if_name,
goto out_err;
}
#endif // 0/1
-
+
switch (family()) {
case AF_INET:
{
@@ -576,7 +576,7 @@ IoIpSocket::join_multicast_group(const string& if_name,
goto out_err;
}
const IfTreeAddr4& fa = *(ai->second);
-
+
fa.addr().copy_out(in_addr);
group.copy_out(mreq.imr_multiaddr);
mreq.imr_interface.s_addr = in_addr.s_addr;
@@ -597,7 +597,7 @@ IoIpSocket::join_multicast_group(const string& if_name,
}
}
break;
-
+
#ifdef HAVE_IPV6
case AF_INET6:
{
@@ -607,7 +607,7 @@ IoIpSocket::join_multicast_group(const string& if_name,
goto out_err;
#else
struct ipv6_mreq mreq6;
-
+
group.copy_out(mreq6.ipv6mr_multiaddr);
mreq6.ipv6mr_interface = vifp->pif_index();
if (setsockopt(*_proto_socket_in, IPPROTO_IPV6, IPV6_JOIN_GROUP,
@@ -628,13 +628,13 @@ IoIpSocket::join_multicast_group(const string& if_name,
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
error_msg += c_format("Invalid address family %d", family());
goto out_err;
}
-
+
return (XORP_OK);
out_err:
@@ -694,7 +694,7 @@ XorpFd* IoIpSocket::findExistingInputSocket(const string& if_name, const string&
else {
return i->second;
}
-
+
}
@@ -726,7 +726,7 @@ IoIpSocket::leave_multicast_group(const string& if_name,
vif_name.c_str());
return (XORP_ERROR);
}
-
+
#if 0 // TODO: enable or disable the enabled() check?
if (! vifp->enabled()) {
error_msg += c_format("Cannot leave group %s on interface %s vif %s: "
@@ -737,7 +737,7 @@ IoIpSocket::leave_multicast_group(const string& if_name,
return (XORP_ERROR);
}
#endif // 0/1
-
+
switch (family()) {
case AF_INET:
{
@@ -775,7 +775,7 @@ IoIpSocket::leave_multicast_group(const string& if_name,
}
}
break;
-
+
#ifdef HAVE_IPV6
case AF_INET6:
{
@@ -785,7 +785,7 @@ IoIpSocket::leave_multicast_group(const string& if_name,
return (XORP_ERROR);
#else
struct ipv6_mreq mreq6;
-
+
group.copy_out(mreq6.ipv6mr_multiaddr);
mreq6.ipv6mr_interface = vifp->pif_index();
if (setsockopt(*_proto_socket_in, IPPROTO_IPV6, IPV6_LEAVE_GROUP,
@@ -801,13 +801,13 @@ IoIpSocket::leave_multicast_group(const string& if_name,
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
error_msg += c_format("Invalid address family %d\n", family());
return (XORP_ERROR);
}
-
+
return (XORP_OK);
}
@@ -900,9 +900,9 @@ int IoIpSocket::initializeInputSocket(XorpFd* rv, string& error_msg) {
// Not supported on mingw, at least...
if (ip_protocol() == IPPROTO_ICMPV6) {
struct icmp6_filter filter;
-
+
// Pass all ICMPv6 messages
- ICMP6_FILTER_SETPASSALL(&filter);
+ ICMP6_FILTER_SETPASSALL(&filter);
#ifdef HAVE_IPV6_MULTICAST_ROUTING
#if 0 // TODO: XXX: used only for multicast routing purpose by MLD
@@ -1001,7 +1001,7 @@ int IoIpSocket::initializeInputSocket(XorpFd* rv, string& error_msg) {
memset(&sin, 0, sizeof(sin));
sin.sin_family = AF_INET;
sin.sin_addr.s_addr = htonl(INADDR_ANY);
-
+
if (SOCKET_ERROR == bind(*rv, (sockaddr *)&sin,
sizeof(sockaddr_in))) {
XLOG_WARNING("bind() failed: %s\n", win_strerror(GetLastError()));
@@ -1030,7 +1030,7 @@ IoIpSocket::open_proto_sockets(string& error_msg)
// We will open input sockets as interfaces are registered (due to listening for mcast addrs)
if (_proto_socket_out.is_valid())
return (XORP_OK);
-
+
if (! _proto_socket_out.is_valid()) {
_proto_socket_out = socket(family(), SOCK_RAW, ip_protocol());
if (!_proto_socket_out.is_valid()) {
@@ -1103,7 +1103,7 @@ IoIpSocket::close_proto_sockets(string& error_msg)
map<string, XorpFd*>::iterator i;
for (i = _proto_sockets_in.begin(); i != _proto_sockets_in.end(); i++) {
-
+
XorpFd* fd = i->second;
cleanupXorpFd(fd);
@@ -1156,8 +1156,8 @@ IoIpSocket::enable_ip_hdr_include(bool is_enabled, string& error_msg)
{
#ifdef IP_HDRINCL
// XXX: the setsockopt() argument must be 'int'
- int bool_flag = is_enabled;
-
+ int bool_flag = is_enabled;
+
if (setsockopt(_proto_socket_out, IPPROTO_IP, IP_HDRINCL,
XORP_SOCKOPT_CAST(&bool_flag),
sizeof(bool_flag)) < 0) {
@@ -1169,18 +1169,18 @@ IoIpSocket::enable_ip_hdr_include(bool is_enabled, string& error_msg)
#endif // IP_HDRINCL
}
break;
-
+
#ifdef HAVE_IPV6
case AF_INET6:
break; // XXX
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
error_msg = c_format("Invalid address family %d", family());
return (XORP_ERROR);
}
-
+
return (XORP_OK);
}
@@ -1192,7 +1192,7 @@ IoIpSocket::enable_recv_pktinfo(XorpFd* input_fd, bool is_enabled, string& error
{
// XXX: the setsockopt() argument must be 'int'
int bool_flag = is_enabled;
-
+
//
// Interface index
//
@@ -1225,7 +1225,7 @@ IoIpSocket::enable_recv_pktinfo(XorpFd* input_fd, bool is_enabled, string& error
{
// XXX: the setsockopt() argument must be 'int'
int bool_flag = is_enabled;
-
+
//
// Interface index and address
//
@@ -1246,7 +1246,7 @@ IoIpSocket::enable_recv_pktinfo(XorpFd* input_fd, bool is_enabled, string& error
return (XORP_ERROR);
}
#endif // ! IPV6_RECVPKTINFO
-
+
//
// Hop-limit field
//
@@ -1267,7 +1267,7 @@ IoIpSocket::enable_recv_pktinfo(XorpFd* input_fd, bool is_enabled, string& error
}
#endif
#endif // ! IPV6_RECVHOPLIMIT
-
+
//
// Traffic class value
//
@@ -1279,7 +1279,7 @@ IoIpSocket::enable_recv_pktinfo(XorpFd* input_fd, bool is_enabled, string& error
return (XORP_ERROR);
}
#endif // IPV6_RECVTCLASS
-
+
//
// Hop-by-hop options
//
@@ -1346,13 +1346,13 @@ IoIpSocket::enable_recv_pktinfo(XorpFd* input_fd, bool is_enabled, string& error
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
error_msg = c_format("Invalid address family %d", family());
return (XORP_ERROR);
}
-
+
return (XORP_OK);
}
@@ -1406,10 +1406,10 @@ void IoIpSocket::notifyDeletingVif(const string& ifn, const string& vn) {
_proto_sockets_in.erase(key);
cleanupXorpFd(fd);
-
+
XLOG_INFO("Closed socket: %i on interface: %s:%s because it is being deleted, input sockets count: %i\n",
_fd, ifn.c_str(), vn.c_str(), (int)(_proto_sockets_in.size()));
-
+
}
#else
UNUSED(ifn);
@@ -1462,7 +1462,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
XLOG_UNREACHABLE();
return; // Error
}
-
+
// Read from the socket
nbytes = recvmsg(fd, &_rcvmh, 0);
if (nbytes < 0) {
@@ -1530,7 +1530,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
return; // Error
}
#endif // HOST_OS_WINDOWS
-
+
//
// Check whether this is a multicast forwarding related upcall from the
// system to the user-level.
@@ -1562,7 +1562,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
#endif // HAVE_IPV4_MULTICAST_ROUTING
}
break;
-
+
#ifdef HAVE_IPV6
case AF_INET6:
{
@@ -1571,7 +1571,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
#ifdef HAVE_IPV6_MULTICAST_ROUTING
if (nbytes < (ssize_t)sizeof(struct mrt6msg)) {
- // Probably not a system upcall
+ // Probably not a system upcall
break;
}
struct mrt6msg* mrt6msg;
@@ -1600,12 +1600,12 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
return; // Error
}
-
+
//
// Not a system upcall. Pass to the registered processing function.
//
@@ -1620,7 +1620,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
{
IpHeader4 ip4(_rcvbuf);
bool is_datalen_error = false;
-
+
// Input check
if (nbytes < (ssize_t)ip4.size()) {
XLOG_WARNING("proto_socket_read() failed: "
@@ -1641,7 +1641,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
if (ip_tos == IPTOS_PREC_INTERNETCONTROL)
ip_internet_control = true;
-
+
ip_hdr_len = ip4.ip_header_len();
#ifdef IPV4_RAW_INPUT_IS_RAW
ip_data_len = ip4.ip_len() - ip_hdr_len;
@@ -1740,7 +1740,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
}
}
#endif // ! HOST_OS_WINDOWS
-
+
//
// Check for Router Alert option
//
@@ -1765,15 +1765,15 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
test_ip_options_len -= option_len;
option_p += option_len;
}
-
+
break;
} while (false);
}
break;
-
+
#ifdef HAVE_IPV6
case AF_INET6:
- {
+ {
src_address.copy_in(_from6);
#ifndef HOST_OS_WINDOWS
@@ -1797,7 +1797,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
XORP_UINT_CAST(sizeof(struct cmsghdr)));
return; // Error
}
-
+
//
// Get pif_index, hop limit, Router Alert option, etc.
//
@@ -1868,7 +1868,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
}
#endif
#endif // ! HAVE_RFC3542
- }
+ }
break;
#ifdef IPV6_TCLASS
@@ -1929,12 +1929,12 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
return; // Error
}
-
+
// Various checks
if (! (src_address.is_unicast() || src_address.is_zero())) {
// XXX: Accept zero source addresses because of protocols like IGMPv3
@@ -1993,7 +1993,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
ifp = iftree().find_interface(vifp->ifname());
break;
}
-
+
if (dst_address.is_multicast()) {
iftree().find_interface_vif_same_subnet_or_p2p(src_address, ifp,
vifp);
@@ -2002,7 +2002,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
}
break;
} while (false);
-
+
if ((ifp == NULL) || (vifp == NULL)) {
// No vif found. Ignore this packet.
#ifdef USE_SOCKET_PER_IFACE
@@ -2032,7 +2032,7 @@ IoIpSocket::proto_socket_read(XorpFd fd, IoEventType type)
// This vif is down. Silently ignore this packet.
return; // Error
}
-
+
// Process the result
vector<uint8_t> payload(nbytes - ip_hdr_len);
memcpy(&payload[0], _rcvbuf + ip_hdr_len, nbytes - ip_hdr_len);
@@ -2326,9 +2326,9 @@ IoIpSocket::send_packet(const string& if_name,
// a work-around or not. --Ben
#ifdef IP_PKTINFO
int ctllen = 0;
-
+
ctllen = CMSG_SPACE(sizeof(struct in_pktinfo));
-
+
XLOG_ASSERT(ctllen <= CMSG_BUF_SIZE); // XXX
#ifndef HOST_OS_WINDOWS
@@ -2339,10 +2339,10 @@ IoIpSocket::send_packet(const string& if_name,
// source IP part. The pktinfo logic below make sure it uses the correct
// local IP address. This fixes source-routing problems as well.
// --Ben Aug 21, 2008
-
+
_sndmh.msg_controllen = ctllen;
cmsgp = CMSG_FIRSTHDR(&_sndmh);
-
+
// Add the IPV4_PKTINFO ancillary data
cmsgp->cmsg_len = CMSG_LEN(sizeof(struct in_pktinfo));
cmsgp->cmsg_level = SOL_IP;
@@ -2490,7 +2490,7 @@ IoIpSocket::send_packet(const string& if_name,
// XXX: unlikely IPv4, in IPv6 the 'header' is specified as
// ancillary data.
//
-
+
//
// First, estimate total length of ancillary data
//
@@ -2525,7 +2525,7 @@ IoIpSocket::send_packet(const string& if_name,
}
// Space for IPV6_TCLASS
-#ifdef IPV6_TCLASS
+#ifdef IPV6_TCLASS
ctllen += CMSG_SPACE(sizeof(int));
#endif
@@ -2546,7 +2546,7 @@ IoIpSocket::send_packet(const string& if_name,
}
ctllen += CMSG_SPACE(ext_headers_payload[i].size());
}
-
+
#ifndef HOST_OS_WINDOWS
// TODO: Implement IPv6 Ancillary data on windows/mingw
// TODO: Implement IPV6_HOPLIMIT on windows/mingw??
@@ -2558,7 +2558,7 @@ IoIpSocket::send_packet(const string& if_name,
XLOG_ASSERT(ctllen <= CMSG_BUF_SIZE); // XXX
_sndmh.msg_controllen = ctllen;
cmsgp = CMSG_FIRSTHDR(&_sndmh);
-
+
// Add the IPV6_PKTINFO ancillary data
cmsgp->cmsg_len = CMSG_LEN(sizeof(struct in6_pktinfo));
cmsgp->cmsg_level = IPPROTO_IPV6;
@@ -2587,7 +2587,7 @@ IoIpSocket::send_packet(const string& if_name,
#ifdef HAVE_RFC3542
int currentlen;
void *hbhbuf, *optp = NULL;
-
+
cmsgp->cmsg_len = CMSG_LEN(hbhlen);
cmsgp->cmsg_level = IPPROTO_IPV6;
cmsgp->cmsg_type = IPV6_HOPOPTS;
@@ -2627,7 +2627,7 @@ IoIpSocket::send_packet(const string& if_name,
}
cmsgp = CMSG_NXTHDR(&_sndmh, cmsgp);
#endif
-
+
#endif // ! HAVE_RFC3542
}
@@ -2640,7 +2640,7 @@ IoIpSocket::send_packet(const string& if_name,
int_val = ip_ttl;
embed_host_int(CMSG_DATA(cmsgp), int_val);
cmsgp = CMSG_NXTHDR(&_sndmh, cmsgp);
-
+
//
// Set the TOS
//
@@ -2695,7 +2695,7 @@ IoIpSocket::send_packet(const string& if_name,
}
break;
#endif // HAVE_IPV6
-
+
default:
XLOG_UNREACHABLE();
error_msg = c_format("Invalid address family %d", family());
@@ -2780,7 +2780,7 @@ IoIpSocket::proto_socket_transmit(const IfTreeInterface* ifp,
// Transmit the packet
//
-#ifndef HOST_OS_WINDOWS
+#ifndef HOST_OS_WINDOWS
// Set some sendmsg()-related fields
if (_sndmh.msg_controllen == 0)
diff --git a/xorp/fea/data_plane/io/io_ip_socket.hh b/xorp/fea/data_plane/io/io_ip_socket.hh
index 5d956d7..35714d7 100644
--- a/xorp/fea/data_plane/io/io_ip_socket.hh
+++ b/xorp/fea/data_plane/io/io_ip_socket.hh
@@ -7,13 +7,13 @@
// 1991 as published by the Free Software Foundation. Redistribution
// and/or modification of this program under the terms of any other
// version of the GNU General Public License is not permitted.
-//
+//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
// see the GNU General Public License, Version 2, a copy of which can be
// found in the XORP LICENSE.gpl file.
-//
+//
// XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
// http://xorp.net
@@ -45,7 +45,7 @@
/**
* @short A base class for I/O IP raw socket communication.
- *
+ *
* Each protocol 'registers' for I/O and gets assigned one object
* of this class.
*/
@@ -53,7 +53,7 @@ class IoIpSocket : public IoIp, public IfTreeListener {
public:
/**
* Constructor for a given address family and protocol.
- *
+ *
* @param fea_data_plane_manager the corresponding data plane manager
* (@ref FeaDataPlaneManager).
* @param iftree the interface tree to use.
@@ -71,7 +71,7 @@ public:
/**
* Start operation.
- *
+ *
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
*/
@@ -79,7 +79,7 @@ public:
/**
* Stop operation.
- *
+ *
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
*/
@@ -88,7 +88,7 @@ public:
/**
* Set the default TTL (or hop-limit in IPv6) for the outgoing multicast
* packets.
- *
+ *
* @param ttl the desired IP TTL (a.k.a. hop-limit in IPv6) value.
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
@@ -110,7 +110,7 @@ public:
/**
* Set default interface for transmitting multicast packets.
- *
+ *
* @param if_name the name of the interface that would become the default
* multicast interface.
* @param vif_name the name of the vif that would become the default
@@ -124,7 +124,7 @@ public:
/**
* Join a multicast group on an interface.
- *
+ *
* @param if_name the name of the interface to join the multicast group.
* @param vif_name the name of the vif to join the multicast group.
* @param group the multicast group to join.
@@ -135,10 +135,10 @@ public:
const string& vif_name,
const IPvX& group,
string& error_msg);
-
+
/**
* Leave a multicast group on an interface.
- *
+ *
* @param if_name the name of the interface to leave the multicast group.
* @param vif_name the name of the vif to leave the multicast group.
* @param group the multicast group to leave.
@@ -217,10 +217,10 @@ public:
private:
/**
* Open the protocol sockets.
- *
+ *
* The protocol sockets are specific to the particular protocol of
* this entry.
- *
+ *
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
*/
@@ -238,7 +238,7 @@ private:
/**
* Close the protocol sockets.
- *
+ *
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
*/
@@ -253,7 +253,7 @@ private:
/**
* Enable/disable the "Header Included" option (for IPv4) on the outgoing
* protocol socket.
- *
+ *
* If enabled, the IP header of a raw packet should be created
* by the application itself, otherwise the kernel will build it.
* Note: used only for IPv4.
@@ -263,7 +263,7 @@ private:
* was a flag, so for compatibility reasons we better not set it
* here; instead, we will use sendmsg() to specify the header's field
* values.
- *
+ *
* @param is_enabled if true, enable the option, otherwise disable it.
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
@@ -273,11 +273,11 @@ private:
/**
* Enable/disable receiving information about a packet received on the
* incoming protocol socket.
- *
+ *
* If enabled, values such as interface index, destination address and
* IP TTL (a.k.a. hop-limit in IPv6), and hop-by-hop options will be
* received as well.
- *
+ *
* @param is_enabled if true, set the option, otherwise reset it.
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
diff --git a/xorp/fea/io_ip.cc b/xorp/fea/io_ip.cc
index 126d1a5..b03579e 100644
--- a/xorp/fea/io_ip.cc
+++ b/xorp/fea/io_ip.cc
@@ -7,13 +7,13 @@
// 1991 as published by the Free Software Foundation. Redistribution
// and/or modification of this program under the terms of any other
// version of the GNU General Public License is not permitted.
-//
+//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
// see the GNU General Public License, Version 2, a copy of which can be
// found in the XORP LICENSE.gpl file.
-//
+//
// XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
// http://xorp.net
diff --git a/xorp/fea/io_ip.hh b/xorp/fea/io_ip.hh
index ab6a2d3..c6d6a68 100644
--- a/xorp/fea/io_ip.hh
+++ b/xorp/fea/io_ip.hh
@@ -7,13 +7,13 @@
// 1991 as published by the Free Software Foundation. Redistribution
// and/or modification of this program under the terms of any other
// version of the GNU General Public License is not permitted.
-//
+//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
// see the GNU General Public License, Version 2, a copy of which can be
// found in the XORP LICENSE.gpl file.
-//
+//
// XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
// http://xorp.net
@@ -44,7 +44,7 @@ class XorpFd;
/**
* @short A base class for I/O IP raw communication.
- *
+ *
* Each protocol 'registers' for I/O and gets assigned one object
* of this class.
*/
@@ -52,7 +52,7 @@ class IoIp {
public:
/**
* Constructor for a given address family and protocol.
- *
+ *
* @param fea_data_plane_manager the corresponding data plane manager
* (@ref FeaDataPlaneManager).
* @param iftree the interface tree to use.
@@ -91,7 +91,7 @@ public:
/**
* Get the event loop.
- *
+ *
* @return the event loop.
*/
EventLoop& eventloop() { return (_eventloop); }
@@ -105,14 +105,14 @@ public:
/**
* Get the address family.
- *
+ *
* @return the address family.
*/
virtual int family() const { return (_family); }
/**
* Get the IP protocol number.
- *
+ *
* @return the IP protocol number.
*/
virtual uint8_t ip_protocol() const { return (_ip_protocol); }
@@ -155,7 +155,7 @@ public:
/**
* Set the default TTL (or hop-limit in IPv6) for the outgoing multicast
* packets.
- *
+ *
* @param ttl the desired IP TTL (a.k.a. hop-limit in IPv6) value.
* @param error_msg the error message (if error).
* @return XORP_OK on success, otherwise XORP_ERROR.
@@ -164,7 +164,7 @@ public:
/**
* Enable/disable multicast loopback when transmitting multicast packets.
- *
+ *
* If the multicast loopback is enabled, a transmitted multicast packet
* will be delivered back to this host (assuming the host is a member of
* the same multicast group).
@@ -178,7 +178,7 @@ public:
/**
* Set default interface for transmitting multicast packets.
- *
+ *
* @param if_name the name of the interface that would become the default
* multicast interface.
* @param vif_name the name of the vif that would become the default
@@ -192,7 +192,7 @@ public:
/**
* Join a multicast group on an interface.
- *
+ *
* @param if_name the name of the interface to join the multicast group.
* @param vif_name the name of the vif to join the multicast group.
* @param group the multicast group to join.
@@ -206,7 +206,7 @@ public:
/**
* Leave a multicast group on an interface.
- *
+ *
* @param if_name the name of the interface to leave the multicast group.
* @param vif_name the name of the vif to leave the multicast group.
* @param group the multicast group to leave.
diff --git a/xorp/fea/io_ip_manager.cc b/xorp/fea/io_ip_manager.cc
index d6b2a70..a599b9f 100644
--- a/xorp/fea/io_ip_manager.cc
+++ b/xorp/fea/io_ip_manager.cc
@@ -7,13 +7,13 @@
// 1991 as published by the Free Software Foundation. Redistribution
// and/or modification of this program under the terms of any other
// version of the GNU General Public License is not permitted.
-//
+//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
// see the GNU General Public License, Version 2, a copy of which can be
// found in the XORP LICENSE.gpl file.
-//
+//
// XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
// http://xorp.net
diff --git a/xorp/fea/io_ip_manager.hh b/xorp/fea/io_ip_manager.hh
index a150e05..3df7afa 100644
--- a/xorp/fea/io_ip_manager.hh
+++ b/xorp/fea/io_ip_manager.hh
@@ -7,13 +7,13 @@
// 1991 as published by the Free Software Foundation. Redistribution
// and/or modification of this program under the terms of any other
// version of the GNU General Public License is not permitted.
-//
+//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
// see the GNU General Public License, Version 2, a copy of which can be
// found in the XORP LICENSE.gpl file.
-//
+//
// XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
// http://xorp.net
@@ -374,7 +374,7 @@ public:
/**
* Join an IP multicast group.
- *
+ *
* @param if_name the interface through which packets should be accepted.
* @param vif_name the vif through which packets should be accepted.
* @param group_address the multicast group address to join.
@@ -390,7 +390,7 @@ public:
/**
* Leave an IP multicast group.
- *
+ *
* @param if_name the interface through which packets should not be
* accepted.
* @param vif_name the vif through which packets should not be accepted.
@@ -407,7 +407,7 @@ public:
/**
* Leave all IP multicast groups on this interface.
- *
+ *
* @param if_name the interface through which packets should not be
* accepted.
* @param vif_name the vif through which packets should not be accepted.
@@ -566,7 +566,7 @@ public:
uint8_t ip_protocol,
bool enable_multicast_loopback,
string& error_msg);
-
+
/**
* Unregister to receive IP packets.
*
--
1.7.5.4
More information about the Xorp-hackers
mailing list