commit-inetutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] GNU Inetutils branch, master, updated. inetutils-1_9_1-53-g24587e


From: Simon Josefsson
Subject: [SCM] GNU Inetutils branch, master, updated. inetutils-1_9_1-53-g24587ec
Date: Mon, 12 Mar 2012 21:01:02 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Inetutils ".

The branch, master has been updated
       via  24587ec0fd92975adb4c29a4dfd21772ab4a2118 (commit)
      from  eb4b5ed2aa6976464eb1728ea35c2eaa89dad435 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.savannah.gnu.org/cgit/inetutils.git/commit/?id=24587ec0fd92975adb4c29a4dfd21772ab4a2118


commit 24587ec0fd92975adb4c29a4dfd21772ab4a2118
Author: Simon Josefsson <address@hidden>
Date:   Mon Mar 12 12:13:53 2012 +0100

    Add new tool dnsdomainname.

diff --git a/ChangeLog b/ChangeLog
index 75f184e..404ff16 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2012-03-12  Simon Josefsson  <address@hidden>
+
+       * NEWS: Mention new dnsdomainname tool.
+       * configure.ac: Add tool dnsdomainname.
+       * doc/inetutils.texi: Document dnsdomainname.
+       * man/Makefile.am: Build dnsdomainname.1.
+       * man/dnsdomainname.h2m: New file.
+       * src/.gitignore: Ignore dnsdomainname.
+       * src/Makefile.am (bin_PROGRAMS): Add $(dnsdomainname_BUILD).
+       (dnsdomainname_SOURCES): New variable.
+       (EXTRA_PROGRAMS): Add dnsdomainname.
+       * src/dnsdomainname.c: New file.
+       * tests/dnsdomainname.sh: New file.
+
 2012-03-10  Mats Erik Andersson  <address@hidden>
 
        * whois/tld_serv_list (.cz, .fo, .gl, .gs, .hk, .ie, .il, .in, .is)
diff --git a/NEWS b/NEWS
index 46da4b8..6631509 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,9 @@ See the end of this file for license conditions.
 
 Please send inetutils bug reports to <address@hidden>.
 
+* New tool 'dnsdomainname'.
+
+
 January 6, 2012
 Version 1.9.1:
 
diff --git a/configure.ac b/configure.ac
index 017d0ac..dde3d7c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -104,6 +104,7 @@ IU_ENABLE_SERVER(tftpd)
 IU_ENABLE_SERVER(uucpd)
 
 IU_ENABLE_CLIENT(ftp)
+IU_ENABLE_CLIENT(dnsdomainname)
 IU_ENABLE_CLIENT(hostname)
 IU_ENABLE_CLIENT(ping)
 IU_ENABLE_CLIENT(ping6)
diff --git a/doc/inetutils.texi b/doc/inetutils.texi
index 0c44e0c..892fb15 100644
--- a/doc/inetutils.texi
+++ b/doc/inetutils.texi
@@ -32,6 +32,7 @@
 * ftp: (inetutils)ftp invocation.                 FTP client.
 * ftpd: (inetutils)ftpd invocation.               FTP Daemon.
 * hostname: (inetutils)hostname invocation.       Show or set system host name.
+* dnsdomainname: (inetutils)dnsdomainname invocation.       Show DNS domain 
name.
 * inetd: (inetutils)inetd invocation.             Interner super-server.
 * logger: (inetutils)logger invocation.           Send messages to the system 
log.
 * ping: (inetutils)ping invocation.               Packets to network hosts.
@@ -99,6 +100,7 @@ Documentation License''.
 Diagnostic programs
 
 * hostname invocation::                Show or set system host name.
+* dnsdomainname invocation::           Show DNS domain name.
 * logger invocation::                  Send messages to system log.
 * ping invocation::                    Packets to network hosts.
 * traceroute invocation::              Trace the route to a host.
@@ -281,6 +283,19 @@ Get short host name.
 Get NIS/YP domain name.
 @end table
 
address@hidden dnsdomainname invocation
address@hidden @command{dnsdomainname}: Show DNS domain name
address@hidden dnsdomainname
+
address@hidden is a program to show the domain part of the
+system's fully qualified domain name.  For example, if the FQDN of the
+system is @code{name.example.org} the command will show
address@hidden
+
address@hidden
+dnsdomainname address@hidden@dots{}]
address@hidden example
+
 @node logger invocation
 @chapter @command{logger}: Send messages to system log
 @cindex logger
