aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/output/raop_output_plugin.c33
1 files changed, 14 insertions, 19 deletions
diff --git a/src/output/raop_output_plugin.c b/src/output/raop_output_plugin.c
index 02ca120a0..dd35ce8e9 100644
--- a/src/output/raop_output_plugin.c
+++ b/src/output/raop_output_plugin.c
@@ -375,13 +375,24 @@ get_tcp_connect_by_host(int sd, const char *host, short destport,
}
/*
+ * Calculate the current NTP time, store it in the buffer.
+ */
+static void
+fill_int(unsigned char *buffer, unsigned int rtp_time)
+{
+ int iter;
+ for (iter = 0; iter < 4; iter++) {
+ buffer[iter] = (rtp_time >> ((3 - iter) * 8)) & 0xff;
+ }
+}
+
+/*
* Store time in the NTP format in the buffer
*/
static void
fill_time_buffer_with_time(unsigned char *buffer, struct timeval *tout)
{
unsigned long secs_to_baseline = 964697997;
- int iter;
double fraction;
unsigned long long_fraction;
unsigned long secs;
@@ -389,12 +400,8 @@ fill_time_buffer_with_time(unsigned char *buffer, struct timeval *tout)
fraction = ((double) tout->tv_usec) / 1000000.0;
long_fraction = (unsigned long) (fraction * 256.0 * 256.0 * 256.0 * 256.0);
secs = secs_to_baseline + tout->tv_sec;
- for (iter = 0; iter < 4; iter++) {
- buffer[iter] = (secs >> ((3 - iter) * 8)) & 0xff;
- }
- for (iter = 0; iter < 4; iter++) {
- buffer[4 + iter] = (long_fraction >> ((3 - iter) * 8)) & 0xff;
- }
+ fill_int(buffer, secs);
+ fill_int(buffer + 4, long_fraction);
}
/*
@@ -410,18 +417,6 @@ fill_time_buffer(unsigned char *buffer)
}
/*
- * Calculate the current NTP time, store it in the buffer.
- */
-static void
-fill_int(unsigned char *buffer, unsigned int rtp_time)
-{
- int iter;
- for (iter = 0; iter < 4; iter++) {
- buffer[iter] = (rtp_time >> ((3 - iter) * 8)) & 0xff;
- }
-}
-
-/*
* Recv the NTP datagram from the AirTunes, send back an NTP response.
*/
static bool