diff --git a/include/ptpd_netif.h b/include/ptpd_netif.h index 0b290a84617933f543e523f627e2742255cb50c5..644c3a0bbf6ac8e959d1454d9d3b9b113863b716 100644 --- a/include/ptpd_netif.h +++ b/include/ptpd_netif.h @@ -31,16 +31,16 @@ typedef uint8_t mac_addr_t[6]; typedef void *wr_socket_t; // Socket address for ptp_netif_ functions -typedef struct { +struct wr_sockaddr { // MAC address mac_addr_t mac; // Destination MASC address, filled by recvfrom() mac_addr_t mac_dest; // RAW ethertype uint16_t ethertype; -} wr_sockaddr_t; +}; -PACKED struct _wr_timestamp { +PACKED struct wr_timestamp { // Seconds int64_t sec; @@ -60,37 +60,37 @@ PACKED struct _wr_timestamp { int correct; }; -typedef struct _wr_timestamp wr_timestamp_t; // Creates UDP or Ethernet RAW socket (determined by sock_type) bound // to bind_addr. If PTPD_FLAG_MULTICAST is set, the socket is // automatically added to multicast group. User can specify // physical_port field to bind the socket to specific switch port only. wr_socket_t *ptpd_netif_create_socket(int unused, int unused2, - wr_sockaddr_t * bind_addr); + struct wr_sockaddr * bind_addr); -// Sends a UDP/RAW packet (data, data_length) to addr in wr_sockaddr_t. +// Sends a UDP/RAW packet (data, data_length) to addr in wr_sockaddr. // For raw frames, mac/ethertype needs to be provided, for UDP - ip/port. // Every transmitted frame has assigned a tag value, stored at tag parameter. // This value is later used for recovering the precise transmit timestamp. // If user doesn't need it, tag parameter can be left NULL. -int ptpd_netif_sendto(wr_socket_t * sock, wr_sockaddr_t * to, void *data, - size_t data_length, wr_timestamp_t * tx_ts); +int ptpd_netif_sendto(wr_socket_t *sock, struct wr_sockaddr *to, void *data, + size_t data_length, struct wr_timestamp *tx_ts); // Receives an UDP/RAW packet. Data is written to (data) and len is returned. // Maximum buffer length can be specified by data_length parameter. // Sender information is stored in structure specified in 'from'. // All RXed packets are timestamped and the timestamp // is stored in rx_timestamp (unless it's NULL). -int ptpd_netif_recvfrom(wr_socket_t * sock, wr_sockaddr_t * from, void *data, - size_t data_length, wr_timestamp_t * rx_timestamp); +int ptpd_netif_recvfrom(wr_socket_t *sock, struct wr_sockaddr *from, void *data, + size_t data_length, struct wr_timestamp *rx_timestamp); // Closes the socket. int ptpd_netif_close_socket(wr_socket_t * sock); int ptpd_netif_get_hw_addr(wr_socket_t * sock, mac_addr_t * mac); -void ptpd_netif_linearize_rx_timestamp(wr_timestamp_t * ts, int32_t dmtd_phase, +void ptpd_netif_linearize_rx_timestamp(struct wr_timestamp *ts, + int32_t dmtd_phase, int cntr_ahead, int transition_point, int clock_period); void ptpd_netif_set_phase_transition(uint32_t phase); diff --git a/lib/arp.c b/lib/arp.c index 3883e8c7d7b65241b1ed6f9d35b77af88ad86978..85fd4b7487b60fe15d1798d858e70bc8fc576bdc 100644 --- a/lib/arp.c +++ b/lib/arp.c @@ -31,7 +31,7 @@ static wr_socket_t *arp_socket; void arp_init(void) { - wr_sockaddr_t saddr; + struct wr_sockaddr saddr; /* Configure socket filter */ memset(&saddr, 0, sizeof(saddr)); @@ -85,7 +85,7 @@ static int process_arp(uint8_t * buf, int len) void arp_poll(void) { uint8_t buf[ARP_END + 100]; - wr_sockaddr_t addr; + struct wr_sockaddr addr; int len; if (needIP) diff --git a/lib/ipv4.c b/lib/ipv4.c index ee12a1b93bd4c93ac874658526c0b4100e504b55..e71769c1fab0537a2aa9fe5b129535e1e89e313a 100644 --- a/lib/ipv4.c +++ b/lib/ipv4.c @@ -39,7 +39,7 @@ unsigned int ipv4_checksum(unsigned short *buf, int shorts) void ipv4_init(void) { - wr_sockaddr_t saddr; + struct wr_sockaddr saddr; /* Reset => need a fresh IP */ needIP = 1; @@ -58,7 +58,7 @@ static uint32_t bootp_tics; void ipv4_poll(void) { uint8_t buf[400]; - wr_sockaddr_t addr; + struct wr_sockaddr addr; int len; if (!bootp_tics) diff --git a/lib/net.c b/lib/net.c index 6fb74b96e72d0f8ecdb3ba030d834db75aff8599..1c0bf1b36ea3363e858828209550f3ad8ccc9b4d 100644 --- a/lib/net.c +++ b/lib/net.c @@ -39,7 +39,7 @@ struct sockq { struct wrpc_socket { int in_use; - wr_sockaddr_t bind_addr; + struct wr_sockaddr bind_addr; mac_addr_t local_mac; uint32_t phase_transition; @@ -68,7 +68,7 @@ void ptpd_netif_set_phase_transition(uint32_t phase) wr_socket_t *ptpd_netif_create_socket(int unused, int unusd2, - wr_sockaddr_t * bind_addr) + struct wr_sockaddr * bind_addr) { int i; struct hal_port_state pstate; @@ -89,7 +89,7 @@ wr_socket_t *ptpd_netif_create_socket(int unused, int unusd2, if (wrpc_get_port_state(&pstate, "wr0" /* unused */) < 0) return NULL; - memcpy(&sock->bind_addr, bind_addr, sizeof(wr_sockaddr_t)); + memcpy(&sock->bind_addr, bind_addr, sizeof(struct wr_sockaddr)); /*get mac from endpoint */ get_mac_addr(sock->local_mac); @@ -124,7 +124,8 @@ int ptpd_netif_close_socket(wr_socket_t * sock) * * Have a look at the note at http://ohwr.org/documents/xxx for details. */ -void ptpd_netif_linearize_rx_timestamp(wr_timestamp_t * ts, int32_t dmtd_phase, +void ptpd_netif_linearize_rx_timestamp(struct wr_timestamp *ts, + int32_t dmtd_phase, int cntr_ahead, int transition_point, int clock_period) { @@ -223,8 +224,8 @@ static int wrap_copy_out(struct sockq *q, void *src, size_t len) return len; } -int ptpd_netif_recvfrom(wr_socket_t * sock, wr_sockaddr_t * from, void *data, - size_t data_length, wr_timestamp_t * rx_timestamp) +int ptpd_netif_recvfrom(wr_socket_t *sock, struct wr_sockaddr *from, void *data, + size_t data_length, struct wr_timestamp *rx_timestamp) { struct wrpc_socket *s = (struct wrpc_socket *)sock; struct sockq *q = &s->queue; @@ -274,8 +275,8 @@ int ptpd_netif_recvfrom(wr_socket_t * sock, wr_sockaddr_t * from, void *data, return min(size - sizeof(struct ethhdr), data_length); } -int ptpd_netif_sendto(wr_socket_t * sock, wr_sockaddr_t * to, void *data, - size_t data_length, wr_timestamp_t * tx_timestamp) +int ptpd_netif_sendto(wr_socket_t * sock, struct wr_sockaddr *to, void *data, + size_t data_length, struct wr_timestamp *tx_timestamp) { struct wrpc_socket *s = (struct wrpc_socket *)sock; struct hw_timestamp hwts; diff --git a/ppsi b/ppsi index b203cc96df8d4008fe311deaf7baab8e555d5c96..0208eb8fc6f1dc03aea051651f6b28e432b42b56 160000 --- a/ppsi +++ b/ppsi @@ -1 +1 @@ -Subproject commit b203cc96df8d4008fe311deaf7baab8e555d5c96 +Subproject commit 0208eb8fc6f1dc03aea051651f6b28e432b42b56