diff --git a/man/Makefile.am b/man/Makefile.am
index 5572afa..c39f8a1 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -16,10 +16,10 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see `http://www.gnu.org/licenses/'.
 
-all = hostname.1 ifconfig.1 inetd.8 ftp.1 ftpd.8 logger.1 ping.1       \
-      ping6.1 rcp.1 rexec.1 rexecd.8 rlogin.1 rlogind.8 rsh.1 rshd.8   \
-      syslogd.8 talk.1 talkd.8 telnet.1 telnetd.8 tftp.1 tftpd.8       \
-      traceroute.1 uucpd.8 whois.1
+all = hostname.1 dnsdomainname.1 ifconfig.1 inetd.8 ftp.1 ftpd.8       \
+      logger.1 ping.1 ping6.1 rcp.1 rexec.1 rexecd.8 rlogin.1          \
+      rlogind.8 rsh.1 rshd.8 syslogd.8 talk.1 talkd.8 telnet.1         \
+      telnetd.8 tftp.1 tftpd.8 traceroute.1 uucpd.8 whois.1
 
 dist_man_MANS =
 
@@ -27,6 +27,10 @@ if ENABLE_hostname
 dist_man_MANS += hostname.1
 endif
 
+if ENABLE_dnsdomainname
+dist_man_MANS += dnsdomainname.1
+endif
+
 if ENABLE_ifconfig
 dist_man_MANS += ifconfig.1
 endif
@@ -133,6 +137,8 @@ ftpd.8: ftpd.h2m $(top_srcdir)/ftpd/ftpd.c 
$(top_srcdir)/configure.ac
 
 hostname.1: hostname.h2m $(top_srcdir)/src/hostname.c 
$(top_srcdir)/configure.ac
 
+dnsdomainname.1: dnsdomainname.h2m $(top_srcdir)/src/dnsdomainname.c 
$(top_srcdir)/configure.ac
+
 ifconfig.1: ifconfig.h2m $(top_srcdir)/ifconfig/options.c 
$(top_srcdir)/configure.ac
 
 inetd.8: inetd.h2m $(top_srcdir)/src/inetd.c $(top_srcdir)/configure.ac
@@ -186,6 +192,7 @@ whois.1: whois.h2m $(top_srcdir)/whois/whois.c 
$(top_srcdir)/configure.ac
 mapped_name = `echo ../$(TOOL)/$(TOOL) \
 | sed s,../ping6/ping6,../ping/ping6,\
 | sed s,../hostname/hostname,../src/hostname,\
+| sed s,../dnsdomainname/dnsdomainname,../src/dnsdomainname,\
 | sed s,../inetd/inetd,../src/inetd,\
 | sed s,../logger/logger,../src/logger,\
 | sed s,../rcp/rcp,../src/rcp,\
diff --git a/man/dnsdomainname.h2m b/man/dnsdomainname.h2m
new file mode 100644
index 0000000..afcf637
--- /dev/null
+++ b/man/dnsdomainname.h2m
@@ -0,0 +1,2 @@
+[NAME]
+dnsdomainname \- show DNS domain name
diff --git a/src/.gitignore b/src/.gitignore
index a41cd45..d07a8db 100644
--- a/src/.gitignore
+++ b/src/.gitignore
@@ -1,3 +1,4 @@
+dnsdomainname
 hostname
 inetd
 logger
diff --git a/src/Makefile.am b/src/Makefile.am
index e05ffd4..a98272b 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -32,6 +32,10 @@ bin_PROGRAMS += $(hostname_BUILD)
 hostname_SOURCES = hostname.c
 EXTRA_PROGRAMS += hostname
 
+bin_PROGRAMS += $(dnsdomainname_BUILD)
+dnsdomainname_SOURCES = dnsdomainname.c
+EXTRA_PROGRAMS += dnsdomainname
+
 bin_PROGRAMS += $(logger_BUILD)
 logger_SOURCES = logger.c logprio.h
 EXTRA_PROGRAMS += logger
