154359Sroberto/* 254359Sroberto * refnumtoa - return asciized refclock addresses stored in local array space 354359Sroberto */ 4280849Scy#include <config.h> 554359Sroberto#include <stdio.h> 654359Sroberto 7280849Scy#include "ntp_net.h" 854359Sroberto#include "lib_strbuf.h" 954359Sroberto#include "ntp_stdlib.h" 1054359Sroberto 11280849Scyconst char * 1254359Srobertorefnumtoa( 13280849Scy sockaddr_u *num 1454359Sroberto ) 1554359Sroberto{ 16280849Scy u_int32 netnum; 17280849Scy char *buf; 18280849Scy const char *rclock; 19132451Sroberto 20280849Scy if (!ISREFCLOCKADR(num)) 21280849Scy return socktoa(num); 22280849Scy 2354359Sroberto LIB_GETBUF(buf); 24280849Scy netnum = SRCADR(num); 25280849Scy rclock = clockname((int)((u_long)netnum >> 8) & 0xff); 2654359Sroberto 27280849Scy if (rclock != NULL) 28280849Scy snprintf(buf, LIB_BUFLENGTH, "%s(%lu)", 29280849Scy rclock, (u_long)netnum & 0xff); 30280849Scy else 31280849Scy snprintf(buf, LIB_BUFLENGTH, "REFCLK(%lu,%lu)", 32280849Scy ((u_long)netnum >> 8) & 0xff, 33280849Scy (u_long)netnum & 0xff); 3454359Sroberto 3554359Sroberto return buf; 3654359Sroberto} 37