This implementation-specific procedure is called from the initialization procedure to define an association. The addresses and modes of the peers are determined using information read during the reboot procedure or as the result of operator commands. The authentication variables are used only if the authentication mechanism described in Appendix C is implemented. The values of these variables are determined using procedures beyond the scope of NTP itself. With the authentication bits set as suggested, only properly authenticated peers can become the synchronization source.
begin initialization-instantiation procedure peer.config <-- 1; #ifdef (authentication implemented) /* see Appendix C */ peer.authenable <-- 1 (suggested); peer.authentic <-- 0; peer.hostkeyid <-- as required; peer.peerkeyid <-- 0; #endef; peer.peeraddr <-- peer IP address; /* copy variables */ peer.peerport <-- roman NTP.PORT; peer.hostaddr <-- host IP address; peer.hostport <-- roman NTP.PORT; peer.mode <-- host mode; peer.peerpoll <-- 0 (undefined); peer.timer <-- 0; peer.delay <-- 0 (undefined); peer.offset <-- 0(undefined); call clear; /* initialize association */ end initialization-instantiation procedure;