Prevent multiple concurrent FORK creations (https://issues.jboss.org/browse/JGRP-1842)
Merge branch 'master' of github.com:belaban/JGroups
JGRP-1843 Try to discover alternative SASL factories (e.g. jboss-sasl)
Merge pull request #144 from tristantarrant/JGRP-1843/sasl_discovery/master

JGRP-1843 Try to discover alternative SASL factories (e.g. jboss-sasl)
Added possibility to use mutual authentication
- Fixes for JGRP-1826
- Changed PingData: one physical_addr instead of a list of phys addrs
- Changed GossipData: one physical_addr instead of a list of phys addrs
- Fixed compile error with JDK 8 in MessageDispatcher
- Added Responses and test
- Replaced MERGE2 with MERGE3 in all sample config files
- Removed num_initial_members (deprecated and ignored) from XML config files
- MERGE2/MERGE3 now use their own protocol to implement view fetching and doesn't depend on discovery anymore. This allows us to remove the view fetching code from the discovery protocols
- Replaced is_server and is_coord with 1 byte flag in PingData
- Removed division/zero exception in UPerf
- Added keySet() to LazyRemovalCache
- Destroying window on close
- First shot at CloudBasedDiscovery.txt
- Using GMS.join_timeout rather than Discovery.timeout for discovery
- Set TCP.use_async_discovery to true in tcp.xml
- Protocol: setValue() logs a warning if the field to be set is deprecated
- PingData carries an optional list of members for which discovery is requested
- Tests for modified PingData
- Changed Discovery.findMembers() to accept a members list and populate a Responses object  (https://issues.jboss.org/browse/JGRP-1826)
- ClientGmsImpl.join() uses FIND_INITIAL_MBRS event and then waits for GMS.join_timeout ms on the returned Responses object
- MERGE2 uses FIND_MBRS event and then waits for discovery_timeout ms on the returned Responses object
- MERGE3 uses FIND_MBRS event and then waits for discovery_timeout ms on the returned Responses object
- TCPGOSSIP/RouterStub: changed signature of findMembers()
- Passing async parameter to findMembers() in case async_discovery should be overwritten (e.g. in up(FIND_MBRS,...)
- TP: using Responses returned by FIND_MBRS evt sent up
- Looping back if target is a physical address and local address == target
- SHARED_LOOPBACK_PING.findMembers() changed to the new method
- FILE_PING: added a shutdown hook to remove own info in case of a crash
- FILE_PING: selectively reading info for listed members in findMembers()
- JDBC_PING.findMembers(): add result to Responses as soon as it has been read
- RACKSPACE_PING.findMembers(): add result to Responses as soon as it has been read
- SWIFT_PING.findMembers(): add result to Responses as soon as it has been read
- S3_PING.findMembers(): add result to Responses as soon as it has been read
- S3_PING: read members selectively if listed
- Set TUNNEL.supportsMulticasting() to true
- Removed timeout from discovery protocols' configs
- Changed GMS.join_timeout to 2000 in udp.xml and tcp.xml
- TP: when IP multicast is not available, sending a message to N-1 members by looking up the IP address for each member. We used to send this to *all* physical addresses in the cache, which was a waste
- Sending a multicast (N-1) only sends to members of current cluster. Needed to take shared transports into account
- AsciiString: prevent NPE in ctor when string is null
- SHARED_LOOPBACK_PING return an empty Responses object if it is the first member in a cluster. This allows the member to become coordinator *immediately* rather than having to wait for GMS.join_timeout ms
- Set GMS.max_join_attempts to 10
- UNICAST3 only sends a CLOSE to dest if dest is still a member
- TP: removed warning for incorrect destination as this might happen a few times (correct)
- Added Responses.contains(Address addr)
- Fixed Discovery.serializeWithoutView(): didn't add is_coord flag
- Changed version to 3.5.0.Beta7
- Fixes to compile with JDK 6
Merge branch 'master' of github.com:belaban/JGroups
- Fixed NPE in DiagnosticsHandler (https://issues.jboss.org/browse/JGRP-1845)