gss-commit
[Top][All Lists]
Advanced

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

[SCM] GNU gss branch, master, updated. gss-1-0-1-18-gd424ed2


From: Simon Josefsson
Subject: [SCM] GNU gss branch, master, updated. gss-1-0-1-18-gd424ed2
Date: Thu, 31 Mar 2011 15:15:11 +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 gss".

http://git.savannah.gnu.org/cgit/gss.git/commit/?id=d424ed2add992abd39802b94cd1685dbfaeed480

The branch, master has been updated
       via  d424ed2add992abd39802b94cd1685dbfaeed480 (commit)
       via  90a3ffaf12822b855d1f3e45eb1bc1a950046099 (commit)
       via  7df210702a0aef3ee8cde321aeb44836efab97bb (commit)
       via  b490e39a2942bd3a21903c738ac30b3fd56b14c2 (commit)
      from  ca69c64f20b6df5d261ff6a97ab47d90ae9f5cfa (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 -----------------------------------------------------------------
commit d424ed2add992abd39802b94cd1685dbfaeed480
Author: Simon Josefsson <address@hidden>
Date:   Thu Mar 31 17:01:39 2011 +0200

    Update gnulib files.

commit 90a3ffaf12822b855d1f3e45eb1bc1a950046099
Author: Simon Josefsson <address@hidden>
Date:   Thu Mar 31 17:01:11 2011 +0200

    Sync with TP.

commit 7df210702a0aef3ee8cde321aeb44836efab97bb
Author: Simon Josefsson <address@hidden>
Date:   Thu Dec 9 23:39:36 2010 +0100

    Sync with TP.

commit b490e39a2942bd3a21903c738ac30b3fd56b14c2
Author: Simon Josefsson <address@hidden>
Date:   Thu Dec 9 23:37:08 2010 +0100

    Use silent build rules.

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

Summary of changes:
 GNUmakefile                      |    2 +-
 build-aux/arg-nonnull.h          |    4 +-
 build-aux/c++defs.h              |    4 +-
 build-aux/config.rpath           |  104 ++++++++-----
 build-aux/gendocs.sh             |    5 +-
 build-aux/pmccabe2html           |    2 +-
 build-aux/useless-if-before-free |   10 +-
 build-aux/vc-list-files          |    2 +-
 build-aux/warn-on-use.h          |    4 +-
 configure.ac                     |    1 +
 doc/gendocs_template             |   43 ++---
 gl/Makefile.am                   |    2 +-
 gl/dummy.c                       |    2 +-
 gl/m4/00gnulib.m4                |    2 +-
 gl/m4/autobuild.m4               |    3 +-
 gl/m4/gnulib-cache.m4            |    2 +-
 gl/m4/gnulib-common.m4           |   24 +++-
 gl/m4/gnulib-comp.m4             |    2 +-
 gl/m4/gnulib-tool.m4             |    2 +-
 gl/m4/ld-version-script.m4       |    2 +-
 gl/m4/lib-ld.m4                  |    2 +-
 gl/m4/lib-link.m4                |    6 +-
 gl/m4/lib-prefix.m4              |    2 +-
 gl/m4/manywarnings.m4            |    2 +-
 gl/m4/valgrind-tests.m4          |    6 +-
 gl/m4/warnings.m4                |    2 +-
 lib/gl/Makefile.am               |    2 +-
 lib/gl/dummy.c                   |    2 +-
 lib/gl/gettext.h                 |    8 +-
 lib/gl/m4/00gnulib.m4            |    2 +-
 lib/gl/m4/extensions.m4          |    2 +-
 lib/gl/m4/gnulib-cache.m4        |    2 +-
 lib/gl/m4/gnulib-common.m4       |   24 +++-
 lib/gl/m4/gnulib-comp.m4         |    2 +-
 lib/gl/m4/gnulib-tool.m4         |    2 +-
 lib/gl/m4/include_next.m4        |   99 ++++++++-----
 lib/gl/m4/ld-output-def.m4       |    2 +-
 lib/gl/m4/stddef_h.m4            |    6 +-
 lib/gl/m4/string_h.m4            |    6 +-
 lib/gl/m4/strverscmp.m4          |    2 +-
 lib/gl/m4/warn-on-use.m4         |    2 +-
 lib/gl/m4/wchar_t.m4             |    2 +-
 lib/gl/stddef.in.h               |    2 +-
 lib/gl/string.in.h               |   11 +-
 lib/gl/strverscmp.c              |    2 +-
 maint.mk                         |   95 +++++++++---
 po/LINGUAS                       |    1 +
 po/eo.po.in                      |  317 ++++++++++++++++++++++++++++++++++++++
 po/fi.po.in                      |  182 +++++++++++++----------
 po/fr.po.in                      |  218 ++++++++++++++++----------
 po/it.po.in                      |  168 +++++++++++---------
 po/pl.po.in                      |  160 +++++++++++---------
 po/zh_CN.po.in                   |  179 +++++++++++++---------
 src/gl/Makefile.am               |   11 +-
 src/gl/errno.in.h                |    2 +-
 src/gl/error.c                   |    2 +-
 src/gl/error.h                   |   18 +-
 src/gl/getopt.c                  |    2 +-
 src/gl/getopt.in.h               |    5 +-
 src/gl/getopt1.c                 |    4 +-
 src/gl/getopt_int.h              |    4 +-
 src/gl/gettext.h                 |    8 +-
 src/gl/intprops.h                |    7 +-
 src/gl/m4/00gnulib.m4            |    2 +-
 src/gl/m4/errno_h.m4             |    6 +-
 src/gl/m4/error.m4               |    2 +-
 src/gl/m4/extensions.m4          |    2 +-
 src/gl/m4/getopt.m4              |   48 +++---
 src/gl/m4/gnulib-cache.m4        |    2 +-
 src/gl/m4/gnulib-common.m4       |   24 +++-
 src/gl/m4/gnulib-comp.m4         |    2 +-
 src/gl/m4/gnulib-tool.m4         |    2 +-
 src/gl/m4/include_next.m4        |   99 ++++++++-----
 src/gl/m4/stdarg.m4              |    6 +-
 src/gl/m4/stddef_h.m4            |    6 +-
 src/gl/m4/strerror.m4            |    2 +-
 src/gl/m4/string_h.m4            |    6 +-
 src/gl/m4/unistd_h.m4            |   14 +-
 src/gl/m4/version-etc.m4         |    2 +-
 src/gl/m4/warn-on-use.m4         |    2 +-
 src/gl/m4/wchar_t.m4             |    2 +-
 src/gl/progname.c                |    2 +-
 src/gl/progname.h                |    2 +-
 src/gl/stdarg.in.h               |    2 +-
 src/gl/stddef.in.h               |    2 +-
 src/gl/strerror.c                |    2 +-
 src/gl/string.in.h               |   11 +-
 src/gl/unistd.in.h               |   51 ++++++-
 src/gl/version-etc.c             |    4 +-
 src/gl/version-etc.h             |   10 +-
 90 files changed, 1406 insertions(+), 714 deletions(-)
 create mode 100644 po/eo.po.in

diff --git a/GNUmakefile b/GNUmakefile
index 0394d98..6e00ec8 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -5,7 +5,7 @@
 # It is necessary if you want to build targets usually of interest
 # only to the maintainer.
 
-# Copyright (C) 2001, 2003, 2006-2010 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2006-2011 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
diff --git a/build-aux/arg-nonnull.h b/build-aux/arg-nonnull.h
index 7e3e2db..6c2f1e8 100644
--- a/build-aux/arg-nonnull.h
+++ b/build-aux/arg-nonnull.h
@@ -1,5 +1,5 @@
 /* A C macro for declaring that specific arguments must not be NULL.
-   Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2009-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
@@ -9,7 +9,7 @@
    This program 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
-   Lesser General Public License for more details.
+   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/>.  */
diff --git a/build-aux/c++defs.h b/build-aux/c++defs.h
index 0c2fad7..b6821a6 100644
--- a/build-aux/c++defs.h
+++ b/build-aux/c++defs.h
@@ -1,5 +1,5 @@
 /* C++ compatible function declaration macros.
-   Copyright (C) 2010 Free Software Foundation, Inc.
+   Copyright (C) 2010-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
@@ -9,7 +9,7 @@
    This program 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
-   Lesser General Public License for more details.
+   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/>.  */
diff --git a/build-aux/config.rpath b/build-aux/config.rpath
index 17298f2..8bd7f5d 100755
--- a/build-aux/config.rpath
+++ b/build-aux/config.rpath
@@ -2,7 +2,7 @@
 # Output a system dependent set of variables, describing how to set the
 # run time search path of shared libraries in an executable.
 #
-#   Copyright 1996-2010 Free Software Foundation, Inc.
+#   Copyright 1996-2011 Free Software Foundation, Inc.
 #   Taken from GNU libtool, 2001
 #   Originally by Gordon Matzigkeit <address@hidden>, 1996
 #
@@ -57,13 +57,6 @@ else
     aix*)
       wl='-Wl,'
       ;;
-    darwin*)
-      case $cc_basename in
-        xlc*)
-          wl='-Wl,'
-          ;;
-      esac
-      ;;
     mingw* | cygwin* | pw32* | os2* | cegcc*)
       ;;
     hpux9* | hpux10* | hpux11*)
@@ -72,9 +65,7 @@ else
     irix5* | irix6* | nonstopux*)
       wl='-Wl,'
       ;;
-    newsos6)
-      ;;
-    linux* | k*bsd*-gnu)
+    linux* | k*bsd*-gnu | kopensolaris*-gnu)
       case $cc_basename in
         ecc*)
           wl='-Wl,'
@@ -85,17 +76,26 @@ else
         lf95*)
           wl='-Wl,'
           ;;
-        pgcc | pgf77 | pgf90)
+        nagfor*)
+          wl='-Wl,-Wl,,'
+          ;;
+        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
           wl='-Wl,'
           ;;
         ccc*)
           wl='-Wl,'
           ;;
+        xl* | bgxl* | bgf* | mpixl*)
+          wl='-Wl,'
+          ;;
         como)
           wl='-lopt='
           ;;
         *)
           case `$CC -V 2>&1 | sed 5q` in
+            *Sun\ F* | *Sun*Fortran*)
+              wl=
+              ;;
             *Sun\ C*)
               wl='-Wl,'
               ;;
@@ -103,13 +103,24 @@ else
           ;;
       esac
       ;;
+    newsos6)
+      ;;
+    *nto* | *qnx*)
+      ;;
     osf3* | osf4* | osf5*)
       wl='-Wl,'
       ;;
     rdos*)
       ;;
     solaris*)
-      wl='-Wl,'
+      case $cc_basename in
+        f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
+          wl='-Qoption ld '
+          ;;
+        *)
+          wl='-Wl,'
+          ;;
+      esac
       ;;
     sunos4*)
       wl='-Qoption ld '
@@ -171,15 +182,14 @@ if test "$with_gnu_ld" = yes; then
       fi
       ;;
     amigaos*)
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_minus_L=yes
-      # Samuel A. Falvo II <address@hidden> reports
-      # that the semantics of dynamic libraries on AmigaOS, at least up
-      # to version 4, is to share data among multiple programs linked
-      # with the same dynamic library.  Since this doesn't match the
-      # behavior of shared libraries on other platforms, we cannot use
-      # them.
-      ld_shlibs=no
+      case "$host_cpu" in
+        powerpc)
+          ;;
+        m68k)
+          hardcode_libdir_flag_spec='-L$libdir'
+          hardcode_minus_L=yes
+          ;;
+      esac
       ;;
     beos*)
       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
@@ -198,11 +208,13 @@ if test "$with_gnu_ld" = yes; then
         ld_shlibs=no
       fi
       ;;
+    haiku*)
+      ;;
     interix[3-9]*)
       hardcode_direct=no
       hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
       ;;
-    gnu* | linux* | k*bsd*-gnu)
+    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
         :
       else
@@ -325,10 +337,14 @@ else
       fi
       ;;
     amigaos*)
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_minus_L=yes
-      # see comment about different semantics on the GNU ld section
-      ld_shlibs=no
+      case "$host_cpu" in
+        powerpc)
+          ;;
+        m68k)
+          hardcode_libdir_flag_spec='-L$libdir'
+          hardcode_minus_L=yes
+          ;;
+      esac
       ;;
     bsdi[45]*)
       ;;
@@ -342,24 +358,15 @@ else
       ;;
     darwin* | rhapsody*)
       hardcode_direct=no
-      if test "$GCC" = yes ; then
+      if { case $cc_basename in ifort*) true;; *) test "$GCC" = yes;; esac; }; 
then
         :
       else
-        case $cc_basename in
-          xlc*)
-            ;;
-          *)
-            ld_shlibs=no
-            ;;
-        esac
+        ld_shlibs=no
       fi
       ;;
     dgux*)
       hardcode_libdir_flag_spec='-L$libdir'
       ;;
-    freebsd1*)
-      ld_shlibs=no
-      ;;
     freebsd2.2*)
       hardcode_libdir_flag_spec='-R$libdir'
       hardcode_direct=yes
@@ -420,6 +427,8 @@ else
       hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
       hardcode_libdir_separator=:
       ;;
+    *nto* | *qnx*)
+      ;;
     openbsd*)
       if test -f /usr/libexec/ld.so; then
         hardcode_direct=yes
@@ -515,7 +524,12 @@ case "$host_os" in
     library_names_spec='$libname$shrext'
     ;;
   amigaos*)
-    library_names_spec='$libname.a'
+    case "$host_cpu" in
+      powerpc*)
+        library_names_spec='$libname$shrext' ;;
+      m68k)
+        library_names_spec='$libname.a' ;;
+    esac
     ;;
   beos*)
     library_names_spec='$libname$shrext'
@@ -534,8 +548,6 @@ case "$host_os" in
   dgux*)
     library_names_spec='$libname$shrext'
     ;;
-  freebsd1*)
-    ;;
   freebsd* | dragonfly*)
     case "$host_os" in
       freebsd[123]*)
@@ -547,6 +559,9 @@ case "$host_os" in
   gnu*)
     library_names_spec='$libname$shrext'
     ;;
+  haiku*)
+    library_names_spec='$libname$shrext'
+    ;;
   hpux9* | hpux10* | hpux11*)
     case $host_cpu in
       ia64*)
@@ -582,7 +597,7 @@ case "$host_os" in
     ;;
   linux*oldld* | linux*aout* | linux*coff*)
     ;;
-  linux* | k*bsd*-gnu)
+  linux* | k*bsd*-gnu | kopensolaris*-gnu)
     library_names_spec='$libname$shrext'
     ;;
   knetbsd*-gnu)
@@ -594,7 +609,7 @@ case "$host_os" in
   newsos6)
     library_names_spec='$libname$shrext'
     ;;
-  nto-qnx*)
+  *nto* | *qnx*)
     library_names_spec='$libname$shrext'
     ;;
   openbsd*)
@@ -625,6 +640,9 @@ case "$host_os" in
   sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
     library_names_spec='$libname$shrext'
     ;;
+  tpf*)
+    library_names_spec='$libname$shrext'
+    ;;
   uts4*)
     library_names_spec='$libname$shrext'
     ;;
diff --git a/build-aux/gendocs.sh b/build-aux/gendocs.sh
index 3180841..34ef112 100755
--- a/build-aux/gendocs.sh
+++ b/build-aux/gendocs.sh
@@ -2,9 +2,10 @@
 # gendocs.sh -- generate a GNU manual in many formats.  This script is
 #   mentioned in maintain.texi.  See the help message below for usage details.
 
-scriptversion=2010-11-27.07
+scriptversion=2010-11-29.11
 
-# Copyright 2003-2010 Free Software Foundation, Inc.
+# Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
+# Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
diff --git a/build-aux/pmccabe2html b/build-aux/pmccabe2html
index 1a4cdd1..c7cf3d0 100644
--- a/build-aux/pmccabe2html
+++ b/build-aux/pmccabe2html
@@ -1,6 +1,6 @@
 # pmccabe2html - AWK script to convert pmccabe output to html       -*- awk -*-
 
-# Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+# Copyright (C) 2007-2011 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
diff --git a/build-aux/useless-if-before-free b/build-aux/useless-if-before-free
index 6aa7d39..a6c228b 100755
--- a/build-aux/useless-if-before-free
+++ b/build-aux/useless-if-before-free
@@ -2,17 +2,15 @@ eval '(exit $?0)' && eval 'exec perl -wST "$0" ${1+"$@"}'
   & eval 'exec perl -wST "$0" $argv:q'
     if 0;
 # Detect instances of "if (p) free (p);".
-# Likewise for "if (p != NULL) free (p);".  And with braces.
-# Also detect "if (NULL != p) free (p);".
-# And with 0 in place of NULL.
+# Likewise "if (p != 0)", "if (0 != p)", or with NULL; and with braces.
 
-my $VERSION = '2009-04-16 15:57'; # UTC
+my $VERSION = '2011-01-09 01:39'; # UTC
 # The definition above must lie within the first 8 lines in order
 # for the Emacs time-stamp write hook (at end) to update it.
 # If you change this file with Emacs, please let the write hook
 # do its job.  Otherwise, update this string manually.
 
-# Copyright (C) 2008-2010 Free Software Foundation, Inc.
+# Copyright (C) 2008-2011 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -63,7 +61,7 @@ detect free-like functions named FOO and BAR.
 
 OPTIONS:
 
