This patch is to deal with the extra bytes that the Qulsar Grandmaster appends 
at the end of the UDP payload for sync or delay response packets causing the 
packets to error out. The change is to use the PTP message length, rather than 
the UDP header length in suffix_post_recv().

The change conforms to Annex E.1 (IPV6) of the IEEE spec.

Included is an explanation from Qulsar on why are they adding the additional 
bytes to the UDP payload.
https://qulsar.helpscoutdocs.com/article/74-why-are-there-4-bytes-after-the-ptp-message

Signed-off-by: Ashwin Shah <ashwin.s...@nokia.com>
---
msg.c |    2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/msg.c b/msg.c
index d1619d4..6d5ca37 100644
--- a/msg.c
+++ b/msg.c
@@ -422,7 +422,7 @@ int msg_post_recv(struct ptp_message *m, int cnt)
                break;
        }

-       err = suffix_post_recv(m, cnt - pdulen);
+       err = suffix_post_recv(m, m->header.messageLength - pdulen);
        if (err)
                return err;

--
1.7.9.5
_______________________________________________
Linuxptp-devel mailing list
Linuxptp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel

Reply via email to