sad: introduce sad_update_auth_tlv()

Some messages do not need a new authentication tlv attached but instead
only require the existing tlv to be updated because a protected field
was edited. These include messages being forward via a transparent clock
and management messages.

Introduce sad_update_auth_tlv() to search for existing authentication
tlvs, confirm their spp/security parameters are known, and regenerate
the icv.

Because this function still requires valid tlv pointers, add
msg_tlv_copy() to copy the pointers from the formatted message to the
raw message duplicate.

In addition add various calls to e2e_tc/p2p_tc to match port.c

Signed-off-by: Clay Kaiser <Clay.Kaiser@ibm.com>
Reviewed-by: Erez Geva <ErezGeva2@gmail.com>
Reviewed-by: Miroslav Lichvar <mlichvar@redhat.com>
8 files changed
tree: 6f4e8b0ce441414a9bcb2cd95cfff47b7d14bd80
  1. configs/
  2. .gitignore
  3. address.h
  4. as_capable.h
  5. bmc.c
  6. bmc.h
  7. clock.c
  8. clock.h
  9. clockadj.c
  10. clockadj.h
  11. clockcheck.c
  12. clockcheck.h
  13. CODING_STYLE.org
  14. config.c
  15. config.h
  16. contain.h
  17. COPYING
  18. ddt.h
  19. designated_fsm.c
  20. designated_fsm.h
  21. dm.h
  22. ds.h
  23. e2e_tc.c
  24. ether.h
  25. fault.c
  26. fault.h
  27. fd.h
  28. filter.c
  29. filter.h
  30. filter_private.h
  31. foreign.h
  32. fsm.c
  33. fsm.h
  34. hash.c
  35. hash.h
  36. hwstamp_ctl.8
  37. hwstamp_ctl.c
  38. incdefs.sh
  39. interface.c
  40. interface.h
  41. linreg.c
  42. linreg.h
  43. lstab.c
  44. lstab.h
  45. makefile
  46. mave.c
  47. mave.h
  48. missing.h
  49. mmedian.c
  50. mmedian.h
  51. monitor.c
  52. monitor.h
  53. msg.c
  54. msg.h
  55. mtab.h
  56. nmea.c
  57. nmea.h
  58. notification.h
  59. nsm.8
  60. nsm.c
  61. ntpshm.c
  62. ntpshm.h
  63. nullf.c
  64. nullf.h
  65. p2p_tc.c
  66. pdt.h
  67. phc.c
  68. phc.h
  69. phc2sys.8
  70. phc2sys.c
  71. phc_ctl.8
  72. phc_ctl.c
  73. pi.c
  74. pi.h
  75. pmc.8
  76. pmc.c
  77. pmc_agent.c
  78. pmc_agent.h
  79. pmc_common.c
  80. pmc_common.h
  81. port.c
  82. port.h
  83. port_private.h
  84. port_signaling.c
  85. power_profile.h
  86. pqueue.c
  87. pqueue.h
  88. print.c
  89. print.h
  90. ptp4l.8
  91. ptp4l.c
  92. raw.c
  93. raw.h
  94. README.org
  95. refclock_sock.c
  96. refclock_sock.h
  97. rtnl.c
  98. rtnl.h
  99. sad.c
  100. sad.h
  101. sad_gnupg.c
  102. sad_gnutls.c
  103. sad_nettle.c
  104. sad_openssl.c
  105. sad_private.h
  106. serial.c
  107. serial.h
  108. servo.c
  109. servo.h
  110. servo_private.h
  111. sk.c
  112. sk.h
  113. sock.c
  114. sock.h
  115. stats.c
  116. stats.h
  117. sysoff.c
  118. sysoff.h
  119. tc.c
  120. tc.h
  121. telecom.c
  122. timemaster.8
  123. timemaster.c
  124. tlv.c
  125. tlv.h
  126. tmv.h
  127. transport.c
  128. transport.h
  129. transport_private.h
  130. ts2phc.8
  131. ts2phc.c
  132. ts2phc.h
  133. ts2phc_generic_pps_source.c
  134. ts2phc_generic_pps_source.h
  135. ts2phc_nmea_pps_source.c
  136. ts2phc_nmea_pps_source.h
  137. ts2phc_phc_pps_source.c
  138. ts2phc_phc_pps_source.h
  139. ts2phc_pps_sink.c
  140. ts2phc_pps_sink.h
  141. ts2phc_pps_source.c
  142. ts2phc_pps_source.h
  143. ts2phc_pps_source_private.h
  144. tsproc.c
  145. tsproc.h
  146. tz.h
  147. tz2alt.8
  148. tz2alt.c
  149. udp.c
  150. udp.h
  151. udp6.c
  152. udp6.h
  153. uds.c
  154. uds.h
  155. unicast_client.c
  156. unicast_client.h
  157. unicast_fsm.c
  158. unicast_fsm.h
  159. unicast_service.c
  160. unicast_service.h
  161. util.c
  162. util.h
  163. version.c
  164. version.h
  165. version.sh