-   --list       print only the name of each matching FILE (\0-terminated)
+   --list       print only the name of each matching FILE (\\0-terminated)
    --name=N     add name N to the list of \`free\'-like functions to detect;
                   may be repeated
 
diff --git a/build-aux/vc-list-files b/build-aux/vc-list-files
index 48a33ee..9bb6fe6 100755
--- a/build-aux/vc-list-files
+++ b/build-aux/vc-list-files
@@ -4,7 +4,7 @@
 # Print a version string.
 scriptversion=2010-04-23.22; # UTC
 
-# Copyright (C) 2006-2010 Free Software Foundation, Inc.
+# Copyright (C) 2006-2011 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
diff --git a/build-aux/warn-on-use.h b/build-aux/warn-on-use.h
index 171e599..2cdeec3 100644
--- a/build-aux/warn-on-use.h
+++ b/build-aux/warn-on-use.h
@@ -1,5 +1,5 @@
 /* A C macro for emitting warnings if a function is used.
-   Copyright (C) 2010 Free Software Foundation, Inc.
+   Copyright (C) 2010-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
@@ -9,7 +9,7 @@
    This program 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
-   Lesser General Public License for more details.
+   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/>.  */
diff --git a/configure.ac b/configure.ac
index ab81444..ac840c4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -37,6 +37,7 @@ AC_SUBST(DLL_VERSION)
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([1.10 -Wall -Werror -Wno-override])
+AM_SILENT_RULES([yes])
 AC_CONFIG_HEADERS(config.h)
 
 # Checks for programs.
diff --git a/doc/gendocs_template b/doc/gendocs_template
index 4ce876b..dfaf027 100644
--- a/doc/gendocs_template
+++ b/doc/gendocs_template
@@ -3,12 +3,6 @@
 <!--#include virtual="/server/banner.html" -->
 <h2>%%TITLE%%</h2>
 
-<!-- This document is in XML, and xhtml 1.0 -->
-<!-- Please make sure to properly nest your tags -->
-<!-- and ensure that your final document validates -->
-<!-- consistent with W3C xhtml 1.0 and CSS standards -->
-<!-- See validator.w3.org -->
-
 <address>Free Software Foundation</address>
 <address>last updated %%DATE%%</address>
 
@@ -59,6 +53,12 @@
     (%%TEXI_TGZ_SIZE%%K bytes gzipped tar file).</a></li>
 </ul>
 
+<p>You can <a href="http://shop.fsf.org/";>buy printed copies of
+some manuals</a> (among other items) from the Free Software Foundation;
+this helps support FSF activities.</p>
+
+<p>(This page generated by the <a href="%%SCRIPTURL%%">%%SCRIPTNAME%%
+script</a>.)</p>
 
 <p>There is also an API reference manual:
 
@@ -68,36 +68,29 @@
   <li><a href="../reference/%%PACKAGE%%.devhelp">DevHelp Reference API Manual 
(GTK-DOC)</a>.
 </ul>
 
-<p>You can <a href="http://shop.fsf.org/";>buy printed copies of
-some manuals</a> (among other items) from the Free Software Foundation;
-this helps support FSF activities.</p>
-
-<p>(This page generated by the <a href="%%SCRIPTURL%%">%%SCRIPTNAME%%
-script</a>.)</p>
 
-<!-- If needed, change the copyright block at the bottom. In general, -->
-<!-- all pages on the GNU web server should have the section about    -->
-<!-- verbatim copying.  Please do NOT remove this without talking     -->
-<!-- with the webmasters first. -->
-<!-- Please make sure the copyright date is consistent with the document -->
-<!-- and that it is like this "2001, 2002" not this "2001-2002." -->
+<!-- If needed, change the copyright block at the bottom. In general,
+     all pages on the GNU web server should have the section about
+     verbatim copying.  Please do NOT remove this without talking
+     with the webmasters first.
+     Please make sure the copyright date is consistent with the document
+     and that it is like this: "2001, 2002", not this: "2001-2002". -->
 </div><!-- for id="content", starts in the include above -->
 <!--#include virtual="/server/footer.html" -->
 <div id="footer">
 
-<p>
-Please send FSF &amp; GNU inquiries to
+<p>Please send general FSF &amp; GNU inquiries to
 <a href="mailto:address@hidden";>&lt;address@hidden&gt;</a>.
 There are also <a href="/contact/">other ways to contact</a>
 the FSF.<br />
 Please send broken links and other corrections or suggestions to
-<a href="mailto:%%EMAIL%%";>&lt;%%EMAIL%%&gt;</a>.
-</p>
+<a href="mailto:%%EMAIL%%";>&lt;%%EMAIL%%&gt;</a>.</p>
 
-<p>Copyright &copy; 2010 Free Software Foundation, Inc.</p>
+<p>Copyright &copy; 2011 Free Software Foundation, Inc.</p>
 
-<p>Verbatim copying and distribution of this entire article is
-permitted in any medium, provided this notice is preserved.</p>
+<p>Verbatim copying and distribution of this entire article are
+permitted worldwide, without royalty, in any medium, provided this
+notice, and the copyright notice, are preserved.</p>
 
 </div>
 </div>
diff --git a/gl/Makefile.am b/gl/Makefile.am
index 4273da0..22b66e1 100644
--- a/gl/Makefile.am
+++ b/gl/Makefile.am
@@ -1,6 +1,6 @@
 ## DO NOT EDIT! GENERATED AUTOMATICALLY!
 ## Process this file with automake to produce Makefile.in.
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
diff --git a/gl/dummy.c b/gl/dummy.c
index 0f9a277..c958ea0 100644
--- a/gl/dummy.c
+++ b/gl/dummy.c
@@ -1,5 +1,5 @@
 /* A dummy file, to prevent empty libraries from breaking builds.
-   Copyright (C) 2004, 2007, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2007, 2009-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/gl/m4/00gnulib.m4 b/gl/m4/00gnulib.m4
index 301469b..7feed46 100644
--- a/gl/m4/00gnulib.m4
+++ b/gl/m4/00gnulib.m4
@@ -1,5 +1,5 @@
 # 00gnulib.m4 serial 2
-dnl Copyright (C) 2009-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/gl/m4/autobuild.m4 b/gl/m4/autobuild.m4
index 93ccb54..04971d4 100644
--- a/gl/m4/autobuild.m4
+++ b/gl/m4/autobuild.m4
@@ -1,6 +1,5 @@
 # autobuild.m4 serial 7
-dnl Copyright (C) 2004, 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
-dnl Inc.
+dnl Copyright (C) 2004, 2006-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/gl/m4/gnulib-cache.m4 b/gl/m4/gnulib-cache.m4
index 9e69ad8..8dc2c6b 100644
--- a/gl/m4/gnulib-cache.m4
+++ b/gl/m4/gnulib-cache.m4
@@ -1,4 +1,4 @@
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
diff --git a/gl/m4/gnulib-common.m4 b/gl/m4/gnulib-common.m4
index d0c8b66..ecbf336 100644
--- a/gl/m4/gnulib-common.m4
+++ b/gl/m4/gnulib-common.m4
@@ -1,5 +1,5 @@
-# gnulib-common.m4 serial 21
-dnl Copyright (C) 2007-2010 Free Software Foundation, Inc.
+# gnulib-common.m4 serial 23
+dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -102,6 +102,26 @@ AC_DEFUN([gl_MODULE_INDICATOR_FOR_TESTS],
     [Define to 1 when the gnulib module $1 should be tested.])
 ])
 
+# gl_ASSERT_NO_GNULIB_POSIXCHECK
+# asserts that there will never be a need to #define GNULIB_POSIXCHECK.
+# and thereby enables an optimization of configure and config.h.
+# Used by Emacs.
+AC_DEFUN([gl_ASSERT_NO_GNULIB_POSIXCHECK],
+[
+  dnl Override gl_WARN_ON_USE_PREPARE.
+  AC_DEFUN([gl_WARN_ON_USE_PREPARE], [])
+])
+
+# gl_ASSERT_NO_GNULIB_TESTS
+# asserts that there will be no gnulib tests in the scope of the configure.ac
+# and thereby enables an optimization of config.h.
+# Used by Emacs.
+AC_DEFUN([gl_ASSERT_NO_GNULIB_TESTS],
+[
+  dnl Override gl_MODULE_INDICATOR_FOR_TESTS.
+  AC_DEFUN([gl_MODULE_INDICATOR_FOR_TESTS], [])
+])
+
 # Test whether <features.h> exists.
 # Set HAVE_FEATURES_H.
 AC_DEFUN([gl_FEATURES_H],
diff --git a/gl/m4/gnulib-comp.m4 b/gl/m4/gnulib-comp.m4
index 97c44dd..2b75d32 100644
--- a/gl/m4/gnulib-comp.m4
+++ b/gl/m4/gnulib-comp.m4
@@ -1,5 +1,5 @@
 # DO NOT EDIT! GENERATED AUTOMATICALLY!
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
diff --git a/gl/m4/gnulib-tool.m4 b/gl/m4/gnulib-tool.m4
index 69e7733..ed41e9d 100644
--- a/gl/m4/gnulib-tool.m4
+++ b/gl/m4/gnulib-tool.m4
@@ -1,5 +1,5 @@
 # gnulib-tool.m4 serial 2
-dnl Copyright (C) 2004-2005, 2009-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2004-2005, 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/gl/m4/ld-version-script.m4 b/gl/m4/ld-version-script.m4
index 8fd8c89..aec2f41 100644
--- a/gl/m4/ld-version-script.m4
+++ b/gl/m4/ld-version-script.m4
@@ -1,5 +1,5 @@
 # ld-version-script.m4 serial 2
-dnl Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/gl/m4/lib-ld.m4 b/gl/m4/lib-ld.m4
index 294db72..ae003f7 100644
--- a/gl/m4/lib-ld.m4
+++ b/gl/m4/lib-ld.m4
@@ -1,5 +1,5 @@
 # lib-ld.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 1996-2003, 2009-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 1996-2003, 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/gl/m4/lib-link.m4 b/gl/m4/lib-link.m4
index 2ea9d6d..e7c9ba9 100644
--- a/gl/m4/lib-link.m4
+++ b/gl/m4/lib-link.m4
@@ -1,5 +1,5 @@
-# lib-link.m4 serial 25 (gettext-0.18.2)
-dnl Copyright (C) 2001-2010 Free Software Foundation, Inc.
+# lib-link.m4 serial 26 (gettext-0.18.2)
+dnl Copyright (C) 2001-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -116,6 +116,8 @@ AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
 dnl Determine the platform dependent parameters needed to use rpath:
 dnl   acl_libext,
 dnl   acl_shlibext,
+dnl   acl_libname_spec,
+dnl   acl_library_names_spec,
 dnl   acl_hardcode_libdir_flag_spec,
 dnl   acl_hardcode_libdir_separator,
 dnl   acl_hardcode_direct,
diff --git a/gl/m4/lib-prefix.m4 b/gl/m4/lib-prefix.m4
index 1601cea..7e5f0bd 100644
--- a/gl/m4/lib-prefix.m4
+++ b/gl/m4/lib-prefix.m4
@@ -1,5 +1,5 @@
 # lib-prefix.m4 serial 7 (gettext-0.18)
-dnl Copyright (C) 2001-2005, 2008-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2005, 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/gl/m4/manywarnings.m4 b/gl/m4/manywarnings.m4
index 844a9ba..e928821 100644
--- a/gl/m4/manywarnings.m4
+++ b/gl/m4/manywarnings.m4
@@ -1,5 +1,5 @@
 # manywarnings.m4 serial 1
-dnl Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/gl/m4/valgrind-tests.m4 b/gl/m4/valgrind-tests.m4
index e2434c6..ab9e25a 100644
--- a/gl/m4/valgrind-tests.m4
+++ b/gl/m4/valgrind-tests.m4
@@ -1,5 +1,5 @@
-# valgrind-tests.m4 serial 1
-dnl Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+# valgrind-tests.m4 serial 2
+dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -23,7 +23,7 @@ AC_DEFUN([gl_VALGRIND_TESTS],
 
   if test -n "$VALGRIND" && $VALGRIND -q true > /dev/null 2>&1; then
     opt_valgrind_tests=yes
-    VALGRIND="$VALGRIND -q"
+    VALGRIND="$VALGRIND -q --error-exitcode=1 --leak-check=full"
   else
     opt_valgrind_tests=no
     VALGRIND=
diff --git a/gl/m4/warnings.m4 b/gl/m4/warnings.m4
index dad5c1f..a8f3466 100644
--- a/gl/m4/warnings.m4
+++ b/gl/m4/warnings.m4
@@ -1,5 +1,5 @@
 # warnings.m4 serial 2
-dnl Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/lib/gl/Makefile.am b/lib/gl/Makefile.am
index f5cde46..ebcd214 100644
--- a/lib/gl/Makefile.am
+++ b/lib/gl/Makefile.am
@@ -1,6 +1,6 @@
 ## DO NOT EDIT! GENERATED AUTOMATICALLY!
 ## Process this file with automake to produce Makefile.in.
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
diff --git a/lib/gl/dummy.c b/lib/gl/dummy.c
index 0f9a277..c958ea0 100644
--- a/lib/gl/dummy.c
+++ b/lib/gl/dummy.c
@@ -1,5 +1,5 @@
 /* A dummy file, to prevent empty libraries from breaking builds.
-   Copyright (C) 2004, 2007, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2007, 2009-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/gl/gettext.h b/lib/gl/gettext.h
index f08759e..88d9867 100644
--- a/lib/gl/gettext.h
+++ b/lib/gl/gettext.h
@@ -1,5 +1,5 @@
 /* Convenience header for conditional use of GNU <libintl.h>.
-   Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2010 Free Software
+   Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2011 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -93,6 +93,12 @@
 
 #endif
 
+/* Prefer gnulib's setlocale override over libintl's setlocale override.  */
+#ifdef GNULIB_defined_setlocale
+# undef setlocale
+# define setlocale rpl_setlocale
+#endif
+
 /* A pseudo function call that serves as a marker for the automated
    extraction of messages, but does not call gettext().  The run-time
    translation is done at a different place in the code.
diff --git a/lib/gl/m4/00gnulib.m4 b/lib/gl/m4/00gnulib.m4
index 301469b..7feed46 100644
--- a/lib/gl/m4/00gnulib.m4
+++ b/lib/gl/m4/00gnulib.m4
@@ -1,5 +1,5 @@
 # 00gnulib.m4 serial 2
-dnl Copyright (C) 2009-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/lib/gl/m4/extensions.m4 b/lib/gl/m4/extensions.m4
index 7d9458a..1330503 100644
--- a/lib/gl/m4/extensions.m4
+++ b/lib/gl/m4/extensions.m4
@@ -1,7 +1,7 @@
 # serial 9  -*- Autoconf -*-
 # Enable extensions on systems that normally disable them.
 
-# Copyright (C) 2003, 2006-2010 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2006-2011 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
diff --git a/lib/gl/m4/gnulib-cache.m4 b/lib/gl/m4/gnulib-cache.m4
index 2d21557..f582ba8 100644
--- a/lib/gl/m4/gnulib-cache.m4
+++ b/lib/gl/m4/gnulib-cache.m4
@@ -1,4 +1,4 @@
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
diff --git a/lib/gl/m4/gnulib-common.m4 b/lib/gl/m4/gnulib-common.m4
index d0c8b66..ecbf336 100644
--- a/lib/gl/m4/gnulib-common.m4
+++ b/lib/gl/m4/gnulib-common.m4
@@ -1,5 +1,5 @@
-# gnulib-common.m4 serial 21
-dnl Copyright (C) 2007-2010 Free Software Foundation, Inc.
+# gnulib-common.m4 serial 23
+dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -102,6 +102,26 @@ AC_DEFUN([gl_MODULE_INDICATOR_FOR_TESTS],
     [Define to 1 when the gnulib module $1 should be tested.])
 ])
 
+# gl_ASSERT_NO_GNULIB_POSIXCHECK
+# asserts that there will never be a need to #define GNULIB_POSIXCHECK.
+# and thereby enables an optimization of configure and config.h.
+# Used by Emacs.
+AC_DEFUN([gl_ASSERT_NO_GNULIB_POSIXCHECK],
+[
+  dnl Override gl_WARN_ON_USE_PREPARE.
+  AC_DEFUN([gl_WARN_ON_USE_PREPARE], [])
+])
+
+# gl_ASSERT_NO_GNULIB_TESTS
+# asserts that there will be no gnulib tests in the scope of the configure.ac
+# and thereby enables an optimization of config.h.
+# Used by Emacs.
+AC_DEFUN([gl_ASSERT_NO_GNULIB_TESTS],
+[
+  dnl Override gl_MODULE_INDICATOR_FOR_TESTS.
+  AC_DEFUN([gl_MODULE_INDICATOR_FOR_TESTS], [])
+])
+
 # Test whether <features.h> exists.
 # Set HAVE_FEATURES_H.
 AC_DEFUN([gl_FEATURES_H],
diff --git a/lib/gl/m4/gnulib-comp.m4 b/lib/gl/m4/gnulib-comp.m4
index e23783c..9f183b9 100644
--- a/lib/gl/m4/gnulib-comp.m4
+++ b/lib/gl/m4/gnulib-comp.m4
@@ -1,5 +1,5 @@
 # DO NOT EDIT! GENERATED AUTOMATICALLY!
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
diff --git a/lib/gl/m4/gnulib-tool.m4 b/lib/gl/m4/gnulib-tool.m4
index 69e7733..ed41e9d 100644
--- a/lib/gl/m4/gnulib-tool.m4
+++ b/lib/gl/m4/gnulib-tool.m4
@@ -1,5 +1,5 @@
 # gnulib-tool.m4 serial 2
-dnl Copyright (C) 2004-2005, 2009-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2004-2005, 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/lib/gl/m4/include_next.m4 b/lib/gl/m4/include_next.m4
index e37eb05..b3c7849 100644
--- a/lib/gl/m4/include_next.m4
+++ b/lib/gl/m4/include_next.m4
@@ -1,5 +1,5 @@
-# include_next.m4 serial 16
-dnl Copyright (C) 2006-2010 Free Software Foundation, Inc.
+# include_next.m4 serial 18
+dnl Copyright (C) 2006-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -147,11 +147,33 @@ choke me
 # Note: This macro assumes that the header file is not empty after
 # preprocessing, i.e. it does not only define preprocessor macros but also
 # provides some type/enum definitions or function/variable declarations.
+#
+# This macro also checks whether each header exists, by invoking
+# AC_CHECK_HEADERS_ONCE or AC_CHECK_HEADERS on each argument.
 AC_DEFUN([gl_CHECK_NEXT_HEADERS],
 [
+  gl_NEXT_HEADERS_INTERNAL([$1], [check])
+])
+
+# gl_NEXT_HEADERS(HEADER1 HEADER2 ...)
+# ------------------------------------
+# Like gl_CHECK_NEXT_HEADERS, except do not check whether the headers exist.
+# This is suitable for headers like <stddef.h> that are standardized by C89
+# and therefore can be assumed to exist.
+AC_DEFUN([gl_NEXT_HEADERS],
+[
+  gl_NEXT_HEADERS_INTERNAL([$1], [assume])
+])
+
+# The guts of gl_CHECK_NEXT_HEADERS and gl_NEXT_HEADERS.
+AC_DEFUN([gl_NEXT_HEADERS_INTERNAL],
+[
   AC_REQUIRE([gl_INCLUDE_NEXT])
   AC_REQUIRE([AC_CANONICAL_HOST])
-  AC_CHECK_HEADERS_ONCE([$1])
+
+  m4_if([$2], [check],
+    [AC_CHECK_HEADERS_ONCE([$1])
+    ])
 
   m4_foreach_w([gl_HEADER_NAME], [$1],
     [AS_VAR_PUSHDEF([gl_next_header],
@@ -162,39 +184,44 @@ AC_DEFUN([gl_CHECK_NEXT_HEADERS],
        AC_CACHE_CHECK(
          [absolute name of <]m4_defn([gl_HEADER_NAME])[>],
          m4_defn([gl_next_header]),
-         [AS_VAR_PUSHDEF([gl_header_exists],
-                         [ac_cv_header_]m4_defn([gl_HEADER_NAME]))
-          if test AS_VAR_GET(gl_header_exists) = yes; then
-            AC_LANG_CONFTEST(
-              [AC_LANG_SOURCE(
-                 [[#include <]]m4_dquote(m4_defn([gl_HEADER_NAME]))[[>]]
-               )])
-            dnl AIX "xlc -E" and "cc -E" omit #line directives for header files
-            dnl that contain only a #include of other header files and no
-            dnl non-comment tokens of their own. This leads to a failure to
-            dnl detect the absolute name of <dirent.h>, <signal.h>, <poll.h>
-            dnl and others. The workaround is to force preservation of comments
-            dnl through option -C. This ensures all necessary #line directives
-            dnl are present. GCC supports option -C as well.
-            case "$host_os" in
-              aix*) gl_absname_cpp="$ac_cpp -C" ;;
-              *)    gl_absname_cpp="$ac_cpp" ;;
-            esac
-            dnl eval is necessary to expand gl_absname_cpp.
-            dnl Ultrix and Pyramid sh refuse to redirect output of eval,
-            dnl so use subshell.
-            AS_VAR_SET([gl_next_header],
-              ['"'`(eval "$gl_absname_cpp conftest.$ac_ext") 
2>&AS_MESSAGE_LOG_FD |
-               sed -n '\#/]m4_defn([gl_HEADER_NAME])[#{
-                 s#.*"\(.*/]m4_defn([gl_HEADER_NAME])[\)".*#\1#
-                 s#^/[^/]#//&#
-                 p
-                 q
-               }'`'"'])
-          else
-            AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>'])
-          fi
-          AS_VAR_POPDEF([gl_header_exists])])
+         [m4_if([$2], [check],
+            [AS_VAR_PUSHDEF([gl_header_exists],
+                            [ac_cv_header_]m4_defn([gl_HEADER_NAME]))
+             if test AS_VAR_GET(gl_header_exists) = yes; then
+             AS_VAR_POPDEF([gl_header_exists])
+            ])
+               AC_LANG_CONFTEST(
+                 [AC_LANG_SOURCE(
+                    [[#include <]]m4_dquote(m4_defn([gl_HEADER_NAME]))[[>]]
+                  )])
+               dnl AIX "xlc -E" and "cc -E" omit #line directives for header
+               dnl files that contain only a #include of other header files and
+               dnl no non-comment tokens of their own. This leads to a failure
+               dnl to detect the absolute name of <dirent.h>, <signal.h>,
+               dnl <poll.h> and others. The workaround is to force preservation
+               dnl of comments through option -C. This ensures all necessary
+               dnl #line directives are present. GCC supports option -C as 
well.
+               case "$host_os" in
+                 aix*) gl_absname_cpp="$ac_cpp -C" ;;
+                 *)    gl_absname_cpp="$ac_cpp" ;;
+               esac
+               dnl eval is necessary to expand gl_absname_cpp.
+               dnl Ultrix and Pyramid sh refuse to redirect output of eval,
+               dnl so use subshell.
+               AS_VAR_SET([gl_next_header],
+                 ['"'`(eval "$gl_absname_cpp conftest.$ac_ext") 
2>&AS_MESSAGE_LOG_FD |
+                  sed -n '\#/]m4_defn([gl_HEADER_NAME])[#{
+                    s#.*"\(.*/]m4_defn([gl_HEADER_NAME])[\)".*#\1#
+                    s#^/[^/]#//&#
+                    p
+                    q
+                  }'`'"'])
+          m4_if([$2], [check],
+            [else
+               AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>'])
+             fi
+            ])
+         ])
      fi
      AC_SUBST(
        AS_TR_CPP([NEXT_]m4_defn([gl_HEADER_NAME])),
diff --git a/lib/gl/m4/ld-output-def.m4 b/lib/gl/m4/ld-output-def.m4
index 2dc6bf5..2169f51 100644
--- a/lib/gl/m4/ld-output-def.m4
+++ b/lib/gl/m4/ld-output-def.m4
@@ -1,5 +1,5 @@
 # ld-output-def.m4 serial 2
-dnl Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/lib/gl/m4/stddef_h.m4 b/lib/gl/m4/stddef_h.m4
index c3ae569..1942b6a 100644
--- a/lib/gl/m4/stddef_h.m4
+++ b/lib/gl/m4/stddef_h.m4
@@ -1,6 +1,6 @@
 dnl A placeholder for POSIX 2008 <stddef.h>, for platforms that have issues.
-# stddef_h.m4 serial 2
-dnl Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+# stddef_h.m4 serial 3
+dnl Copyright (C) 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -25,7 +25,7 @@ AC_DEFUN([gl_STDDEF_H],
     STDDEF_H=stddef.h
   fi
   if test -n "$STDDEF_H"; then
-    gl_CHECK_NEXT_HEADERS([stddef.h])
+    gl_NEXT_HEADERS([stddef.h])
   fi
 ])
 
diff --git a/lib/gl/m4/string_h.m4 b/lib/gl/m4/string_h.m4
index 5844b2d..30ddfbc 100644
--- a/lib/gl/m4/string_h.m4
+++ b/lib/gl/m4/string_h.m4
@@ -1,11 +1,11 @@
 # Configure a GNU-like replacement for <string.h>.
 
-# Copyright (C) 2007-2010 Free Software Foundation, Inc.
+# Copyright (C) 2007-2011 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 18
+# serial 19
 
 # Written by Paul Eggert.
 
