Commit 22d4a4af authored by Alessandro Rubini's avatar Alessandro Rubini

bmc: -1 < 0; 1 > 0; 0 == 0

Trivially, return what we have, becuase less than zero is less than
zero.  No, the wouldn't pass my exam.
Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
parent ca0eb70f
...@@ -95,7 +95,6 @@ static int bmc_dataset_cmp(struct pp_instance *ppi, ...@@ -95,7 +95,6 @@ static int bmc_dataset_cmp(struct pp_instance *ppi,
MsgHeader *hdr_a, MsgAnnounce *ann_a, MsgHeader *hdr_a, MsgAnnounce *ann_a,
MsgHeader *hdr_b, MsgAnnounce *ann_b) MsgHeader *hdr_b, MsgAnnounce *ann_b)
{ {
int comp = 0;
Octet *ppci; Octet *ppci;
PP_VPRINTF("BMC: in bmc_dataset_cmp\n"); PP_VPRINTF("BMC: in bmc_dataset_cmp\n");
...@@ -156,53 +155,22 @@ static int bmc_dataset_cmp(struct pp_instance *ppi, ...@@ -156,53 +155,22 @@ static int bmc_dataset_cmp(struct pp_instance *ppi,
ann_b->grandmasterClockQuality.clockClass) { ann_b->grandmasterClockQuality.clockClass) {
if (ann_a->grandmasterClockQuality.clockAccuracy == ann_b->grandmasterClockQuality.clockAccuracy) { if (ann_a->grandmasterClockQuality.clockAccuracy == ann_b->grandmasterClockQuality.clockAccuracy) {
if (ann_a->grandmasterClockQuality.offsetScaledLogVariance == ann_b->grandmasterClockQuality.offsetScaledLogVariance) { if (ann_a->grandmasterClockQuality.offsetScaledLogVariance == ann_b->grandmasterClockQuality.offsetScaledLogVariance) {
if (ann_a->grandmasterPriority2 == ann_b->grandmasterPriority2) { if (ann_a->grandmasterPriority2 == ann_b->grandmasterPriority2)
comp = memcmp(&ann_a->grandmasterIdentity, &ann_b->grandmasterIdentity, PP_CLOCK_IDENTITY_LENGTH); return memcmp(&ann_a->grandmasterIdentity, &ann_b->grandmasterIdentity, PP_CLOCK_IDENTITY_LENGTH);
if (comp < 0)
return -1;
if (comp > 0)
return 1;
return 0;
}
/* Priority2 are not identical */ /* Priority2 are not identical */
comp = memcmp(&ann_a->grandmasterPriority2, &ann_b->grandmasterPriority2, 1); return memcmp(&ann_a->grandmasterPriority2, &ann_b->grandmasterPriority2, 1);
if (comp < 0)
return -1;
if (comp > 0)
return 1;
return 0;
} }
/* offsetScaledLogVariance are not identical */ /* offsetScaledLogVariance are not identical */
comp = memcmp(&ann_a->grandmasterClockQuality.clockClass, &ann_b->grandmasterClockQuality.clockClass, 1); return memcmp(&ann_a->grandmasterClockQuality.clockClass, &ann_b->grandmasterClockQuality.clockClass, 1);
if (comp < 0)
return -1;
if (comp > 0)
return 1;
return 0;
} }
/* Accuracy are not identitcal */ /* Accuracy are not identitcal */
comp = memcmp(&ann_a->grandmasterClockQuality.clockAccuracy, &ann_b->grandmasterClockQuality.clockAccuracy, 1); return memcmp(&ann_a->grandmasterClockQuality.clockAccuracy, &ann_b->grandmasterClockQuality.clockAccuracy, 1);
if (comp < 0)
return -1;
if (comp > 0)
return 1;
return 0;
} }
/* ClockClass are not identical */ /* ClockClass are not identical */
comp = memcmp(&ann_a->grandmasterClockQuality.clockClass, &ann_b->grandmasterClockQuality.clockClass, 1); return memcmp(&ann_a->grandmasterClockQuality.clockClass, &ann_b->grandmasterClockQuality.clockClass, 1);
if (comp < 0)
return -1;
if (comp > 0)
return 1;
return 0;
} }
/* Priority1 are not identical */ /* Priority1 are not identical */
comp = memcmp(&ann_a->grandmasterPriority1, &ann_b->grandmasterPriority1, 1); return memcmp(&ann_a->grandmasterPriority1, &ann_b->grandmasterPriority1, 1);
if (comp < 0)
return -1;
if (comp > 0)
return 1;
return 0;
} }
/* State decision algorithm 9.3.3 Fig 26 */ /* State decision algorithm 9.3.3 Fig 26 */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment