diff --git a/drivers/netjack/net_driver.c b/drivers/netjack/net_driver.c index c60b199..6f0665c 100644 --- a/drivers/netjack/net_driver.c +++ b/drivers/netjack/net_driver.c @@ -469,12 +469,19 @@ net_driver_write (net_driver_t* driver, jack_nframes_t nframes) if (driver->srcaddress_valid) { int r; + +#ifdef __APPLE__ + static const int flag = 0; +#else + static const int flag = MSG_CONFIRM; +#endif + if (driver->reply_port) driver->syncsource_address.sin_port = htons(driver->reply_port); for( r=0; rredundancy; r++ ) netjack_sendto(driver->outsockfd, (char *)packet_buf, packet_size, - MSG_CONFIRM, (struct sockaddr*)&(driver->syncsource_address), sizeof(struct sockaddr_in), driver->mtu); + flag, (struct sockaddr*)&(driver->syncsource_address), sizeof(struct sockaddr_in), driver->mtu); } return 0; diff --git a/drivers/netjack/netjack_packet.c b/drivers/netjack/netjack_packet.c index 08c6697..d602fed 100644 --- a/drivers/netjack/netjack_packet.c +++ b/drivers/netjack/netjack_packet.c @@ -476,7 +476,7 @@ packet_cache_drain_socket( packet_cache *pcache, int sockfd ) while (1) { rcv_len = recvfrom (sockfd, rx_packet, pcache->mtu, MSG_DONTWAIT, - &sender_address, &senderlen); + (struct sockaddr*) &sender_address, &senderlen); if (rcv_len < 0) return; @@ -763,7 +763,7 @@ netjack_sendto (int sockfd, char *packet_buf, int pkt_size, int flags, struct so //jack_error("last fragment_count = %d, payload_size = %d\n", fragment_count, last_payload_size); // sendto(last_pack_size); - sendto(sockfd, tx_packet, last_payload_size + sizeof(jacknet_packet_header), flags, addr, addr_size); + err = sendto(sockfd, tx_packet, last_payload_size + sizeof(jacknet_packet_header), flags, addr, addr_size); if( err<0 ) { printf( "error in send\n" ); perror( "send" );