@@ -20,7 +20,7 @@ AC_DEFUN([gl_HEADER_STRING_H_BODY],
 [
   AC_REQUIRE([AC_C_RESTRICT])
   AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
-  gl_CHECK_NEXT_HEADERS([string.h])
+  gl_NEXT_HEADERS([string.h])
 
   dnl Check for declarations of anything we want to poison if the
   dnl corresponding gnulib module is not in use, and which is not
diff --git a/lib/gl/m4/strverscmp.m4 b/lib/gl/m4/strverscmp.m4
index 59e0950..5d1a9ba 100644
--- a/lib/gl/m4/strverscmp.m4
+++ b/lib/gl/m4/strverscmp.m4
@@ -1,5 +1,5 @@
 # strverscmp.m4 serial 7
-dnl Copyright (C) 2002, 2005-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2005-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/lib/gl/m4/warn-on-use.m4 b/lib/gl/m4/warn-on-use.m4
index 42daae8..e0d0f27 100644
--- a/lib/gl/m4/warn-on-use.m4
+++ b/lib/gl/m4/warn-on-use.m4
@@ -1,5 +1,5 @@
 # warn-on-use.m4 serial 2
-dnl Copyright (C) 2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2010-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/lib/gl/m4/wchar_t.m4 b/lib/gl/m4/wchar_t.m4
index a133e6a..d2c03c4 100644
--- a/lib/gl/m4/wchar_t.m4
+++ b/lib/gl/m4/wchar_t.m4
@@ -1,5 +1,5 @@
 # wchar_t.m4 serial 4 (gettext-0.18.2)
-dnl Copyright (C) 2002-2003, 2008-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/lib/gl/stddef.in.h b/lib/gl/stddef.in.h
index 6642d49..62a91a7 100644
--- a/lib/gl/stddef.in.h
+++ b/lib/gl/stddef.in.h
@@ -1,6 +1,6 @@
 /* A substitute for POSIX 2008 <stddef.h>, for platforms that have issues.
 
-   Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2009-2011 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/gl/string.in.h b/lib/gl/string.in.h
index b0c2ba1..336e246 100644
--- a/lib/gl/string.in.h
+++ b/lib/gl/string.in.h
@@ -1,6 +1,6 @@
 /* A GNU-like <string.h>.
 
-   Copyright (C) 1995-1996, 2001-2010 Free Software Foundation, Inc.
+   Copyright (C) 1995-1996, 2001-2011 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -37,13 +37,8 @@
 # include <wchar.h>
 #endif
 
-#ifndef __attribute__
-/* This feature is available in gcc versions 2.5 and later.  */
-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
-#  define __attribute__(Spec) /* empty */
-# endif
-#endif
-/* The attribute __pure__ was added in gcc 2.96.  */
+/* The __attribute__ feature is available in gcc versions 2.5 and later.
+   The attribute __pure__ was added in gcc 2.96.  */
 #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
 # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
 #else
diff --git a/lib/gl/strverscmp.c b/lib/gl/strverscmp.c
index f9f1d72..bbcad44 100644
--- a/lib/gl/strverscmp.c
+++ b/lib/gl/strverscmp.c
@@ -1,5 +1,5 @@
 /* Compare strings while treating digits characters numerically.
-   Copyright (C) 1997, 2000, 2002, 2004, 2006, 2009-2010 Free Software
+   Copyright (C) 1997, 2000, 2002, 2004, 2006, 2009-2011 Free Software
    Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Jean-François Bignolles <address@hidden>, 1997.
diff --git a/maint.mk b/maint.mk
index 315b223..524b69f 100644
--- a/maint.mk
+++ b/maint.mk
@@ -2,7 +2,7 @@
 # This Makefile fragment tries to be general-purpose enough to be
 # used by many projects via the gnulib maintainer-makefile module.
 
-## Copyright (C) 2001-2010 Free Software Foundation, Inc.
+## Copyright (C) 2001-2011 Free Software Foundation, Inc.
 ##
 ## This program is free software: you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
@@ -33,7 +33,7 @@ GZIP_ENV = '--no-name --best $(gzip_rsyncable)'
 
 GIT = git
 VC = $(GIT)
-VC-tag = git tag -s -m '$(VERSION)' -u '$(gpg_key_ID)'
+VC-tag = git tag -s -m '$(VERSION)' 'v$(VERSION)' -u '$(gpg_key_ID)'
 
 VC_LIST = $(build_aux)/vc-list-files -C $(srcdir)
 
@@ -57,11 +57,13 @@ endif
 # In order to be able to consistently filter "."-relative names,
 # (i.e., with no $(srcdir) prefix), this definition is careful to
 # remove any $(srcdir) prefix, and to restore what it removes.
+_sc_excl = \
+  $(if $(exclude_file_name_regexp--$@),$(exclude_file_name_regexp--$@),^$$)
 VC_LIST_EXCEPT = \
   $(VC_LIST) | sed 's|^$(_dot_escaped_srcdir)/||' \
        | if test -f $(srcdir)/.x-$@; then grep -vEf $(srcdir)/.x-$@; \
          else grep -Ev -e "$${VC_LIST_EXCEPT_DEFAULT-ChangeLog}"; fi \
-       | grep -Ev -e '$(VC_LIST_ALWAYS_EXCLUDE_REGEX)' \
+       | grep -Ev -e '($(VC_LIST_ALWAYS_EXCLUDE_REGEX)|$(_sc_excl))' \
        $(_prepend_srcdir_prefix)
 
 ifeq ($(origin prev_version_file), undefined)
@@ -126,8 +128,13 @@ syntax-check-rules := $(sort $(shell sed -n 
's/^\(sc_[a-zA-Z0-9_-]*\):.*/\1/p' \
                        $(srcdir)/$(ME) $(_cfg_mk)))
 .PHONY: $(syntax-check-rules)
 
-local-checks-available = \
-  $(syntax-check-rules)
+ifeq ($(shell $(VC_LIST) >/dev/null 2>&1; echo $$?),0)
+local-checks-available += $(syntax-check-rules)
+else
+local-checks-available += no-vc-detected
+no-vc-detected:
+       @echo "No version control files detected; skipping syntax check"
+endif
 .PHONY: $(local-checks-available)
 
 # Arrange to print the name of each syntax-checking rule just before running 
it.
@@ -191,6 +198,16 @@ syntax-check: $(local-check)
 #  halt
 #
 #     Message to display before to halting execution.
+#
+# Finally, you may exempt files based on an ERE matching file names.
+# For example, to exempt from the sc_space_tab check all files with the
+# .diff suffix, set this Make variable:
+#
+# exclude_file_name_regexp--sc_space_tab = \.diff$
+#
+# Note that while this functionality is mostly inherited via VC_LIST_EXCEPT,
+# when filtering by name via in_files, we explicitly filter out matching
+# names here as well.
 
 # By default, _sc_search_regexp does not ignore case.
 export ignore_case =
@@ -228,7 +245,8 @@ define _sc_search_regexp
                                                                        \
    : Filter by file name;                                              \
    if test -n "$$in_files"; then                                       \
-     files=$$(find $(srcdir) | grep -E "$$in_files");                  \
+     files=$$(find $(srcdir) | grep -E "$$in_files"                    \
+              | grep -Ev '$(exclude_file_name_regexp--$@)');           \
    else                                                                        
\
      files=$$($(VC_LIST_EXCEPT));                                      \
      if test -n "$$in_vc_files"; then                                  \
@@ -292,10 +310,10 @@ sc_prohibit_atoi_atof:
 
 # Use STREQ rather than comparing strcmp == 0, or != 0.
 sc_prohibit_strcmp:
-       @grep -nE '! *str''cmp *\(|\<str''cmp *\([^)]+\) *=='           \
+       @grep -nE '! *str''cmp *\(|\<str''cmp *\(.+\) *[!=]='   \
            $$($(VC_LIST_EXCEPT))                                       \
-         | grep -vE ':# *define STREQ\(' &&                            \
-         { echo '$(ME): use STREQ in place of the above uses of str''cmp' \
+         | grep -vE ':# *define STRN?EQ\(' &&                          \
+         { echo '$(ME): replace str''cmp calls above with STREQ/STRNEQ' \
                1>&2; exit 1; } || :
 
 # Pass EXIT_*, not number, to usage, exit, and error (when exiting)
@@ -571,6 +589,13 @@ sc_prohibit_intprops_without_use:
        re='\<($(_intprops_syms_re)) *\('                               \
          $(_sc_header_without_use)
 
+_stddef_syms_re = NULL|offsetof|ptrdiff_t|size_t|wchar_t
+# Prohibit the inclusion of stddef.h without an actual use.
+sc_prohibit_stddef_without_use:
+       @h='<stddef.h>'                                                 \
+       re='\<($(_stddef_syms_re)) *\('                                 \
+         $(_sc_header_without_use)
+
 sc_obsolete_symbols:
        @prohibit='\<(HAVE''_FCNTL_H|O''_NDELAY)\>'                     \
        halt='do not use HAVE''_FCNTL_H or O'_NDELAY                    \
@@ -647,7 +672,7 @@ sc_two_space_separator_in_usage:
 sc_unmarked_diagnostics:
        @grep -nE                                                       \
            '\<error *\([^"]*"[^"]*[a-z]{3}' $$($(VC_LIST_EXCEPT))      \
-         | grep -v '_''(' &&                                           \
+         | grep -Ev '(_|ngettext ?)\(' &&                              \
          { echo '$(ME): found unmarked diagnostic(s)' 1>&2;            \
            exit 1; } || :
 
@@ -766,17 +791,22 @@ sc_prohibit_cvs_keyword:
 #   perl -ln -0777 -e '/\n(\n+)$/ and print "$ARGV: ".length $1' ...
 # but that would be far less efficient, reading the entire contents
 # of each file, rather than just the last two bytes of each.
+# In addition, while the code below detects both blank lines and a missing
+# newline at EOF, the above detects only the former.
 #
 # This is a perl script that is expected to be the single-quoted argument
 # to a command-line "-le".  The remaining arguments are file names.
-# Print the name of each file that ends in two or more newline bytes.
+# Print the name of each file that ends in exactly one newline byte.
+# I.e., warn if there are blank lines (2 or more newlines), or if the
+# last byte is not a newline.  However, currently we don't complain
+# about any file that contains exactly one byte.
 # Exit nonzero if at least one such file is found, otherwise, exit 0.
 # Warn about, but otherwise ignore open failure.  Ignore seek/read failure.
 #
 # Use this if you want to remove trailing empty lines from selected files:
 #   perl -pi -0777 -e 's/\n\n+$/\n/' files...
 #
-detect_empty_lines_at_EOF_ =                                           \
+require_exactly_one_NL_at_EOF_ =                                       \
   foreach my $$f (@ARGV)                                               \
     {                                                                  \
       open F, "<", $$f or (warn "failed to open $$f: $$!\n"), next;    \
@@ -786,12 +816,14 @@ detect_empty_lines_at_EOF_ =                              
                \
       defined $$p and $$p = sysread F, $$last_two_bytes, 2;            \
       close F;                                                         \
       $$c = "ignore read failure";                                     \
-      $$p && $$last_two_bytes eq "\n\n" and (print $$f), $$fail=1;     \
+      $$p && ($$last_two_bytes eq "\n\n"                               \
+              || substr ($$last_two_bytes,1) ne "\n")                  \
+          and (print $$f), $$fail=1;                                   \
     }                                                                  \
   END { exit defined $$fail }
 sc_prohibit_empty_lines_at_EOF:
-       @perl -le '$(detect_empty_lines_at_EOF_)' $$($(VC_LIST_EXCEPT)) \
-          || { echo '$(ME): the above files end with empty line(s)'     \
+       @perl -le '$(require_exactly_one_NL_at_EOF_)' $$($(VC_LIST_EXCEPT)) \
+          || { echo '$(ME): empty line(s) or no newline at EOF'        \
                1>&2; exit 1; } || :;                                   \
 
 # Make sure we don't use st_blocks.  Use ST_NBLOCKS instead.
@@ -923,13 +955,13 @@ fix_po_file_diag = \
 apply the above patch\n'
 
 # Verify that all source files using _() are listed in po/POTFILES.in.
-po_file = po/POTFILES.in
+po_file ?= $(srcdir)/po/POTFILES.in
 sc_po_check:
        @if test -f $(po_file); then                                    \
          grep -E -v '^(#|$$)' $(po_file)                               \
            | grep -v '^src/false\.c$$' | sort > address@hidden;                
        \
          files=;                                                       \
-         for file in $$($(VC_LIST_EXCEPT)) lib/*.[ch]; do              \
+         for file in $$($(VC_LIST_EXCEPT)) $(srcdir)/lib/*.[ch]; do    \
            test -r $$file || continue;                                 \
            case $$file in                                              \
              *.m4|*.mk) continue ;;                                    \
@@ -944,7 +976,7 @@ sc_po_check:
            files="$$files $$file";                                     \
          done;                                                         \
          grep -E -l '\b(N?_|gettext *)\([^)"]*("|$$)' $$files          \
-           | sort -u > address@hidden;                                         
\
+           | sed 's|^$(_dot_escaped_srcdir)/||' | sort -u > address@hidden;    
\
          diff -u -L $(po_file) -L $(po_file) address@hidden address@hidden     
                \
            || { printf '$(ME): '$(fix_po_file_diag) 1>&2; exit 1; };   \
          rm -f address@hidden address@hidden;                                  
        \
@@ -1118,9 +1150,34 @@ no-submodule-changes:
          : ;                                                           \
        fi
 
+submodule-checks ?= no-submodule-changes public-submodule-commit
+
+# Ensure that each sub-module commit we're using is public.
+# Without this, it is too easy to tag and release code that
+# cannot be built from a fresh clone.
+.PHONY: public-submodule-commit
+public-submodule-commit:
+       $(AM_V_GEN)if test -d $(srcdir)/.git; then                      \
+         cd $(srcdir) &&                                               \
+         git submodule --quiet foreach test '$$(git rev-parse $$sha1)' \
+             = '$$(git merge-base origin $$sha1)'                      \
+           || { echo '$(ME): found non-public submodule commit' >&2;   \
+                exit 1; };                                             \
+       else                                                            \
+         : ;                                                           \
+       fi
+# This rule has a high enough utility/cost ratio that it should be a
+# dependent of "check" by default.  However, some of us do occasionally
+# commit a temporary change that deliberately points to a non-public
+# submodule commit, and want to be able to use rules like "make check".
+# In that case, run e.g., "make check gl_public_submodule_commit="
+# to disable this test.
+gl_public_submodule_commit ?= public-submodule-commit
+check: $(gl_public_submodule_commit)
+
 .PHONY: alpha beta stable
 ALL_RECURSIVE_TARGETS += alpha beta stable
-alpha beta stable: $(local-check) writable-files no-submodule-changes
+alpha beta stable: $(local-check) writable-files $(submodule-checks)
        test $@ = stable                                                \
          && { echo $(VERSION) | grep -E '^[0-9]+(\.[0-9]+)+$$'         \
               || { echo "invalid version string: $(VERSION)" 1>&2; exit 1;};}\
diff --git a/po/LINGUAS b/po/LINGUAS
index 21ca06a..2bb3d4b 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1,5 +1,6 @@
 address@hidden
 address@hidden
+eo
 fi
 fr
 ga
diff --git a/po/eo.po.in b/po/eo.po.in
new file mode 100644
index 0000000..d8dd9cf
--- /dev/null
+++ b/po/eo.po.in
@@ -0,0 +1,317 @@
+# Esperanto translation.
+# Copyright (C) 2011 Free Software Foundation, Inc.
+# This file is distributed under the same license as the gss package.
+# Felipe Castro <address@hidden>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: gss 1.0.1\n"
+"Report-Msgid-Bugs-To: address@hidden"
+"POT-Creation-Date: 2010-05-20 15:38+0200\n"
+"PO-Revision-Date: 2011-03-13 13:15-0300\n"
+"Last-Translator: Felipe Castro <address@hidden>\n"
+"Language-Team: Esperanto <address@hidden>\n"
+"Language: eo\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: lib/meta.c:37
+msgid "Kerberos V5 GSS-API mechanism"
+msgstr "Mekanismo Kerberos V5 GSS-API"
+
+#: lib/error.c:37
+msgid "A required input parameter could not be read"
+msgstr "Bezonata eniga parametro ne povis esti legata"
+
+#: lib/error.c:39
+msgid "A required output parameter could not be written"
+msgstr "Bezonata eliga parametro ne povis esti skribata"
+
+#: lib/error.c:41
+msgid "A parameter was malformed"
+msgstr "Parametro estis misformata"
+
+#: lib/error.c:46
+msgid "An unsupported mechanism was requested"
+msgstr "Nesubtenata mekanismo estis petata"
+
+#: lib/error.c:48
+msgid "An invalid name was supplied"
+msgstr "Malvalida nomo estis donata"
+
+#: lib/error.c:50
+msgid "A supplied name was of an unsupported type"
+msgstr "Donata nomo estis el nesubtenata tipo"
+
+#: lib/error.c:52
+msgid "Incorrect channel bindings were supplied"
+msgstr "Malĝusta kanal-ligoj estis donataj"
+
+#: lib/error.c:54
+msgid "An invalid status code was supplied"
+msgstr "Malvalita stat-kodo estis donata"
+
+#: lib/error.c:56
+msgid "A token had an invalid MIC"
+msgstr "Ä´etono havis malvalidan MIC"
+
+#: lib/error.c:58
+msgid "No credentials were supplied, or the credentials were unavailable or 
inaccessible"
+msgstr "Neniu legitimilo estis donata, aŭ la legitimiloj estis nedisponeblaj 
aÅ­ neatingeblaj"
+
+#: lib/error.c:61
+msgid "No context has been established"
+msgstr "Neniu kunteksto estas starigita"
+
+#: lib/error.c:63
+msgid "A token was invalid"
+msgstr "Ä´etono estis malvalida"
+
+#: lib/error.c:65
+msgid "A credential was invalid"
+msgstr "Legitimilo estis malvalida"
+
+#: lib/error.c:67
+msgid "The referenced credentials have expired"
+msgstr "La referencitaj legitimiloj senvalidiĝis"
+
+#: lib/error.c:69
+msgid "The context has expired"
+msgstr "La kunteksto senvalidiĝis"
+
+#: lib/error.c:71
+msgid "Unspecified error in underlying mechanism"
+msgstr "Nespecifita eraro en implicita mekanismo"
+
+#: lib/error.c:73
+msgid "The quality-of-protection requested could not be provided"
+msgstr "La peto kvalito-de-protekto ne povis esti provizata"
+
+#: lib/error.c:75
+msgid "The operation is forbidden by local security policy"
+msgstr "La operacio estas malpermesata de loka sekurec-politiko"
+
+#: lib/error.c:77
+msgid "The operation or option is unavailable"
+msgstr "La operacio aÅ­ elekto ne estas disponebla"
+
+#: lib/error.c:79
+msgid "The requested credential element already exists"
+msgstr "La petita legitimila elemento jam ekzistas"
+
+#: lib/error.c:81
+msgid "The provided name was not a mechanism name"
+msgstr "La donita nomo ne estis mekanismo-nomo"
+
+#: lib/error.c:86
+msgid "The gss_init_sec_context() or gss_accept_sec_context() function must be 
called again to complete its function"
+msgstr "La funkcio gss_init_sec_context() aÅ­ gss_accept_sec_context() devas 
esti vokata refoje por plenumigi ĝian funkcion"
+
+#: lib/error.c:89
+msgid "The token was a duplicate of an earlier token"
+msgstr "La ĵetono estis ripetaĵo de pli frua ĵetono"
+
+#: lib/error.c:91
+msgid "The token's validity period has expired"
+msgstr "La valideca templimo de ĵetono finiĝis"
+
+#: lib/error.c:93
+msgid "A later token has already been processed"
+msgstr "Posta ĵetono jam estas procezita"
+
+#: lib/error.c:95
+msgid "An expected per-message token was not received"
+msgstr "Atendita po-mesaĝa ĵetono ne estis ricevata"
+
+#: lib/error.c:312
+msgid "No error"
+msgstr "Neniu eraro"
+
+#: lib/krb5/error.c:36
+msgid "No @ in SERVICE-NAME name string"
+msgstr "Neniu @ en nom-ĉeno SERVICE-NAME"
+
+#: lib/krb5/error.c:38
+msgid "STRING-UID-NAME contains nondigits"
+msgstr "STRING-UID-NAME enhavas ne-ciferojn"
+
+#: lib/krb5/error.c:40
+msgid "UID does not resolve to username"
+msgstr "UID ne solviĝas al uzantnomo"
+
+#: lib/krb5/error.c:42
+msgid "Validation error"
+msgstr "Validiga eraro"
+
+#: lib/krb5/error.c:44
+msgid "Couldn't allocate gss_buffer_t data"
+msgstr "Ni ne povis rezervi datumaron gss_buffer_t"
+
+#: lib/krb5/error.c:46
+msgid "Message context invalid"
+msgstr "Mesaĝo-kunteksto estas malvalida"
+
+#: lib/krb5/error.c:48
+msgid "Buffer is the wrong size"
+msgstr "Bufro havas malĝustan grandon"
+
+#: lib/krb5/error.c:50
+msgid "Credential usage type is unknown"
+msgstr "Legitimila uzad-tipo estas nekonata"
+
+#: lib/krb5/error.c:52
+msgid "Unknown quality of protection specified"
+msgstr "Nekonata kvalito de protekto estis indikata"
+
+#: lib/krb5/error.c:55
+msgid "Principal in credential cache does not match desired name"
+msgstr "Ĉefo en legitimila kaŝmemoro ne kongruas al dezirata nomo"
+
+#: lib/krb5/error.c:57
+msgid "No principal in keytab matches desired name"
+msgstr "Neniu ĉefo en keytab kongruas al dezirata nomo"
+
+#: lib/krb5/error.c:59
+msgid "Credential cache has no TGT"
+msgstr "Legitimila kaŝmemoro havas neniu TGT"
+
+#: lib/krb5/error.c:61
+msgid "Authenticator has no subkey"
+msgstr "AÅ­tentikanto havas neniun subkey"
+
+#: lib/krb5/error.c:63
+msgid "Context is already fully established"
+msgstr "Kunteksto jam estas plene starigita"
+
+#: lib/krb5/error.c:65
+msgid "Unknown signature type in token"
+msgstr "Nekonata subskriba tipo en ĵetono"
+
+#: lib/krb5/error.c:67
+msgid "Invalid field length in token"
+msgstr "Malvalida kampo-longo en ĵetono"
+
+#: lib/krb5/error.c:69
+msgid "Attempt to use incomplete security context"
+msgstr "Provo uzi malkompletan sekurecan kuntekston"
+
+#: lib/krb5/error.c:86
+msgid "No krb5 error"
+msgstr "Neniu eraro krb5"
+
+#: lib/krb5/error.c:127
+msgid "Unknown krb5 error"
+msgstr "Nekonata eraro krb5"
+
+#: src/gss.c:65
+#, c-format
+msgid "Try `%s --help' for more information.\n"
+msgstr "Provu '%s --help' por pli da informoj.\n"
+
+#: src/gss.c:69
+#, c-format
+msgid "Usage: %s OPTIONS...\n"
+msgstr "Uzado: %s ELEKTILOJ...\n"
+
+#: src/gss.c:72
+msgid ""
+"Command line interface to GSS, used to explain error codes.\n"
+"\n"
+msgstr ""
+"Komand-linia interfaco al GSS, uzata por klarigi erar-kodojn.\n"
+"\n"
+
+#: src/gss.c:76
+msgid "Mandatory arguments to long options are mandatory for short options 
too.\n"
+msgstr "Devigaj argumentoj por longaj elektiloj estas same devigaj por 
mallongaj.\n"
+
+#: src/gss.c:79
+msgid ""
+"  -h, --help        Print help and exit.\n"
+"  -V, --version     Print version and exit.\n"
+"  -l, --list-mechanisms\n"
+"                    List information about supported mechanisms\n"
+"                    in a human readable format.\n"
+"  -m, --major=LONG  Describe a `major status' error code value.\n"
+msgstr ""
+"  -h, --help        Montri tiun ĉi helpon kaj eliri.\n"
+"  -V, --version     Montri version kaj eliri.\n"
+"  -l, --list-mechanisms\n"
+"                    Listigi informon pri subtenataj mekanismoj\n"
+"                    laŭ hom-legebla formo.\n"
+"  -m, --major=LONG  Priskribi 'plejgrav-statan' erar-kodan valoron.\n"
+
+#: src/gss.c:87
+msgid "  -q, --quiet       Silent operation (default=off).\n"
+msgstr "  -q, --quiet       Silenta funkciado (apriore=ne).\n"
+
+#: src/gss.c:106
+#, c-format
+msgid ""
+"GSS-API major status code %ld (0x%lx).\n"
+"\n"
+msgstr ""
+"GSS-API plejgrava stat-kodo %ld (0x%lx).\n"
+"\n"
+
+#: src/gss.c:109
+#, c-format
+msgid ""
+"   MSB                                                                 LSB\n"
+"   +-----------------+-----------------+---------------------------------+\n"
+"   |  Calling Error  |  Routine Error  |       Supplementary Info        |\n"
+"   | "
+msgstr ""
+"   MSB                                                                 LSB\n"
+"   +-----------------+-----------------+---------------------------------+\n"
+"   |    Vok-Eraro    |  Procedur-Eraro |          Kroma Informo          |\n"
+"   | "
+
+#: src/gss.c:123
+#, c-format
+msgid ""
+"|\n"
+"   +-----------------+-----------------+---------------------------------+\n"
+"Bit 31            24  23            16  15                             0\n"
+"\n"
+msgstr ""
+"|\n"
+"   +-----------------+-----------------+---------------------------------+\n"
+"Bito 31           24  23            16  15                             0\n"
+"\n"
+
+#: src/gss.c:133
+#, c-format
+msgid "Masked routine error %ld (0x%lx) shifted into %ld (0x%lx):\n"
+msgstr "Maskita procedura eraro %ld (0x%lx) ŝoviĝis al %ld (0x%lx):\n"
+
+#: src/gss.c:150 src/gss.c:184 src/gss.c:221
+#, c-format
+msgid "displaying status code failed (%d)"
+msgstr "montrigo de stat-kodo malsukcesis (%d)"
+
+#: src/gss.c:170
+#, c-format
+msgid "Masked calling error %ld (0x%lx) shifted into %ld (0x%lx):\n"
+msgstr "Maskita vok-eraro %ld (0x%lx) ŝoviĝis al %ld (0x%lx):\n"
+
+#: src/gss.c:203
+#, c-format
+msgid "Masked supplementary info %ld (0x%lx) shifted into %ld (0x%lx):\n"
+msgstr "Maskita kroma informo %ld (0x%lx) ŝoviĝis al %ld (0x%lx):\n"
+
+#: src/gss.c:238
+#, c-format
+msgid "No error\n"
+msgstr "Neniu eraro\n"
+
+#: src/gss.c:256
+#, c-format
+msgid "indicating mechanisms failed (%d)"
+msgstr "indikado de mekanismoj malsukcesis (%d)"
+
+#: src/gss.c:271
+#, c-format
+msgid "inquiring information about mechanism failed (%d)"
+msgstr "petado de informo pri mekanismo malsukcesis (%d)"
diff --git a/po/fi.po.in b/po/fi.po.in
index 7406142..165895f 100644
--- a/po/fi.po.in
+++ b/po/fi.po.in
@@ -6,10 +6,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gss 0.1.5\n"
-"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2010-03-22 10:38+0100\n"
-"PO-Revision-Date: 2010-03-25 11:19+0200\n"
+"Project-Id-Version: gss 1.0.1\n"
+"Report-Msgid-Bugs-To: address@hidden"
+"POT-Creation-Date: 2010-05-20 15:38+0200\n"
+"PO-Revision-Date: 2010-11-16 17:15+0200\n"
 "Last-Translator: Jorma Karvonen <address@hidden>\n"
 "Language-Team: Finnish <address@hidden>\n"
 "MIME-Version: 1.0\n"
@@ -17,207 +17,207 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: lib/meta.c:43
+#: lib/meta.c:37
 msgid "Kerberos V5 GSS-API mechanism"
 msgstr "Kerberos V5 GSS-API -mekanismi"
 
-#: lib/error.c:43
+#: lib/error.c:37
 msgid "A required input parameter could not be read"
 msgstr "Vaadittua syöteparametriä ei voitu lukea"
 
-#: lib/error.c:45
+#: lib/error.c:39
 msgid "A required output parameter could not be written"
 msgstr "Vaadittua tulosteparametriä ei voitu kirjoittaa"
 
-#: lib/error.c:47
+#: lib/error.c:41
 msgid "A parameter was malformed"
 msgstr "Parametri on väärän muotoinen"
 
-#: lib/error.c:52
+#: lib/error.c:46
 msgid "An unsupported mechanism was requested"
 msgstr "Kutsuttiin tukematonta mekanismia"
 
-#: lib/error.c:54
+#: lib/error.c:48
 msgid "An invalid name was supplied"
 msgstr "Toimitettiin virheellinen nimi"
 
-#: lib/error.c:56
+#: lib/error.c:50
 msgid "A supplied name was of an unsupported type"
 msgstr "Toimitettu nimi oli tyyppiä, jota ei tueta"
 
-#: lib/error.c:58
+#: lib/error.c:52
 msgid "Incorrect channel bindings were supplied"
 msgstr "Toimitettiin virheellisiä kanavasidoksia"
 
-#: lib/error.c:60
+#: lib/error.c:54
 msgid "An invalid status code was supplied"
 msgstr "Toimitettiin virheellinen tilakoodi"
 
-#: lib/error.c:62
+#: lib/error.c:56
 msgid "A token had an invalid MIC"
 msgstr "Merkkijonolla oli virheellinen MIC"
 
-#: lib/error.c:64
+#: lib/error.c:58
 msgid "No credentials were supplied, or the credentials were unavailable or 
inaccessible"
 msgstr "Valtuustietoja ei toimitettu, tai valtuustiedot eivät olleet 
käytettävissä tai saatavilla"
 
-#: lib/error.c:67
+#: lib/error.c:61
 msgid "No context has been established"
 msgstr "Konteksia ei ole perustettu"
 
-#: lib/error.c:69
+#: lib/error.c:63
 msgid "A token was invalid"
 msgstr "Merkkijono oli virheellinen"
 
-#: lib/error.c:71
+#: lib/error.c:65
 msgid "A credential was invalid"
 msgstr "Valtuustieto oli virheellinen"
 
-#: lib/error.c:73
+#: lib/error.c:67
 msgid "The referenced credentials have expired"
 msgstr "Viitevaltuustiedot ovat vanhentuneet"
 
-#: lib/error.c:75
+#: lib/error.c:69
 msgid "The context has expired"
 msgstr "Konteksi on vanhentunut"
 
-#: lib/error.c:77
+#: lib/error.c:71
 msgid "Unspecified error in underlying mechanism"
 msgstr "Määrittelemätön virhe alla olevassa mekanismissa"
 
-#: lib/error.c:79
+#: lib/error.c:73
 msgid "The quality-of-protection requested could not be provided"
 msgstr "Ei voitu tarjota turvatasopyyntöä"
 
-#: lib/error.c:81
+#: lib/error.c:75
 msgid "The operation is forbidden by local security policy"
 msgstr "Paikallinen turvakäytäntö on kieltänyt toiminnon"
 
-#: lib/error.c:83
+#: lib/error.c:77
 msgid "The operation or option is unavailable"
 msgstr "Toiminto tai valitsin ei ole saatavilla"
 
-#: lib/error.c:85
+#: lib/error.c:79
 msgid "The requested credential element already exists"
 msgstr "Pyydetty valtuustietoelementti on jo olemassa"
 
-#: lib/error.c:87
+#: lib/error.c:81
 msgid "The provided name was not a mechanism name"
 msgstr "Toimitettu nimi ei ollut mekanisminimi"
 
-#: lib/error.c:92
+#: lib/error.c:86
 msgid "The gss_init_sec_context() or gss_accept_sec_context() function must be 
called again to complete its function"
 msgstr "Funktio gss_init_sec_context() tai funktio gss_accept_sec_context() on 
kutsuttava uudelleen funktion saamiseksi valmiiksi"
 
-#: lib/error.c:95
+#: lib/error.c:89
 msgid "The token was a duplicate of an earlier token"
 msgstr "Merkkijono oli aikaisemman merkkijonon kaksoiskappale"
 
-#: lib/error.c:97
+#: lib/error.c:91
 msgid "The token's validity period has expired"
 msgstr "Merkkijonon kelpoisuuskausi on vanhentunut"
 
-#: lib/error.c:99
+#: lib/error.c:93
 msgid "A later token has already been processed"
 msgstr "Jälkimmäinen merkkijono on jo prosessoitu"
 
-#: lib/error.c:101
+#: lib/error.c:95
 msgid "An expected per-message token was not received"
 msgstr "Odotettua merkkijonokohtaista viestiä ei ole vastaanotettu"
 
-#: lib/error.c:318
+#: lib/error.c:312
 msgid "No error"
 msgstr "Ei virhettä"
 
-#: lib/krb5/error.c:42
+#: lib/krb5/error.c:36
 msgid "No @ in SERVICE-NAME name string"
 msgstr "Ei @-merkkiä PALVELU-NIMI-nimimerkkijonossa"
 
-#: lib/krb5/error.c:44
+#: lib/krb5/error.c:38
 msgid "STRING-UID-NAME contains nondigits"
 msgstr "MERKKIJONO-UID-NIMI-merkkijono sisältää muutakin kuin numeroita"
 
-#: lib/krb5/error.c:46
+#: lib/krb5/error.c:40
 msgid "UID does not resolve to username"
 msgstr "UID ei ratkaise käyttäjänimeä"
 
-#: lib/krb5/error.c:48
+#: lib/krb5/error.c:42
 msgid "Validation error"
 msgstr "Kelpuutusvirhe"
 
-#: lib/krb5/error.c:50
+#: lib/krb5/error.c:44
 msgid "Couldn't allocate gss_buffer_t data"
 msgstr "Ei voitu varata gss_buffer_t-dataa"
 
-#: lib/krb5/error.c:52
+#: lib/krb5/error.c:46
 msgid "Message context invalid"
 msgstr "Viestikonteksi on virheellinen"
 
-#: lib/krb5/error.c:54
+#: lib/krb5/error.c:48
 msgid "Buffer is the wrong size"
 msgstr "Puskuri on väärän kokoinen"
 
-#: lib/krb5/error.c:56
+#: lib/krb5/error.c:50
 msgid "Credential usage type is unknown"
 msgstr "Valtuustiedon käyttötyyppi on tuntematon"
 
-#: lib/krb5/error.c:58
+#: lib/krb5/error.c:52
 msgid "Unknown quality of protection specified"
 msgstr "Tuntematon suojelutaso määritelty"
 
 #  security principal on entiteetti, joka on todennettu
-#: lib/krb5/error.c:61
+#: lib/krb5/error.c:55
 msgid "Principal in credential cache does not match desired name"
 msgstr "Todennettu entiteetti valtuustietovälimuistissa ei täsmännyt 
halutun nimen kanssa"
 
-#: lib/krb5/error.c:63
+#: lib/krb5/error.c:57
 msgid "No principal in keytab matches desired name"
 msgstr "Yksikään todennettu entiteetti keytab-tiedostossa ei täsmännyt 
halutun nimen kanssa"
 
 #  TGT = Ticket-Granting Ticket on sanoma B, jonka todennuspalvelin 
lähettää asiakkaalle client authentication -menettelyssä.
-#: lib/krb5/error.c:65
+#: lib/krb5/error.c:59
 msgid "Credential cache has no TGT"
 msgstr "Valtuustietovälimuistissa ei ole Ticket-Granting Ticket-sanomaa 
todennuspalvelimelta"
 
-#: lib/krb5/error.c:67
+#: lib/krb5/error.c:61
 msgid "Authenticator has no subkey"
 msgstr "Todentajalla ei ole aliavainta"
 
-#: lib/krb5/error.c:69
+#: lib/krb5/error.c:63
 msgid "Context is already fully established"
 msgstr "Konteksi on jo täysin perustettu"
 
-#: lib/krb5/error.c:71
+#: lib/krb5/error.c:65
 msgid "Unknown signature type in token"
 msgstr "Tuntematon allekirjoitustyyppi merkkijonossa"
 
-#: lib/krb5/error.c:73
+#: lib/krb5/error.c:67
 msgid "Invalid field length in token"
 msgstr "Virheellinen kenttäpituus merkkijonossa"
 
-#: lib/krb5/error.c:75
+#: lib/krb5/error.c:69
 msgid "Attempt to use incomplete security context"
 msgstr "Yritys käyttää vaillinaista turvakonteksia"
 
-#: lib/krb5/error.c:92
+#: lib/krb5/error.c:86
 msgid "No krb5 error"
 msgstr "Ei krb5-virhettä"
 
-#: lib/krb5/error.c:133
+#: lib/krb5/error.c:127
 msgid "Unknown krb5 error"
 msgstr "Tuntematon krb5-virhe"
 
-#: src/gss.c:64
+#: src/gss.c:65
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Lisätietoja ”%s --help”-komennolla.\n"
 
-#: src/gss.c:68
+#: src/gss.c:69
 #, c-format
 msgid "Usage: %s OPTIONS...\n"
 msgstr "Käyttö: %s VALITSIMET...\n"
 
-#: src/gss.c:71
+#: src/gss.c:72
 msgid ""
 "Command line interface to GSS, used to explain error codes.\n"
 "\n"
@@ -225,23 +225,31 @@ msgstr ""
 "Komentorivirajapinta GSS:ään, käytetty selittämään virhekoodeja.\n"
 "\n"
 
-#: src/gss.c:75
+#: src/gss.c:76
 msgid "Mandatory arguments to long options are mandatory for short options 
too.\n"
 msgstr "Pakolliset argumentit pitkille valitsimille ovat pakollisia myös 
lyhyille valitsimille.\n"
 
-#: src/gss.c:78
+#: src/gss.c:79
 msgid ""
-"  -h, --help        Print help and exit\n"
-"  -V, --version     Print version and exit\n"
-"  -m, --major=LONG  Describe a `major status' error code vaue in plain 
text.\n"
-"  -q, --quiet       Silent operation  (default=off)\n"
+"  -h, --help        Print help and exit.\n"
+"  -V, --version     Print version and exit.\n"
+"  -l, --list-mechanisms\n"
+"                    List information about supported mechanisms\n"
+"                    in a human readable format.\n"
+"  -m, --major=LONG  Describe a `major status' error code value.\n"
 msgstr ""
-"  -h, --help        Tulosta opaste ja poistu\n"
-"  -V, --version     Tulosta versio ja poistu\n"
-"  -m, --major=LONG  Kuvaile `päätila'-virhekoodiarvo pelkkänä 
tekstinä.\n"
-"  -q, --quiet       Hiljainen toiminta  (oletus=ei ole käytössä)\n"
-
-#: src/gss.c:119
+"  -h, --help        Tulosta opaste ja poistu.\n"
+"  -V, --version     Tulosta versio ja poistu.\n"
+"  -l, --list-mechanisms\n"
+"                    Luettelotiedot tuetuista mekanismeista\n"
+"                    ihmisluettavassa muodossa.\n"
+"  -m, --major=LONG  Kuvaa ”major status”-virhekoodiarvo.\n"
+
+#: src/gss.c:87
+msgid "  -q, --quiet       Silent operation (default=off).\n"
+msgstr "  -q, --quiet       Hiljainen toiminta  (oletus=pois käytöstä).\n"
+
+#: src/gss.c:106
 #, c-format
 msgid ""
 "GSS-API major status code %ld (0x%lx).\n"
@@ -250,7 +258,7 @@ msgstr ""
 "GSS-API major-tilakoodi %ld (0x%lx).\n"
 "\n"
 
-#: src/gss.c:122
+#: src/gss.c:109
 #, c-format
 msgid ""
 "   MSB                                                                 LSB\n"
@@ -263,7 +271,7 @@ msgstr ""
 "     |  Kutsuvirhe     |  Rutiinivirhe   |       Lisätietoja               
|\n"
 "     | "
 
-#: src/gss.c:136
+#: src/gss.c:123
 #, c-format
 msgid ""
 "|\n"
@@ -276,31 +284,52 @@ msgstr ""
 "Bitti 31            24  23            16  15                             0\n"
 "\n"
 
-#: src/gss.c:146
+#: src/gss.c:133
 #, c-format
 msgid "Masked routine error %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Peitetty rutiinivirhe %ld (0x%lx) on siirretty kohteeseen %ld 
(0x%lx):\n"
 
-#: src/gss.c:163 src/gss.c:198 src/gss.c:236
+#: src/gss.c:150 src/gss.c:184 src/gss.c:221
 #, c-format
-msgid "%s: displaying status code failed\n"
-msgstr "%s: tilakoodin näyttäminen epäonnistui\n"
+msgid "displaying status code failed (%d)"
+msgstr "tilakoodin näyttäminen epäonnistui (%d)"
 
-#: src/gss.c:184
+#: src/gss.c:170
 #, c-format
 msgid "Masked calling error %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Peitetty kutsuvirhe %ld (0x%lx) on siirretty kohteeseen %ld (0x%lx):\n"
 
-#: src/gss.c:218
+#: src/gss.c:203
 #, c-format
 msgid "Masked supplementary info %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Peitetty lisätieto %ld (0x%lx) on siirretty kohteeseen %ld (0x%lx):\n"
 
-#: src/gss.c:254
+#: src/gss.c:238
 #, c-format
 msgid "No error\n"
 msgstr "Ei virhettä\n"
 
+#: src/gss.c:256
+#, c-format
+msgid "indicating mechanisms failed (%d)"
+msgstr "osoitusmekanismi epäonnistui (%d)"
+
+#: src/gss.c:271
+#, c-format
+msgid "inquiring information about mechanism failed (%d)"
+msgstr "tietojen kysyminen mekanismista epäonnistui (%d)"
+
+#~ msgid ""
+#~ "  -h, --help        Print help and exit\n"
+#~ "  -V, --version     Print version and exit\n"
+#~ "  -m, --major=LONG  Describe a `major status' error code vaue in plain 
text.\n"
+#~ "  -q, --quiet       Silent operation  (default=off)\n"
+#~ msgstr ""
+#~ "  -h, --help        Tulosta opaste ja poistu\n"
+#~ "  -V, --version     Tulosta versio ja poistu\n"
+#~ "  -m, --major=LONG  Kuvaile `päätila'-virhekoodiarvo pelkkänä 
tekstinä.\n"
+#~ "  -q, --quiet       Hiljainen toiminta  (oletus=ei ole käytössä)\n"
+
 #~ msgid "%s: missing parameter\n"
 #~ msgstr "%s: parametri puuttuu\n"
 
@@ -319,9 +348,6 @@ msgstr "Ei virhettä\n"
 #~ msgid "  -m, --major=LONG  Describe a `major status' error code value in 
plain text."
 #~ msgstr "  -m, --major=LONG  Kuvaile ”major status”-virhekoodiarvo 
selväkielisenä tekstinä."
 
-#~ msgid "  -q, --quiet       Silent operation  (default=off)"
-#~ msgstr "  -q, --quiet       Hiljainen toiminta  (oletus=pois käytöstä)"
-
 #~ msgid "%s: cannot open file for writing: %s\n"
 #~ msgstr "%s: ei voida avata tiedosto kirjoittamista varten: %s\n"
 
diff --git a/po/fr.po.in b/po/fr.po.in
index 1976605..e178f50 100644
--- a/po/fr.po.in
+++ b/po/fr.po.in
@@ -1,217 +1,254 @@
 # Messages français pour GNU gss.
-# Copyright © 2004 Free Software Foundation, Inc.
-# Copyright (C) YEAR Simon Josefsson
-# This file is distributed under the same license as the PACKAGE package.
+# Copyright © 2010 Free Software Foundation, Inc.
+# Copyright (C) 2010 Simon Josefsson
+# This file is distributed under the same license as the gss package.
 # Michel Robitaille <address@hidden>, traducteur depuis/since 1996.
+# Nicolas Provost <address@hidden>, 2010.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: GNU gss 0.0.11\n"
-"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2004-04-18 17:16+0200\n"
-"PO-Revision-Date: 2004-04-21 08:00-0500\n"
-"Last-Translator: Michel Robitaille <address@hidden>\n"
+"Project-Id-Version: GNU gss 1.0.1\n"
+"Report-Msgid-Bugs-To: address@hidden"
+"POT-Creation-Date: 2010-05-20 15:38+0200\n"
+"PO-Revision-Date: 2010-12-21 10:59+0100\n"
+"Last-Translator: Nicolas Provost <address@hidden>\n"
 "Language-Team: French <address@hidden>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
-"Content-Transfer-Encoding: 8-bit\n"
+"Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
-#: lib/error.c:33
+#: lib/meta.c:37
+msgid "Kerberos V5 GSS-API mechanism"
+msgstr "Mécanisme Kerberos V5 GSS-API"
+
+#: lib/error.c:37
 msgid "A required input parameter could not be read"
 msgstr "Un paramètre requis à l'entrée n'a pas pu être lu"
 
-#: lib/error.c:35
+#: lib/error.c:39
 msgid "A required output parameter could not be written"
 msgstr "Un paramètre requis à la sortie n'a pas pu être écrit"
 
-#: lib/error.c:37
+#: lib/error.c:41
 msgid "A parameter was malformed"
-msgstr "Un paramètre était mal composé"
+msgstr "Un paramètre était mal formé"
 
-#: lib/error.c:42
+#: lib/error.c:46
 msgid "An unsupported mechanism was requested"
 msgstr "Un mécanisme non supporté était requis"
 
-#: lib/error.c:44
+#: lib/error.c:48
 msgid "An invalid name was supplied"
 msgstr "Un nom invalide a été fourni"
 
-#: lib/error.c:46
+#: lib/error.c:50
 msgid "A supplied name was of an unsupported type"
 msgstr "Un nom fourni était de type non supporté"
 
-#: lib/error.c:48
+#: lib/error.c:52
 msgid "Incorrect channel bindings were supplied"
-msgstr "La liaison incorrect de canal a été fournie"
+msgstr "Une liaison incorrecte de canal a été fournie"
 
-#: lib/error.c:50
+#: lib/error.c:54
 msgid "An invalid status code was supplied"
 msgstr "Un code d'état invalide a été fourni"
 
-#: lib/error.c:52
+#: lib/error.c:56
 msgid "A token had an invalid MIC"
 msgstr "Un jeton a un MIC invalide"
 
-#: lib/error.c:54
+#: lib/error.c:58
 msgid "No credentials were supplied, or the credentials were unavailable or 
inaccessible"
 msgstr "Aucune référence n'a été fournie ou les références n'étaient pas 
disponibles ou inaccessibles"
 
-#: lib/error.c:57
+#: lib/error.c:61
 msgid "No context has been established"
 msgstr "Aucun contexte n'a été établi"
 
-#: lib/error.c:59
+#: lib/error.c:63
 msgid "A token was invalid"
-msgstr "Une jeton était invalide"
+msgstr "Un jeton était invalide"
 
-#: lib/error.c:61
+#: lib/error.c:65
 msgid "A credential was invalid"
 msgstr "Une référence était invalide"
 
-#: lib/error.c:63
+#: lib/error.c:67
 msgid "The referenced credentials have expired"
 msgstr "Les références fournies ont expirées"
 
-#: lib/error.c:65
+#: lib/error.c:69
 msgid "The context has expired"
 msgstr "Le contexte a expiré"
 
-#: lib/error.c:67
+#: lib/error.c:71
 msgid "Unspecified error in underlying mechanism"
-msgstr "Une erreur non spécifiée dans le mécanisme sous-jacent"
+msgstr "Erreur non spécifiée dans le mécanisme sous-jacent"
 
-#: lib/error.c:69
+#: lib/error.c:73
 msgid "The quality-of-protection requested could not be provided"
 msgstr "La qualité de protection requise ne peut être fournie"
 
-#: lib/error.c:71
+#: lib/error.c:75
 msgid "The operation is forbidden by local security policy"
 msgstr "L'opération est interdite par la politique locale de sécurité"
 
-#: lib/error.c:73
+#: lib/error.c:77
 msgid "The operation or option is unavailable"
 msgstr "L'opération ou l'option n'est pas disponible"
 
-#: lib/error.c:75
+#: lib/error.c:79
 msgid "The requested credential element already exists"
 msgstr "L'élément de référence requis existe déjà"
 
-#: lib/error.c:77
+#: lib/error.c:81
 msgid "The provided name was not a mechanism name"
 msgstr "Le nom fourni n'est pas un nom de mécanisme"
 
-#: lib/error.c:82
+#: lib/error.c:86
 msgid "The gss_init_sec_context() or gss_accept_sec_context() function must be 
called again to complete its function"
 msgstr "La fonction gss_init_sec_context() ou gss_accept_sec_context() doit 
être appellée à nous pour compléter la fonction"
 
-#: lib/error.c:85
+#: lib/error.c:89
 msgid "The token was a duplicate of an earlier token"
 msgstr "Le jeton est le duplicata d'un jeton précédent"
 
-#: lib/error.c:87
+#: lib/error.c:91
 msgid "The token's validity period has expired"
 msgstr "La période de validité du jeton a expiré"
 
-#: lib/error.c:89
+#: lib/error.c:93
 msgid "A later token has already been processed"
 msgstr "Un jeton antérieur a déjà été traité"
 
-#: lib/error.c:91
+#: lib/error.c:95
 msgid "An expected per-message token was not received"
 msgstr "Un jeton attendu par message n'a pas été reçu"
 
-#: lib/error.c:288
+#: lib/error.c:312
 msgid "No error"
 msgstr "Aucune erreur"
 
-#: lib/krb5/error.c:34
+#: lib/krb5/error.c:36
 msgid "No @ in SERVICE-NAME name string"
 msgstr "Aucun @ dans la chaîne du nom SERVICE-NAME"
 
-#: lib/krb5/error.c:36
+#: lib/krb5/error.c:38
 msgid "STRING-UID-NAME contains nondigits"
 msgstr "STRING-UID-NAME ne contient aucun chiffre"
 
-#: lib/krb5/error.c:38
+#: lib/krb5/error.c:40
 msgid "UID does not resolve to username"
 msgstr "UID ne peut permettre d'identifier le nom d'usager"
 
-#: lib/krb5/error.c:40
+#: lib/krb5/error.c:42
 msgid "Validation error"
-msgstr "ERREUR de validation"
+msgstr "Erreur de validation"
 
-#: lib/krb5/error.c:42
+#: lib/krb5/error.c:44
 msgid "Couldn't allocate gss_buffer_t data"
-msgstr "Ne peut allouer le tampon de données gss_buffer_t"
+msgstr "Impossible d'allouer le tampon de données gss_buffer_t"
 
-#: lib/krb5/error.c:44
+#: lib/krb5/error.c:46
 msgid "Message context invalid"
-msgstr "Contxte de message invalide"
+msgstr "Message de contexte non valide"
 
-#: lib/krb5/error.c:46
+#: lib/krb5/error.c:48
 msgid "Buffer is the wrong size"
 msgstr "Le tampon est de taille erronée"
 
-#: lib/krb5/error.c:48
+#: lib/krb5/error.c:50
 msgid "Credential usage type is unknown"
 msgstr "L'usage du type de référence est inconnu"
 
-#: lib/krb5/error.c:50
+#: lib/krb5/error.c:52
 msgid "Unknown quality of protection specified"
 msgstr "La qualité de protection spécifiée est inconnue"
 
-#: lib/krb5/error.c:53
+#: lib/krb5/error.c:55
 msgid "Principal in credential cache does not match desired name"
-msgstr "L'info principale dans la cache des références ne concorde pas avec le 
nom recherché"
+msgstr "Le nom principal dans le cache des références ne concorde pas avec le 
nom recherché"
 
-#: lib/krb5/error.c:55
+#: lib/krb5/error.c:57
 msgid "No principal in keytab matches desired name"
-msgstr "Pas d'info principale dans la table des clés concorde avec le nom 
recherché"
+msgstr "Aucun nom principal dans la table des clés ne concorde avec le nom 
recherché"
 
-#: lib/krb5/error.c:57
+#: lib/krb5/error.c:59
 msgid "Credential cache has no TGT"
-msgstr "La cache des référence n'a pas de TGT"
+msgstr "La cache des références n'a pas de TGT"
 
-#: lib/krb5/error.c:59
+#: lib/krb5/error.c:61
 msgid "Authenticator has no subkey"
 msgstr "L'authentificateur n'a pas de sous-clé"
 
-#: lib/krb5/error.c:61
+#: lib/krb5/error.c:63
 msgid "Context is already fully established"
 msgstr "Le contexte est déjà complètement établi"
 
-#: lib/krb5/error.c:63
+#: lib/krb5/error.c:65
 msgid "Unknown signature type in token"
 msgstr "Type de signature inconnu dans le jeton"
 
-#: lib/krb5/error.c:65
+#: lib/krb5/error.c:67
 msgid "Invalid field length in token"
 msgstr "Longueur invalide du champ dans le jeton"
 
-#: lib/krb5/error.c:67
+#: lib/krb5/error.c:69
 msgid "Attempt to use incomplete security context"
 msgstr "Tentative d'utilisation d'un contexte incomplet de sécurité"
 
-#: lib/krb5/error.c:84
+#: lib/krb5/error.c:86
 msgid "No krb5 error"
 msgstr "Pas d'erreur KRB5"
 
-#: lib/krb5/error.c:113
+#: lib/krb5/error.c:127
 msgid "Unknown krb5 error"
-msgstr "ERREUR KRB5 inconnue"
-
-#: src/gss.c:64
-#, c-format
-msgid "%s: missing parameter\n"
-msgstr "%s: paramètre manquant\n"
+msgstr "Erreur KRB5 inconnue"
 
 #: src/gss.c:65
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Essayer `%s --help' pour plus d'information.\n"
 
+#: src/gss.c:69
+#, c-format
+msgid "Usage: %s OPTIONS...\n"
+msgstr "Usage : %s OPTIONS...\n"
+
 #: src/gss.c:72
+msgid ""
+"Command line interface to GSS, used to explain error codes.\n"
+"\n"
+msgstr ""
+"Interface en ligne de commande GSS, pour détailler les codes d'erreur.\n"
+"\n"
+
+#: src/gss.c:76
+msgid "Mandatory arguments to long options are mandatory for short options 
too.\n"
+msgstr "Les arguments obligatoires des options longues le sont aussi pour les 
courtes.\n"
+
+#: src/gss.c:79
+msgid ""
+"  -h, --help        Print help and exit.\n"
+"  -V, --version     Print version and exit.\n"
+"  -l, --list-mechanisms\n"
+"                    List information about supported mechanisms\n"
+"                    in a human readable format.\n"
+"  -m, --major=LONG  Describe a `major status' error code value.\n"
+msgstr ""
+"  -h, --help        Affiche l'aide et quitte.\n"
+"  -V, --version     Affiche la version et quitte.\n"
+"  -l, --list-mechanisms\n"
+"                    Liste des infos sur les mécanismes disponibles\n"
+"                    dans un format humainement compréhensible.\n"
+"  -m, --major=LONG  Décrit un code d'erreur d'état principal.\n"
+
+#: src/gss.c:87
+msgid "  -q, --quiet       Silent operation (default=off).\n"
+msgstr "  -q, --quiet       Opère en silence (non par défaut).\n"
+
+#: src/gss.c:106
 #, c-format
 msgid ""
 "GSS-API major status code %ld (0x%lx).\n"
@@ -220,7 +257,7 @@ msgstr ""
 "GSS-API code majeur d'état %ld (0x%lx).\n"
 "\n"
 
-#: src/gss.c:75
+#: src/gss.c:109
 #, c-format
 msgid ""
 "   MSB                                                                 LSB\n"
@@ -230,10 +267,10 @@ msgid ""
 msgstr ""
 "   MSB                                                                 LSB\n"
 "   +-----------------+-----------------+---------------------------------+\n"
-"   | Erreur d'appel  |Routine en erreur|       Infos supplémentaires     |\n"
+"   | Erreur appel    |Routine erreur|     Infos supplémentaires     |\n"
 "   | "
 
-#: src/gss.c:89
+#: src/gss.c:123
 #, c-format
 msgid ""
 "|\n"
@@ -246,27 +283,40 @@ msgstr ""
 "Bit 31            24  23            16  15                             0\n"
 "\n"
 
-#: src/gss.c:99
+#: src/gss.c:133
 #, c-format
 msgid "Masked routine error %ld (0x%lx) shifted into %ld (0x%lx):\n"
-msgstr "Masque de routine en erreur %ld (0x%lx) décalé dans %ld *(0x%lx):\n"
+msgstr "Erreur routine masquée %ld (0x%lx) décalé dans %ld (0x%lx):\n"
 
-#: src/gss.c:116 src/gss.c:151 src/gss.c:189
+#: src/gss.c:150 src/gss.c:184 src/gss.c:221
 #, c-format
-msgid "%s: displaying status code failed\n"
-msgstr "%s: échec d'affichage du code d'état\n"
+msgid "displaying status code failed (%d)"
+msgstr "échec d'affichage du code d'état (%d)"
 
-#: src/gss.c:137
+#: src/gss.c:170
 #, c-format
 msgid "Masked calling error %ld (0x%lx) shifted into %ld (0x%lx):\n"
-msgstr "Masque d'erreur d'appel %ld (0x%lx) décalé dans %ld *(0x%lx):\n"
+msgstr "Erreur d'appel masquée %ld (0x%lx) décalé dans %ld (0x%lx):\n"
 
-#: src/gss.c:171
+#: src/gss.c:203
 #, c-format
 msgid "Masked supplementary info %ld (0x%lx) shifted into %ld (0x%lx):\n"
-msgstr "Masque des infos supplémentaires %ld (0x%lx) décalé dans %ld 
*(0x%lx):\n"
+msgstr "Infos supplémentaires masquées %ld (0x%lx) décalé dans %ld (0x%lx):\n"
 
-#: src/gss.c:207
+#: src/gss.c:238
 #, c-format
 msgid "No error\n"
 msgstr "Aucune erreur\n"
+
+#: src/gss.c:256
+#, c-format
+msgid "indicating mechanisms failed (%d)"
+msgstr "échec de récupération des mécanismes (%d)"
+
+#: src/gss.c:271
+#, c-format
+msgid "inquiring information about mechanism failed (%d)"
+msgstr "impossible d'obtenir des informations sur le mécanisme (%d)"
+
+#~ msgid "%s: missing parameter\n"
+#~ msgstr "%s: paramètre manquant\n"
diff --git a/po/it.po.in b/po/it.po.in
index bc46fba..691e8c8 100644
--- a/po/it.po.in
+++ b/po/it.po.in
@@ -5,10 +5,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gss-0.1.5\n"
-"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2010-03-22 10:38+0100\n"
-"PO-Revision-Date: 2010-11-15 16:55+0100\n"
+"Project-Id-Version: gss-1.0.1\n"
+"Report-Msgid-Bugs-To: address@hidden"
+"POT-Creation-Date: 2010-05-20 15:38+0200\n"
+"PO-Revision-Date: 2010-12-02 18:21+0100\n"
 "Last-Translator: Sergio Zanchetta <address@hidden>\n"
 "Language-Team: Italian <address@hidden>\n"
 "MIME-Version: 1.0\n"
@@ -16,205 +16,205 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural= (n != 1)\n"
 
-#: lib/meta.c:43
+#: lib/meta.c:37
 msgid "Kerberos V5 GSS-API mechanism"
 msgstr "Meccanismo GSS-API di Kerberos V5"
 
-#: lib/error.c:43
+#: lib/error.c:37
 msgid "A required input parameter could not be read"
 msgstr "Un parametro di input necessario non può essere letto"
 
-#: lib/error.c:45
+#: lib/error.c:39
 msgid "A required output parameter could not be written"
 msgstr "Un parametro di output necessario non può essere scritto"
 
-#: lib/error.c:47
+#: lib/error.c:41
 msgid "A parameter was malformed"
 msgstr "Un parametro era malformato"
 
-#: lib/error.c:52
+#: lib/error.c:46
 msgid "An unsupported mechanism was requested"
 msgstr "È stato richiesto un meccanismo non supportato"
 
-#: lib/error.c:54
+#: lib/error.c:48
 msgid "An invalid name was supplied"
 msgstr "È stato fornito un nome non valido"
 
-#: lib/error.c:56
+#: lib/error.c:50
 msgid "A supplied name was of an unsupported type"
 msgstr "Un nome fornito era di un tipo non supportato"
 
-#: lib/error.c:58
+#: lib/error.c:52
 msgid "Incorrect channel bindings were supplied"
 msgstr "Sono state fornite associazioni di canale non corrette"
 
-#: lib/error.c:60
+#: lib/error.c:54
 msgid "An invalid status code was supplied"
 msgstr "È stato fornito un codice di stato non valido"
 
-#: lib/error.c:62
+#: lib/error.c:56
 msgid "A token had an invalid MIC"
 msgstr "Un token aveva un MIC non valido"
 
-#: lib/error.c:64
+#: lib/error.c:58
 msgid "No credentials were supplied, or the credentials were unavailable or 
inaccessible"
 msgstr "Non è stata fornita alcuna credenziale oppure le credenziali erano 
indisponibili o inaccessibili"
 
-#: lib/error.c:67
+#: lib/error.c:61
 msgid "No context has been established"
 msgstr "Non è stato definito alcun contesto"
 
-#: lib/error.c:69
+#: lib/error.c:63
 msgid "A token was invalid"
 msgstr "Un token non era valido"
 
-#: lib/error.c:71
+#: lib/error.c:65
 msgid "A credential was invalid"
 msgstr "Una credenziale non era valida"
 
-#: lib/error.c:73
+#: lib/error.c:67
 msgid "The referenced credentials have expired"
 msgstr "Le credenziali di riferimento sono scadute"
 
-#: lib/error.c:75
+#: lib/error.c:69
 msgid "The context has expired"
 msgstr "Il contesto è scaduto"
 
-#: lib/error.c:77
+#: lib/error.c:71
 msgid "Unspecified error in underlying mechanism"
 msgstr "Errore non specificato nel meccanismo sottostante"
 
-#: lib/error.c:79
+#: lib/error.c:73
 msgid "The quality-of-protection requested could not be provided"
 msgstr "La qualità di protezione richiesta non può essere fornita"
 
-#: lib/error.c:81
+#: lib/error.c:75
 msgid "The operation is forbidden by local security policy"
 msgstr "L'operazione è proibita dalle politiche di sicurezza locali"
 
-#: lib/error.c:83
+#: lib/error.c:77
 msgid "The operation or option is unavailable"
 msgstr "L'operazione o l'opzione non è disponibile"
 
-#: lib/error.c:85
+#: lib/error.c:79
 msgid "The requested credential element already exists"
 msgstr "L'elemento di credenziale richiesto esiste già"
 
-#: lib/error.c:87
+#: lib/error.c:81
 msgid "The provided name was not a mechanism name"
 msgstr "Il nome fornito non era un nome di meccanismo"
 
-#: lib/error.c:92
+#: lib/error.c:86
 msgid "The gss_init_sec_context() or gss_accept_sec_context() function must be 
called again to complete its function"
 msgstr "La funzione gss_init_sec_context() oppure gss_accept_sec_context() 
deve essere chiamata di nuovo per essere completata"
 
-#: lib/error.c:95
+#: lib/error.c:89
 msgid "The token was a duplicate of an earlier token"
 msgstr "Il token era un duplicato di uno precedente"
 
-#: lib/error.c:97
+#: lib/error.c:91
 msgid "The token's validity period has expired"
 msgstr "Il periodo di validità del token è scaduto"
 
-#: lib/error.c:99
+#: lib/error.c:93
 msgid "A later token has already been processed"
 msgstr "Un token successivo è già stato elaborato"
 
-#: lib/error.c:101
+#: lib/error.c:95
 msgid "An expected per-message token was not received"
 msgstr "Un token per-message atteso non è stato ricevuto"
 
-#: lib/error.c:318
+#: lib/error.c:312
 msgid "No error"
 msgstr "Nessun errore"
 
-#: lib/krb5/error.c:42
+#: lib/krb5/error.c:36
 msgid "No @ in SERVICE-NAME name string"
 msgstr "Nessun @ nella stringa di nome SERVICE-NAME"
 
-#: lib/krb5/error.c:44
+#: lib/krb5/error.c:38
 msgid "STRING-UID-NAME contains nondigits"
 msgstr "STRING-UID-NAME contiene caratteri non numerici"
 
-#: lib/krb5/error.c:46
+#: lib/krb5/error.c:40
 msgid "UID does not resolve to username"
 msgstr "UID non risolve il nome utente"
 
-#: lib/krb5/error.c:48
+#: lib/krb5/error.c:42
 msgid "Validation error"
 msgstr "Errore di validazione"
 
-#: lib/krb5/error.c:50
+#: lib/krb5/error.c:44
 msgid "Couldn't allocate gss_buffer_t data"
 msgstr "Impossibile allocare dati gss_buffer_t"
 
-#: lib/krb5/error.c:52
+#: lib/krb5/error.c:46
 msgid "Message context invalid"
 msgstr "Contesto del messaggio non valido"
 
-#: lib/krb5/error.c:54
+#: lib/krb5/error.c:48
 msgid "Buffer is the wrong size"
 msgstr "Il buffer è di dimensione errata"
 
-#: lib/krb5/error.c:56
+#: lib/krb5/error.c:50
 msgid "Credential usage type is unknown"
 msgstr "Il tipo d'uso delle credenziali è sconosciuto"
 
-#: lib/krb5/error.c:58
+#: lib/krb5/error.c:52
 msgid "Unknown quality of protection specified"
 msgstr "Qualità di protezione specificata sconosciuta"
 
-#: lib/krb5/error.c:61
+#: lib/krb5/error.c:55
 msgid "Principal in credential cache does not match desired name"
 msgstr "Il principal nella cache delle credenziali non corrisponde al nome 
desiderato"
 
-#: lib/krb5/error.c:63
+#: lib/krb5/error.c:57
 msgid "No principal in keytab matches desired name"
 msgstr "Nessun principal nel keytab corrisponde al nome desiderato"
 
-#: lib/krb5/error.c:65
+#: lib/krb5/error.c:59
 msgid "Credential cache has no TGT"
 msgstr "La cache delle credenziali non contiene TGT"
 
-#: lib/krb5/error.c:67
+#: lib/krb5/error.c:61
 msgid "Authenticator has no subkey"
 msgstr "L'autenticatore non ha una sottochiave"
 
-#: lib/krb5/error.c:69
+#: lib/krb5/error.c:63
 msgid "Context is already fully established"
 msgstr "Il contesto è già completamente definito"
 
-#: lib/krb5/error.c:71
+#: lib/krb5/error.c:65
 msgid "Unknown signature type in token"
 msgstr "Tipo di firma sconosciuto nel token"
 
-#: lib/krb5/error.c:73
+#: lib/krb5/error.c:67
 msgid "Invalid field length in token"
 msgstr "Lunghezza di campo non valida nel token"
 
-#: lib/krb5/error.c:75
+#: lib/krb5/error.c:69
 msgid "Attempt to use incomplete security context"
 msgstr "Tentativo d'uso di un contesto di sicurezza incompleto"
 
-#: lib/krb5/error.c:92
+#: lib/krb5/error.c:86
 msgid "No krb5 error"
 msgstr "Nessun errore krb5"
 
-#: lib/krb5/error.c:133
+#: lib/krb5/error.c:127
 msgid "Unknown krb5 error"
 msgstr "Errore krb5 sconosciuto"
 
-#: src/gss.c:64
+#: src/gss.c:65
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Usare \"%s --help\" per maggiori informazioni.\n"
 
-#: src/gss.c:68
+#: src/gss.c:69
 #, c-format
 msgid "Usage: %s OPTIONS...\n"
 msgstr "Uso: %s OPZIONI...\n"
 
-#: src/gss.c:71
+#: src/gss.c:72
 msgid ""
 "Command line interface to GSS, used to explain error codes.\n"
 "\n"
@@ -222,23 +222,31 @@ msgstr ""
 "Interfaccia a riga di comando per GSS, usata per illustrare i codici di 
errore.\n"
 "\n"
 
-#: src/gss.c:75
+#: src/gss.c:76
 msgid "Mandatory arguments to long options are mandatory for short options 
too.\n"
 msgstr "Gli argomenti obbligatori per le opzioni lunghe lo sono anche per le 
opzioni corte.\n"
 
-#: src/gss.c:78
+#: src/gss.c:79
 msgid ""
-"  -h, --help        Print help and exit\n"
-"  -V, --version     Print version and exit\n"
-"  -m, --major=LONG  Describe a `major status' error code vaue in plain 
text.\n"
-"  -q, --quiet       Silent operation  (default=off)\n"
+"  -h, --help        Print help and exit.\n"
+"  -V, --version     Print version and exit.\n"
+"  -l, --list-mechanisms\n"
+"                    List information about supported mechanisms\n"
+"                    in a human readable format.\n"
+"  -m, --major=LONG  Describe a `major status' error code value.\n"
 msgstr ""
-"  -h, --help        Stampa questo aiuto ed esce\n"
-"  -V, --version     Stampa la versione ed esce\n"
-"  -m, --major=LONG  Descrive un codice di errore \"major status\" in testo 
semplice.\n"
-"  -q, --quiet       Funzionamento silenzioso  (predefinito=disattivo)\n"
-
-#: src/gss.c:119
+"  -h, --help        Stampa questo aiuto ed esce.\n"
+"  -V, --version     Stampa la versione ed esce.\n"
+"  -l, --list-mechanisms\n"
+"                    Elenca le informazioni sui meccanismi supportati\n"
+"                    in forma leggibile.\n"
+"  -m, --major=LONG  Descrive un codice di errore \"major status\".\n"
+
+#: src/gss.c:87
+msgid "  -q, --quiet       Silent operation (default=off).\n"
+msgstr "  -q, --quiet       Silent operation (default=off).\n"
+
+#: src/gss.c:106
 #, c-format
 msgid ""
 "GSS-API major status code %ld (0x%lx).\n"
@@ -247,7 +255,7 @@ msgstr ""
 "Codice di stato principale %ld (0x%lx) di GSS-API.\n"
 "\n"
 
-#: src/gss.c:122
+#: src/gss.c:109
 #, c-format
 msgid ""
 "   MSB                                                                 LSB\n"
@@ -260,7 +268,7 @@ msgstr ""
 "   |  Errore di chiamata  |  Errore di routine  |   Informazioni aggiuntive   
 |\n"
 "   | "
 
-#: src/gss.c:136
+#: src/gss.c:123
 #, c-format
 msgid ""
 "|\n"
@@ -273,27 +281,37 @@ msgstr ""
 "Bit 31                 24  23                16  15                          
0\n"
 "\n"
 
-#: src/gss.c:146
+#: src/gss.c:133
 #, c-format
 msgid "Masked routine error %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Errore della routine nascosta %ld (0x%lx) spostato in %ld (0x%lx):\n"
 
-#: src/gss.c:163 src/gss.c:198 src/gss.c:236
+#: src/gss.c:150 src/gss.c:184 src/gss.c:221
 #, c-format
-msgid "%s: displaying status code failed\n"
-msgstr "%s: visualizzazione del codice di stato non riuscita\n"
+msgid "displaying status code failed (%d)"
+msgstr "displaying status code failed (%d)"
 
-#: src/gss.c:184
+#: src/gss.c:170
 #, c-format
 msgid "Masked calling error %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Errore della chiamata nascosta %ld (0x%lx) spostato in %ld (0x%lx):\n"
 
-#: src/gss.c:218
+#: src/gss.c:203
 #, c-format
 msgid "Masked supplementary info %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Informazione aggiuntiva nascosta %ld (0x%lx) spostata in %ld 
(0x%lx):\n"
 
-#: src/gss.c:254
+#: src/gss.c:238
 #, c-format
 msgid "No error\n"
 msgstr "Nessun errore\n"
+
+#: src/gss.c:256
+#, c-format
+msgid "indicating mechanisms failed (%d)"
+msgstr "segnalazione del meccanismo non riuscita (%d)"
+
+#: src/gss.c:271
+#, c-format
+msgid "inquiring information about mechanism failed (%d)"
+msgstr "richiesta informazioni sul meccanismo non riuscita (%d)"
diff --git a/po/pl.po.in b/po/pl.po.in
index d9d438f..50efcda 100644
--- a/po/pl.po.in
+++ b/po/pl.po.in
@@ -5,215 +5,215 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gss 0.1.5\n"
-"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2010-03-22 10:38+0100\n"
-"PO-Revision-Date: 2010-03-25 19:44+0100\n"
+"Project-Id-Version: gss 1.0.1\n"
+"Report-Msgid-Bugs-To: address@hidden"
+"POT-Creation-Date: 2010-05-20 15:38+0200\n"
+"PO-Revision-Date: 2010-11-16 21:01+0100\n"
 "Last-Translator: Jakub Bogusz <address@hidden>\n"
 "Language-Team: Polish <address@hidden>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-2\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: lib/meta.c:43
+#: lib/meta.c:37
 msgid "Kerberos V5 GSS-API mechanism"
 msgstr "Mechanizm Kerberos V5 GSS-API"
 
-#: lib/error.c:43
+#: lib/error.c:37
 msgid "A required input parameter could not be read"
 msgstr "Wymagany parametr wej¶ciowy nie móg³ byæ odczytany"
 
-#: lib/error.c:45
+#: lib/error.c:39
 msgid "A required output parameter could not be written"
 msgstr "Wymagany parametr wyj¶ciowy nie móg³ byæ zapisany"
 
-#: lib/error.c:47
+#: lib/error.c:41
 msgid "A parameter was malformed"
 msgstr "Parametr by³ ¼le sformu³owany"
 
-#: lib/error.c:52
+#: lib/error.c:46
 msgid "An unsupported mechanism was requested"
 msgstr "¯±dano nieobs³ugiwanego mechanizmu"
 
-#: lib/error.c:54
+#: lib/error.c:48
 msgid "An invalid name was supplied"
 msgstr "Podano b³êdn± nazwê"
 
-#: lib/error.c:56
+#: lib/error.c:50
 msgid "A supplied name was of an unsupported type"
 msgstr "Podana nazwa by³a nieobs³ugiwanego typu"
 
-#: lib/error.c:58
+#: lib/error.c:52
 msgid "Incorrect channel bindings were supplied"
 msgstr "Podano niepoprawne powi±zania kana³u"
 
-#: lib/error.c:60
+#: lib/error.c:54
 msgid "An invalid status code was supplied"
 msgstr "Podano b³êdny kod stanu"
 
-#: lib/error.c:62
+#: lib/error.c:56
 msgid "A token had an invalid MIC"
 msgstr "Token mia³ b³êdny MIC"
 
-#: lib/error.c:64
+#: lib/error.c:58
 msgid "No credentials were supplied, or the credentials were unavailable or 
inaccessible"
 msgstr "Nie podano danych uwierzytelniaj±cych lub by³y niedostêpne"
 
-#: lib/error.c:67
+#: lib/error.c:61
 msgid "No context has been established"
 msgstr "Nie ustalono kontekstu"
 
-#: lib/error.c:69
+#: lib/error.c:63
 msgid "A token was invalid"
 msgstr "Token by³ b³êdny"
 
-#: lib/error.c:71
+#: lib/error.c:65
 msgid "A credential was invalid"
 msgstr "Dane uwierzytelniaj±ce by³y niepoprawne"
 
-#: lib/error.c:73
+#: lib/error.c:67
 msgid "The referenced credentials have expired"
 msgstr "Wskazane dane uwierzytelniaj±ce wygas³y"
 
-#: lib/error.c:75
+#: lib/error.c:69
 msgid "The context has expired"
 msgstr "Kontekst wygas³"
 
-#: lib/error.c:77
+#: lib/error.c:71
 msgid "Unspecified error in underlying mechanism"
 msgstr "Nieokre¶lony b³±d w podrzêdnym mechanizmie"
 
-#: lib/error.c:79
+#: lib/error.c:73
 msgid "The quality-of-protection requested could not be provided"
 msgstr "¯±dana jako¶æ zabezpieczenia nie mog³a byæ zapewniona"
 
-#: lib/error.c:81
+#: lib/error.c:75
 msgid "The operation is forbidden by local security policy"
 msgstr "Operacja jest zabroniona przez lokaln± politykê bezpieczeñstwa"
 
-#: lib/error.c:83
+#: lib/error.c:77
 msgid "The operation or option is unavailable"
 msgstr "Operacja lub opcja jest niedostêpna"
 
-#: lib/error.c:85
+#: lib/error.c:79
 msgid "The requested credential element already exists"
 msgstr "¯±dany element danych uwierzytelniaj±cych ju¿ istnieje"
 
-#: lib/error.c:87
+#: lib/error.c:81
 msgid "The provided name was not a mechanism name"
 msgstr "Dostarczona nazwa nie by³a nazw± mechanizmu"
 
-#: lib/error.c:92
+#: lib/error.c:86
 msgid "The gss_init_sec_context() or gss_accept_sec_context() function must be 
called again to complete its function"
 msgstr "Funkcja gss_init_sec_context() lub gss_accept_sec_context() musi byæ 
wywo³ana ponownie aby dokoñczyæ funkcjê"
 
-#: lib/error.c:95
+#: lib/error.c:89
 msgid "The token was a duplicate of an earlier token"
 msgstr "Token by³ duplikatem wcze¶niejszego"
 
-#: lib/error.c:97
+#: lib/error.c:91
 msgid "The token's validity period has expired"
 msgstr "Okres poprawno¶ci tokenu min±³"
 
-#: lib/error.c:99
+#: lib/error.c:93
 msgid "A later token has already been processed"
 msgstr "Pó¼niejszy token by³ ju¿ przetworzony"
 
-#: lib/error.c:101
+#: lib/error.c:95
 msgid "An expected per-message token was not received"
 msgstr "Nie otrzymano oczekiwanego tokenu dla komunikatu"
 
-#: lib/error.c:318
+#: lib/error.c:312
 msgid "No error"
 msgstr "Brak b³êdu"
 
-#: lib/krb5/error.c:42
+#: lib/krb5/error.c:36
 msgid "No @ in SERVICE-NAME name string"
 msgstr "Brak @ w ³añcuchu nazwy SERVICE-NAME"
 
-#: lib/krb5/error.c:44
+#: lib/krb5/error.c:38
 msgid "STRING-UID-NAME contains nondigits"
 msgstr "STRING-UID-NAME zawiera znaki nie bêd±ce cyframi"
 
-#: lib/krb5/error.c:46
+#: lib/krb5/error.c:40
 msgid "UID does not resolve to username"
 msgstr "UID nie rozwi±zuje siê na nazwê u¿ytkownika"
 
-#: lib/krb5/error.c:48
+#: lib/krb5/error.c:42
 msgid "Validation error"
 msgstr "B³±d kontroli poprawno¶ci"
 
-#: lib/krb5/error.c:50
+#: lib/krb5/error.c:44
 msgid "Couldn't allocate gss_buffer_t data"
 msgstr "Nie mo¿na przydzieliæ danych gss_buffer_t"
 
-#: lib/krb5/error.c:52
+#: lib/krb5/error.c:46
 msgid "Message context invalid"
 msgstr "B³êdny kontekst komunikatu"
 
-#: lib/krb5/error.c:54
+#: lib/krb5/error.c:48
 msgid "Buffer is the wrong size"
 msgstr "Z³y rozmiar bufora"
 
-#: lib/krb5/error.c:56
+#: lib/krb5/error.c:50
 msgid "Credential usage type is unknown"
 msgstr "Nieznany sposób u¿ycia danych uwierzytelniaj±cych"
 
-#: lib/krb5/error.c:58
+#: lib/krb5/error.c:52
 msgid "Unknown quality of protection specified"
 msgstr "Podano nieznan± jako¶ zabezpieczenia"
 
-#: lib/krb5/error.c:61
+#: lib/krb5/error.c:55
 msgid "Principal in credential cache does not match desired name"
 msgstr "Zarz±dca w buforze danych uwierzytelniaj±cych nie pasuje do ¿±danej 
nazwy"
 
-#: lib/krb5/error.c:63
+#: lib/krb5/error.c:57
 msgid "No principal in keytab matches desired name"
 msgstr "¯aden zarz±dca w keytab nie pasuje do ¿±danej nazwy"
 
-#: lib/krb5/error.c:65
+#: lib/krb5/error.c:59
 msgid "Credential cache has no TGT"
 msgstr "Bufor danych uwierzytelniaj±cych nie zawiera TGT"
 
-#: lib/krb5/error.c:67
+#: lib/krb5/error.c:61
 msgid "Authenticator has no subkey"
 msgstr "Authenticator nie ma pola subkey"
 
-#: lib/krb5/error.c:69
+#: lib/krb5/error.c:63
 msgid "Context is already fully established"
 msgstr "Kontekst ju¿ zosta³ w pe³ni ustalony"
 
-#: lib/krb5/error.c:71
+#: lib/krb5/error.c:65
 msgid "Unknown signature type in token"
 msgstr "Nieznany rodzaj sygnatury w tokenie"
 
-#: lib/krb5/error.c:73
+#: lib/krb5/error.c:67
 msgid "Invalid field length in token"
 msgstr "B³êdna d³ugo¶æ pola w tokenie"
 
-#: lib/krb5/error.c:75
+#: lib/krb5/error.c:69
 msgid "Attempt to use incomplete security context"
 msgstr "Próba u¿ycia niepe³nego kontekstu bezpieczeñstwa"
 
-#: lib/krb5/error.c:92
+#: lib/krb5/error.c:86
 msgid "No krb5 error"
 msgstr "Brak b³êdu krb5"
 
-#: lib/krb5/error.c:133
+#: lib/krb5/error.c:127
 msgid "Unknown krb5 error"
 msgstr "Nieznany b³±d krb5"
 
-#: src/gss.c:64
+#: src/gss.c:65
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "`%s --help' poda wiêcej informacji.\n"
 
-#: src/gss.c:68
+#: src/gss.c:69
 #, c-format
 msgid "Usage: %s OPTIONS...\n"
 msgstr "Sk³adnia: %s OPCJE...\n"
 
-#: src/gss.c:71
+#: src/gss.c:72
 msgid ""
 "Command line interface to GSS, used to explain error codes.\n"
 "\n"
@@ -221,23 +221,31 @@ msgstr ""
 "Interfejs linii poleceñ do GSS s³u¿±cy do wyja¶niania kodów b³êdów.\n"
 "\n"
 
-#: src/gss.c:75
+#: src/gss.c:76
 msgid "Mandatory arguments to long options are mandatory for short options 
too.\n"
 msgstr "Argumenty obowi±zkowe dla opcji d³ugich s± obowi±zkowe tak¿e dla opcji 
krótkich.\n"
 
-#: src/gss.c:78
+#: src/gss.c:79
 msgid ""
-"  -h, --help        Print help and exit\n"
-"  -V, --version     Print version and exit\n"
-"  -m, --major=LONG  Describe a `major status' error code vaue in plain 
text.\n"
-"  -q, --quiet       Silent operation  (default=off)\n"
+"  -h, --help        Print help and exit.\n"
+"  -V, --version     Print version and exit.\n"
+"  -l, --list-mechanisms\n"
+"                    List information about supported mechanisms\n"
+"                    in a human readable format.\n"
+"  -m, --major=LONG  Describe a `major status' error code value.\n"
 msgstr ""
 "  -h, --help        Wypisanie tego opisu i zakoñczenie\n"
 "  -V, --version     Wypisanie numeru wersji i zakoñczenie\n"
+"  -l, --list-mechanisms\n"
+"                    Informacje o obs³ugiwanych mechanizmach\n"
+"                    w postaci czytelnej dla cz³owieka\n"
 "  -m, --major=LONG  Opis \"g³ównego\" kodu b³êdu w postaci tekstowej\n"
-"  -q, --quiet       Dzia³anie bez komunikatów (domy¶lnie wy³±czone)\n"
 
-#: src/gss.c:119
+#: src/gss.c:87
+msgid "  -q, --quiet       Silent operation (default=off).\n"
+msgstr "  -q, --quiet       Dzia³anie bez komunikatów (domy¶lnie wy³±czone)\n"
+
+#: src/gss.c:106
 #, c-format
 msgid ""
 "GSS-API major status code %ld (0x%lx).\n"
@@ -246,7 +254,7 @@ msgstr ""
 "G³ówny kod stanu GSS-API %ld (0x%lx).\n"
 "\n"
 
-#: src/gss.c:122
+#: src/gss.c:109
 #, c-format
 msgid ""
 "   MSB                                                                 LSB\n"
@@ -259,7 +267,7 @@ msgstr ""
 "   |  B³±d wywo³ania |  B³±d procedury |       Dodatkowe informacje      |\n"
 "   | "
 
-#: src/gss.c:136
+#: src/gss.c:123
 #, c-format
 msgid ""
 "|\n"
@@ -272,27 +280,37 @@ msgstr ""
 "Bit 31            24  23            16  15                             0\n"
 "\n"
 
-#: src/gss.c:146
+#: src/gss.c:133
 #, c-format
 msgid "Masked routine error %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Maskowany b³±d procedury %ld (0x%lx) przesuniêty do %ld (0x%lx):\n"
 
-#: src/gss.c:163 src/gss.c:198 src/gss.c:236
+#: src/gss.c:150 src/gss.c:184 src/gss.c:221
 #, c-format
-msgid "%s: displaying status code failed\n"
-msgstr "%s: wy¶wietlanie kodu stanu nie powiod³o siê\n"
+msgid "displaying status code failed (%d)"
+msgstr "wy¶wietlenie kodu stanu nie powiod³o siê (%d)"
 
-#: src/gss.c:184
+#: src/gss.c:170
 #, c-format
 msgid "Masked calling error %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Maskowany b³±d wywo³ania %ld (0x%lx) przesuniêty do %ld (0x%lx):\n"
 
-#: src/gss.c:218
+#: src/gss.c:203
 #, c-format
 msgid "Masked supplementary info %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "Maskowane dodatkowe informacje %ld (0x%lx) przesuniête do %ld 
(0x%lx):\n"
 
-#: src/gss.c:254
+#: src/gss.c:238
 #, c-format
 msgid "No error\n"
 msgstr "Brak b³êdu\n"
+
+#: src/gss.c:256
+#, c-format
+msgid "indicating mechanisms failed (%d)"
+msgstr "okre¶lanie mechanizmów nie powiod³o siê (%d)"
+
+#: src/gss.c:271
+#, c-format
+msgid "inquiring information about mechanism failed (%d)"
+msgstr "pobieranie informacji o mechanizmach nie powiod³o siê (%d)"
diff --git a/po/zh_CN.po.in b/po/zh_CN.po.in
index c4f132b..1d44956 100644
--- a/po/zh_CN.po.in
+++ b/po/zh_CN.po.in
@@ -5,215 +5,215 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gss 0.1.5\n"
-"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2010-03-22 10:38+0100\n"
-"PO-Revision-Date: 2010-04-20 16:43中国标准时间\n"
+"Project-Id-Version: gss 1.0.1\n"
+"Report-Msgid-Bugs-To: address@hidden"
+"POT-Creation-Date: 2010-05-20 15:38+0200\n"
+"PO-Revision-Date: 2011-01-12 21:21中国标准时间\n"
 "Last-Translator: Ji ZhengYu <address@hidden>\n"
 "Language-Team: Chinese (simplified) <address@hidden>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: lib/meta.c:43
+#: lib/meta.c:37
 msgid "Kerberos V5 GSS-API mechanism"
 msgstr "Kerberos V5 GSS-API 机制"
 
-#: lib/error.c:43
+#: lib/error.c:37
 msgid "A required input parameter could not be read"
 msgstr "无法读取所需的输入参数"
 
-#: lib/error.c:45
+#: lib/error.c:39
 msgid "A required output parameter could not be written"
 msgstr "无法写入所需的输出参数"
 
-#: lib/error.c:47
+#: lib/error.c:41
 msgid "A parameter was malformed"
 msgstr "参数形式错误"
 
-#: lib/error.c:52
+#: lib/error.c:46
 msgid "An unsupported mechanism was requested"
 msgstr "请求了一个不支持的机制"
 
-#: lib/error.c:54
+#: lib/error.c:48
 msgid "An invalid name was supplied"
 msgstr "提供了无效的名称"
 
-#: lib/error.c:56
+#: lib/error.c:50
 msgid "A supplied name was of an unsupported type"
 msgstr "所提供的名字是一种不支持的类型"
 
-#: lib/error.c:58
+#: lib/error.c:52
 msgid "Incorrect channel bindings were supplied"
 msgstr "提供了错误的绑定通道"
 
-#: lib/error.c:60
+#: lib/error.c:54
 msgid "An invalid status code was supplied"
 msgstr "提供了无效的状态码"
 
-#: lib/error.c:62
+#: lib/error.c:56
 msgid "A token had an invalid MIC"
 msgstr "有个标识拥有无效的 MIC"
 
-#: lib/error.c:64
+#: lib/error.c:58
 msgid "No credentials were supplied, or the credentials were unavailable or 
inaccessible"
 msgstr "未提供证书,或是证书不可用或无法访问"
 
-#: lib/error.c:67
+#: lib/error.c:61
 msgid "No context has been established"
 msgstr "尚未创建内容"
 
-#: lib/error.c:69
+#: lib/error.c:63
 msgid "A token was invalid"
 msgstr "标识无效"
 
-#: lib/error.c:71
+#: lib/error.c:65
 msgid "A credential was invalid"
 msgstr "证书无效"
 
-#: lib/error.c:73
+#: lib/error.c:67
 msgid "The referenced credentials have expired"
 msgstr "关联证书过期了"
 
-#: lib/error.c:75
+#: lib/error.c:69
 msgid "The context has expired"
 msgstr "内容过期了"
 
-#: lib/error.c:77
+#: lib/error.c:71
 msgid "Unspecified error in underlying mechanism"
 msgstr "底层机制中有不明错误"
 
-#: lib/error.c:79
+#: lib/error.c:73
 msgid "The quality-of-protection requested could not be provided"
 msgstr "无法提供所需要的保护等级"
 
-#: lib/error.c:81
+#: lib/error.c:75
 msgid "The operation is forbidden by local security policy"
 msgstr "本地安全机制禁止了此项操作"
 
-#: lib/error.c:83
+#: lib/error.c:77
 msgid "The operation or option is unavailable"
 msgstr "此操作或选项不可用"
 
-#: lib/error.c:85
+#: lib/error.c:79
 msgid "The requested credential element already exists"
 msgstr "所需证书组件已经存在"
 
-#: lib/error.c:87
+#: lib/error.c:81
 msgid "The provided name was not a mechanism name"
 msgstr "所提供的名称不是保护机制的名称"
 
-#: lib/error.c:92
+#: lib/error.c:86
 msgid "The gss_init_sec_context() or gss_accept_sec_context() function must be 
called again to complete its function"
 msgstr "要完成它的功能必须再次调用 gss_init_sec_context() 或 
gss_accept_sec_context()函数"
 
-#: lib/error.c:95
+#: lib/error.c:89
 msgid "The token was a duplicate of an earlier token"
 msgstr "此标识是一个更早期标识的镜像"
 
-#: lib/error.c:97
+#: lib/error.c:91
 msgid "The token's validity period has expired"
 msgstr "标识已超过了有效期"
 
-#: lib/error.c:99
+#: lib/error.c:93
 msgid "A later token has already been processed"
 msgstr "已经处理了一个较新的标识"
 
-#: lib/error.c:101
+#: lib/error.c:95
 msgid "An expected per-message token was not received"
 msgstr "所需的 per-message 标识不被接受"
 
-#: lib/error.c:318
+#: lib/error.c:312
 msgid "No error"
 msgstr "没有错误"
 
-#: lib/krb5/error.c:42
+#: lib/krb5/error.c:36
 msgid "No @ in SERVICE-NAME name string"
 msgstr "在 SERVICE-NAME 字符串中没有 @"
 
-#: lib/krb5/error.c:44
+#: lib/krb5/error.c:38
 msgid "STRING-UID-NAME contains nondigits"
 msgstr "STRING-UID-NAME 包含非数字字符"
 
-#: lib/krb5/error.c:46
+#: lib/krb5/error.c:40
 msgid "UID does not resolve to username"
 msgstr "UID 无法解析为用户名"
 
-#: lib/krb5/error.c:48
+#: lib/krb5/error.c:42
 msgid "Validation error"
 msgstr "验证错误"
 
-#: lib/krb5/error.c:50
+#: lib/krb5/error.c:44
 msgid "Couldn't allocate gss_buffer_t data"
 msgstr "无法分配 gss_buffer_t data"
 
-#: lib/krb5/error.c:52
+#: lib/krb5/error.c:46
 msgid "Message context invalid"
 msgstr "信息内容无效"
 
-#: lib/krb5/error.c:54
+#: lib/krb5/error.c:48
 msgid "Buffer is the wrong size"
 msgstr "缓冲区大小错误"
 
-#: lib/krb5/error.c:56
+#: lib/krb5/error.c:50
 msgid "Credential usage type is unknown"
 msgstr "证书使用类型未知"
 
-#: lib/krb5/error.c:58
+#: lib/krb5/error.c:52
 msgid "Unknown quality of protection specified"
 msgstr "所指定的保护等级未知"
 
-#: lib/krb5/error.c:61
+#: lib/krb5/error.c:55
 msgid "Principal in credential cache does not match desired name"
 msgstr "证书缓存中的委托人与所要的名字不匹配"
 
-#: lib/krb5/error.c:63
+#: lib/krb5/error.c:57
 msgid "No principal in keytab matches desired name"
 msgstr "keytab 中的委托人没有一个与所要的名字匹配的"
 
-#: lib/krb5/error.c:65
+#: lib/krb5/error.c:59
 msgid "Credential cache has no TGT"
 msgstr "证书缓存无 TGT"
 
-#: lib/krb5/error.c:67
+#: lib/krb5/error.c:61
 msgid "Authenticator has no subkey"
 msgstr "验证方没有子密钥"
 
-#: lib/krb5/error.c:69
+#: lib/krb5/error.c:63
 msgid "Context is already fully established"
 msgstr "内容已经完全创建好了"
 
-#: lib/krb5/error.c:71
+#: lib/krb5/error.c:65
 msgid "Unknown signature type in token"
 msgstr "标识中的签名类型未知"
 
-#: lib/krb5/error.c:73
+#: lib/krb5/error.c:67
 msgid "Invalid field length in token"
 msgstr "标识中的域长度无效"
 
-#: lib/krb5/error.c:75
+#: lib/krb5/error.c:69
 msgid "Attempt to use incomplete security context"
 msgstr "尝试使用不完整的安全内容"
 
-#: lib/krb5/error.c:92
+#: lib/krb5/error.c:86
 msgid "No krb5 error"
 msgstr "错误: 找不到 krb5 服务器"
 
-#: lib/krb5/error.c:133
+#: lib/krb5/error.c:127
 msgid "Unknown krb5 error"
 msgstr "错误: 未知的 krb5 服务器"
 
-#: src/gss.c:64
+#: src/gss.c:65
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "尝试用‘%s --help’来获取更多信息。\n"
 
-#: src/gss.c:68
+#: src/gss.c:69
 #, c-format
 msgid "Usage: %s OPTIONS...\n"
 msgstr "用法: %s 选项...\n"
 
-#: src/gss.c:71
+#: src/gss.c:72
 msgid ""
 "Command line interface to GSS, used to explain error codes.\n"
 "\n"
@@ -221,23 +221,31 @@ msgstr ""
 "GSS 命令行接口,用于解释错误代码。\n"
 "\n"
 
-#: src/gss.c:75
+#: src/gss.c:76
 msgid "Mandatory arguments to long options are mandatory for short options 
too.\n"
 msgstr "长选项所必须的参数短选项也是必须的。\n"
 
-#: src/gss.c:78
+#: src/gss.c:79
 msgid ""
-"  -h, --help        Print help and exit\n"
-"  -V, --version     Print version and exit\n"
-"  -m, --major=LONG  Describe a `major status' error code vaue in plain 
text.\n"
-"  -q, --quiet       Silent operation  (default=off)\n"
+"  -h, --help        Print help and exit.\n"
+"  -V, --version     Print version and exit.\n"
+"  -l, --list-mechanisms\n"
+"                    List information about supported mechanisms\n"
+"                    in a human readable format.\n"
+"  -m, --major=LONG  Describe a `major status' error code value.\n"
 msgstr ""
-"  -h, --help        打印帮助并退出\n"
-"  -V, --version     打印版本并退出\n"
-"  -m, --major=LONG  以普通文件描述`主状态错误代码。\n"
-"  -q, --quiet       无输出模式(默认=off)\n"
-
-#: src/gss.c:119
+"  -h, --help        显示帮助并退出\n"
+"  -V, --version     显示版本信息并退出\n"
+"  -l, --list-mechanisms\n"
+"                    以易读的形式\n"
+"                    列出所支持的加密方式信息\n"
+"  -m, --major=LONG  描述一个主状态错误代码\n"
+
+#: src/gss.c:87
+msgid "  -q, --quiet       Silent operation (default=off).\n"
+msgstr "  -q, --quiet       操作时无显示(默认关闭)\n"
+
+#: src/gss.c:106
 #, c-format
 msgid ""
 "GSS-API major status code %ld (0x%lx).\n"
@@ -246,7 +254,7 @@ msgstr ""
 "GSS-API 主状态码 %ld (0x%lx)。\n"
 "\n"
 
-#: src/gss.c:122
+#: src/gss.c:109
 #, c-format
 msgid ""
 "   MSB                                                                 LSB\n"
@@ -259,7 +267,7 @@ msgstr ""
 "   |    调用错误     |    路由错误     |              备注信息    
       |\n"
 "   | "
 
-#: src/gss.c:136
+#: src/gss.c:123
 #, c-format
 msgid ""
 "|\n"
@@ -272,30 +280,51 @@ msgstr ""
 "位元31            24  23            16  15                             0\n"
 "\n"
 
-#: src/gss.c:146
+#: src/gss.c:133
 #, c-format
 msgid "Masked routine error %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "隐蔽的路由错误 %ld (0x%lx) 被移入 %ld (0x%lx):\n"
 
-#: src/gss.c:163 src/gss.c:198 src/gss.c:236
+#: src/gss.c:150 src/gss.c:184 src/gss.c:221
 #, c-format
-msgid "%s: displaying status code failed\n"
-msgstr "%s: 显示状态码失败\n"
+msgid "displaying status code failed (%d)"
+msgstr "显示状态码时出错 (%d)"
 
-#: src/gss.c:184
+#: src/gss.c:170
 #, c-format
 msgid "Masked calling error %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "隐蔽的调用错误 %ld (0x%lx) 被移入 %ld (0x%lx):\n"
 
-#: src/gss.c:218
+#: src/gss.c:203
 #, c-format
 msgid "Masked supplementary info %ld (0x%lx) shifted into %ld (0x%lx):\n"
 msgstr "隐蔽的备注信息错误 %ld (0x%lx) 被移入 %ld (0x%lx):\n"
 
-#: src/gss.c:254
+#: src/gss.c:238
 #, c-format
 msgid "No error\n"
 msgstr "没有错误\n"
 
+#: src/gss.c:256
+#, c-format
+msgid "indicating mechanisms failed (%d)"
+msgstr "正显示加密方式时出错 (%d)"
+
+#: src/gss.c:271
+#, c-format
+msgid "inquiring information about mechanism failed (%d)"
+msgstr "正查寻加密方式信息时出错 (%d)"
+
+#~ msgid ""
+#~ "  -h, --help        Print help and exit\n"
+#~ "  -V, --version     Print version and exit\n"
+#~ "  -m, --major=LONG  Describe a `major status' error code vaue in plain 
text.\n"
+#~ "  -q, --quiet       Silent operation  (default=off)\n"
+#~ msgstr ""
+#~ "  -h, --help        打印帮助并退出\n"
+#~ "  -V, --version     打印版本并退出\n"
+#~ "  -m, --major=LONG  以普通文件描述`主状态错误代码。\n"
+#~ "  -q, --quiet       无输出模式(默认=off)\n"
+
 #~ msgid "%s: missing parameter\n"
 #~ msgstr "%s: 缺少参数\n"
diff --git a/src/gl/Makefile.am b/src/gl/Makefile.am
index 599fe3a..a721c33 100644
--- a/src/gl/Makefile.am
+++ b/src/gl/Makefile.am
@@ -1,6 +1,6 @@
 ## DO NOT EDIT! GENERATED AUTOMATICALLY!
 ## Process this file with automake to produce Makefile.in.
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
@@ -357,6 +357,7 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) 
$(WARN_ON_USE_H)
              -e 's|@''GNULIB_LINK''@|$(GNULIB_LINK)|g' \
              -e 's|@''GNULIB_LINKAT''@|$(GNULIB_LINKAT)|g' \
              -e 's|@''GNULIB_LSEEK''@|$(GNULIB_LSEEK)|g' \
+             -e 's|@''GNULIB_PIPE''@|$(GNULIB_PIPE)|g' \
              -e 's|@''GNULIB_PIPE2''@|$(GNULIB_PIPE2)|g' \
              -e 's|@''GNULIB_PREAD''@|$(GNULIB_PREAD)|g' \
              -e 's|@''GNULIB_PWRITE''@|$(GNULIB_PWRITE)|g' \
@@ -391,6 +392,7 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) 
$(WARN_ON_USE_H)
              -e 's|@''HAVE_LCHOWN''@|$(HAVE_LCHOWN)|g' \
              -e 's|@''HAVE_LINK''@|$(HAVE_LINK)|g' \
              -e 's|@''HAVE_LINKAT''@|$(HAVE_LINKAT)|g' \
+             -e 's|@''HAVE_PIPE''@|$(HAVE_PIPE)|g' \
              -e 's|@''HAVE_PIPE2''@|$(HAVE_PIPE2)|g' \
              -e 's|@''HAVE_PREAD''@|$(HAVE_PREAD)|g' \
              -e 's|@''HAVE_PWRITE''@|$(HAVE_PWRITE)|g' \
@@ -399,23 +401,26 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) 
$(WARN_ON_USE_H)
              -e 's|@''HAVE_SLEEP''@|$(HAVE_SLEEP)|g' \
              -e 's|@''HAVE_SYMLINK''@|$(HAVE_SYMLINK)|g' \
              -e 's|@''HAVE_SYMLINKAT''@|$(HAVE_SYMLINKAT)|g' \
-             -e 's|@''HAVE_TTYNAME_R''@|$(HAVE_TTYNAME_R)|g' \
              -e 's|@''HAVE_UNLINKAT''@|$(HAVE_UNLINKAT)|g' \
              -e 's|@''HAVE_USLEEP''@|$(HAVE_USLEEP)|g' \
              -e 's|@''HAVE_DECL_ENVIRON''@|$(HAVE_DECL_ENVIRON)|g' \
+             -e 's|@''HAVE_DECL_FCHDIR''@|$(HAVE_DECL_FCHDIR)|g' \
              -e 's|@''HAVE_DECL_GETDOMAINNAME''@|$(HAVE_DECL_GETDOMAINNAME)|g' 
\
              -e 's|@''HAVE_DECL_GETLOGIN_R''@|$(HAVE_DECL_GETLOGIN_R)|g' \
              -e 's|@''HAVE_DECL_GETPAGESIZE''@|$(HAVE_DECL_GETPAGESIZE)|g' \
              -e 's|@''HAVE_DECL_GETUSERSHELL''@|$(HAVE_DECL_GETUSERSHELL)|g' \
+             -e 's|@''HAVE_DECL_TTYNAME_R''@|$(HAVE_DECL_TTYNAME_R)|g' \
              -e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \
              -e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \
-             -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \
+         | \
+         sed -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \
              -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \
              -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \
              -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \
              -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \
              -e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \
              -e 's|@''REPLACE_GETDOMAINNAME''@|$(REPLACE_GETDOMAINNAME)|g' \
+             -e 's|@''REPLACE_GETLOGIN_R''@|$(REPLACE_GETLOGIN_R)|g' \
              -e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \
              -e 's|@''REPLACE_GETPAGESIZE''@|$(REPLACE_GETPAGESIZE)|g' \
              -e 's|@''REPLACE_LCHOWN''@|$(REPLACE_LCHOWN)|g' \
diff --git a/src/gl/errno.in.h b/src/gl/errno.in.h
index 7ebaddc..a91f591 100644
--- a/src/gl/errno.in.h
+++ b/src/gl/errno.in.h
@@ -1,6 +1,6 @@
 /* A POSIX-like <errno.h>.
 
-   Copyright (C) 2008-2010 Free Software Foundation, Inc.
+   Copyright (C) 2008-2011 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/src/gl/error.c b/src/gl/error.c
index ed9dba0..a2d1c1b 100644
--- a/src/gl/error.c
+++ b/src/gl/error.c
@@ -1,5 +1,5 @@
 /* Error handler for noninteractive utilities
-   Copyright (C) 1990-1998, 2000-2007, 2009-2010 Free Software Foundation, Inc.
+   Copyright (C) 1990-1998, 2000-2007, 2009-2011 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    This program is free software: you can redistribute it and/or modify
diff --git a/src/gl/error.h b/src/gl/error.h
index 9deef02..80f81bc 100644
--- a/src/gl/error.h
+++ b/src/gl/error.h
@@ -1,6 +1,6 @@
 /* Declaration for error-reporting function
-   Copyright (C) 1995, 1996, 1997, 2003, 2006, 2008, 2009, 2010 Free Software
-   Foundation, Inc.
+   Copyright (C) 1995-1997, 2003, 2006, 2008-2011 Free Software Foundation,
+   Inc.
    This file is part of the GNU C Library.
 
    This program is free software: you can redistribute it and/or modify
@@ -19,16 +19,16 @@
 #ifndef _ERROR_H
 #define _ERROR_H 1
 
-#ifndef __attribute__
 /* The __attribute__ feature is available in gcc versions 2.5 and later.
    The __-protected variants of the attributes 'format' and 'printf' are
    accepted by gcc versions 2.6.4 (effectively 2.7) and later.
-   We enable __attribute__ only if these are supported too, because
+   We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because
    gnulib and libintl do '#define printf __printf__' when they override
    the 'printf' function.  */
-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7)
-#  define __attribute__(Spec)   /* empty */
-# endif
+#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
+# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+#else
+# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */
 #endif
 
 #ifdef __cplusplus
@@ -40,11 +40,11 @@ extern "C" {
    If STATUS is nonzero, terminate the program with `exit (STATUS)'.  */
 
 extern void error (int __status, int __errnum, const char *__format, ...)
-     __attribute__ ((__format__ (__printf__, 3, 4)));
+     _GL_ATTRIBUTE_FORMAT ((__printf__, 3, 4));
 
 extern void error_at_line (int __status, int __errnum, const char *__fname,
                            unsigned int __lineno, const char *__format, ...)
-     __attribute__ ((__format__ (__printf__, 5, 6)));
+     _GL_ATTRIBUTE_FORMAT ((__printf__, 5, 6));
 
 /* If NULL, error will flush stdout, then print on stderr the program
    name, a colon and a space.  Otherwise, error will call this
diff --git a/src/gl/getopt.c b/src/gl/getopt.c
index 3791f12..c8b3013 100644
--- a/src/gl/getopt.c
+++ b/src/gl/getopt.c
@@ -2,7 +2,7 @@
    NOTE: getopt is part of the C library, so if you don't know what
    "Keep this file name-space clean" means, talk to address@hidden
    before changing it!
-   Copyright (C) 1987-1996, 1998-2004, 2006, 2008-2010 Free Software
+   Copyright (C) 1987-1996, 1998-2004, 2006, 2008-2011 Free Software
    Foundation, Inc.
    This file is part of the GNU C Library.
 
diff --git a/src/gl/getopt.in.h b/src/gl/getopt.in.h
index adc2890..82e2937 100644
--- a/src/gl/getopt.in.h
+++ b/src/gl/getopt.in.h
@@ -1,5 +1,5 @@
 /* Declarations for getopt.
-   Copyright (C) 1989-1994, 1996-1999, 2001, 2003-2007, 2009-2010 Free Software
+   Copyright (C) 1989-1994, 1996-1999, 2001, 2003-2007, 2009-2011 Free Software
    Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -181,6 +181,7 @@ extern int optopt;
    one).  For long options that have a zero `flag' field, `getopt'
    returns the contents of the `val' field.  */
 
+# if !GNULIB_defined_struct_option
 struct option
 {
   const char *name;
@@ -190,6 +191,8 @@ struct option
   int *flag;
   int val;
 };
+#  define GNULIB_defined_struct_option 1
+# endif
 
 /* Names for the values of the `has_arg' field of `struct option'.  */
 
diff --git a/src/gl/getopt1.c b/src/gl/getopt1.c
index 046d69f..3656802 100644
--- a/src/gl/getopt1.c
+++ b/src/gl/getopt1.c
@@ -1,6 +1,6 @@
 /* getopt_long and getopt_long_only entry points for GNU getopt.
-   Copyright (C) 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997,
-   1998, 2004, 2006, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 1987-1994, 1996-1998, 2004, 2006, 2009-2011 Free Software
+   Foundation, Inc.
    This file is part of the GNU C Library.
 
    This program is free software: you can redistribute it and/or modify
diff --git a/src/gl/getopt_int.h b/src/gl/getopt_int.h
index 980b750..9f0c713 100644
--- a/src/gl/getopt_int.h
+++ b/src/gl/getopt_int.h
@@ -1,5 +1,5 @@
 /* Internal declarations for getopt.
-   Copyright (C) 1989-1994, 1996-1999, 2001, 2003-2004, 2009-2010 Free Software
+   Copyright (C) 1989-1994, 1996-1999, 2001, 2003-2004, 2009-2011 Free Software
    Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -108,7 +108,7 @@ struct _getopt_data
 #if defined _LIBC && defined USE_NONOPTION_FLAGS
   int __nonoption_flags_max_len;
   int __nonoption_flags_len;
-# endif
+#endif
 };
 
 /* The initializer is necessary to set OPTIND and OPTERR to their
diff --git a/src/gl/gettext.h b/src/gl/gettext.h
index f08759e..88d9867 100644
--- a/src/gl/gettext.h
+++ b/src/gl/gettext.h
@@ -1,5 +1,5 @@
 /* Convenience header for conditional use of GNU <libintl.h>.
-   Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2010 Free Software
+   Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2011 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -93,6 +93,12 @@
 
 #endif
 
+/* Prefer gnulib's setlocale override over libintl's setlocale override.  */
+#ifdef GNULIB_defined_setlocale
+# undef setlocale
+# define setlocale rpl_setlocale
+#endif
+
 /* A pseudo function call that serves as a marker for the automated
    extraction of messages, but does not call gettext().  The run-time
    translation is done at a different place in the code.
diff --git a/src/gl/intprops.h b/src/gl/intprops.h
index 0c27875..58b1b3f 100644
--- a/src/gl/intprops.h
+++ b/src/gl/intprops.h
@@ -1,7 +1,6 @@
 /* intprops.h -- properties of integer types
 
-   Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 Free Software
-   Foundation, Inc.
+   Copyright (C) 2001-2005, 2009-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -50,11 +49,11 @@
         ? (t) 0 \
         : TYPE_SIGNED_MAGNITUDE (t) \
         ? ~ (t) 0 \
-        : ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1)))
+        : ~ TYPE_MAXIMUM (t)))
 # define TYPE_MAXIMUM(t) \
   ((t) (! TYPE_SIGNED (t) \
         ? (t) -1 \
-        : ~ (~ (t) 0 << (sizeof (t) * CHAR_BIT - 1))))
+        : ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1)))
 
 /* Return zero if T can be determined to be an unsigned type.
    Otherwise, return 1.
diff --git a/src/gl/m4/00gnulib.m4 b/src/gl/m4/00gnulib.m4
index 301469b..7feed46 100644
--- a/src/gl/m4/00gnulib.m4
+++ b/src/gl/m4/00gnulib.m4
@@ -1,5 +1,5 @@
 # 00gnulib.m4 serial 2
-dnl Copyright (C) 2009-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/src/gl/m4/errno_h.m4 b/src/gl/m4/errno_h.m4
index e4325ac..687baff 100644
--- a/src/gl/m4/errno_h.m4
+++ b/src/gl/m4/errno_h.m4
@@ -1,5 +1,5 @@
-# errno_h.m4 serial 7
-dnl Copyright (C) 2004, 2006, 2008-2010 Free Software Foundation, Inc.
+# errno_h.m4 serial 8
+dnl Copyright (C) 2004, 2006, 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -50,7 +50,7 @@ booboo
   if test $gl_cv_header_errno_h_complete = yes; then
     ERRNO_H=''
   else
-    gl_CHECK_NEXT_HEADERS([errno.h])
+    gl_NEXT_HEADERS([errno.h])
     ERRNO_H='errno.h'
   fi
   AC_SUBST([ERRNO_H])
diff --git a/src/gl/m4/error.m4 b/src/gl/m4/error.m4
index dd5a197..6ea75ac 100644
--- a/src/gl/m4/error.m4
+++ b/src/gl/m4/error.m4
@@ -1,6 +1,6 @@
 #serial 13
 
-# Copyright (C) 1996-1998, 2001-2004, 2009-2010 Free Software Foundation, Inc.
+# Copyright (C) 1996-1998, 2001-2004, 2009-2011 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
diff --git a/src/gl/m4/extensions.m4 b/src/gl/m4/extensions.m4
index 7d9458a..1330503 100644
--- a/src/gl/m4/extensions.m4
+++ b/src/gl/m4/extensions.m4
@@ -1,7 +1,7 @@
 # serial 9  -*- Autoconf -*-
 # Enable extensions on systems that normally disable them.
 
-# Copyright (C) 2003, 2006-2010 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2006-2011 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
diff --git a/src/gl/m4/getopt.m4 b/src/gl/m4/getopt.m4
index 29a7187..035a530 100644
--- a/src/gl/m4/getopt.m4
+++ b/src/gl/m4/getopt.m4
@@ -1,5 +1,5 @@
-# getopt.m4 serial 32
-dnl Copyright (C) 2002-2006, 2008-2010 Free Software Foundation, Inc.
+# getopt.m4 serial 34
+dnl Copyright (C) 2002-2006, 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -56,7 +56,6 @@ AC_DEFUN([gl_GETOPT_CHECK_HEADERS],
   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
 
   gl_CHECK_NEXT_HEADERS([getopt.h])
-  AC_CHECK_HEADERS_ONCE([getopt.h])
   if test $ac_cv_header_getopt_h = yes; then
     HAVE_GETOPT_H=1
   else
@@ -76,20 +75,6 @@ AC_DEFUN([gl_GETOPT_CHECK_HEADERS],
     AC_CHECK_FUNCS([getopt_long_only], [], [gl_replace_getopt=yes])
   fi
 
-  dnl BSD getopt_long uses an incompatible method to reset option processing.
-  dnl Existence of the variable, in and of itself, is not a reason to replace
-  dnl getopt, but knowledge of the variable is needed to determine how to
-  dnl reset and whether a reset reparses the environment.
-  dnl Solaris supports neither optreset nor optind=0, but keeps no state that
-  dnl needs a reset beyond setting optind=1; detect Solaris by getopt_clip.
-  if test -z "$gl_replace_getopt"; then
-    AC_CHECK_DECLS([optreset], [],
-      [AC_CHECK_DECLS([getopt_clip], [], [],
-        [[#include <getopt.h>]])
-      ],
-      [[#include <getopt.h>]])
-  fi
-
   dnl mingw's getopt (in libmingwex.a) does weird things when the options
   dnl strings starts with '+' and it's not the first call.  Some internal state
   dnl is left over from earlier calls, and neither setting optind = 0 nor
@@ -103,18 +88,34 @@ AC_DEFUN([gl_GETOPT_CHECK_HEADERS],
     AC_CACHE_CHECK([whether getopt is POSIX compatible],
       [gl_cv_func_getopt_posix],
       [
+        dnl BSD getopt_long uses an incompatible method to reset
+        dnl option processing.  Existence of the variable, in and of
+        dnl itself, is not a reason to replace getopt, but knowledge
+        dnl of the variable is needed to determine how to reset and
+        dnl whether a reset reparses the environment.  Solaris
+        dnl supports neither optreset nor optind=0, but keeps no state
+        dnl that needs a reset beyond setting optind=1; detect Solaris
+        dnl by getopt_clip.
+        AC_COMPILE_IFELSE(
+          [AC_LANG_PROGRAM(
+             [[#include <unistd.h>]],
+             [[int *p = &optreset; return optreset;]])],
+          [gl_optind_min=1],
+          [AC_COMPILE_IFELSE(
+             [AC_LANG_PROGRAM(
+                [[#include <getopt.h>]],
+                [[return !getopt_clip;]])],
+             [gl_optind_min=1],
+             [gl_optind_min=0])])
+
         dnl This test fails on mingw and succeeds on many other platforms.
+        gl_save_CPPFLAGS=$CPPFLAGS
+        CPPFLAGS="$CPPFLAGS -DOPTIND_MIN=$gl_optind_min"
         AC_RUN_IFELSE([AC_LANG_SOURCE([[
 #include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
 
-#if !HAVE_DECL_OPTRESET && !HAVE_DECL_GETOPT_CLIP
-# define OPTIND_MIN 0
-#else
-# define OPTIND_MIN 1
-#endif
-
 int
 main ()
 {
@@ -202,6 +203,7 @@ main ()
              *)              gl_cv_func_getopt_posix="guessing yes";;
            esac
           ])
+        CPPFLAGS=$gl_save_CPPFLAGS
       ])
     case "$gl_cv_func_getopt_posix" in
       *no) gl_replace_getopt=yes ;;
diff --git a/src/gl/m4/gnulib-cache.m4 b/src/gl/m4/gnulib-cache.m4
index 9a55f71..008c513 100644
--- a/src/gl/m4/gnulib-cache.m4
+++ b/src/gl/m4/gnulib-cache.m4
@@ -1,4 +1,4 @@
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
diff --git a/src/gl/m4/gnulib-common.m4 b/src/gl/m4/gnulib-common.m4
index d0c8b66..ecbf336 100644
--- a/src/gl/m4/gnulib-common.m4
+++ b/src/gl/m4/gnulib-common.m4
@@ -1,5 +1,5 @@
-# gnulib-common.m4 serial 21
-dnl Copyright (C) 2007-2010 Free Software Foundation, Inc.
+# gnulib-common.m4 serial 23
+dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -102,6 +102,26 @@ AC_DEFUN([gl_MODULE_INDICATOR_FOR_TESTS],
     [Define to 1 when the gnulib module $1 should be tested.])
 ])
 
+# gl_ASSERT_NO_GNULIB_POSIXCHECK
+# asserts that there will never be a need to #define GNULIB_POSIXCHECK.
+# and thereby enables an optimization of configure and config.h.
+# Used by Emacs.
+AC_DEFUN([gl_ASSERT_NO_GNULIB_POSIXCHECK],
+[
+  dnl Override gl_WARN_ON_USE_PREPARE.
+  AC_DEFUN([gl_WARN_ON_USE_PREPARE], [])
+])
+
+# gl_ASSERT_NO_GNULIB_TESTS
+# asserts that there will be no gnulib tests in the scope of the configure.ac
+# and thereby enables an optimization of config.h.
+# Used by Emacs.
+AC_DEFUN([gl_ASSERT_NO_GNULIB_TESTS],
+[
+  dnl Override gl_MODULE_INDICATOR_FOR_TESTS.
+  AC_DEFUN([gl_MODULE_INDICATOR_FOR_TESTS], [])
+])
+
 # Test whether <features.h> exists.
 # Set HAVE_FEATURES_H.
 AC_DEFUN([gl_FEATURES_H],
diff --git a/src/gl/m4/gnulib-comp.m4 b/src/gl/m4/gnulib-comp.m4
index ea32207..7dde8a5 100644
--- a/src/gl/m4/gnulib-comp.m4
+++ b/src/gl/m4/gnulib-comp.m4
@@ -1,5 +1,5 @@
 # DO NOT EDIT! GENERATED AUTOMATICALLY!
-# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 Free Software Foundation, Inc.
 #
 # This file is free software, distributed under the terms of the GNU
 # General Public License.  As a special exception to the GNU General
diff --git a/src/gl/m4/gnulib-tool.m4 b/src/gl/m4/gnulib-tool.m4
index 69e7733..ed41e9d 100644
--- a/src/gl/m4/gnulib-tool.m4
+++ b/src/gl/m4/gnulib-tool.m4
@@ -1,5 +1,5 @@
 # gnulib-tool.m4 serial 2
-dnl Copyright (C) 2004-2005, 2009-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2004-2005, 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/src/gl/m4/include_next.m4 b/src/gl/m4/include_next.m4
index e37eb05..b3c7849 100644
--- a/src/gl/m4/include_next.m4
+++ b/src/gl/m4/include_next.m4
@@ -1,5 +1,5 @@
-# include_next.m4 serial 16
-dnl Copyright (C) 2006-2010 Free Software Foundation, Inc.
+# include_next.m4 serial 18
+dnl Copyright (C) 2006-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -147,11 +147,33 @@ choke me
 # Note: This macro assumes that the header file is not empty after
 # preprocessing, i.e. it does not only define preprocessor macros but also
 # provides some type/enum definitions or function/variable declarations.
+#
+# This macro also checks whether each header exists, by invoking
+# AC_CHECK_HEADERS_ONCE or AC_CHECK_HEADERS on each argument.
 AC_DEFUN([gl_CHECK_NEXT_HEADERS],
 [
+  gl_NEXT_HEADERS_INTERNAL([$1], [check])
+])
+
+# gl_NEXT_HEADERS(HEADER1 HEADER2 ...)
+# ------------------------------------
+# Like gl_CHECK_NEXT_HEADERS, except do not check whether the headers exist.
+# This is suitable for headers like <stddef.h> that are standardized by C89
+# and therefore can be assumed to exist.
+AC_DEFUN([gl_NEXT_HEADERS],
+[
+  gl_NEXT_HEADERS_INTERNAL([$1], [assume])
+])
+
+# The guts of gl_CHECK_NEXT_HEADERS and gl_NEXT_HEADERS.
+AC_DEFUN([gl_NEXT_HEADERS_INTERNAL],
+[
   AC_REQUIRE([gl_INCLUDE_NEXT])
   AC_REQUIRE([AC_CANONICAL_HOST])
-  AC_CHECK_HEADERS_ONCE([$1])
+
+  m4_if([$2], [check],
+    [AC_CHECK_HEADERS_ONCE([$1])
+    ])
 
   m4_foreach_w([gl_HEADER_NAME], [$1],
     [AS_VAR_PUSHDEF([gl_next_header],
@@ -162,39 +184,44 @@ AC_DEFUN([gl_CHECK_NEXT_HEADERS],
        AC_CACHE_CHECK(
          [absolute name of <]m4_defn([gl_HEADER_NAME])[>],
          m4_defn([gl_next_header]),
-         [AS_VAR_PUSHDEF([gl_header_exists],
-                         [ac_cv_header_]m4_defn([gl_HEADER_NAME]))
-          if test AS_VAR_GET(gl_header_exists) = yes; then
-            AC_LANG_CONFTEST(
-              [AC_LANG_SOURCE(
-                 [[#include <]]m4_dquote(m4_defn([gl_HEADER_NAME]))[[>]]
-               )])
-            dnl AIX "xlc -E" and "cc -E" omit #line directives for header files
-            dnl that contain only a #include of other header files and no
-            dnl non-comment tokens of their own. This leads to a failure to
-            dnl detect the absolute name of <dirent.h>, <signal.h>, <poll.h>
-            dnl and others. The workaround is to force preservation of comments
-            dnl through option -C. This ensures all necessary #line directives
-            dnl are present. GCC supports option -C as well.
-            case "$host_os" in
-              aix*) gl_absname_cpp="$ac_cpp -C" ;;
-              *)    gl_absname_cpp="$ac_cpp" ;;
-            esac
-            dnl eval is necessary to expand gl_absname_cpp.
-            dnl Ultrix and Pyramid sh refuse to redirect output of eval,
-            dnl so use subshell.
-            AS_VAR_SET([gl_next_header],
-              ['"'`(eval "$gl_absname_cpp conftest.$ac_ext") 
2>&AS_MESSAGE_LOG_FD |
-               sed -n '\#/]m4_defn([gl_HEADER_NAME])[#{
-                 s#.*"\(.*/]m4_defn([gl_HEADER_NAME])[\)".*#\1#
-                 s#^/[^/]#//&#
-                 p
-                 q
-               }'`'"'])
-          else
-            AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>'])
-          fi
-          AS_VAR_POPDEF([gl_header_exists])])
+         [m4_if([$2], [check],
+            [AS_VAR_PUSHDEF([gl_header_exists],
+                            [ac_cv_header_]m4_defn([gl_HEADER_NAME]))
+             if test AS_VAR_GET(gl_header_exists) = yes; then
+             AS_VAR_POPDEF([gl_header_exists])
+            ])
+               AC_LANG_CONFTEST(
+                 [AC_LANG_SOURCE(
+                    [[#include <]]m4_dquote(m4_defn([gl_HEADER_NAME]))[[>]]
+                  )])
+               dnl AIX "xlc -E" and "cc -E" omit #line directives for header
+               dnl files that contain only a #include of other header files and
+               dnl no non-comment tokens of their own. This leads to a failure
+               dnl to detect the absolute name of <dirent.h>, <signal.h>,
+               dnl <poll.h> and others. The workaround is to force preservation
+               dnl of comments through option -C. This ensures all necessary
+               dnl #line directives are present. GCC supports option -C as 
well.
+               case "$host_os" in
+                 aix*) gl_absname_cpp="$ac_cpp -C" ;;
+                 *)    gl_absname_cpp="$ac_cpp" ;;
+               esac
+               dnl eval is necessary to expand gl_absname_cpp.
+               dnl Ultrix and Pyramid sh refuse to redirect output of eval,
+               dnl so use subshell.
+               AS_VAR_SET([gl_next_header],
+                 ['"'`(eval "$gl_absname_cpp conftest.$ac_ext") 
2>&AS_MESSAGE_LOG_FD |
+                  sed -n '\#/]m4_defn([gl_HEADER_NAME])[#{
+                    s#.*"\(.*/]m4_defn([gl_HEADER_NAME])[\)".*#\1#
+                    s#^/[^/]#//&#
+                    p
+                    q
+                  }'`'"'])
+          m4_if([$2], [check],
+            [else
+               AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>'])
+             fi
+            ])
+         ])
      fi
      AC_SUBST(
        AS_TR_CPP([NEXT_]m4_defn([gl_HEADER_NAME])),
diff --git a/src/gl/m4/stdarg.m4 b/src/gl/m4/stdarg.m4
index 8a62f2e..a1ef178 100644
--- a/src/gl/m4/stdarg.m4
+++ b/src/gl/m4/stdarg.m4
@@ -1,5 +1,5 @@
-# stdarg.m4 serial 4
-dnl Copyright (C) 2006, 2008-2010 Free Software Foundation, Inc.
+# stdarg.m4 serial 5
+dnl Copyright (C) 2006, 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -41,7 +41,7 @@ void (*func) (va_list, va_list) = va_copy;
     if test $gl_aixcc = yes; then
       dnl Provide a substitute <stdarg.h> file.
       STDARG_H=stdarg.h
-      gl_CHECK_NEXT_HEADERS([stdarg.h])
+      gl_NEXT_HEADERS([stdarg.h])
       dnl Fallback for the case when <stdarg.h> contains only macro 
definitions.
       if test "$gl_cv_next_stdarg_h" = '""'; then
         gl_cv_next_stdarg_h='"///usr/include/stdarg.h"'
diff --git a/src/gl/m4/stddef_h.m4 b/src/gl/m4/stddef_h.m4
index c3ae569..1942b6a 100644
--- a/src/gl/m4/stddef_h.m4
+++ b/src/gl/m4/stddef_h.m4
@@ -1,6 +1,6 @@
 dnl A placeholder for POSIX 2008 <stddef.h>, for platforms that have issues.
-# stddef_h.m4 serial 2
-dnl Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+# stddef_h.m4 serial 3
+dnl Copyright (C) 2009-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -25,7 +25,7 @@ AC_DEFUN([gl_STDDEF_H],
     STDDEF_H=stddef.h
   fi
   if test -n "$STDDEF_H"; then
-    gl_CHECK_NEXT_HEADERS([stddef.h])
+    gl_NEXT_HEADERS([stddef.h])
   fi
 ])
 