diff --git a/src/dnsdomainname.c b/src/dnsdomainname.c
new file mode 100644
index 0000000..8e1af02
--- /dev/null
+++ b/src/dnsdomainname.c
@@ -0,0 +1,82 @@
+/*
+  Copyright (C) 2012 Free Software Foundation, Inc.
+
+  This file is part of GNU Inetutils.
+
+  GNU Inetutils is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or (at
+  your option) any later version.
+
+  GNU Inetutils is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with this program.  If not, see `http://www.gnu.org/licenses/'. */
+
+#include <config.h>
+
+#include <argp.h>
+#include <error.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+#include <netdb.h>
+
+#include "libinetutils.h"
+#include "progname.h"
+#include "xgethostname.h"
+
+const char doc[] =
+  "Show domain part of the system's fully qualified domain name.";
+const char *program_authors[] = {
+  "Simon Josefsson",
+  NULL
+};
+
+static struct argp argp = { NULL, NULL, NULL, doc };
+
+void
+dnsdomainname (void)
+{
+  char *host_name;
+  struct addrinfo hints, *res;
+  const char *dn;
+  int rc;
+
+  host_name = xgethostname ();
+  if (!host_name)
+    error (EXIT_FAILURE, errno, "cannot determine host name");
+
+  memset (&hints, 0, sizeof (struct addrinfo));
+  hints.ai_flags = AI_CANONNAME;
+
+  rc = getaddrinfo (host_name, NULL, &hints, &res);
+  if (rc != 0)
+    error (EXIT_FAILURE, 0, "%s", gai_strerror (rc));
+
+  dn = strchr (res->ai_canonname, '.');
+  if (dn == NULL)
+    error (EXIT_FAILURE, 0, "cannot qualify host name: %s", host_name);
+  dn++;
+
+  puts (dn);
+
+  free (host_name);
+  freeaddrinfo (res);
+}
+
+int
+main (int argc, char *argv[])
+{
+  set_program_name (argv[0]);
+
+  iu_argp_init ("dnsdomainname", program_authors);
+  argp_parse (&argp, argc, argv, 0, NULL, NULL);
+
+  dnsdomainname ();
+
+  exit (EXIT_SUCCESS);
+}
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 043e790..a5edd92 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -64,6 +64,10 @@ if ENABLE_hostname
 dist_check_SCRIPTS += hostname.sh
 endif
 
+if ENABLE_dnsdomainname
+dist_check_SCRIPTS += dnsdomainname.sh
+endif
+
 TESTS = $(check_PROGRAMS) $(dist_check_SCRIPTS)
 
 TESTS_ENVIRONMENT = EXEEXT=$(EXEEXT)
diff --git a/tests/dnsdomainname.sh b/tests/dnsdomainname.sh
new file mode 100755
index 0000000..e30e1e1
--- /dev/null
+++ b/tests/dnsdomainname.sh
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+# Copyright (C) 2012 Free Software Foundation, Inc.
+#
+# This file is part of GNU Inetutils.
+#
+# GNU Inetutils is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or (at
+# your option) any later version.
+#
+# GNU Inetutils is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see `http://www.gnu.org/licenses/'.
+
+set -e
+
+DNSDOMAINNAME=${DNSDOMAINNAME:-../src/dnsdomainname$EXEEXT}
+
+if ! test -x $DNSDOMAINNAME; then
+    echo "No executable $DNSDOMAINNAME available.  Skipping test."
+    exit 77
+fi
+
+$DNSDOMAINNAME > /dev/null
+rc=$?
+if test $rc -ne 0; then
+    echo "invoking $DNSDOMAINNAME failed with error code $rc"
+    exit 1
+fi
+
+$DNSDOMAINNAME --version > /dev/null
+rc=$?
+if test $rc -ne 0; then
+    echo "invoking $DNSDOMAINNAME --version failed with error code $rc"
+    exit 1
+fi
+
+$DNSDOMAINNAME --help > /dev/null
+rc=$?
+if test $rc -ne 0; then
+    echo "invoking $DNSDOMAINNAME --help failed with error code $rc"
+    exit 1
+fi
+
+exit 0

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                 |   14 +++++
 NEWS                                      |    3 +
 configure.ac                              |    1 +
 doc/inetutils.texi                        |   15 +++++
 man/Makefile.am                           |   15 ++++--
 man/dnsdomainname.h2m                     |    2 +
 src/.gitignore                            |    1 +
 src/Makefile.am                           |    4 ++
 src/dnsdomainname.c                       |   82 +++++++++++++++++++++++++++++
 tests/Makefile.am                         |    4 ++
 ftp/Makefile.am => tests/dnsdomainname.sh |   40 ++++++++++----
 11 files changed, 165 insertions(+), 16 deletions(-)
 create mode 100644 man/dnsdomainname.h2m
 create mode 100644 src/dnsdomainname.c
 copy ftp/Makefile.am => tests/dnsdomainname.sh (50%)
 mode change 100644 => 100755


hooks/post-receive
-- 
GNU Inetutils 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]