Print system's FQDN if no hostname is given.

This commit is contained in:
hjp 2002-08-14 19:03:52 +00:00
parent 5db287df64
commit 6ab44ef499
1 changed files with 25 additions and 2 deletions

View File

@ -1,9 +1,24 @@
#include <netdb.h> /*
* fqdn - print fully qualified domain name(s)
*
* resolve all host names given on the comman line and print their
* fully qualified canonical names.
*
* If no argument is given, print the system's FQDN.
*/
#include <errno.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <netdb.h>
#include "hstrerror.h" #include "hstrerror.h"
char cvs_id[] = "$Id: fqdn.c,v 1.2 2002-08-14 19:03:52 hjp Exp $";
char *cmnd; char *cmnd;
void usage(void) { void usage(void) {
@ -14,11 +29,19 @@ void usage(void) {
int main(int argc, char **argv) { int main(int argc, char **argv) {
int i; int i;
int rc = 0; int rc = 0;
char hostname[256];
char *fake_argv[] = { argv[0], hostname, NULL };
cmnd = argv[0]; cmnd = argv[0];
if (argc < 2) { if (argc < 2) {
usage(); if (gethostname(hostname, sizeof(hostname)) == -1) {
fprintf(stderr, "%s: cannot get hostname: %s\n",
cmnd, strerror(errno));
exit(1);
}
argv = fake_argv;
argc = 2;
} }
for (i = 1; i < argc; i++) { for (i = 1; i < argc; i++) {