diff --git a/src/gl/m4/strerror.m4 b/src/gl/m4/strerror.m4
index 1649b24..73d1d54 100644
--- a/src/gl/m4/strerror.m4
+++ b/src/gl/m4/strerror.m4
@@ -1,5 +1,5 @@
 # strerror.m4 serial 9
-dnl Copyright (C) 2002, 2007-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2007-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/src/gl/m4/string_h.m4 b/src/gl/m4/string_h.m4
index 5844b2d..30ddfbc 100644
--- a/src/gl/m4/string_h.m4
+++ b/src/gl/m4/string_h.m4
@@ -1,11 +1,11 @@
 # Configure a GNU-like replacement for <string.h>.
 
-# Copyright (C) 2007-2010 Free Software Foundation, Inc.
+# Copyright (C) 2007-2011 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 18
+# serial 19
 
 # Written by Paul Eggert.
 
@@ -20,7 +20,7 @@ AC_DEFUN([gl_HEADER_STRING_H_BODY],
 [
   AC_REQUIRE([AC_C_RESTRICT])
   AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
-  gl_CHECK_NEXT_HEADERS([string.h])
+  gl_NEXT_HEADERS([string.h])
 
   dnl Check for declarations of anything we want to poison if the
   dnl corresponding gnulib module is not in use, and which is not
diff --git a/src/gl/m4/unistd_h.m4 b/src/gl/m4/unistd_h.m4
index e2f7f2b..c81a113 100644
--- a/src/gl/m4/unistd_h.m4
+++ b/src/gl/m4/unistd_h.m4
@@ -1,5 +1,5 @@
-# unistd_h.m4 serial 48
-dnl Copyright (C) 2006-2010 Free Software Foundation, Inc.
+# unistd_h.m4 serial 53
+dnl Copyright (C) 2006-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -14,8 +14,6 @@ AC_DEFUN([gl_UNISTD_H],
   AC_REQUIRE([AC_C_INLINE])
 
   gl_CHECK_NEXT_HEADERS([unistd.h])
-
-  AC_CHECK_HEADERS_ONCE([unistd.h])
   if test $ac_cv_header_unistd_h = yes; then
     HAVE_UNISTD_H=1
   else
@@ -38,7 +36,7 @@ AC_DEFUN([gl_UNISTD_H],
     ]], [chown dup2 dup3 environ euidaccess faccessat fchdir fchownat
     fsync ftruncate getcwd getdomainname getdtablesize getgroups
     gethostname getlogin getlogin_r getpagesize getusershell setusershell
-    endusershell lchown link linkat lseek pipe2 pread pwrite readlink
+    endusershell lchown link linkat lseek pipe pipe2 pread pwrite readlink
     readlinkat rmdir sleep symlink symlinkat ttyname_r unlink unlinkat
     usleep])
 ])
