File tree 1 file changed +16
-2
lines changed
1 file changed +16
-2
lines changed Original file line number Diff line number Diff line change @@ -374,7 +374,7 @@ static void usage(void)
374
374
int main (int argc , char * * argv )
375
375
{
376
376
struct addrinfo hints = {
377
- .ai_family = AF_INET ,
377
+ .ai_family = AF_UNSPEC ,
378
378
.ai_socktype = SOCK_DGRAM ,
379
379
.ai_protocol = IPPROTO_UDP ,
380
380
#ifdef USE_IDN
@@ -394,8 +394,22 @@ int main(int argc, char **argv)
394
394
setlocale (LC_ALL , "" );
395
395
#endif
396
396
397
- while ((ch = getopt (argc , argv , "nbh ?l:m:p:" )) != EOF ) {
397
+ while ((ch = getopt (argc , argv , "46nbh ?l:m:p:" )) != EOF ) {
398
398
switch (ch ) {
399
+ case '4' :
400
+ if (hints .ai_family != AF_UNSPEC ) {
401
+ fprintf (stderr , "tracepath: Only one -4 or -6 option may be specified\n" );
402
+ exit (2 );
403
+ }
404
+ hints .ai_family = AF_INET ;
405
+ break ;
406
+ case '6' :
407
+ if (hints .ai_family != AF_UNSPEC ) {
408
+ fprintf (stderr , "tracepath: Only one -4 or -6 option may be specified\n" );
409
+ exit (2 );
410
+ }
411
+ hints .ai_family = AF_INET6 ;
412
+ break ;
399
413
case 'n' :
400
414
no_resolve = 1 ;
401
415
break ;
You can’t perform that action at this time.
0 commit comments