Summary: dtm: Extract Multicast class for node discovery message handling [#991] Review request for Ticket(s): 991 Peer Reviewer(s): Alex, Ravi Pull request to: Affected branch(es): develop Development branch: ticket-991 Base revision: 44d113c4fa669065afe78d70bc81c5297d79ec0e Personal repository: git://git.code.sf.net/u/anders-w/review
-------------------------------- Impacted area Impact y/n -------------------------------- Docs n Build system n RPM/packaging n Configuration files n Startup scripts n SAF services n OpenSAF services y Core libraries n Samples n Tests n Other n Comments (indicate scope for each "y" above): --------------------------------------------- revision 19cba4d70d74fbc2ee46926644d3fab1e26eb68b Author: Anders Widell <[email protected]> Date: Fri, 6 Oct 2017 14:48:21 +0200 dtm: Add support for using IP unicast to discover nodes [#991] In addition to IP broadcast and IP multicast for DTM node discovery, add support for IP unicast to a list of peer IP addresses. The list of IP addresses is read when DTM starts, either from a file or using a DNS query. revision 3816c7c46d466f9dfff85c41553084ee957e27d0 Author: Anders Widell <[email protected]> Date: Fri, 6 Oct 2017 14:47:57 +0200 dtm: Extract Multicast class for node discovery message handling [#991] Extract a class with the name Multicast, that handles send and receive of DTM node discovery datagram messages. The underlying protocol can be IP broadcast, IP multicast, and - implemented in this ticket: IP unicast. Note that this refactoring isn't complete - the new class has private methods that are in fact more or less unmodified copies of the old C functions. Added Files: ------------ src/dtm/dtmnd/Multicast.cc src/dtm/dtmnd/Multicast.h Removed Files: -------------- src/dtm/dtmnd/dtm_socket.h Complete diffstat: ------------------ 00-README.conf | 24 +- src/dtm/Makefile.am | 3 +- src/dtm/dtmnd/Multicast.cc | 1142 +++++++++++++++++++++++++++++++++++++ src/dtm/dtmnd/Multicast.h | 146 +++++ src/dtm/dtmnd/dtm.h | 3 +- src/dtm/dtmnd/dtm_cb.h | 56 +- src/dtm/dtmnd/dtm_inter.h | 3 +- src/dtm/dtmnd/dtm_inter_svc.cc | 3 +- src/dtm/dtmnd/dtm_intra.cc | 11 +- src/dtm/dtmnd/dtm_intra.h | 5 +- src/dtm/dtmnd/dtm_intra_disc.h | 8 +- src/dtm/dtmnd/dtm_intra_svc.cc | 10 +- src/dtm/dtmnd/dtm_main.cc | 151 ++--- src/dtm/dtmnd/dtm_node.cc | 38 +- src/dtm/dtmnd/dtm_node.h | 14 +- src/dtm/dtmnd/dtm_node_sockets.cc | 772 ++----------------------- src/dtm/dtmnd/dtm_read_config.cc | 54 +- src/dtm/dtmnd/dtm_socket.h | 28 - src/dtm/dtmnd/dtmd.conf | 35 +- 19 files changed, 1511 insertions(+), 995 deletions(-) Testing Commands: ----------------- Configure DTM to use IP unicast, e.g. with the following option: DTM_MCAST_ADDR=file:/var/lib/peers.txt Then add the list of peer IP addresses to /var/lib/peers.txt, one per line, and finally start OpenSAF. Testing, Expected Results: -------------------------- OpenSAF shall start successfully using IP unicast. Conditions of Submission: ------------------------- Ack from reviewer(s), or on 2017-10-13. 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 ~/.gitconfig file (i.e. user.name, user.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. ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Opensaf-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-devel