@@ -78,6 +76,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   GNULIB_LINK=0;             AC_SUBST([GNULIB_LINK])
   GNULIB_LINKAT=0;           AC_SUBST([GNULIB_LINKAT])
   GNULIB_LSEEK=0;            AC_SUBST([GNULIB_LSEEK])
+  GNULIB_PIPE=0;             AC_SUBST([GNULIB_PIPE])
   GNULIB_PIPE2=0;            AC_SUBST([GNULIB_PIPE2])
   GNULIB_PREAD=0;            AC_SUBST([GNULIB_PREAD])
   GNULIB_PWRITE=0;           AC_SUBST([GNULIB_PWRITE])
@@ -112,6 +111,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   HAVE_LCHOWN=1;          AC_SUBST([HAVE_LCHOWN])
   HAVE_LINK=1;            AC_SUBST([HAVE_LINK])
   HAVE_LINKAT=1;          AC_SUBST([HAVE_LINKAT])
+  HAVE_PIPE=1;            AC_SUBST([HAVE_PIPE])
   HAVE_PIPE2=1;           AC_SUBST([HAVE_PIPE2])
   HAVE_PREAD=1;           AC_SUBST([HAVE_PREAD])
   HAVE_PWRITE=1;          AC_SUBST([HAVE_PWRITE])
