Without this Linux specific option, multicast packets arrive on one
interface are delivered by the kernel to all others.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
For some reason, MCAST_JOIN_GROUP is not working under uClinux. We can
just stick with the more traditional method.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
If the path delay comes out negative, then something is amiss. In this
case, we just print a warning and ignore the path delay estimate.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
If software time stamping is to be used, then the servo will want to
have appropriate filtering.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
This is really just a first attempt using a hard coded length. Probably
it will be necessary to let the length be configurable and/or adaptable.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
We can pre-compute a table of suitable values in order to simplify the
run time random delay selection.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
Even though the MCAST_JOIN_GROUP socket option includes the interface
index, this applies to the received packets only. To bind the outgoing
packets to a particular interface, the IP_MULTICAST_IF option is needed.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
Since the master implementation is still lacking, we will just keep
the slave-only flag hard coded for now.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
This commit also introduces clock and port objects, but only with the
minimal interface needed by the BMC.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
This commit gets the project off to a good start. The header files provide
some basic data types and definitions.
The README file will most probably grow over time.
Signed-off-by: Richard Cochran <richardcochran@gmail.com>