|
@@ -791,7 +791,7 @@ static int match(struct sk_buff *skb, unsigned int type, struct rxts *rxts)
|
|
|
|
|
|
switch (type & PTP_CLASS_PMASK) {
|
|
|
case PTP_CLASS_IPV4:
|
|
|
- offset += ETH_HLEN + IPV4_HLEN(data) + UDP_HLEN;
|
|
|
+ offset += ETH_HLEN + IPV4_HLEN(data + offset) + UDP_HLEN;
|
|
|
break;
|
|
|
case PTP_CLASS_IPV6:
|
|
|
offset += ETH_HLEN + IP6_HLEN + UDP_HLEN;
|
|
@@ -934,7 +934,7 @@ static int is_sync(struct sk_buff *skb, int type)
|
|
|
|
|
|
switch (type & PTP_CLASS_PMASK) {
|
|
|
case PTP_CLASS_IPV4:
|
|
|
- offset += ETH_HLEN + IPV4_HLEN(data) + UDP_HLEN;
|
|
|
+ offset += ETH_HLEN + IPV4_HLEN(data + offset) + UDP_HLEN;
|
|
|
break;
|
|
|
case PTP_CLASS_IPV6:
|
|
|
offset += ETH_HLEN + IP6_HLEN + UDP_HLEN;
|