@@ -120,14 +120,15 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   HAVE_SLEEP=1;           AC_SUBST([HAVE_SLEEP])
   HAVE_SYMLINK=1;         AC_SUBST([HAVE_SYMLINK])
   HAVE_SYMLINKAT=1;       AC_SUBST([HAVE_SYMLINKAT])
-  HAVE_TTYNAME_R=1;       AC_SUBST([HAVE_TTYNAME_R])
   HAVE_UNLINKAT=1;        AC_SUBST([HAVE_UNLINKAT])
   HAVE_USLEEP=1;          AC_SUBST([HAVE_USLEEP])
   HAVE_DECL_ENVIRON=1;    AC_SUBST([HAVE_DECL_ENVIRON])
+  HAVE_DECL_FCHDIR=1;     AC_SUBST([HAVE_DECL_FCHDIR])
   HAVE_DECL_GETDOMAINNAME=1; AC_SUBST([HAVE_DECL_GETDOMAINNAME])
   HAVE_DECL_GETLOGIN_R=1; AC_SUBST([HAVE_DECL_GETLOGIN_R])
   HAVE_DECL_GETPAGESIZE=1; AC_SUBST([HAVE_DECL_GETPAGESIZE])
   HAVE_DECL_GETUSERSHELL=1; AC_SUBST([HAVE_DECL_GETUSERSHELL])
