`Working file: bdk/beads/timesync/main/timesync.c
`head: 1.23
`branch:
`locks: strict
`access list:
`symbolic names:
`BUILD_20060123: 1.23
`BUILD_20050908: 1.23
`BUILD_20050817: 1.23
`BUILD_20050722: 1.23
`BUILD_20050718: 1.23
`BUILD_20050627: 1.23
`BUILD_20050605: 1.23
`TRAVIS_20050527: 1.23.0.22
`dev_NewSchema-branch: 1.23.0.20
`rd_GuiToolkit-branch: 1.23.0.18
`ALL_20050422: 1.23
`TRIO_20050418: 1.23
`TRIO_20050404: 1.23
`blackfin-branch: 1.23.0.16
`TRIO-20041130: 1.23
`RADKIT_GOLD_0042: 1.23.0.14
`BEADS_SILVER_0056: 1.23
`RADKIT_GOLD_0041: 1.23.0.12
`BEADS_SILVER_0055: 1.23
`RADKIT_GOLD_0040: 1.23.0.10
`BEADS_SILVER_0054: 1.23
`BANDON_20040413: 1.23.0.8
`RADKIT_GOLD_0039: 1.23.0.6
`BEADS_SILVER_0053: 1.23
`BANDON_20040329: 1.23.0.4
`RADKIT_GOLD_0038: 1.23.0.2
`BEADS_SILVER_0052: 1.23
`RADKIT_GOLD_0037: 1.17.0.76
`BEADS_SILVER_0051: 1.17
`RADKIT_GOLD_0036: 1.17.0.74
`BEADS_SILVER_0050: 1.17
`RADKIT_GOLD_0035: 1.17.0.72
`BEADS_SILVER_0049: 1.17
`RADKIT_GOLD_0034: 1.17.0.70
`BANDON_20031224: 1.17.0.68
`BANDON_20031219: 1.17.0.66
`BANDON_20031214: 1.17.0.64
`
`Page 1 of 6
`
`Implicit Exhibit 2014
`Sonos v. Implicit, IPR2018-0766, -0767
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`BANDON_20031204: 1.17.0.62
`BANDON_20031103: 1.17.0.60
`BANDON_20031024: 1.17.0.58
`BANDON_20031014: 1.17.0.56
`BEADS_SILVER_0048: 1.17
`BEADS_SILVER_0047: 1.17
`RADKIT_GOLD_0033: 1.17.0.54
`BANDON_20030903: 1.17.0.52
`BEADS_SILVER_0046: 1.17
`RADKIT_GOLD_0032: 1.17.0.50
`BEADS_SILVER_0045: 1.17
`RADKIT_GOLD_0031: 1.17.0.48
`BEADS_SILVER_0044: 1.17
`RADKIT_GOLD_0030: 1.17.0.46
`BANDON_20030815: 1.17.0.44
`BEADS_SILVER_0042: 1.17
`RADKIT_GOLD_0029: 1.17.0.42
`BEADS_SILVER_0041: 1.17
`RADKIT_GOLD_0028: 1.17.0.40
`BEADS_SILVER_0040: 1.17
`BEADS_SILVER_0039: 1.17
`RADKIT_GOLD_0026: 1.17.0.38
`BEADS_SILVER_0038: 1.17
`RADKIT_GOLD_0025: 1.17.0.36
`BEADS_SILVER_0037: 1.17
`RADKIT_GOLD_0024: 1.17.0.34
`BEADS_SILVER_0036: 1.17
`RADKIT_GOLD_0023: 1.17.0.32
`BEADS_SILVER_0035: 1.17
`RADKIT_GOLD_0022: 1.17.0.30
`BEADS_SILVER_0034: 1.17
`RADKIT_GOLD_0021: 1.17.0.28
`BEADS_SILVER_0033: 1.17
`RADKIT_GOLD_0020: 1.17.0.26
`BEADS_SILVER_0032: 1.17
`RADKIT_GOLD_0019: 1.17.0.24
`BEADS_SILVER_0031: 1.17
`RADKIT_GOLD_0018: 1.17.0.22
`BEADS_SILVER_0030: 1.17
`RADKIT_GOLD_0017: 1.17.0.20
`BEADS_SILVER_0029: 1.17
`RADKIT_GOLD_0016: 1.17.0.18
`BEADS_SILVER_0028: 1.17
`RADKIT_GOLD_0015: 1.17.0.16
`
`Page 2 of 6
`
`Implicit Exhibit 2014
`Sonos v. Implicit, IPR2018-0766, -0767
`
`
`
`BEADS_SILVER_0027: 1.17
`
`RADKIT_GOLD_0014: 1.17.0.14
`
`BEADS_SILVER_0026: 1.17
`
`RADKIT_GOLD_0013: 1.17.0.12
`
`BEADS_SILVER_0025: 1.17
`
`RADKIT_GOLD_0012: 1.17.0.10
`
`BEADS_SILVER_0024: 1.17
`
`RADKIT_GOLD_0011: 1.17.0.8
`
`BEADS_SILVER_0023: 1.17
`
`RADKIT_GOLD_0010_INTERNAL: 1.17
`
`BEADS_SILVER_0022: 1.17
`
`RADKIT_GOLD_0009: 1.17.0.6
`
`BEADS_SILVER_0021: 1.17
`
`BEADS_SILVER_0020: 1.17
`
`RADKIT_GOLD_0008_INTERNAL: 1.17
`
`BEADS_SILVER_0019: 1.17
`
`RADKIT_GOLD_0007: 1.17.0.4
`
`BEADS_SILVER_0018: 1.17
`
`BEADS_SILVER_0017: 1.17
`
`RADKIT_GOLD_0006: 1.17.0.2
`
`BEADS_SILVER_0016: 1.17
`
`RADKIT_GOLD_0005_INTERNAL: 1.17
`
`BEADS_SILVER_0015: 1.17
`
`RADKIT_GOLD_0004_INTERNAL: 1.17
`
`BEADS_SILVER_0014: 1.17
`
`RADKIT_GOLD_0003_INTERNAL: 1.17
`
`BEADS_SILVER_0013: 1.17
`
`RADKIT_GOLD_0002: 1.16.0.4
`
`BEADS_SILVER_0012: 1.16
`
`BEADS_SILVER_0011: 1.16
`
`RADKIT_GOLD_0001: 1.16.0.2
`
`BEADS_SILVER_0010: 1.16
`
`BEADS_SILVER_0009: 1.14
`
`BEADS_SILVER_0008: 1.14
`
`BEADS_SILVER_0007: 1.13
`
`BEADS_SILVER_0006: 1.12
`
`SILVER: 1.23
`
`keyword substitution: kv
`total revisions: 23;
`selected revisions: 23
`description:
`----------------------------
`revision 1.23
`date: 2004-03-09 21:45:51 -0600; author: build; state: Exp; lines: +10 -7;
`Fix GCC type-punning warnings, which are new as of GCC 3.3.2.
`
`Page 3 of 6
`
`Implicit Exhibit 2014
`Sonos v. Implicit, IPR2018-0766, -0767
`
`
`
`Fix coding convention violations (mostly whitespace)
`----------------------------
`revision 1.22
`date: 2004-03-03 17:25:19 -0600; author: davidc; state: Exp; lines: +189 -132;
`Change the send path to send on a UDP socket directly. This helps reduce latency in how long it
`takes for the packet to hit the wire. It also gets rid of an extra thread, since UDP doesn't have
`to create a UDP Recv Thread.
`----------------------------
`revision 1.21
`date: 2004-03-02 13:35:12 -0600; author: davidc; state: Exp; lines: +94 -62;
`Add error-handling code for when we fail on start-up (for example, when we can't listen on a
`UDP socket).
`----------------------------
`revision 1.20
`date: 2004-03-02 12:44:33 -0600; author: davidc; state: Exp; lines: +119 -349;
`Change timesync so that it listens directly on a UDP socket (using the socketlib abstraction),
`instead of having a bead with an "Update" edge. There were no changes to the wire protocol.
`
`This change was mainly done for stability. UDP packets challenge weaver in ways that may not
`be fixable. Instead of trying to expand weaver to handle UDP, we are going to simply weaver
`and only use it in the cases that it's good at. As such, we are porting all uses of UDP to use
`socketlib.
`
`There should be a performance improvement, too, since we are eliminating the overhead of
`path building/finding.
`----------------------------
`revision 1.19
`date: 2004-03-01 20:40:00 -0600; author: davidc; state: Exp; lines: +14 -32;
`Change the key create routine to generate a unique key each time, instead of using a singleton.
`This is done to work-around some weaver race condition crashes.
`
`My next step will be to make timesync listen on the UDP socket directly, instead of using paths,
`but I wanted to commit a simple stop-gap in case I didn't get to do this for a while.
`----------------------------
`revision 1.18
`date: 2004-03-01 20:20:57 -0600; author: davidc; state: Exp; lines: +94 -181;
`Make conform to our coding conventions (mostly whitespace changes).
`----------------------------
`revision 1.17
`date: 2002-02-07 22:58:23 -0600; author: davidc; state: Exp; lines: +4 -2;
`Added code to propage the status from ClockSync_ModuleInit back to Strings. This fixes defect
`#149.
`----------------------------
`revision 1.16
`
`Page 4 of 6
`
`Implicit Exhibit 2014
`Sonos v. Implicit, IPR2018-0766, -0767
`
`
`
`date: 2001-12-16 19:30:10 -0600; author: scottwb; state: Exp; lines: +12 -12;
`Got rid of hard-coded DEBUG_LEVEL_SET commands.
`----------------------------
`revision 1.15
`date: 2001-11-29 13:15:11 -0600; author: guyc; state: Exp; lines: +3 -1;
`Fixed leak of expired hostinfo structs.
`----------------------------
`revision 1.14
`date: 2001-10-23 11:40:49 -0500; author: guyc; state: Exp; lines: +72 -1;
`Added expiry code to expire old peers.
`----------------------------
`revision 1.13
`date: 2001-09-17 19:23:32 -0500; author: guyc; state: Exp; lines: +1 -3;
`Removed sleep which was only for testing.
`----------------------------
`revision 1.12
`date: 2001-09-17 17:01:42 -0500; author: guyc; state: Exp; lines: +30 -5;
`Fixed leak of key string.
`----------------------------
`revision 1.11
`date: 2001-09-11 15:30:44 -0500; author: guyc; state: Exp; lines: +5 -3;
`Fixed bug that allowed an offset of 0 to be returned
`when no offset had been computed (if a sync packet
`was received but did not contain our own ID information).
`----------------------------
`revision 1.10
`date: 2001-09-10 15:12:25 -0500; author: guyc; state: Exp; lines: +17 -6;
`Fixed overflow/wraparound bug when computing mean
`offset.
`----------------------------
`revision 1.9
`date: 2001-09-10 13:50:05 -0500; author: guyc; state: Exp; lines: +28 -237;
`Major additions to split clocksync into a second bead,
`and into a separate source file.
`----------------------------
`revision 1.8
`date: 2001-09-05 16:47:09 -0500; author: guyc; state: Exp; lines: +2 -2;
`Fixed missing assignment.
`----------------------------
`revision 1.7
`date: 2001-09-05 15:57:31 -0500; author: guyc; state: Exp; lines: +355 -73;
`Added (incomplete) handlers for encode/decode edges.
`----------------------------
`revision 1.6
`
`Page 5 of 6
`
`Implicit Exhibit 2014
`Sonos v. Implicit, IPR2018-0766, -0767
`
`
`
`date: 2001-09-03 13:04:25 -0500; author: guyc; state: Exp; lines: +2 -2;
`Corrected sign in format string.
`----------------------------
`revision 1.5
`date: 2001-09-03 13:02:15 -0500; author: guyc; state: Exp; lines: +34 -26;
`Cleaner debug output.
`----------------------------
`revision 1.4
`date: 2001-09-03 12:48:44 -0500; author: guyc; state: Exp; lines: +2 -2;
`Changed loop counter to unsigned.
`----------------------------
`revision 1.3
`date: 2001-09-03 12:03:51 -0500; author: guyc; state: Exp; lines: +98 -23;
`Added min/max logic and running average to offset calculation.
`----------------------------
`revision 1.2
`date: 2001-08-31 19:49:40 -0500; author: guyc; state: Exp; lines: +286 -15;
`Added timing logic, changed port allocation to get around
`bug in UDP.
`----------------------------
`revision 1.1
`date: 2001-08-31 16:26:38 -0500; author: guyc; state: Exp;
`New protocol for inter-host time synchronization (incomplete)
`=============================================================================
`
`Page 6 of 6
`
`Implicit Exhibit 2014
`Sonos v. Implicit, IPR2018-0766, -0767
`
`