examples/ptpclient: fix delay request message
[dpdk.git] / examples / ptpclient / ptpclient.c
index 7d28f59..31778fd 100644 (file)
@@ -49,7 +49,7 @@ static uint8_t ptp_enabled_ports[RTE_MAX_ETHPORTS];
 
 static const struct rte_eth_conf port_conf_default = {
        .rxmode = {
-               .max_rx_pkt_len = ETHER_MAX_LEN,
+               .max_rx_pkt_len = RTE_ETHER_MAX_LEN,
        },
 };
 
@@ -233,7 +233,11 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
                return retval;
 
        /* Enable timesync timestamping for the Ethernet device */
-       rte_eth_timesync_enable(port);
+       retval = rte_eth_timesync_enable(port);
+       if (retval < 0) {
+               printf("Timesync enable failed: %d\n", retval);
+               return retval;
+       }
 
        /* Enable RX in promiscuous mode for the Ethernet device. */
        rte_eth_promiscuous_enable(port);
@@ -401,7 +405,7 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
                rte_eth_macaddr_get(ptp_data->portid, &eth_hdr->s_addr);
 
                /* Set multicast address 01-1B-19-00-00-00. */
-               ether_addr_copy(&eth_multicast, &eth_hdr->d_addr);
+               rte_ether_addr_copy(&eth_multicast, &eth_hdr->d_addr);
 
                eth_hdr->ether_type = htons(PTP_PROTOCOL);
                ptp_msg = (struct ptp_message *)
@@ -413,6 +417,9 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
                ptp_msg->delay_req.hdr.ver = 2;
                ptp_msg->delay_req.hdr.control = 1;
                ptp_msg->delay_req.hdr.log_message_interval = 127;
+               ptp_msg->delay_req.hdr.message_length =
+                       htons(sizeof(struct delay_req_msg));
+               ptp_msg->delay_req.hdr.domain_number = ptp_hdr->domain_number;
 
                /* Set up clock id. */
                client_clkid =