+  HAVE_DECL_TTYNAME_R=1;  AC_SUBST([HAVE_DECL_TTYNAME_R])
   HAVE_OS_H=0;            AC_SUBST([HAVE_OS_H])
   HAVE_SYS_PARAM_H=0;     AC_SUBST([HAVE_SYS_PARAM_H])
   REPLACE_CHOWN=0;        AC_SUBST([REPLACE_CHOWN])
@@ -137,6 +138,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   REPLACE_FCHOWNAT=0;     AC_SUBST([REPLACE_FCHOWNAT])
   REPLACE_GETCWD=0;       AC_SUBST([REPLACE_GETCWD])
   REPLACE_GETDOMAINNAME=0; AC_SUBST([REPLACE_GETDOMAINNAME])
+  REPLACE_GETLOGIN_R=0;   AC_SUBST([REPLACE_GETLOGIN_R])
   REPLACE_GETGROUPS=0;    AC_SUBST([REPLACE_GETGROUPS])
   REPLACE_GETPAGESIZE=0;  AC_SUBST([REPLACE_GETPAGESIZE])
   REPLACE_LCHOWN=0;       AC_SUBST([REPLACE_LCHOWN])
diff --git a/src/gl/m4/version-etc.m4 b/src/gl/m4/version-etc.m4
index 2c572b4..5032bf8 100644
--- a/src/gl/m4/version-etc.m4
+++ b/src/gl/m4/version-etc.m4
@@ -1,5 +1,5 @@
 # version-etc.m4 serial 1
