1c0b746e5SOllivier Robert /* 2c0b746e5SOllivier Robert * refnumtoa - return asciized refclock addresses stored in local array space 3c0b746e5SOllivier Robert */ 42b15cb3dSCy Schubert #include <config.h> 5c0b746e5SOllivier Robert #include <stdio.h> 6c0b746e5SOllivier Robert 72b15cb3dSCy Schubert #include "ntp_net.h" 8c0b746e5SOllivier Robert #include "ntp_stdlib.h" 9c0b746e5SOllivier Robert 102b15cb3dSCy Schubert const char * 11c0b746e5SOllivier Robert refnumtoa( 12*a466cc55SCy Schubert const sockaddr_u *num 13c0b746e5SOllivier Robert ) 14c0b746e5SOllivier Robert { 152b15cb3dSCy Schubert u_int32 netnum; 162b15cb3dSCy Schubert char *buf; 172b15cb3dSCy Schubert const char *rclock; 182b15cb3dSCy Schubert 192b15cb3dSCy Schubert if (!ISREFCLOCKADR(num)) 202b15cb3dSCy Schubert return socktoa(num); 21c0b746e5SOllivier Robert 22c0b746e5SOllivier Robert LIB_GETBUF(buf); 232b15cb3dSCy Schubert netnum = SRCADR(num); 24c0b746e5SOllivier Robert rclock = clockname((int)((u_long)netnum >> 8) & 0xff); 25c0b746e5SOllivier Robert 26c0b746e5SOllivier Robert if (rclock != NULL) 272b15cb3dSCy Schubert snprintf(buf, LIB_BUFLENGTH, "%s(%lu)", 282b15cb3dSCy Schubert rclock, (u_long)netnum & 0xff); 29c0b746e5SOllivier Robert else 302b15cb3dSCy Schubert snprintf(buf, LIB_BUFLENGTH, "REFCLK(%lu,%lu)", 312b15cb3dSCy Schubert ((u_long)netnum >> 8) & 0xff, 322b15cb3dSCy Schubert (u_long)netnum & 0xff); 339c2daa00SOllivier Robert 34c0b746e5SOllivier Robert return buf; 35c0b746e5SOllivier Robert } 36