linux/net/tipc
Allan Stephens f0712e86b7 tipc: Ensure network address change doesn't impact local connections
Revises routines that deal with connections between two ports on
the same node to ensure the connection is not impacted if the node's
network address is changed in mid-operation. The routines now treat
the default node address of <0.0.0> as an alias for "this node" in
the following situations:

1) Incoming messages destined to a connected port now handle the alias
properly when validating that the message was sent by the expected
peer port, ensuring that the message will be accepted regardless of
whether it specifies the node's old network address or it's current one.

2) The code which completes connection establishment now handles the
alias properly when determining if the peer port is on the same node
as the connected port.

An added benefit of addressing issue 1) is that some peer port
validation code has been relocated to TIPC's socket subsystem, which
means that validation is no longer done twice when a message is
sent to a non-socket port (such as TIPC's configuration service or
network topology service).

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2012-04-19 15:46:45 -04:00
..
addr.c tipc: Eliminate configuration for maximum number of cluster nodes 2011-03-13 16:35:17 -04:00
addr.h tipc: Add routines for safe checking of node's network address 2012-04-19 15:46:39 -04:00
bcast.c tipc: Eliminate trivial buffer manipulation helper routines 2012-02-24 17:05:16 -05:00
bcast.h tipc: Major redesign of broadcast link ACK/NACK algorithms 2012-02-06 16:59:18 -05:00
bearer.c tipc: Add routines for safe checking of node's network address 2012-04-19 15:46:39 -04:00
bearer.h tipc: rename struct bearer_name to struct tipc_bearer_names 2011-12-29 21:53:30 -05:00
config.c tipc: Eliminate support for tipc_mode global variable 2012-02-24 17:05:17 -05:00
config.h tipc: Remove unused link event tracking code 2011-09-17 22:55:15 -04:00
core.c tipc: Eliminate support for tipc_mode global variable 2012-02-24 17:05:17 -05:00
core.h tipc: Eliminate support for tipc_mode global variable 2012-02-24 17:05:17 -05:00
discover.c tipc: Eliminate trivial buffer manipulation helper routines 2012-02-24 17:05:16 -05:00
discover.h tipc: rename struct link* to struct tipc_link* 2011-12-29 21:53:30 -05:00
eth_media.c tipc: rename struct media to struct tipc_media 2011-12-29 21:53:29 -05:00
handler.c tipc: remove zeroing assignments to static global variables 2011-01-01 13:57:57 -08:00
Kconfig tipc: Eliminate configuration for maximum number of cluster nodes 2011-03-13 16:35:17 -04:00
link.c net: cleanup unsigned to unsigned int 2012-04-15 12:44:40 -04:00
link.h tipc: rename struct link* to struct tipc_link* 2011-12-29 21:53:30 -05:00
log.c tipc: nuke the delimit static inline function. 2012-02-24 17:05:14 -05:00
log.h tipc: update log.h re-include protection to reflect new name 2011-01-01 14:56:18 -08:00
Makefile tipc: rename dbg.[ch] to log.[ch] 2011-01-01 13:57:51 -08:00
msg.c tipc: Eliminate trivial buffer manipulation helper routines 2012-02-24 17:05:16 -05:00
msg.h tipc: Remove duplicate check of message destination node 2012-02-24 17:05:14 -05:00
name_distr.c tipc: Update node-scope publications when network address is assigned 2012-04-19 15:46:36 -04:00
name_distr.h
name_table.c tipc: Ensure network address change doesn't impact name table updates 2012-04-19 15:46:40 -04:00
name_table.h tipc: Simplify enforcement of reserved name type prohibition 2012-02-24 17:05:14 -05:00
net.c tipc: Eliminate support for tipc_mode global variable 2012-02-24 17:05:17 -05:00
net.h tipc: manually inline net_start/stop, make assoc. vars static 2011-03-13 16:35:17 -04:00
netlink.c genetlink: make netns aware 2009-07-12 14:03:27 -07:00
node_subscr.c tipc: Ensure network address change doesn't impact local connections 2012-04-19 15:46:45 -04:00
node_subscr.h tipc: Cosmetic changes to node subscription code 2011-03-13 16:35:16 -04:00
node.c tipc: Add routines for safe checking of node's network address 2012-04-19 15:46:39 -04:00
node.h tipc: Hide internal details of node table implementation 2012-02-24 17:05:15 -05:00
port.c tipc: Ensure network address change doesn't impact local connections 2012-04-19 15:46:45 -04:00
port.h tipc: Ensure network address change doesn't impact local connections 2012-04-19 15:46:45 -04:00
ref.c net: two vzalloc() cleanups 2011-12-19 16:01:38 -05:00
ref.h tipc: cleanup function namespace 2010-10-16 11:13:24 -07:00
socket.c tipc: Ensure network address change doesn't impact local connections 2012-04-19 15:46:45 -04:00
subscr.c tipc: Simplify enforcement of reserved name type prohibition 2012-02-24 17:05:14 -05:00
subscr.h tipc: rename struct subscription to struct tipc_subscription 2011-12-29 21:53:29 -05:00