#
# TIPC configuration
#

menuconfig TIPC
	tristate "The TIPC Protocol (EXPERIMENTAL)"
	depends on INET && EXPERIMENTAL
	---help---
	  The Transparent Inter Process Communication (TIPC) protocol is
	  specially designed for intra cluster communication. This protocol
	  originates from Ericsson where it has been used in carrier grade
	  cluster applications for many years.

	  For more information about TIPC, see http://tipc.sourceforge.net.

	  This protocol support is also available as a module ( = code which
	  can be inserted in and removed from the running kernel whenever you
	  want). The module will be called tipc. If you want to compile it
	  as a module, say M here and read <file:Documentation/kbuild/modules.txt>.

	  If in doubt, say N.

config TIPC_PORTS
	int "Maximum number of ports in a node"
	depends on TIPC
	range 127 65535
	default "8191"
	help
	  Specifies how many ports can be supported by a node.
	  Can range from 127 to 65535 ports; default is 8191.

	  Setting this to a smaller value saves some memory,
	  setting it to higher allows for more ports.
