#include "srv.h" #include /* fprintf */ #include /* srandom */ #include /* getpid */ #include /* time */ int main( int argc, char ** argv ) { struct srvhost * r; struct srvhost * s; if ( argc < 3 || argc > 4 ) { fprintf( stderr, "\nusage: %s service domain [protocol, defaults to tcp]\n" "examples: <%s telnet troll.no> <%s nfs troll.no udp>\n\n", argv[0], argv[0], argv[0] ); exit( 1 ); } /* set up the random generator so weight will be randomized properly */ srandom( getpid() * time( NULL ) ); r = getsrv( argv[2], argv[1], argv[3] ? argv[3] : "tcp" ); if ( !r ) { fprintf( stderr, "%s: failed. Most probably it could be ", argv[0] ); fprintf(stderr, "your DNS server is not SRV\ncapable; bind " "servers v8.0 and above are SRV capable\n"); exit( 2 ); } s = r; printf(" Pref Wt Name:Port\n"); while( s ) { printf( "%5d %5d %s:%d\n", s->pref, s->weight, s->name, s->port ); s = s->next; } /* just to test freesrvhost(), really */ freesrvhost( r ); return 0; }