Changes in uspace/app/dnsres/dnsres.c [5a324d99:959d2ec] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/dnsres/dnsres.c
r5a324d99 r959d2ec 39 39 #include <stdlib.h> 40 40 41 #define NAME 41 #define NAME "dnsres" 42 42 43 43 static void print_syntax(void) 44 44 { 45 printf(" Syntax: %s [-4|-6] <host-name>\n", NAME);45 printf("syntax: " NAME " <host-name>\n"); 46 46 } 47 47 48 48 int main(int argc, char *argv[]) 49 49 { 50 if ((argc < 2) || (argc > 3)) { 50 int rc; 51 dnsr_hostinfo_t *hinfo; 52 char *hname; 53 char *saddr; 54 55 if (argc != 2) { 51 56 print_syntax(); 52 57 return 1; 53 58 } 54 55 uint16_t ver; 56 char *hname; 57 58 if (str_cmp(argv[1], "-4") == 0) { 59 if (argc < 3) { 60 print_syntax(); 61 return 1; 62 } 63 64 ver = ip_v4; 65 hname = argv[2]; 66 } else if (str_cmp(argv[1], "-6") == 0) { 67 if (argc < 3) { 68 print_syntax(); 69 return 1; 70 } 71 72 ver = ip_v6; 73 hname = argv[2]; 74 } else { 75 ver = ip_any; 76 hname = argv[1]; 59 60 hname = argv[1]; 61 62 rc = dnsr_name2host(hname, &hinfo); 63 if (rc != EOK) { 64 printf(NAME ": Error resolving '%s'.\n", argv[1]); 65 return 1; 77 66 } 78 79 dnsr_hostinfo_t *hinfo; 80 int rc = dnsr_name2host(hname, &hinfo, ver); 81 if (rc != EOK) { 82 printf("%s: Error resolving '%s'.\n", NAME, hname); 83 return rc; 84 } 85 86 char *saddr; 67 87 68 rc = inet_addr_format(&hinfo->addr, &saddr); 88 69 if (rc != EOK) { 89 70 dnsr_hostinfo_destroy(hinfo); 90 printf( "%s: Error formatting address.\n", NAME);91 return rc;71 printf(NAME ": Out of memory.\n"); 72 return 1; 92 73 } 93 74 94 75 printf("Host name: %s\n", hname); 95 96 76 if (str_cmp(hname, hinfo->cname) != 0) 97 77 printf("Canonical name: %s\n", hinfo->cname); 98 99 78 printf("Address: %s\n", saddr); 100 79 101 80 dnsr_hostinfo_destroy(hinfo); 102 81 free(saddr); 103 82 104 83 return 0; 105 84 }
Note:
See TracChangeset
for help on using the changeset viewer.