/* Add a new peer, then clear all peers */ TEST_F(ntpPeerTest, ClearAllPeer) { sockaddr_u peeraddr; char addrstr[]="127.0.0.1"; char peerhostname[]="localhost"; char pre_addrstr[]="0.0.0.0"; char pre_peerhostname[]="testhost"; struct peer* peer; SetSockaddr4(&peeraddr, addrstr); /* add a new peer with MDF_TXONLY_MASK */ peer = peer_config(&peeraddr, NULL, loopback_interface, MODE_CLIENT, NTP_VERSION, NTP_MINDPOLL, NTP_MAXDPOLL, 0, /* peerflags */ 0, /* ttl */ 0, /* peerkey */ NULL /* group ident */); peer->cast_flags &= ~(MDF_TXONLY_MASK); clear_all(); /* check the peer with the MDF_TXONLY_MASK */ EXPECT_NE(peer->ppoll, peer->maxpoll); EXPECT_EQ(peer->hpoll, peer->minpoll); EXPECT_NE(peer->disp, MAXDISPERSE); /* check a peer without the MDF_TXONLY_MASK */ SetSockaddr4(&peeraddr, pre_addrstr); peer = findexistingpeer(&peeraddr, pre_peerhostname, NULL, -1, 0); EXPECT_NE((struct peer*)NULL, peer); EXPECT_NE(peer->disp, MAXDISPERSE); EXPECT_NE(peer->flip, 1); EXPECT_NE(peer->filter_disp[0], MAXDISPERSE); EXPECT_NE(peer->leap, LEAP_NOTINSYNC); /* refresh the peers, in order to avoid faults */ refresh_all_peerinterfaces(); }
/* Define a function to create the server associations */ void create_server_associations() { int i; for (i = 0;i < simulation.num_of_servers;++i) { printf("%s\n", stoa(simulation.servers[i].addr)); if (peer_config(simulation.servers[i].addr, ANY_INTERFACE_CHOOSE(simulation.servers[i].addr), MODE_CLIENT, NTP_VERSION, NTP_MINDPOLL, NTP_MAXDPOLL, 0, /* peerflags */ 0, /* ttl */ 0, /* peerkey */ (u_char *)"*" /* peerkeystr */) == 0) { fprintf(stderr, "ERROR!! Could not create association for: %s", stoa(simulation.servers[i].addr)); } } }
/* Find a peer successfully by name */ TEST_F(ntpPeerTest, FindExistPeerByName) { sockaddr_u peeraddr; char addrstr[]="0.0.0.0"; char peerhostname[]="testhost"; struct peer* peer; SetSockaddr4(&peeraddr, addrstr); peer_config(&peeraddr, peerhostname, loopback_interface, MODE_CLIENT, NTP_VERSION, NTP_MINDPOLL, NTP_MAXDPOLL, 0, /* peerflags */ 0, /* ttl */ 0, /* peerkey */ NULL /* group ident */); peer = findexistingpeer(&peeraddr, peerhostname, NULL, -1, 0); EXPECT_NE((struct peer*)NULL, peer); /* for next test cases use, check clear_all function */ peer->cast_flags |= (MDF_TXONLY_MASK); peer->disp = 1; peer->flags |= FLAG_XLEAVE; peer->flip = 0; peer->filter_disp[0] = 1; peer->flags &= ~(FLAG_REFCLOCK); peer->leap = LEAP_NOWARNING; /* for next ut case FindPeerByAssoc */ UT_associd = peer->associd; }
/* Add a peer that do not exist then we can find it */ TEST_F(ntpPeerTest, FindExistPeerByAddr) { sockaddr_u peeraddr; char addrstr[]="192.168.1.1"; struct peer* peer; SetSockaddr4(&peeraddr, addrstr); peer_config(&peeraddr, NULL, /* NULL if not set MDF_POOL */ NULL, MODE_CLIENT, NTP_VERSION, NTP_MINDPOLL, NTP_MAXDPOLL, 0, /* peerflags, or 0 */ 0, /* ttl */ 0, /* peerkey */ NULL /* group ident */); peer = findexistingpeer(&peeraddr, NULL, NULL, -1, 0); EXPECT_NE((struct peer*)NULL, peer); }