-# Copyright (C) 2009-2010 Free Software Foundation, Inc.
+# Copyright (C) 2009-2011 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
diff --git a/src/gl/m4/warn-on-use.m4 b/src/gl/m4/warn-on-use.m4
index 42daae8..e0d0f27 100644
--- a/src/gl/m4/warn-on-use.m4
+++ b/src/gl/m4/warn-on-use.m4
@@ -1,5 +1,5 @@
 # warn-on-use.m4 serial 2
-dnl Copyright (C) 2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2010-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/src/gl/m4/wchar_t.m4 b/src/gl/m4/wchar_t.m4
index a133e6a..d2c03c4 100644
--- a/src/gl/m4/wchar_t.m4
+++ b/src/gl/m4/wchar_t.m4
@@ -1,5 +1,5 @@
 # wchar_t.m4 serial 4 (gettext-0.18.2)
-dnl Copyright (C) 2002-2003, 2008-2010 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/src/gl/progname.c b/src/gl/progname.c
index 1415e6a..2465748 100644
--- a/src/gl/progname.c
+++ b/src/gl/progname.c
@@ -1,5 +1,5 @@
 /* Program name management.
-   Copyright (C) 2001-2003, 2005-2010 Free Software Foundation, Inc.
+   Copyright (C) 2001-2003, 2005-2011 Free Software Foundation, Inc.
    Written by Bruno Haible <address@hidden>, 2001.
 
    This program is free software: you can redistribute it and/or modify
diff --git a/src/gl/progname.h b/src/gl/progname.h
index 6430c63..d939e56 100644
--- a/src/gl/progname.h
+++ b/src/gl/progname.h
@@ -1,5 +1,5 @@
 /* Program name management.
-   Copyright (C) 2001-2004, 2006, 2009-2010 Free Software Foundation, Inc.
+   Copyright (C) 2001-2004, 2006, 2009-2011 Free Software Foundation, Inc.
    Written by Bruno Haible <address@hidden>, 2001.
 
    This program is free software: you can redistribute it and/or modify
diff --git a/src/gl/stdarg.in.h b/src/gl/stdarg.in.h
index 8b88449..4469d54 100644
--- a/src/gl/stdarg.in.h
+++ b/src/gl/stdarg.in.h
@@ -1,5 +1,5 @@
 /* Substitute for and wrapper around <stdarg.h>.
-   Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2008-2011 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/src/gl/stddef.in.h b/src/gl/stddef.in.h
index 6642d49..62a91a7 100644
--- a/src/gl/stddef.in.h
+++ b/src/gl/stddef.in.h
@@ -1,6 +1,6 @@
 /* A substitute for POSIX 2008 <stddef.h>, for platforms that have issues.
 
-   Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2009-2011 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/src/gl/strerror.c b/src/gl/strerror.c
index 6e1c0b0..5dae111 100644
--- a/src/gl/strerror.c
+++ b/src/gl/strerror.c
@@ -1,6 +1,6 @@
 /* strerror.c --- POSIX compatible system error routine
 
-   Copyright (C) 2007-2010 Free Software Foundation, Inc.
+   Copyright (C) 2007-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/src/gl/string.in.h b/src/gl/string.in.h
index b0c2ba1..336e246 100644
--- a/src/gl/string.in.h
+++ b/src/gl/string.in.h
@@ -1,6 +1,6 @@
 /* A GNU-like <string.h>.
 
-   Copyright (C) 1995-1996, 2001-2010 Free Software Foundation, Inc.
+   Copyright (C) 1995-1996, 2001-2011 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -37,13 +37,8 @@
 # include <wchar.h>
 #endif
 
-#ifndef __attribute__
-/* This feature is available in gcc versions 2.5 and later.  */
-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
-#  define __attribute__(Spec) /* empty */
-# endif
-#endif
-/* The attribute __pure__ was added in gcc 2.96.  */
+/* The __attribute__ feature is available in gcc versions 2.5 and later.
+   The attribute __pure__ was added in gcc 2.96.  */
 #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
 # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
 #else
diff --git a/src/gl/unistd.in.h b/src/gl/unistd.in.h
index fcf7c43..15893d7 100644
--- a/src/gl/unistd.in.h
+++ b/src/gl/unistd.in.h
@@ -1,5 +1,5 @@
 /* Substitute for and wrapper around <unistd.h>.
-   Copyright (C) 2003-2010 Free Software Foundation, Inc.
+   Copyright (C) 2003-2011 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -88,9 +88,11 @@
 # include <io.h>
 #endif
 
-/* AIX and OSF/1 5.1 declare getdomainname in <netdb.h>, not in <unistd.h>.  */
+/* AIX and OSF/1 5.1 declare getdomainname in <netdb.h>, not in <unistd.h>.
+   NonStop Kernel declares gethostname in <netdb.h>, not in <unistd.h>.  */
 /* But avoid namespace pollution on glibc systems.  */
-#if @GNULIB_GETDOMAINNAME@ && (defined _AIX || defined __osf__) \
+#if ((@GNULIB_GETDOMAINNAME@ && (defined _AIX || defined __osf__)) \
+     || (@GNULIB_GETHOSTNAME@ && defined __TANDEM)) \
     && !defined __GLIBC__
 # include <netdb.h>
 #endif
@@ -435,6 +437,10 @@ _GL_EXTERN_C void _gl_unregister_fd (int fd);
 _GL_EXTERN_C int _gl_register_dup (int oldfd, int newfd);
 _GL_EXTERN_C const char *_gl_directory_name (int fd);
 
+# else
+#  if address@hidden@
+_GL_FUNCDECL_SYS (fchdir, int, (int /*fd*/));
+#  endif
 # endif
 _GL_CXXALIAS_SYS (fchdir, int, (int /*fd*/));
 _GL_CXXALIASWARN (fchdir);
@@ -650,7 +656,8 @@ _GL_CXXALIAS_RPL (gethostname, int, (char *name, size_t 
len));
 _GL_FUNCDECL_SYS (gethostname, int, (char *name, size_t len)
                                     _GL_ARG_NONNULL ((1)));
 #  endif
-/* Need to cast, because on Solaris 10 systems, the second parameter is
+/* Need to cast, because on Solaris 10 and OSF/1 5.1 systems, the second
+   parameter is
                                                       int len.  */
 _GL_CXXALIAS_SYS_CAST (gethostname, int, (char *name, size_t len));
 # endif
@@ -707,13 +714,22 @@ _GL_WARN_ON_USE (getlogin, "getlogin is unportable - "
      ${LOGNAME-$USER}        on Unix platforms,
      $USERNAME               on native Windows platforms.
  */
-# if address@hidden@
+# if @REPLACE_GETLOGIN_R@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   define getlogin_r rpl_getlogin_r
+#  endif
+_GL_FUNCDECL_RPL (getlogin_r, int, (char *name, size_t size)
+                                   _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (getlogin_r, int, (char *name, size_t size));
+# else
+#  if address@hidden@
 _GL_FUNCDECL_SYS (getlogin_r, int, (char *name, size_t size)
                                    _GL_ARG_NONNULL ((1)));
-# endif
+#  endif
 /* Need to cast, because on Solaris 10 systems, the second argument is
                                                      int size.  */
 _GL_CXXALIAS_SYS_CAST (getlogin_r, int, (char *name, size_t size));
+# endif
 _GL_CXXALIASWARN (getlogin_r);
 #elif defined GNULIB_POSIXCHECK
 # undef getlogin_r
@@ -780,11 +796,14 @@ _GL_CXXALIAS_RPL (getpagesize, int, (void));
 #    if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #     define getpagesize() _gl_getpagesize ()
 #    else
+#     if !GNULIB_defined_getpagesize_function
 static inline int
 getpagesize ()
 {
   return _gl_getpagesize ();
 }
+#      define GNULIB_defined_getpagesize_function 1
+#     endif
 #    endif
 #   endif
 #  endif
@@ -972,6 +991,24 @@ _GL_WARN_ON_USE (lseek, "lseek does not fail with ESPIPE 
on pipes on some "
 #endif
 
 
+#if @GNULIB_PIPE@
+/* Create a pipe, defaulting to O_BINARY mode.
+   Store the read-end as fd[0] and the write-end as fd[1].
+   Return 0 upon success, or -1 with errno set upon failure.  */
+# if address@hidden@
+_GL_FUNCDECL_SYS (pipe, int, (int fd[2]) _GL_ARG_NONNULL ((1)));
+# endif
+_GL_CXXALIAS_SYS (pipe, int, (int fd[2]));
+_GL_CXXALIASWARN (pipe);
+#elif defined GNULIB_POSIXCHECK
+# undef pipe
+# if HAVE_RAW_DECL_PIPE
+_GL_WARN_ON_USE (pipe, "pipe is unportable - "
+                 "use gnulib module pipe-posix for portability");
+# endif
+#endif
+
+
 #if @GNULIB_PIPE2@
 /* Create a pipe, applying the given flags when opening the read-end of the
    pipe and the write-end of the pipe.
@@ -1226,7 +1263,7 @@ _GL_FUNCDECL_RPL (ttyname_r, int,
 _GL_CXXALIAS_RPL (ttyname_r, int,
                   (int fd, char *buf, size_t buflen));
 # else
-#  if address@hidden@
+#  if address@hidden@
 _GL_FUNCDECL_SYS (ttyname_r, int,
                   (int fd, char *buf, size_t buflen) _GL_ARG_NONNULL ((2)));
 #  endif
diff --git a/src/gl/version-etc.c b/src/gl/version-etc.c
index 19c873d..b8d4724 100644
--- a/src/gl/version-etc.c
+++ b/src/gl/version-etc.c
@@ -1,5 +1,5 @@
 /* Print --version and bug-reporting information in a consistent format.
-   Copyright (C) 1999-2010 Free Software Foundation, Inc.
+   Copyright (C) 1999-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -38,7 +38,7 @@
 # define PACKAGE PACKAGE_TARNAME
 #endif
 
-enum { COPYRIGHT_YEAR = 2010 };
+enum { COPYRIGHT_YEAR = 2011 };
 
 /* The three functions below display the --version information the
    standard way.
diff --git a/src/gl/version-etc.h b/src/gl/version-etc.h
index 629fe83..a9b313d 100644
--- a/src/gl/version-etc.h
+++ b/src/gl/version-etc.h
@@ -1,5 +1,5 @@
 /* Print --version and bug-reporting information in a consistent format.
-   Copyright (C) 1999, 2003, 2005, 2009-2010 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2003, 2005, 2009-2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -23,11 +23,11 @@
 # include <stdio.h>
 
 /* The `sentinel' attribute was added in gcc 4.0.  */
-#ifndef ATTRIBUTE_SENTINEL
+#ifndef _GL_ATTRIBUTE_SENTINEL
 # if 4 <= __GNUC__
-#  define ATTRIBUTE_SENTINEL __attribute__ ((__sentinel__))
+#  define _GL_ATTRIBUTE_SENTINEL __attribute__ ((__sentinel__))
 # else
-#  define ATTRIBUTE_SENTINEL /* empty */
+#  define _GL_ATTRIBUTE_SENTINEL /* empty */
 # endif
 #endif
 
@@ -70,7 +70,7 @@ extern void version_etc (FILE *stream,
                          const char *command_name, const char *package,
                          const char *version,
                          /* const char *author1, ..., NULL */ ...)
-  ATTRIBUTE_SENTINEL;
+  _GL_ATTRIBUTE_SENTINEL;
 
 /* Display the usual `Report bugs to' stanza */
 extern void emit_bug_reporting_address (void);


hooks/post-receive
-- 
GNU gss



reply via email to

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