Summary:dtm: Segregate IPv4-Sub-net & IPv6 Link-Local/Global for discovery broadcast [#913] Review request for Trac Ticket(s): #913 Peer Reviewer(s): Mathi/ Neel /Hans Pull request to: <<LIST THE PERSON WITH PUSH ACCESS HERE>> Affected branch(es): default , 4.5 & 4.4 Development branch: default
-------------------------------- Impacted area Impact y/n -------------------------------- Docs n Build system n RPM/packaging n Configuration files n Startup scripts n SAF services n OpenSAF services n Core libraries y Samples n Tests n Other n Comments (indicate scope for each "y" above): --------------------------------------------- changeset 9c1d4941c973b71381b30143e9d0e47d90c254e5 Author: A V Mahesh <[email protected]> Date: Mon, 19 May 2014 13:54:58 +0530 dtm: Segregate IPv4-Sub-net & IPv6 Link-Local/Global for discovery broadcast [#913] The current dtm discovery broadcast listener is getting binded to ANY_ADDR ( IPv4 0.0.0.0 & Ipv6 :: ) and the sender is sending on IPv4 sub-net or IPv6 link-local multicast address ( ff02::1 ) From Now : Based on the dtm.conf IPv4 address configuration the discovery broadcast messages listener will bind to the dtmd.conf configured sub-net broadcast address say 192.168.56.255 and the sender will send on that specific broadcast address only say 192.168.56.255, so the discovery broadcast messages is not visible to any other sub-net. Based on the dtm.conf IPv46 address Scope:Link Local or Scope:Global configuration the discovery broadcast messages listener will bind to the dtmd.conf configured multicast address say ff02::1 link-local or ff0e::1 for link-global the sender will send on that specific multicast address only say ff02::1 link-local or ff0e::1 for link-globa , so the discovery broadcast messages is not visible to any other multicast address. Complete diffstat: ------------------ osaf/services/infrastructure/dtms/dtm/dtm_node_sockets.c | 91 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------- osaf/services/infrastructure/dtms/dtm/dtm_read_config.c | 19 ++++++++----------- 2 files changed, 86 insertions(+), 24 deletions(-) Testing Commands: ----------------- <<LIST THE COMMAND LINE TOOLS/STEPS TO TEST YOUR CHANGES>> Testing, Expected Results: -------------------------- Test case 1) Bring-up 2 -Controllers with TCP IPV6 Scope:Global , when A Third party IPV6 UDP Application bind to same Opensf dtm port 6900 on Scope:Link Local Mcast address ( ff02::1 ) to receive broadcast messages. Expected result: - Third party IPv6 UDP Application shouldn't receive any broadcast messages - Both Controllers should come up as Active & Standby , fail-over & Switchover should work fine Test case 2) Bring-up 2 -Controllers with TCP IPv6 Scope:Link Local , when A Third party IPv6 UDP Application bind to same Opensf dtm port 6900 on Scope:Global Mcast address ( ff0e::1 ) to receive broadcast messages. Expected result: - Third party IPv6 UDP Application shouldn't receive any broadcast messages - Both Controllers should come up as Active & Standby , fail-over & Switchover should work fine Test case 3) Bring-up 2 -Controllers with TCP IPv4 with one sub-net say 10.176.179.xxx address , when A Third party IPV4 UDP Application bind to same Opensf dtm port 6900 different say 192.168.56.255 address to receive broadcast messages. Expected result: - Third party IPv4 UDP Application shouldn't receive any broadcast messages - Both Controllers should come up as Active & Standby , fail-over & Switchover should work fine Test case 4) Bring-up 1 -Controllers with TCP IPV6 Scope:Global , Bring-up 2nd -Controllers with TCP IPV6 Scope:Link Local Expected result: - Both Controllers should come up as Active & Active Test case 5) Bring-up 1 -Controllers with TCP IPv4 in sub-net say 10.176.179.xxx address , Bring-up 2nd -Controllers with TCP IPv4 in diffident sub-net say 192.168.56.xxx address Expected result: - Both Controllers should come up as Active & Active Please find the Third party IPV6/4 UDP Application (udp_ipv6_ipv4_listener.c ) in the #ticket Conditions of Submission: ------------------------- <<HOW MANY DAYS BEFORE PUSHING, CONSENSUS ETC>> Arch Built Started Linux distro ------------------------------------------- mips n n mips64 n n x86 n n x86_64 y y powerpc n n powerpc64 n n Reviewer Checklist: ------------------- [Submitters: make sure that your review doesn't trigger any checkmarks!] Your checkin has not passed review because (see checked entries): ___ Your RR template is generally incomplete; it has too many blank entries that need proper data filled in. ___ You have failed to nominate the proper persons for review and push. ___ Your patches do not have proper short+long header ___ You have grammar/spelling in your header that is unacceptable. ___ You have exceeded a sensible line length in your headers/comments/text. ___ You have failed to put in a proper Trac Ticket # into your commits. ___ You have incorrectly put/left internal data in your comments/files (i.e. internal bug tracking tool IDs, product names etc) ___ You have not given any evidence of testing beyond basic build tests. Demonstrate some level of runtime or other sanity testing. ___ You have ^M present in some of your files. These have to be removed. ___ You have needlessly changed whitespace or added whitespace crimes like trailing spaces, or spaces before tabs. ___ You have mixed real technical changes with whitespace and other cosmetic code cleanup changes. These have to be separate commits. ___ You need to refactor your submission into logical chunks; there is too much content into a single commit. ___ You have extraneous garbage in your review (merge commits etc) ___ You have giant attachments which should never have been sent; Instead you should place your content in a public tree to be pulled. ___ You have too many commits attached to an e-mail; resend as threaded commits, or place in a public tree for a pull. ___ You have resent this content multiple times without a clear indication of what has changed between each re-send. ___ You have failed to adequately and individually address all of the comments and change requests that were proposed in the initial review. ___ You have a misconfigured ~/.hgrc file (i.e. username, email etc) ___ Your computer have a badly configured date and time; confusing the the threaded patch review. ___ Your changes affect IPC mechanism, and you don't present any results for in-service upgradability test. ___ Your changes affect user manual and documentation, your patch series do not contain the patch that updates the Doxygen manual. ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ Opensaf-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-devel
