diff options
author | Jakub Jelinek <jakub@redhat.com> | 2009-02-18 15:49:44 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2009-02-18 15:49:44 +0000 |
commit | cf22c5c9b3a4a6cc81a269d49d2324b5df084d74 (patch) | |
tree | ca7e374c348baf4e6510329f3f271eca4eb5419f | |
parent | Updated to fedora-glibc-20090204T2135 (diff) | |
download | glibc-cf22c5c9b3a4a6cc81a269d49d2324b5df084d74.tar.gz glibc-cf22c5c9b3a4a6cc81a269d49d2324b5df084d74.tar.bz2 glibc-cf22c5c9b3a4a6cc81a269d49d2324b5df084d74.zip |
Updated to fedora-glibc-20090218T1534
107 files changed, 5124 insertions, 3687 deletions
@@ -1,3 +1,219 @@ +2009-02-16 Jakub Jelinek <jakub@redhat.com> + + * stdlib/monetary.h: Uglify function parameter names. + * sunrpc/rpc/pmap_clnt.h: Likewise. + * sunrpc/rpc/svc.h: Likewise. + * sunrpc/rpc/xdr.h: Likewise. + * sunrpc/rpc/clnt.h: Likewise. + * resolv/netdb.h: Likewise. + * resolv/arpa/nameser.h: Likewise. + * resolv/resolv.h: Likewise. + * argp/argp.h: Likewise. + * locale/langinfo.h: Likewise. + * io/sys/stat.h: Likewise. + * posix/spawn.h: Likewise. + * nis/rpcsvc/nislib.h: Likewise. + * malloc/obstack.h: Likewise. + * sysdeps/ia64/bits/link.h: Likewise. + * sysdeps/i386/bits/link.h: Likewise. + * sysdeps/s390/bits/link.h: Likewise. + * sysdeps/powerpc/bits/link.h: Likewise. + * sysdeps/x86_64/bits/link.h: Likewise. + * sysdeps/sparc/bits/link.h: Likewise. + * sysdeps/sh/bits/link.h: Likewise. + * sysdeps/unix/sysv/linux/i386/sys/io.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sys/io.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: Likewise. + * sysdeps/unix/sysv/linux/sys/eventfd.h: Likewise. + +2008-12-01 Fredrik Unger <fred@tree.se> + + * soft-fp/double.h [_FP_W_TYPE_SIZE >= 64] (FP_UNPACK_SEMIRAW_D, + FP_UNPACK_SEMIRAW_DP): Use _FP_UNPACK_RAW_1 instead of + _FP_UNPACK_RAW_2, fix up first argument. + +2009-02-15 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/getsysstats.c (next_line): New function. + (GET_NPROCS_PARSER): Change parameters and use next_line. + (__get_nprocs): Rewrite to not use stdio routines. + * sysdeps/unix/sysv/linux/sparc/getsysstats.c (GET_NPROCS_PARSER): + Change parameters and use next_line. + +2009-02-13 Ulrich Drepper <drepper@redhat.com> + + [BZ #5381] + * nscd/nscd.h: Remove definitions and declarations for mem_in_flight. + Change mempool_alloc prototype. + * nscd/mem.c (gc): Don't handle mem_in_flight. + (mempool_alloc): Third parameter now only indicates whether this is the + first call (to allocate data) or not. If it is, get db rdlock. + Release it on error. Don't handle mem_in_flight. + * nscd/aicache.c (addhstaiX): Mark he parameter as const. + Adjust third parameter of mempool_alloc calls. + Nothing to do here in case mempool_alloc fails. + Avoid local variable shadowing parameter. No need to get db rdlock + before calling cache_add. + * nscd/cache.c (cache_add): Adjust call to mempool_alloc. There is + no mem_in_flight array anymore. + * nscd/connections.c: Remove definition and handling of mem_in_flight. + * nscd/grpcache.c (cache_addgr): Adjust third parameter of + mempool_alloc calls. Mark he parameter as const. Nothing to do here + in case mempool_alloc fails. No need to get db rdlock before calling + cache_add. + * nscd/hstcache.c (cache_addhst): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + * nscd/servicescache.c (cache_addserv): Likewise. + * nscd/pwdcache.c (cache_addpw): Likewise. Remove some debugging code. + +2009-02-11 Ulrich Drepper <drepper@redhat.com> + + * po/lt.po: Update from translation team. + +2009-02-10 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-load.c (open_verify): In case VALID_ELF_HEADER is + defined, allow additional data to be added using the optional + MORE_ELF_HEADER_DATA macro. + * sysdeps/unix/sysv/linux/ldsodefs.h (VALID_ELF_HEADER, + VALID_ELF_OSABI, VALID_ELF_ABIVERSION, MORE_ELF_HEADER_DATA): Define. + +2009-02-08 Ulrich Drepper <drepper@redhat.com> + + * include/atomic.h: Define catomic_and if not already defined. + * sysdeps/x86_64/bits/atomic.h: Define catomic_and. + * sysdeps/i386/i486/bits/atomic.h: Likewise. + +2009-02-07 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (_int_free): Second argument is now mchunkptr. + Change all callers. + (_int_realloc): Likewise. Third argument is now padded size + All _int_* functions are now static. + + * malloc/hooks.c: Change all callers to _int_free and _int_realloc. + * malloc/arena.c: Likewise. + * include/malloc.h: Remove now unnecessary declarations of the _int_* + functions. + + * sunrpc/rpc_common.c: We cannot move _null_auth into .rodata that + easily. + + * malloc/malloc.c: Add branch prediction for use of the hooks. + + * grp/compat-initgroups.c [NOT_IN_libc] (__libc_use_alloca): Define. + +2009-02-06 Ulrich Drepper <drepper@redhat.com> + + [BZ #7095] + * bits/confname.h: Add SUSv7 macros for getconf environments. + * bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: Likewise. + * posix/confstr.c: Handle SUSv5 and SUSv7 environments. + * posix/getconf.c: Likewise. + * posix/sysconf.c: Likewise. + * sysdeps/posix/sysconf.c: Likewise. + * posix/Makefile (getconf.speclist): Also collect SUSv5 and SUSv7 + environments. + +2009-01-16 Petr Baudis <pasky@suse.cz> + + [BZ #9753] + * resolv/res_libc.c (__res_maybe_init): Call __res_vinit() + even if we currently have zero nscount. + +2009-02-06 Ulrich Drepper <drepper@redhat.com> + + [BZ #9781] + * grp/compat-initgroups.c (compat_call): Switch to use malloc when + the input line is too long. + + * po/Makefile (libc.pot): Add f_print as function taking c-format + parameter. + + * debug/xtrace.sh: Unify translatable messages. + * elf/ldd.bash.in: Likewise. + * elf/sprof.c: Likewise. + * locale/programs/locale.c: Likewise. + * malloc/memusage.sh: Likewise. + * nss/getent.c: Likewise. + +2009-02-06 Joseph Myers <joseph@codesourcery.com> + + * debug/pcprofiledump.c (print_version, + argp_program_version_hook): New function. + * elf/ldconfig.c (more_help): New function. + (argp): Use it. + * elf/sln.c (usage): New function. + (main): Support --help and --version. + * malloc/memusagestat.c (print_version): New function. + (argp_program_version_hook): New variable. + * nscd/nscd.c (more_help): New function. + (argp): Use it. + * posix/getconf.c (main): Send --version output to stdout. + Support --help. + * sunrpc/rpc_main.c (usage, options_usage): Take STREAM and STATUS + arguments. All callers changed. + (print_version): New function. + (parseargs): Support --help and --version. + * sunrpc/rpcinfo.c (usage): Take STREAM argument. All callers + changed. + (print_version): New function. + (main): Use getopt_long. Support --help and --version. + * sysdeps/unix/sysv/linux/lddlibc4.c (main): Support --help and + --version. + +2009-02-06 Ulrich Drepper <drepper@redhat.com> + + * malloc/memusage.c (DEFAULT_BUFFER_SIZE): Change to 32768. + (update_data): Fix handling of wrapping back + to the beginning of the buffer. + + [BZ #9823] + * stdio-common/psignal.c (psignal): Fix test for empty string. + +2009-02-05 Ulrich Drepper <drepper@redhat.com> + + * include/rpc/auth.h: Use libc_hidden_proto for _null_auth. + * sunrpc/rpc_common.c: Add libc_hidden_def for _null_auth. Also + move _null_auth to .rodata. + + * time/tzset.c (__tzset_parse_tz): DST offset must also allow hour + value of 24. + + * intl/dcigettext.c (DCIGETTEXT): Avoid some code duplication. + + * sysdeps/unix/opendir.c (__alloc_dir): We have a lot more memory + today than when the original code was written. Use larger + buffers. This also makes it unnecessary to have stat information, + if this causes extra efforts. + (__opendir): In case O_DIRECTORY works, don't call fstat just for + __alloc_dir. + +2009-02-03 Andrew Stubbs <ams@codesourcery.com> + + * sysdeps/sh/sh4/dl-trampoline.S: Only set HAVE_FPU if __SH_FPU_ANY__ + is set. + * sysdeps/sh/sh4/setjmp.S: Support SH4-NOFPU. + * sysdeps/sh/sh4/__longjmp.S: Likewise. + * sysdeps/unix/sysv/linux/sh/sh4/getcontext.S: Likewise. + * sysdeps/unix/sysv/linux/sh/sh4/setcontext.S: Likewise. + * sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S: Likewise. + * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Likewise. + +2009-02-04 Ulrich Drepper <drepper@redhat.com> + + * po/ru.po: Update from translation team. + +2008-11-17 Nathan Sidwell <nathan@codesourcery.com> + + * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h (struct sigevent): + Add _tid slot to maintain consistency with kernel. + 2009-02-04 Ulrich Drepper <drepper@redhat.com> * libio/wfileops.c (_IO_wfile_underflow): Fix handling of diff --git a/argp/argp.h b/argp/argp.h index baf3afd826..97a954ea5d 100644 --- a/argp/argp.h +++ b/argp/argp.h @@ -1,5 +1,5 @@ /* Hierarchial argument parsing, layered over getopt. - Copyright (C) 1995-1999, 2003, 2004, 2005, 2006, 2007 + Copyright (C) 1995-1999, 2003, 2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Written by Miles Bader <miles@gnu.ai.mit.edu>. @@ -150,8 +150,8 @@ struct argp_state; /* " */ struct argp_child; /* " */ /* The type of a pointer to an argp parsing function. */ -typedef error_t (*argp_parser_t) (int key, char *arg, - struct argp_state *state); +typedef error_t (*argp_parser_t) (int __key, char *__arg, + struct argp_state *__state); /* What to return for unrecognized keys. For special ARGP_KEY_ keys, such returns will simply be ignored. For user keys, this error will be turned diff --git a/bits/confname.h b/bits/confname.h index 80b51ac0b8..f6fea1fc29 100644 --- a/bits/confname.h +++ b/bits/confname.h @@ -1,5 +1,5 @@ /* `sysconf', `pathconf', and `confstr' NAME values. Generic version. - Copyright (C) 1993,1995-1998,2000,2001,2003,2004,2007 + Copyright (C) 1993,1995-1998,2000,2001,2003,2004,2007,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -498,8 +498,17 @@ enum _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50, #define _SC_IPV6 _SC_IPV6 - _SC_RAW_SOCKETS + _SC_RAW_SOCKETS, #define _SC_RAW_SOCKETS _SC_RAW_SOCKETS + + _SC_V7_ILP32_OFF32, +#define _SC_V7_ILP32_OFF32 _SC_V7_ILP32_OFF32 + _SC_V7_ILP32_OFFBIG, +#define _SC_V7_ILP32_OFFBIG _SC_V7_ILP32_OFFBIG + _SC_V7_LP64_OFF64, +#define _SC_V7_LP64_OFF64 _SC_V7_LP64_OFF64 + _SC_V7_LPBIG_OFFBIG, +#define _SC_V7_LPBIG_OFFBIG _SC_V7_LPBIG_OFFBIG }; /* Values for the NAME argument to `confstr'. */ @@ -517,6 +526,14 @@ enum _CS_GNU_LIBPTHREAD_VERSION, #define _CS_GNU_LIBPTHREAD_VERSION _CS_GNU_LIBPTHREAD_VERSION + _CS_V5_WIDTH_RESTRICTED_ENVS, +#define _CS_V5_WIDTH_RESTRICTED_ENVS _CS_V5_WIDTH_RESTRICTED_ENVS +#define _CS_POSIX_V5_WIDTH_RESTRICTED_ENVS _CS_V5_WIDTH_RESTRICTED_ENVS + + _CS_V7_WIDTH_RESTRICTED_ENVS, +#define _CS_V7_WIDTH_RESTRICTED_ENVS _CS_V7_WIDTH_RESTRICTED_ENVS +#define _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS _CS_V7_WIDTH_RESTRICTED_ENVS + _CS_LFS_CFLAGS = 1000, #define _CS_LFS_CFLAGS _CS_LFS_CFLAGS _CS_LFS_LDFLAGS, @@ -597,6 +614,39 @@ enum #define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS, #define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS - _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS + _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS, #define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS + + _CS_POSIX_V7_ILP32_OFF32_CFLAGS, +#define _CS_POSIX_V7_ILP32_OFF32_CFLAGS _CS_POSIX_V7_ILP32_OFF32_CFLAGS + _CS_POSIX_V7_ILP32_OFF32_LDFLAGS, +#define _CS_POSIX_V7_ILP32_OFF32_LDFLAGS _CS_POSIX_V7_ILP32_OFF32_LDFLAGS + _CS_POSIX_V7_ILP32_OFF32_LIBS, +#define _CS_POSIX_V7_ILP32_OFF32_LIBS _CS_POSIX_V7_ILP32_OFF32_LIBS + _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS, +#define _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS + _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS, +#define _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS + _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS, +#define _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS + _CS_POSIX_V7_ILP32_OFFBIG_LIBS, +#define _CS_POSIX_V7_ILP32_OFFBIG_LIBS _CS_POSIX_V7_ILP32_OFFBIG_LIBS + _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS, +#define _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS + _CS_POSIX_V7_LP64_OFF64_CFLAGS, +#define _CS_POSIX_V7_LP64_OFF64_CFLAGS _CS_POSIX_V7_LP64_OFF64_CFLAGS + _CS_POSIX_V7_LP64_OFF64_LDFLAGS, +#define _CS_POSIX_V7_LP64_OFF64_LDFLAGS _CS_POSIX_V7_LP64_OFF64_LDFLAGS + _CS_POSIX_V7_LP64_OFF64_LIBS, +#define _CS_POSIX_V7_LP64_OFF64_LIBS _CS_POSIX_V7_LP64_OFF64_LIBS + _CS_POSIX_V7_LP64_OFF64_LINTFLAGS, +#define _CS_POSIX_V7_LP64_OFF64_LINTFLAGS _CS_POSIX_V7_LP64_OFF64_LINTFLAGS + _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS, +#define _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS + _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS, +#define _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS + _CS_POSIX_V7_LPBIG_OFFBIG_LIBS, +#define _CS_POSIX_V7_LPBIG_OFFBIG_LIBS _CS_POSIX_V7_LPBIG_OFFBIG_LIBS + _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS +#define _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS }; diff --git a/bits/environments.h b/bits/environments.h index 4617dc45f2..548ea7f847 100644 --- a/bits/environments.h +++ b/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999, 2001, 2004 Free Software Foundation, Inc. +/* Copyright (C) 1999, 2001, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -27,30 +27,36 @@ `-1' means it is never supported. Undefined means it cannot be statically decided. - _POSIX_V6_ILP32_OFF32 32bit int, long, pointers, and off_t type - _POSIX_V6_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type + _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type + _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type - _POSIX_V6_LP64_OFF32 64bit long and pointers and 32bit off_t type - _POSIX_V6_LPBIG_OFFBIG 64bit long and pointers and large off_t type + _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type + _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type - The macros _XBS5_ILP32_OFF32, _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and - _XBS5_LPBIG_OFFBIG were used in previous versions of the Unix standard - and are available only for compatibility. + The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, + _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, + _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were + used in previous versions of the Unix standard and are available + only for compatibility. */ #if __WORDSIZE == 64 /* We can never provide environments with 32-bit wide pointers. */ +# define _POSIX_V7_ILP32_OFF32 -1 +# define _POSIX_V7_ILP32_OFFBIG -1 # define _POSIX_V6_ILP32_OFF32 -1 # define _POSIX_V6_ILP32_OFFBIG -1 # define _XBS5_ILP32_OFF32 -1 # define _XBS5_ILP32_OFFBIG -1 /* We also have no use (for now) for an environment with bigger pointers and offsets. */ +# define _POSIX_V7_LPBIG_OFFBIG -1 # define _POSIX_V6_LPBIG_OFFBIG -1 # define _XBS5_LPBIG_OFFBIG -1 /* By default we have 64-bit wide `long int', pointers and `off_t'. */ +# define _POSIX_V7_LP64_OFF64 1 # define _POSIX_V6_LP64_OFF64 1 # define _XBS5_LP64_OFF64 1 @@ -58,15 +64,19 @@ /* By default we have 32-bit wide `int', `long int', pointers and `off_t' and all platforms support LFS. */ +# define _POSIX_V7_ILP32_OFF32 1 +# define _POSIX_V7_ILP32_OFFBIG 1 # define _POSIX_V6_ILP32_OFF32 1 # define _POSIX_V6_ILP32_OFFBIG 1 # define _XBS5_ILP32_OFF32 1 # define _XBS5_ILP32_OFFBIG 1 /* We optionally provide an environment with the above size but an 64-bit - side `off_t'. Therefore we don't define _XBS5_ILP32_OFFBIG. */ + side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ /* We can never provide environments with 64-bit wide pointers. */ +# define _POSIX_V7_LP64_OFF64 -1 +# define _POSIX_V7_LPBIG_OFFBIG -1 # define _POSIX_V6_LP64_OFF64 -1 # define _POSIX_V6_LPBIG_OFFBIG -1 # define _XBS5_LP64_OFF64 -1 diff --git a/debug/pcprofiledump.c b/debug/pcprofiledump.c index 62c0d73f40..13d9e8c34c 100644 --- a/debug/pcprofiledump.c +++ b/debug/pcprofiledump.c @@ -1,5 +1,5 @@ /* Dump information generated by PC profiling. - Copyright (C) 1999, 2002, 2007 Free Software Foundation, Inc. + Copyright (C) 1999, 2002, 2007, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999. @@ -66,6 +66,10 @@ static char *more_help (int key, const char *text, void *input); /* Prototype for option handler. */ static error_t parse_opt (int key, char *arg, struct argp_state *state); +/* Name and version of program. */ +static void print_version (FILE *stream, struct argp_state *state); +void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; + /* Data structure to communicate with argp functions. */ static struct argp argp = { @@ -209,3 +213,16 @@ For bug reporting instructions, please see:\n\ } return (char *) text; } + +/* Print the version information. */ +static void +print_version (FILE *stream, struct argp_state *state) +{ + fprintf (stream, "pcprofiledump (GNU %s) %s\n", PACKAGE, VERSION); + fprintf (stream, gettext ("\ +Copyright (C) %s Free Software Foundation, Inc.\n\ +This is free software; see the source for copying conditions. There is NO\n\ +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ +"), "2009"); + fprintf (stream, gettext ("Written by %s.\n"), "Ulrich Drepper"); +} diff --git a/debug/xtrace.sh b/debug/xtrace.sh index ef0188afde..e3b9daa433 100755 --- a/debug/xtrace.sh +++ b/debug/xtrace.sh @@ -54,8 +54,10 @@ do_help() { Mandatory arguments to long options are also mandatory for any corresponding short options. -For bug reporting instructions, please see: -<http://www.gnu.org/software/libc/bugs.html>.\n" +" + printf $"For bug reporting instructions, please see: +<http://www.gnu.org/software/libc/bugs.html>. +" exit 0 } diff --git a/elf/dl-load.c b/elf/dl-load.c index 8a8936f7bd..c77c259156 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -1,5 +1,5 @@ /* Map in a shared object's segments from the file. - Copyright (C) 1995-2005, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 1995-2005, 2006, 2007, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -1574,6 +1574,8 @@ open_verify (const char *name, struct filebuf *fbp, struct link_map *loader, # define VALID_ELF_HEADER(hdr,exp,size) (memcmp (hdr, exp, size) == 0) # define VALID_ELF_OSABI(osabi) (osabi == ELFOSABI_SYSV) # define VALID_ELF_ABIVERSION(ver) (ver == 0) +#elif defined MORE_ELF_HEADER_DATA + MORE_ELF_HEADER_DATA; #endif static const unsigned char expected[EI_PAD] = { diff --git a/elf/ldconfig.c b/elf/ldconfig.c index dd213669f3..4886645dfa 100644 --- a/elf/ldconfig.c +++ b/elf/ldconfig.c @@ -132,6 +132,9 @@ static void print_version (FILE *stream, struct argp_state *state); void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; +/* Function to print some extra text in the help message. */ +static char *more_help (int key, const char *text, void *input); + /* Definitions of arguments for argp functions. */ static const struct argp_option options[] = { @@ -161,7 +164,7 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state); /* Data structure to communicate with argp functions. */ static struct argp argp = { - options, parse_opt, NULL, doc, NULL, NULL, NULL + options, parse_opt, NULL, doc, NULL, more_help, NULL }; /* Check if string corresponds to an important hardware capability or @@ -288,6 +291,23 @@ parse_opt (int key, char *arg, struct argp_state *state) return 0; } +/* Print bug-reporting information in the help message. */ +static char * +more_help (int key, const char *text, void *input) +{ + switch (key) + { + case ARGP_KEY_HELP_EXTRA: + /* We print some extra information. */ + return strdup (gettext ("\ +For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); + default: + break; + } + return (char *) text; +} + /* Print the version information. */ static void print_version (FILE *stream, struct argp_state *state) diff --git a/elf/ldd.bash.in b/elf/ldd.bash.in index ffd125dadf..1bbefe2ff0 100644 --- a/elf/ldd.bash.in +++ b/elf/ldd.bash.in @@ -52,8 +52,10 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -r, --function-relocs process data and function relocations -u, --unused print unused direct dependencies -v, --verbose print all information -For bug reporting instructions, please see: -<http://www.gnu.org/software/libc/bugs.html>." +" + echo $"For bug reporting instructions, please see: +<http://www.gnu.org/software/libc/bugs.html>. +" exit 0 ;; -d | --d | --da | --dat | --data | --data- | --data-r | --data-re | \ @@ -1,5 +1,5 @@ /* `sln' program to create symbolic links between files. - Copyright (C) 1998, 1999, 2001 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2001, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,9 +16,15 @@ License along with the GNU C Library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ - + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + #include <error.h> #include <errno.h> +#include <libintl.h> +#include <locale.h> #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> @@ -28,19 +34,37 @@ #include <string.h> #include <limits.h> +#include "../version.h" + +#define PACKAGE _libc_intl_domainname + #if !defined S_ISDIR && defined S_IFDIR #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) #endif static int makesymlink (const char *src, const char *dest); static int makesymlinks (const char *file); +static void usage (void); int main (int argc, char **argv) { + /* Set locale via LC_ALL. */ + setlocale (LC_ALL, ""); + + /* Set the text message domain. */ + textdomain (PACKAGE); + switch (argc) { case 2: + if (strcmp (argv[1], "--version") == 0) { + printf ("sln (GNU libc) %s\n", VERSION); + return 0; + } else if (strcmp (argv[1], "--help") == 0) { + usage (); + return 0; + } return makesymlinks (argv [1]); break; @@ -49,12 +73,20 @@ main (int argc, char **argv) break; default: - printf ("Usage: %s src dest|file\n", argv [0]); + usage (); return 1; break; } } +static void +usage (void) +{ + printf (_("Usage: sln src dest|file\n\n")); + printf (_("For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); +} + static int makesymlinks (file) const char *file; @@ -75,7 +107,7 @@ makesymlinks (file) fp = fopen (file, "r"); if (fp == NULL) { - fprintf (stderr, "%s: file open error: %m\n", file); + fprintf (stderr, _("%s: file open error: %m\n"), file); return 1; } } @@ -112,7 +144,7 @@ makesymlinks (file) ++cp; if (*cp == '\0') { - fprintf (stderr, "No target in line %d\n", lineno); + fprintf (stderr, _("No target in line %d\n"), lineno); ret = 1; continue; } @@ -144,13 +176,13 @@ makesymlink (src, dest) { if (S_ISDIR (stats.st_mode)) { - fprintf (stderr, "%s: destination must not be a directory\n", + fprintf (stderr, _("%s: destination must not be a directory\n"), dest); return 1; } else if (unlink (dest) && errno != ENOENT) { - fprintf (stderr, "%s: failed to remove the old destination\n", + fprintf (stderr, _("%s: failed to remove the old destination\n"), dest); return 1; } @@ -158,7 +190,7 @@ makesymlink (src, dest) else if (errno != ENOENT) { error = strerror (errno); - fprintf (stderr, "%s: invalid destination: %s\n", dest, error); + fprintf (stderr, _("%s: invalid destination: %s\n"), dest, error); return -1; } @@ -173,7 +205,7 @@ makesymlink (src, dest) { error = strerror (errno); unlink (dest); - fprintf (stderr, "Invalid link from \"%s\" to \"%s\": %s\n", + fprintf (stderr, _("Invalid link from \"%s\" to \"%s\": %s\n"), src, dest, error); return 1; } @@ -182,7 +214,7 @@ makesymlink (src, dest) else { error = strerror (errno); - fprintf (stderr, "Invalid link from \"%s\" to \"%s\": %s\n", + fprintf (stderr, _("Invalid link from \"%s\" to \"%s\": %s\n"), src, dest, error); return 1; } diff --git a/elf/sprof.c b/elf/sprof.c index 4244e05c38..ad723f3416 100644 --- a/elf/sprof.c +++ b/elf/sprof.c @@ -86,9 +86,9 @@ static const struct argp_option options[] = }; /* Short description of program. */ -static const char doc[] = N_("Read and display shared object profiling data.\v\ -For bug reporting instructions, please see:\n\ -<http://www.gnu.org/software/libc/bugs.html>.\n"); +static const char doc[] = N_("Read and display shared object profiling data."); +//For bug reporting instructions, please see:\n \ +//<http://www.gnu.org/software/libc/bugs.html>.\n"); /* Strings for arguments in help texts. */ static const char args_doc[] = N_("SHOBJ [PROFDATA]"); @@ -96,10 +96,13 @@ static const char args_doc[] = N_("SHOBJ [PROFDATA]"); /* Prototype for option handler. */ static error_t parse_opt (int key, char *arg, struct argp_state *state); +/* Function to print some extra text in the help message. */ +static char *more_help (int key, const char *text, void *input); + /* Data structure to communicate with argp functions. */ static struct argp argp = { - options, parse_opt, args_doc, doc + options, parse_opt, args_doc, doc, NULL, more_help }; @@ -347,6 +350,23 @@ parse_opt (int key, char *arg, struct argp_state *state) } +static char * +more_help (int key, const char *text, void *input) +{ + switch (key) + { + case ARGP_KEY_HELP_EXTRA: + /* We print some extra information. */ + return strdup (gettext ("\ +For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); + default: + break; + } + return (char *) text; +} + + /* Print the version information. */ static void print_version (FILE *stream, struct argp_state *state) diff --git a/fedora/branch.mk b/fedora/branch.mk index 9add5a7ef7..4140903e64 100644 --- a/fedora/branch.mk +++ b/fedora/branch.mk @@ -3,5 +3,5 @@ glibc-branch := fedora glibc-base := HEAD DIST_BRANCH := devel COLLECTION := dist-f8 -fedora-sync-date := 2009-02-04 21:35 UTC -fedora-sync-tag := fedora-glibc-20090204T2135 +fedora-sync-date := 2009-02-18 15:34 UTC +fedora-sync-tag := fedora-glibc-20090218T1534 diff --git a/grp/compat-initgroups.c b/grp/compat-initgroups.c index efd875a689..7bcc203fe4 100644 --- a/grp/compat-initgroups.c +++ b/grp/compat-initgroups.c @@ -8,13 +8,19 @@ typedef enum nss_status (*end_function) (void); typedef enum nss_status (*get_function) (struct group *, char *, size_t, int *); +/* This file is also used in nscd where __libc_alloca_cutoff is not + available. */ +#ifdef NOT_IN_libc +# define __libc_use_alloca(size) ((size) < __MAX_ALLOCA_CUTOFF * 4) +#endif + + static enum nss_status compat_call (service_user *nip, const char *user, gid_t group, long int *start, long int *size, gid_t **groupsp, long int limit, int *errnop) { struct group grpbuf; size_t buflen = __sysconf (_SC_GETGR_R_SIZE_MAX); - char *tmpbuf; enum nss_status status; set_function setgrent_fct; get_function getgrent_fct; @@ -35,7 +41,9 @@ compat_call (service_user *nip, const char *user, gid_t group, long int *start, endgrent_fct = __nss_lookup_function (nip, "endgrent"); - tmpbuf = __alloca (buflen); + char *tmpbuf = __alloca (buflen); + bool use_malloc = false; + enum nss_status result = NSS_STATUS_SUCCESS; do { @@ -44,8 +52,20 @@ compat_call (service_user *nip, const char *user, gid_t group, long int *start, status == NSS_STATUS_TRYAGAIN) && *errnop == ERANGE) { - buflen *= 2; - tmpbuf = __alloca (buflen); + if (__libc_use_alloca (buflen * 2)) + tmpbuf = extend_alloca (tmpbuf, buflen, buflen * 2); + else + { + buflen *= 2; + char *newbuf = realloc (use_malloc ? tmpbuf : NULL, buflen); + if (newbuf == NULL) + { + result = NSS_STATUS_TRYAGAIN; + goto done; + } + use_malloc = true; + tmpbuf = newbuf; + } } if (status != NSS_STATUS_SUCCESS) @@ -102,8 +122,11 @@ compat_call (service_user *nip, const char *user, gid_t group, long int *start, while (status == NSS_STATUS_SUCCESS); done: + if (use_malloc) + free (tmpbuf); + if (endgrent_fct) DL_CALL_FCT (endgrent_fct, ()); - return NSS_STATUS_SUCCESS; + return result; } diff --git a/include/atomic.h b/include/atomic.h index 2ad8b5fcb7..7c0548b004 100644 --- a/include/atomic.h +++ b/include/atomic.h @@ -1,5 +1,5 @@ /* Internal macros for atomic operations for GNU C Library. - Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2002-2006, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. @@ -415,6 +415,22 @@ } while (0) #endif +#ifndef catomic_and +# define catomic_and(mem, mask) \ + do { \ + __typeof (*(mem)) __atg20_old; \ + __typeof (mem) __atg20_memp = (mem); \ + __typeof (*(mem)) __atg20_mask = (mask); \ + \ + do \ + __atg20_old = (*__atg20_memp); \ + while (__builtin_expect \ + (catomic_compare_and_exchange_bool_acq (__atg20_memp, \ + __atg20_old & __atg20_mask,\ + __atg20_old), 0)); \ + } while (0) +#endif + /* Atomically *mem &= mask and return the old value of *mem. */ #ifndef atomic_and_val # define atomic_and_val(mem, mask) \ diff --git a/include/malloc.h b/include/malloc.h index 1a20248559..42fc8ed696 100644 --- a/include/malloc.h +++ b/include/malloc.h @@ -8,20 +8,7 @@ /* Nonzero if the malloc is already initialized. */ extern int __malloc_initialized attribute_hidden; -/* Internal routines, operating on "arenas". */ struct malloc_state; typedef struct malloc_state *mstate; -extern __malloc_ptr_t _int_malloc (mstate __m, size_t __size) attribute_hidden; -extern void _int_free (mstate __m, __malloc_ptr_t __ptr) - attribute_hidden; -extern __malloc_ptr_t _int_realloc (mstate __m, - __malloc_ptr_t __ptr, - size_t __size) attribute_hidden; -extern __malloc_ptr_t _int_memalign (mstate __m, size_t __alignment, - size_t __size) - attribute_hidden; -extern __malloc_ptr_t _int_valloc (mstate __m, size_t __size) - attribute_hidden; - #endif diff --git a/include/rpc/auth.h b/include/rpc/auth.h index bc433b5930..a03188ed44 100644 --- a/include/rpc/auth.h +++ b/include/rpc/auth.h @@ -39,4 +39,6 @@ extern AUTH *authdes_pk_create_internal (const char *, netobj *, u_int, libc_hidden_proto (key_encryptsession_pk) libc_hidden_proto (key_decryptsession_pk) +libc_hidden_proto (_null_auth) + #endif diff --git a/intl/dcigettext.c b/intl/dcigettext.c index e0782446e4..16d901e7d0 100644 --- a/intl/dcigettext.c +++ b/intl/dcigettext.c @@ -1,5 +1,5 @@ /* Implementation of the internal dcigettext function. - Copyright (C) 1995-2005, 2006, 2007, 2008 + Copyright (C) 1995-2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -553,18 +553,7 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category) } if (ret == NULL) - { - /* We cannot get the current working directory. Don't signal an - error but simply return the default string. */ - FREE_BLOCKS (block_list); - __libc_rwlock_unlock (__libc_setlocale_lock); - __libc_rwlock_unlock (_nl_state_lock); - __set_errno (saved_errno); - return (plural == 0 - ? (char *) msgid1 - /* Use the Germanic plural rule. */ - : n == 1 ? (char *) msgid1 : (char *) msgid2); - } + goto no_translation; stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname); } diff --git a/io/sys/stat.h b/io/sys/stat.h index 364c43f8f4..4b21a2e1ce 100644 --- a/io/sys/stat.h +++ b/io/sys/stat.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1992, 1995-2004, 2005, 2006, 2007 +/* Copyright (C) 1991, 1992, 1995-2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -298,7 +298,8 @@ extern int fchmod (int __fd, __mode_t __mode) __THROW; #ifdef __USE_ATFILE /* Set file access permissions of FILE relative to the directory FD is open on. */ -extern int fchmodat (int __fd, __const char *__file, __mode_t mode, int __flag) +extern int fchmodat (int __fd, __const char *__file, __mode_t __mode, + int __flag) __THROW __nonnull ((2)) __wur; #endif /* Use ATFILE. */ diff --git a/libio/wfileops.c b/libio/wfileops.c index c5f0eaf6a7..57ed786a8f 100644 --- a/libio/wfileops.c +++ b/libio/wfileops.c @@ -297,14 +297,34 @@ _IO_wfile_underflow (fp) if (naccbuf == 0) { + if (fp->_IO_read_base < fp->_IO_read_ptr) + { + /* Partially used the buffer for some input data that + produces no output. */ + size_t avail = fp->_IO_read_end - fp->_IO_read_ptr; + memmove (fp->_IO_read_base, fp->_IO_read_ptr, avail); + fp->_IO_read_ptr = fp->_IO_read_base; + fp->_IO_read_end -= avail; + goto again; + } naccbuf = fp->_IO_read_end - fp->_IO_read_ptr; if (naccbuf >= sizeof (accbuf)) goto out_eilseq; memcpy (accbuf, fp->_IO_read_ptr, naccbuf); } - else if (naccbuf == sizeof (accbuf)) - goto out_eilseq; + else + { + size_t used = read_ptr_copy - accbuf; + if (used > 0) + { + memmove (accbuf, read_ptr_copy, naccbuf - used); + naccbuf -= used; + } + + if (naccbuf == sizeof (accbuf)) + goto out_eilseq; + } fp->_IO_read_ptr = fp->_IO_read_end = fp->_IO_read_base; diff --git a/locale/langinfo.h b/locale/langinfo.h index 10c4232918..84f53ef172 100644 --- a/locale/langinfo.h +++ b/locale/langinfo.h @@ -1,5 +1,5 @@ /* Access to locale-dependent parameters. - Copyright (C) 1995-2002,2003,2004,2005 Free Software Foundation, Inc. + Copyright (C) 1995-2002,2003,2004,2005,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -590,7 +590,7 @@ extern char *nl_langinfo (nl_item __item) __THROW; # include <xlocale.h> /* Just like nl_langinfo but get the information from the locale object L. */ -extern char *nl_langinfo_l (nl_item __item, __locale_t l); +extern char *nl_langinfo_l (nl_item __item, __locale_t __l); #endif __END_DECLS diff --git a/locale/programs/locale.c b/locale/programs/locale.c index 33963d5b25..77262b7d1c 100644 --- a/locale/programs/locale.c +++ b/locale/programs/locale.c @@ -84,9 +84,7 @@ static const struct argp_option options[] = }; /* Short description of program. */ -static const char doc[] = N_("Get locale-specific information.\v\ -For bug reporting instructions, please see:\n\ -<http://www.gnu.org/software/libc/bugs.html>.\n"); +static const char doc[] = N_("Get locale-specific information."); /* Strings for arguments in help texts. */ static const char args_doc[] = N_("NAME\n[-a|-m]"); @@ -94,10 +92,13 @@ static const char args_doc[] = N_("NAME\n[-a|-m]"); /* Prototype for option handler. */ static error_t parse_opt (int key, char *arg, struct argp_state *state); +/* Function to print some extra text in the help message. */ +static char *more_help (int key, const char *text, void *input); + /* Data structure to communicate with argp functions. */ static struct argp argp = { - options, parse_opt, args_doc, doc + options, parse_opt, args_doc, doc, NULL, more_help }; @@ -267,6 +268,23 @@ parse_opt (int key, char *arg, struct argp_state *state) } +static char * +more_help (int key, const char *text, void *input) +{ + switch (key) + { + case ARGP_KEY_HELP_EXTRA: + /* We print some extra information. */ + return strdup (gettext ("\ +For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); + default: + break; + } + return (char *) text; +} + + /* Print the version information. */ static void print_version (FILE *stream, struct argp_state *state) diff --git a/localedata/ChangeLog b/localedata/ChangeLog index 594a71c98f..801a2a5dae 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,5 +1,26 @@ +2009-02-11 Ulrich Drepper <drepper@redhat.com> + + * locales/iso14651_t1_common: Add rules for sorting Malayalam. + Patch by Santhosh Thottingal <santhosh.thottingal@gmail.com>. + +2009-02-06 Ulrich Drepper <drepper@redhat.com> + + [BZ #7098] + * Makefile ($(inst_i18ndir)/charmaps/%.gz): No need to save + timestamp in compressed charmaps. + Patch by Gilles Espinasse <g.esp@free.fr>. + + [BZ #9730] + * locales/sv_FI: Fix time formats. + + [BZ #9736] + * locales/el_CY: Fix frac_digits and int_frac_digits. + * locales/el_GR: Likewise. + Patch by Clint Adams <schizo@debian.org>. + 2009-01-28 Ulrich Drepper <drepper@redhat.com> + [BZ #9791] * locales/as_IN: Break circular include loops introduced in last patch. * locales/bn_BD: Likewise. * locales/bn_IN: Likewise. diff --git a/localedata/Makefile b/localedata/Makefile index f84b3dc588..1acc415748 100644 --- a/localedata/Makefile +++ b/localedata/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1996-2003, 2005, 2007, 2008 Free Software Foundation, Inc. +# Copyright (C) 1996-2003,2005,2007,2008,2009 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -114,7 +114,7 @@ $(inst_i18ndir)/charmaps/%.gz: charmaps/% $(+force) $(make-target-directory) rm -f $(@:.gz=) $@ $(INSTALL_DATA) $< $(@:.gz=) - gzip -9 $(@:.gz=) + gzip -9n $(@:.gz=) # Install the locale source files in the appropriate directory. $(inst_i18ndir)/locales/%: locales/% $(+force); $(do-install) diff --git a/localedata/locales/el_CY b/localedata/locales/el_CY index 7213924233..31175777ed 100644 --- a/localedata/locales/el_CY +++ b/localedata/locales/el_CY @@ -51,8 +51,8 @@ mon_thousands_sep "<U002E>" mon_grouping 3 positive_sign "" negative_sign "<U002D>" -int_frac_digits 4 -frac_digits 4 +int_frac_digits 2 +frac_digits 2 p_cs_precedes 0 p_sep_by_space 0 n_cs_precedes 1 diff --git a/localedata/locales/el_GR b/localedata/locales/el_GR index ce608a801e..bb1db143f3 100644 --- a/localedata/locales/el_GR +++ b/localedata/locales/el_GR @@ -70,8 +70,8 @@ mon_thousands_sep "<U002E>" mon_grouping 3 positive_sign "" negative_sign "<U002D>" -int_frac_digits 4 -frac_digits 4 +int_frac_digits 2 +frac_digits 2 p_cs_precedes 0 p_sep_by_space 0 n_cs_precedes 1 diff --git a/localedata/locales/iso14651_t1_common b/localedata/locales/iso14651_t1_common index bb0b4ab295..1c9963aaf6 100644 --- a/localedata/locales/iso14651_t1_common +++ b/localedata/locales/iso14651_t1_common @@ -66,6 +66,7 @@ script <TELUGU> script <GURUMUKHI> script <KANNADA> script <SINHALA> +script <MALAYALAM> # Déclaration des symboles internes / Declaration of internal symbols # @@ -910,6 +911,129 @@ collating-symbol <kvd-visarg> collating-symbol <k-halant> collating-symbol <k-lenght_mark> collating-symbol <k-ai_lenght_mark> +# +# <MALAYALAM> +# mlvs- denotes Malayalam vowel sign +# mlvw- denotes Malayalam vowel +# ml-visarga - dentos Malayalam Visarga +# consonant + virama is considered half of consonant or consonant without vowel part +# so it consonant + virama should be considered as cluster and should be +# sorted before the consonant. All consonants are considered to have an implicit a vowel +# part associated with it. +collating-element <ml-chillu-n> from "<U0D28><U0D4D>" +collating-element <ml-chillu-nn> from "<U0D23><U0D4D>" +collating-element <ml-chillu-r> from "<U0D30><U0D4D>" +collating-element <ml-chillu-l> from "<U0D32><U0D4D>" +collating-element <ml-chillu-ll> from "<U0D33><U0D4D>" +collating-element <ml-chillu-k> from "<U0D15><U0D4D>" +collating-element <ml-kh> from "<U0D16><U0D4D>" +collating-element <ml-g> from "<U0D17><U0D4D>" +collating-element <ml-gh> from "<U0D18><U0D4D>" +collating-element <ml-ng> from "<U0D19><U0D4D>" +collating-element <ml-ch> from "<U0D1A><U0D4D>" +collating-element <ml-chh> from "<U0D1B><U0D4D>" +collating-element <ml-j> from "<U0D1C><U0D4D>" +collating-element <ml-jh> from "<U0D1D><U0D4D>" +collating-element <ml-ny> from "<U0D1E><U0D4D>" +collating-element <ml-t> from "<U0D1F><U0D4D>" +collating-element <ml-tt> from "<U0D20><U0D4D>" +collating-element <ml-d> from "<U0D21><U0D4D>" +collating-element <ml-dh> from "<U0D22><U0D4D>" +collating-element <ml-th> from "<U0D24><U0D4D>" +collating-element <ml-thh> from "<U0D25><U0D4D>" +collating-element <ml-dd> from "<U0D26><U0D4D>" +collating-element <ml-ddh> from "<U0D27><U0D4D>" +collating-element <ml-p> from "<U0D2A><U0D4D>" +collating-element <ml-ph> from "<U0D2B><U0D4D>" +collating-element <ml-b> from "<U0D2C><U0D4D>" +collating-element <ml-bh> from "<U0D2D><U0D4D>" +collating-element <ml-m> from "<U0D2E><U0D4D>" +collating-element <ml-y> from "<U0D2F><U0D4D>" +collating-element <ml-v> from "<U0D35><U0D4D>" +collating-element <ml-s> from "<U0D38><U0D4D>" +collating-element <ml-ss> from "<U0D36><U0D4D>" +collating-element <ml-sh> from "<U0D37><U0D4D>" +collating-element <ml-h> from "<U0D39><U0D4D>" +collating-element <ml-zh> from "<U0D34><U0D4D>" +collating-element <ml-rr> from "<U0D31><U0D4D>" +collating-element <ml-samvruthokaram> from "<U0D41><U0D4D>" +collating-element <ml-split-o> from "<U0D46><U0D3E>" # U+0D4A MALAYALAM VOWEL SIGN O = U+0D46 MALAYALAM VOWEL SIGN E + U+0D3E MALAYALAM VOWEL SIGN AA +collating-element <ml-split-oo> from "<U0D47><U0D3E>" # U+0D4B MALAYALAM VOWEL SIGN OO = U+0D47 MALAYALAM VOWEL SIGN EE + U+0D3E MALAYALAM VOWEL SIGN AA +collating-element <ml-split-au> from "<U0D46><U0D57>" # U+0D4C MALAYALAM VOWEL SIGN AU = U+0D46 MALAYALAM VOWEL SIGN E + U+0D57 MALAYALAM AU LENGTH MARK +# defning symbols +collating-symbol <mlvw-shorta> +collating-symbol <mlvw-aa> +collating-symbol <mlvw-i> +collating-symbol <mlvw-ii> +collating-symbol <mlvw-u> +collating-symbol <mlvw-uu> +collating-symbol <mlvw-vocalicr> +collating-symbol <mlvw-vocalicrr> +collating-symbol <mlvw-vocalicl> +collating-symbol <mlvw-vocalicll> +collating-symbol <mlvw-shorte> +collating-symbol <mlvw-e> +collating-symbol <mlvw-ai> +collating-symbol <mlvw-shorto> +collating-symbol <mlvw-o> +collating-symbol <mlvw-au> +collating-symbol <ml-ka> +collating-symbol <ml-kha> +collating-symbol <ml-ga> +collating-symbol <ml-gga> +collating-symbol <ml-gha> +collating-symbol <ml-nga> +collating-symbol <ml-cha> +collating-symbol <ml-chha> +collating-symbol <ml-ja> +collating-symbol <ml-jja> +collating-symbol <ml-jha> +collating-symbol <ml-nya> +collating-symbol <ml-ta> +collating-symbol <ml-tta> +collating-symbol <ml-da> +collating-symbol <ml-dha> +collating-symbol <ml-nna> +collating-symbol <ml-tha> +collating-symbol <ml-thha> +collating-symbol <ml-dda> +collating-symbol <ml-ddha> +collating-symbol <ml-na> +collating-symbol <ml-pa> +collating-symbol <ml-pha> +collating-symbol <ml-ba> +collating-symbol <ml-bba> +collating-symbol <ml-bha> +collating-symbol <ml-ma> +collating-symbol <ml-ya> +collating-symbol <ml-ra> +collating-symbol <ml-rra> +collating-symbol <ml-la> +collating-symbol <ml-lla> +collating-symbol <ml-va> +collating-symbol <ml-sha> +collating-symbol <ml-ssa> +collating-symbol <ml-sa> +collating-symbol <ml-ha> +collating-symbol <ml-avagrah> +collating-symbol <ml-zha> +collating-symbol <mlvs-aa> +collating-symbol <mlvs-i> +collating-symbol <mlvs-ii> +collating-symbol <mlvs-u> +collating-symbol <mlvs-uu> +collating-symbol <mlvs-vocalicr> +collating-symbol <mlvs-vocalicrr> +collating-symbol <mlvs-vocalicl> +collating-symbol <mlvs-vocalicll> +collating-symbol <mlvs-shorte> +collating-symbol <mlvs-e> +collating-symbol <mlvs-ai> +collating-symbol <mlvs-shorto> +collating-symbol <mlvs-o> +collating-symbol <mlvs-au> +collating-symbol <ml-visarga> +collating-symbol <ml-virama> # Ordre des symboles internes / Order of internal symbols # @@ -1733,6 +1857,83 @@ collating-symbol <k-ai_lenght_mark> <k-halant> <k-lenght_mark> <k-ai_lenght_mark> +# +# <MALAYALAM> +# +# collation weights in order +<mlvw-shorta> +<mlvw-aa> +<mlvw-i> +<mlvw-ii> +<mlvw-u> +<mlvw-uu> +<mlvw-vocalicr> +<mlvw-vocalicrr> +<mlvw-vocalicl> +<mlvw-vocalicll> +<mlvw-shorte> +<mlvw-e> +<mlvw-ai> +<mlvw-shorto> +<mlvw-o> +<mlvw-au> +<ml-ka> +<ml-kha> +<ml-ga> +<ml-gga> +<ml-gha> +<ml-nga> +<ml-cha> +<ml-chha> +<ml-ja> +<ml-jja> +<ml-jha> +<ml-nya> +<ml-ta> +<ml-tta> +<ml-da> +<ml-dha> +<ml-nna> +<ml-tha> +<ml-thha> +<ml-dda> +<ml-ddha> +<ml-na> +<ml-pa> +<ml-pha> +<ml-ba> +<ml-bba> +<ml-bha> +<ml-ma> +<ml-ya> +<ml-ra> +<ml-la> +<ml-va> +<ml-ssa> +<ml-sha> +<ml-sa> +<ml-ha> +<ml-lla> +<ml-zha> +<ml-rra> +<ml-avagrah> +<ml-virama> +<mlvs-aa> +<mlvs-i> +<mlvs-ii> +<mlvs-u> +<mlvs-uu> +<mlvs-vocalicr> +<mlvs-vocalicrr> +<mlvs-vocalicl> +<mlvs-vocalicll> +<mlvs-shorte> +<mlvs-e> +<mlvs-ai> +<mlvs-shorto> +<mlvs-o> +<mlvs-au> +<ml-visarga> order_start <SPECIAL>;forward;backward;forward;forward,position # @@ -4052,6 +4253,130 @@ order_start <SINHALA>;forward;forward;forward;forward,position <U0DDE> <U0DDE>;<BAS>;<MIN>;IGNORE <U0DCA> <U0DCA>;<BAS>;<MIN>;IGNORE +order_start <MALAYALAM>;forward;forward;forward;forward,position +<U0D66> <0>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D67> <1>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D68> <2>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D69> <3>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D6A> <4>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D6B> <5>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D6C> <6>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D6D> <7>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D6E> <8>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D6F> <9>;"<BAS><NUM>";"<MIN><MIN>";IGNORE +<U0D05> <mlvw-shorta> ;<BAS>;<MIN>;IGNORE +<U0D06> <mlvw-aa> ;<BAS>;<MIN>;IGNORE +<U0D07> <mlvw-i> ;<BAS>;<MIN>;IGNORE +<U0D08> <mlvw-ii> ;<BAS>;<MIN>;IGNORE +<U0D09> <mlvw-u> ;<BAS>;<MIN>;IGNORE +<U0D0A> <mlvw-uu>;<BAS>;<MIN>;IGNORE +<U0D0B> <mlvw-vocalicr>;<BAS>;<MIN>;IGNORE +<U0D60> <mlvw-vocalicrr>;<BAS>;<MIN>;IGNORE +<U0D0C> <mlvw-vocalicl>;<BAS>;<MIN>;IGNORE +<U0D61> <mlvw-vocalicll>;<BAS>;<MIN>;IGNORE +<U0D0E> <mlvw-shorte>;<BAS>;<MIN>;IGNORE +<U0D0F> <mlvw-e>;<BAS>;<MIN>;IGNORE +<U0D10> <mlvw-ai>;<BAS>;<MIN>;IGNORE +<U0D12> <mlvw-shorto>;<BAS>;<MIN>;IGNORE +<U0D13> <mlvw-o>;<BAS>;<MIN>;IGNORE +<U0D14> <mlvw-au>;<BAS>;<MIN>;IGNORE +<ml-chillu-k> "<ml-ka><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D15> "<ml-ka><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-kh> "<ml-kha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D16> "<ml-kha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-g> "<ml-ga><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D17> "<ml-ga><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-gh> "<ml-gha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D18> "<ml-gha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-ng> "<ml-nga><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D19> "<ml-nga><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-ch> "<ml-cha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D1A> "<ml-cha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-chh> "<ml-chha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D1B> "<ml-chha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-j> "<ml-ja><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D1C> "<ml-ja><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-jh> "<ml-jha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D1D> "<ml-jha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-ny> "<ml-nya><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D1E> "<ml-nya><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-t> "<ml-ta><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D1F> "<ml-ta><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-tt> "<ml-tta><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D20> "<ml-tta><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-d> "<ml-da><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D21> "<ml-da><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-dh> "<ml-dha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D22> "<ml-dha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-chillu-nn> "<ml-nna><ml-virama>";<BAS>;<MIN>;IGNORE # ണ് = ണ + ് + zwj +<U0D23> "<ml-nna><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE # ണ = ണ + ് + അ +<ml-th> "<ml-tha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D24> "<ml-tha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-thh> "<ml-thha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D25> "<ml-thha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-dd> "<ml-dda><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D26> "<ml-dda><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-ddh> "<ml-ddha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D27> "<ml-ddha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-chillu-n> "<ml-chillu-n>";<BAS>;<MIN>;IGNORE # ന്= ന + ് + zwj +<U0D28> "<ml-chillu-n><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE #ന = ന + ് + അ +<ml-p> "<ml-pa><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D2A> "<ml-pa><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-ph> "<ml-pha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D2B> "<ml-pha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-b> "<ml-ba><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D2C> "<ml-ba><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-bh> "<ml-bha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D2D> "<ml-bha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<U0D02> "<ml-ma><ml-virama>";<BAS>;<MIN>;IGNORE # ം = മ + ് +<ml-m> "<ml-ma><ml-virama>";"<BAS><ml-virama>";<MIN>;IGNORE # ം = മ + ് +<U0D2E> "<ml-ma><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE # മ = മ + ് + അ +<ml-y> "<ml-ya><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D2F> "<ml-ya><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-chillu-r> "<ml-ra><ml-virama>";<BAS>;<MIN>;IGNORE # ര = ര + ് + zwj +<U0D30> "<ml-ra><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE # ര = ര + ് + അ +<ml-chillu-l> <ml-la>;<BAS>;<MIN>;IGNORE # ല് = ല + ് + zwj +<U0D32> "<ml-la><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE # ല = ല + ് + അ +<ml-v> "<ml-va><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D35> "<ml-va><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-ss> "<ml-ssa><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D37> "<ml-ssa><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-sh> "<ml-sha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D36> "<ml-sha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-s> "<ml-sa><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D38> "<ml-sa><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-h> "<ml-ha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D39> "<ml-ha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-chillu-ll> "<ml-lla><ml-virama>";<BAS>;<MIN>;IGNORE # ള് = ള + ് + zwj +<U0D33> "<ml-lla><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE # ള = ള + ് + അ +<ml-zh> "<ml-zha><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D34> "<ml-zha><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<ml-rr> "<ml-rra><ml-virama>";<BAS>;<MIN>;IGNORE +<U0D31> "<ml-rra><ml-virama><mlvw-shorta>";<BAS>;<MIN>;IGNORE +<U0D3D> <ml-avagrah>;<BAS>;<MIN>;IGNORE +<U0D3E> <mlvs-aa>;<BAS>;<MIN>;IGNORE +<U0D3F> <mlvs-i>;<BAS>;<MIN>;IGNORE +<U0D40> <mlvs-ii>;<BAS>;<MIN>;IGNORE +<ml-samvruthokaram> <mlvs-u>;<BAS>;<MIN>;IGNORE +<U0D41> <mlvs-u>;"<BAS><ml-samvruthokaram>";<MIN>;IGNORE # sort it after samvruthokaram +<U0D42> <mlvs-uu>;<BAS>;<MIN>;IGNORE +<U0D43> <mlvs-vocalicr>;<BAS>;<MIN>;IGNORE +<U0D44> <mlvs-vocalicrr>;<BAS>;<MIN>;IGNORE +<U0D62> <mlvs-vocalicl>;<BAS>;<MIN>;IGNORE +<U0D63> <mlvs-vocalicll>;<BAS>;<MIN>;IGNORE +<U0D46> <mlvs-shorte>;<BAS>;<MIN>;IGNORE +<U0D47> <mlvs-e>;<BAS>;<MIN>;IGNORE +<U0D48> <mlvs-ai>;<BAS>;<MIN>;IGNORE +<U0D4A> <mlvs-shorto>;<BAS>;<MIN>;IGNORE +<U0D4B> <mlvs-o>;<BAS>;<MIN>;IGNORE +<U0D4C> <mlvs-au>;<BAS>;<MIN>;IGNORE +<U0D57> <mlvs-au>;<BAS>;<MIN>;IGNORE +<U0D4D> <ml-virama>;<BAS>;<MIN>;IGNORE +<U0D03> <ml-visarga>;<BAS>;<MIN>;IGNORE +<ml-split-o> <mlvs-shorto>;<BAS>;<MIN>;IGNORE +<ml-split-oo> <mlvs-o>;<BAS>;<MIN>;IGNORE +<ml-split-au> <mlvs-au>;<BAS>;<MIN>;IGNORE + order_end END LC_COLLATE diff --git a/localedata/locales/sv_FI b/localedata/locales/sv_FI index bdda16d44b..af9ec123ea 100644 --- a/localedata/locales/sv_FI +++ b/localedata/locales/sv_FI @@ -97,14 +97,16 @@ mon "<U006A><U0061><U006E><U0075><U0061><U0072><U0069>";/ "<U006F><U006B><U0074><U006F><U0062><U0065><U0072>";/ "<U006E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/ "<U0064><U0065><U0063><U0065><U006D><U0062><U0065><U0072>" -d_t_fmt "<U0025><U0061><U0020><U0025><U0065><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0048><U002E><U0025><U004D><U002E><U0025><U0053>" -d_fmt "<U0025><U0059><U002D><U0025><U006D><U002D><U0025><U0064>" +d_t_fmt "<U0025><U0061><U0020><U0025><U0065><U002E><U0020><U0025><U0042>/ +<U0074><U0061><U0020><U0025><U0059><U0020><U0025><U0048><U002E><U0025>/ +<U004D><U002E><U0025><U0053>" +d_fmt "<U0025><U0064><U002E><U0025><U006D><U002E><U0025><U0059>" t_fmt "<U0025><U0048><U002E><U0025><U004D><U002E><U0025><U0053>" am_pm "";"" t_fmt_ampm "" -date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/ -<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/ -<U0025><U005A><U0020><U0025><U0059>" +date_fmt "<U0025><U0061><U0020><U0025><U002D><U0064><U002E><U0025>/ +<U002D><U006D><U002E><U0025><U0059><U0020><U0025><U0048><U002E><U0025>/ +<U004D><U002E><U0025><U0053><U0020><U0025><U007A>" END LC_TIME LC_PAPER diff --git a/malloc/arena.c b/malloc/arena.c index 9932ee049b..cc03dc4a5b 100644 --- a/malloc/arena.c +++ b/malloc/arena.c @@ -223,7 +223,7 @@ free_atfork(Void_t* mem, const Void_t *caller) tsd_getspecific(arena_key, vptr); if(vptr != ATFORK_ARENA_PTR) (void)mutex_lock(&ar_ptr->mutex); - _int_free(ar_ptr, mem); + _int_free(ar_ptr, p); if(vptr != ATFORK_ARENA_PTR) (void)mutex_unlock(&ar_ptr->mutex); } diff --git a/malloc/hooks.c b/malloc/hooks.c index c88937665c..9659ec5fbe 100644 --- a/malloc/hooks.c +++ b/malloc/hooks.c @@ -1,5 +1,5 @@ /* Malloc implementation for multiple threads without lock contention. - Copyright (C) 2001-2006, 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 2001-2006, 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Wolfram Gloger <wg@malloc.de>, 2001. @@ -293,7 +293,7 @@ free_check(mem, caller) Void_t* mem; const Void_t *caller; #if 0 /* Erase freed memory. */ memset(mem, 0, chunksize(p) - (SIZE_SZ+1)); #endif - _int_free(&main_arena, mem); + _int_free(&main_arena, p); (void)mutex_unlock(&main_arena.mutex); } @@ -305,8 +305,7 @@ realloc_check(oldmem, bytes, caller) Void_t* oldmem; size_t bytes; const Void_t *caller; #endif { - mchunkptr oldp; - INTERNAL_SIZE_T nb, oldsize; + INTERNAL_SIZE_T nb; Void_t* newmem = 0; unsigned char *magic_p; @@ -320,13 +319,13 @@ realloc_check(oldmem, bytes, caller) return NULL; } (void)mutex_lock(&main_arena.mutex); - oldp = mem2chunk_check(oldmem, &magic_p); + const mchunkptr oldp = mem2chunk_check(oldmem, &magic_p); (void)mutex_unlock(&main_arena.mutex); if(!oldp) { malloc_printerr(check_action, "realloc(): invalid pointer", oldmem); return malloc_check(bytes, NULL); } - oldsize = chunksize(oldp); + const INTERNAL_SIZE_T oldsize = chunksize(oldp); checked_request2size(bytes+1, nb); (void)mutex_lock(&main_arena.mutex); @@ -355,8 +354,11 @@ realloc_check(oldmem, bytes, caller) } } else { #endif /* HAVE_MMAP */ - if (top_check() >= 0) - newmem = _int_realloc(&main_arena, oldmem, bytes+1); + if (top_check() >= 0) { + INTERNAL_SIZE_T nb; + checked_request2size(bytes + 1, nb); + newmem = _int_realloc(&main_arena, oldp, nb); + } #if 0 /* Erase freed memory. */ if(newmem) newp = mem2chunk(newmem); @@ -470,7 +472,7 @@ free_starter(mem, caller) Void_t* mem; const Void_t *caller; return; } #endif - _int_free(&main_arena, mem); + _int_free(&main_arena, p); } # endif /* !defiend NO_STARTER */ diff --git a/malloc/malloc.c b/malloc/malloc.c index a918934740..12e23b0f9b 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -1581,11 +1581,11 @@ typedef struct malloc_chunk* mchunkptr; #if __STD_C -Void_t* _int_malloc(mstate, size_t); -void _int_free(mstate, Void_t*); -Void_t* _int_realloc(mstate, Void_t*, size_t); -Void_t* _int_memalign(mstate, size_t, size_t); -Void_t* _int_valloc(mstate, size_t); +static Void_t* _int_malloc(mstate, size_t); +static void _int_free(mstate, mchunkptr); +static Void_t* _int_realloc(mstate, mchunkptr, INTERNAL_SIZE_T); +static Void_t* _int_memalign(mstate, size_t, size_t); +static Void_t* _int_valloc(mstate, size_t); static Void_t* _int_pvalloc(mstate, size_t); /*static Void_t* cALLOc(size_t, size_t);*/ #ifndef _LIBC @@ -1632,12 +1632,12 @@ static void free_atfork(Void_t* mem, const Void_t *caller); #else -Void_t* _int_malloc(); -void _int_free(); -Void_t* _int_realloc(); -Void_t* _int_memalign(); -Void_t* _int_valloc(); -Void_t* _int_pvalloc(); +static Void_t* _int_malloc(); +static void _int_free(); +static Void_t* _int_realloc(); +static Void_t* _int_memalign(); +static Void_t* _int_valloc(); +static Void_t* _int_pvalloc(); /*static Void_t* cALLOc();*/ static Void_t** _int_icalloc(); static Void_t** _int_icomalloc(); @@ -3084,7 +3084,7 @@ static Void_t* sYSMALLOc(nb, av) INTERNAL_SIZE_T nb; mstate av; set_head(chunk_at_offset(old_top, old_size), (2*SIZE_SZ)|PREV_INUSE); set_foot(chunk_at_offset(old_top, old_size), (2*SIZE_SZ)); set_head(old_top, old_size|PREV_INUSE|NON_MAIN_ARENA); - _int_free(av, chunk2mem(old_top)); + _int_free(av, old_top); } else { set_head(old_top, (old_size + 2*SIZE_SZ)|PREV_INUSE); set_foot(old_top, (old_size + 2*SIZE_SZ)); @@ -3131,7 +3131,7 @@ static Void_t* sYSMALLOc(nb, av) INTERNAL_SIZE_T nb; mstate av; if (brk != (char*)(MORECORE_FAILURE)) { /* Call the `morecore' hook if necessary. */ - if (__after_morecore_hook) + if (__builtin_expect (__after_morecore_hook != NULL, 0)) (*__after_morecore_hook) (); } else { /* @@ -3270,7 +3270,7 @@ static Void_t* sYSMALLOc(nb, av) INTERNAL_SIZE_T nb; mstate av; snd_brk = (char*)(MORECORE(0)); } else /* Call the `morecore' hook if necessary. */ - if (__after_morecore_hook) + if (__builtin_expect (__after_morecore_hook != NULL, 0)) (*__after_morecore_hook) (); } @@ -3323,7 +3323,7 @@ static Void_t* sYSMALLOc(nb, av) INTERNAL_SIZE_T nb; mstate av; /* If possible, release the rest. */ if (old_size >= MINSIZE) { - _int_free(av, chunk2mem(old_top)); + _int_free(av, old_top); } } @@ -3415,7 +3415,7 @@ static int sYSTRIm(pad, av) size_t pad; mstate av; MORECORE(-extra); /* Call the `morecore' hook if necessary. */ - if (__after_morecore_hook) + if (__builtin_expect (__after_morecore_hook != NULL, 0)) (*__after_morecore_hook) (); new_brk = (char*)(MORECORE(0)); @@ -3542,7 +3542,7 @@ public_mALLOc(size_t bytes) Void_t *victim; __malloc_ptr_t (*hook) (size_t, __const __malloc_ptr_t) = __malloc_hook; - if (hook != NULL) + if (__builtin_expect (hook != NULL, 0)) return (*hook)(bytes, RETURN_ADDRESS (0)); arena_get(ar_ptr, bytes); @@ -3585,7 +3585,7 @@ public_fREe(Void_t* mem) mchunkptr p; /* chunk corresponding to mem */ void (*hook) (__malloc_ptr_t, __const __malloc_ptr_t) = __free_hook; - if (hook != NULL) { + if (__builtin_expect (hook != NULL, 0)) { (*hook)(mem, RETURN_ADDRESS (0)); return; } @@ -3622,7 +3622,7 @@ public_fREe(Void_t* mem) #else (void)mutex_lock(&ar_ptr->mutex); #endif - _int_free(ar_ptr, mem); + _int_free(ar_ptr, p); (void)mutex_unlock(&ar_ptr->mutex); } #ifdef libc_hidden_def @@ -3635,14 +3635,11 @@ public_rEALLOc(Void_t* oldmem, size_t bytes) mstate ar_ptr; INTERNAL_SIZE_T nb; /* padded request size */ - mchunkptr oldp; /* chunk corresponding to oldmem */ - INTERNAL_SIZE_T oldsize; /* its size */ - Void_t* newp; /* chunk to return */ __malloc_ptr_t (*hook) (__malloc_ptr_t, size_t, __const __malloc_ptr_t) = __realloc_hook; - if (hook != NULL) + if (__builtin_expect (hook != NULL, 0)) return (*hook)(oldmem, bytes, RETURN_ADDRESS (0)); #if REALLOC_ZERO_BYTES_FREES @@ -3652,8 +3649,10 @@ public_rEALLOc(Void_t* oldmem, size_t bytes) /* realloc of null is supposed to be same as malloc */ if (oldmem == 0) return public_mALLOc(bytes); - oldp = mem2chunk(oldmem); - oldsize = chunksize(oldp); + /* chunk corresponding to oldmem */ + const mchunkptr oldp = mem2chunk(oldmem); + /* its size */ + const INTERNAL_SIZE_T oldsize = chunksize(oldp); /* Little security check which won't hurt performance: the allocator never wrapps around at the end of the address space. @@ -3705,7 +3704,7 @@ public_rEALLOc(Void_t* oldmem, size_t bytes) tsd_setspecific(arena_key, (Void_t *)ar_ptr); #endif - newp = _int_realloc(ar_ptr, oldmem, bytes); + newp = _int_realloc(ar_ptr, oldp, nb); (void)mutex_unlock(&ar_ptr->mutex); assert(!newp || chunk_is_mmapped(mem2chunk(newp)) || @@ -3728,7 +3727,7 @@ public_rEALLOc(Void_t* oldmem, size_t bytes) #else (void)mutex_lock(&ar_ptr->mutex); #endif - _int_free(ar_ptr, oldmem); + _int_free(ar_ptr, oldp); (void)mutex_unlock(&ar_ptr->mutex); } } @@ -3748,7 +3747,7 @@ public_mEMALIGn(size_t alignment, size_t bytes) __malloc_ptr_t (*hook) __MALLOC_PMT ((size_t, size_t, __const __malloc_ptr_t)) = __memalign_hook; - if (hook != NULL) + if (__builtin_expect (hook != NULL, 0)) return (*hook)(alignment, bytes, RETURN_ADDRESS (0)); /* If need less alignment than we give anyway, just relay to malloc */ @@ -3805,7 +3804,7 @@ public_vALLOc(size_t bytes) __malloc_ptr_t (*hook) __MALLOC_PMT ((size_t, size_t, __const __malloc_ptr_t)) = __memalign_hook; - if (hook != NULL) + if (__builtin_expect (hook != NULL, 0)) return (*hook)(pagesz, bytes, RETURN_ADDRESS (0)); arena_get(ar_ptr, bytes + pagesz + MINSIZE); @@ -3852,7 +3851,7 @@ public_pVALLOc(size_t bytes) __malloc_ptr_t (*hook) __MALLOC_PMT ((size_t, size_t, __const __malloc_ptr_t)) = __memalign_hook; - if (hook != NULL) + if (__builtin_expect (hook != NULL, 0)) return (*hook)(pagesz, rounded_bytes, RETURN_ADDRESS (0)); arena_get(ar_ptr, bytes + 2*pagesz + MINSIZE); @@ -3906,7 +3905,7 @@ public_cALLOc(size_t n, size_t elem_size) } } - if (hook != NULL) { + if (__builtin_expect (hook != NULL, 0)) { sz = bytes; mem = (*hook)(sz, RETURN_ADDRESS (0)); if(mem == 0) @@ -4125,7 +4124,7 @@ public_mALLOPt(int p, int v) ------------------------------ malloc ------------------------------ */ -Void_t* +static Void_t* _int_malloc(mstate av, size_t bytes) { INTERNAL_SIZE_T nb; /* normalized request size */ @@ -4589,10 +4588,9 @@ _int_malloc(mstate av, size_t bytes) ------------------------------ free ------------------------------ */ -void -_int_free(mstate av, Void_t* mem) +static void +_int_free(mstate av, mchunkptr p) { - mchunkptr p; /* chunk corresponding to mem */ INTERNAL_SIZE_T size; /* its size */ mfastbinptr* fb; /* associated fastbin */ mchunkptr nextchunk; /* next contiguous chunk */ @@ -4604,7 +4602,6 @@ _int_free(mstate av, Void_t* mem) const char *errstr = NULL; - p = mem2chunk(mem); size = chunksize(p); /* Little security check which won't hurt performance: the @@ -4616,7 +4613,7 @@ _int_free(mstate av, Void_t* mem) { errstr = "free(): invalid pointer"; errout: - malloc_printerr (check_action, errstr, mem); + malloc_printerr (check_action, errstr, chunk2mem(p)); return; } /* We know that each chunk is at least MINSIZE bytes in size. */ @@ -4663,7 +4660,7 @@ _int_free(mstate av, Void_t* mem) } if (__builtin_expect (perturb_byte, 0)) - free_perturb (mem, size - SIZE_SZ); + free_perturb (chunk2mem(p), size - SIZE_SZ); p->fd = *fb; *fb = p; @@ -4707,7 +4704,7 @@ _int_free(mstate av, Void_t* mem) } if (__builtin_expect (perturb_byte, 0)) - free_perturb (mem, size - SIZE_SZ); + free_perturb (chunk2mem(p), size - SIZE_SZ); /* consolidate backward */ if (!prev_inuse(p)) { @@ -4943,13 +4940,8 @@ static void malloc_consolidate(av) mstate av; */ Void_t* -_int_realloc(mstate av, Void_t* oldmem, size_t bytes) +_int_realloc(mstate av, mchunkptr oldp, INTERNAL_SIZE_T nb) { - INTERNAL_SIZE_T nb; /* padded request size */ - - mchunkptr oldp; /* chunk corresponding to oldmem */ - INTERNAL_SIZE_T oldsize; /* its size */ - mchunkptr newp; /* chunk to return */ INTERNAL_SIZE_T newsize; /* its size */ Void_t* newmem; /* corresponding user mem */ @@ -4969,20 +4961,18 @@ _int_realloc(mstate av, Void_t* oldmem, size_t bytes) const char *errstr = NULL; - - checked_request2size(bytes, nb); - - oldp = mem2chunk(oldmem); - oldsize = chunksize(oldp); - /* Simple tests for old block integrity. */ if (__builtin_expect (misaligned_chunk (oldp), 0)) { errstr = "realloc(): invalid pointer"; errout: - malloc_printerr (check_action, errstr, oldmem); + malloc_printerr (check_action, errstr, chunk2mem(oldp)); return NULL; } + + /* oldmem size */ + const INTERNAL_SIZE_T oldsize = chunksize(oldp); + if (__builtin_expect (oldp->size <= 2 * SIZE_SZ, 0) || __builtin_expect (oldsize >= av->system_mem, 0)) { @@ -5054,7 +5044,7 @@ _int_realloc(mstate av, Void_t* oldmem, size_t bytes) */ copysize = oldsize - SIZE_SZ; - s = (INTERNAL_SIZE_T*)(oldmem); + s = (INTERNAL_SIZE_T*)(chunk2mem(oldp)); d = (INTERNAL_SIZE_T*)(newmem); ncopies = copysize / sizeof(INTERNAL_SIZE_T); assert(ncopies >= 3); @@ -5080,7 +5070,7 @@ _int_realloc(mstate av, Void_t* oldmem, size_t bytes) } } - _int_free(av, oldmem); + _int_free(av, oldp); check_inuse_chunk(av, newp); return chunk2mem(newp); } @@ -5104,7 +5094,7 @@ _int_realloc(mstate av, Void_t* oldmem, size_t bytes) (av != &main_arena ? NON_MAIN_ARENA : 0)); /* Mark remainder as inuse so free() won't complain */ set_inuse_bit_at_offset(remainder, remainder_size); - _int_free(av, chunk2mem(remainder)); + _int_free(av, remainder); } check_inuse_chunk(av, newp); @@ -5129,7 +5119,7 @@ _int_realloc(mstate av, Void_t* oldmem, size_t bytes) /* don't need to remap if still within same page */ if (oldsize == newsize - offset) - return oldmem; + return chunk2mem(oldp); cp = (char*)mremap((char*)oldp - offset, oldsize + offset, newsize, 1); @@ -5157,13 +5147,13 @@ _int_realloc(mstate av, Void_t* oldmem, size_t bytes) /* Note the extra SIZE_SZ overhead. */ if ((unsigned long)(oldsize) >= (unsigned long)(nb + SIZE_SZ)) - newmem = oldmem; /* do nothing */ + newmem = chunk2mem(oldp); /* do nothing */ else { /* Must alloc, copy, free. */ newmem = _int_malloc(av, nb - MALLOC_ALIGN_MASK); if (newmem != 0) { - MALLOC_COPY(newmem, oldmem, oldsize - 2*SIZE_SZ); - _int_free(av, oldmem); + MALLOC_COPY(newmem, chunk2mem(oldp), oldsize - 2*SIZE_SZ); + _int_free(av, oldp); } } return newmem; @@ -5181,7 +5171,7 @@ _int_realloc(mstate av, Void_t* oldmem, size_t bytes) ------------------------------ memalign ------------------------------ */ -Void_t* +static Void_t* _int_memalign(mstate av, size_t alignment, size_t bytes) { INTERNAL_SIZE_T nb; /* padded request size */ @@ -5257,7 +5247,7 @@ _int_memalign(mstate av, size_t alignment, size_t bytes) (av != &main_arena ? NON_MAIN_ARENA : 0)); set_inuse_bit_at_offset(newp, newsize); set_head_size(p, leadsize | (av != &main_arena ? NON_MAIN_ARENA : 0)); - _int_free(av, chunk2mem(p)); + _int_free(av, p); p = newp; assert (newsize >= nb && @@ -5273,7 +5263,7 @@ _int_memalign(mstate av, size_t alignment, size_t bytes) set_head(remainder, remainder_size | PREV_INUSE | (av != &main_arena ? NON_MAIN_ARENA : 0)); set_head_size(p, nb); - _int_free(av, chunk2mem(remainder)); + _int_free(av, remainder); } } @@ -5514,7 +5504,7 @@ mstate av; size_t n_elements; size_t* sizes; int opts; Void_t* chunks[]; ------------------------------ valloc ------------------------------ */ -Void_t* +static Void_t* #if __STD_C _int_valloc(mstate av, size_t bytes) #else @@ -5531,7 +5521,7 @@ _int_valloc(av, bytes) mstate av; size_t bytes; */ -Void_t* +static Void_t* #if __STD_C _int_pvalloc(mstate av, size_t bytes) #else @@ -6020,7 +6010,7 @@ __posix_memalign (void **memptr, size_t alignment, size_t size) /* Call the hook here, so that caller is posix_memalign's caller and not posix_memalign itself. */ - if (hook != NULL) + if (__builtin_expect (hook != NULL, 0)) mem = (*hook)(alignment, size, RETURN_ADDRESS (0)); else mem = public_mEMALIGn (alignment, size); diff --git a/malloc/memusage.c b/malloc/memusage.c index d11e9e6ed5..fcd58dc684 100644 --- a/malloc/memusage.c +++ b/malloc/memusage.c @@ -1,5 +1,5 @@ /* Profile heap and stack memory usage of running program. - Copyright (C) 1998-2002, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 1998-2002, 2004-2006, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -18,6 +18,7 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ +#include <assert.h> #include <atomic.h> #include <dlfcn.h> #include <errno.h> @@ -92,7 +93,7 @@ static __thread uintptr_t start_sp; #define peak_stack peak_use[1] #define peak_total peak_use[2] -#define DEFAULT_BUFFER_SIZE 1024 +#define DEFAULT_BUFFER_SIZE 32768 static size_t buffer_size; static int fd = -1; @@ -168,10 +169,11 @@ update_data (struct header *result, size_t len, size_t old_len) this fails because of another thread increasing the counter it does not matter since that thread will take care of the correction. */ - unsigned int reset = idx - 2 * buffer_size; - catomic_compare_and_exchange_val_acq (&buffer_size, reset, idx); + uatomic32_t reset = idx % (2 * buffer_size); + catomic_compare_and_exchange_val_acq (&buffer_cnt, reset, idx); idx = reset; } + assert (idx < 2 * DEFAULT_BUFFER_SIZE); buffer[idx].heap = current_heap; buffer[idx].stack = current_stack; diff --git a/malloc/memusage.sh b/malloc/memusage.sh index 1c906a1be5..8b372e4b8e 100755 --- a/malloc/memusage.sh +++ b/malloc/memusage.sh @@ -61,8 +61,10 @@ Profile memory usage of PROGRAM. Mandatory arguments to long options are also mandatory for any corresponding short options. -For bug reporting instructions, please see: -<http://www.gnu.org/software/libc/bugs.html>." +" + print $"For bug reporting instructions, please see: +<http://www.gnu.org/software/libc/bugs.html>. +" exit 0 } diff --git a/malloc/memusagestat.c b/malloc/memusagestat.c index 779d5c0a59..bf33175415 100644 --- a/malloc/memusagestat.c +++ b/malloc/memusagestat.c @@ -1,5 +1,6 @@ /* Generate graphic from memory profiling data. - Copyright (C) 1998, 1999, 2000, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2005, 2006, + 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -38,6 +39,8 @@ #include <gdfontl.h> #include <gdfonts.h> +#include "../version.h" +#define PACKAGE _libc_intl_domainname /* Default size of the generated image. */ #define XSIZE 800 @@ -73,6 +76,10 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state); /* Function to print some extra text in the help message. */ static char *more_help (int key, const char *text, void *input); +/* Name and version of program. */ +static void print_version (FILE *stream, struct argp_state *state); +void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; + /* Data structure to communicate with argp functions. */ static struct argp argp = { @@ -535,3 +542,16 @@ For bug reporting instructions, please see:\n\ } return (char *) text; } + +/* Print the version information. */ +static void +print_version (FILE *stream, struct argp_state *state) +{ + fprintf (stream, "memusagestat (GNU %s) %s\n", PACKAGE, VERSION); + fprintf (stream, gettext ("\ +Copyright (C) %s Free Software Foundation, Inc.\n\ +This is free software; see the source for copying conditions. There is NO\n\ +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ +"), "2009"); + fprintf (stream, gettext ("Written by %s.\n"), "Ulrich Drepper"); +} diff --git a/malloc/obstack.h b/malloc/obstack.h index 206fe55050..449070e7f1 100644 --- a/malloc/obstack.h +++ b/malloc/obstack.h @@ -1,5 +1,5 @@ /* obstack.h - object stack macros - Copyright (C) 1988-1994,1996-1999,2003,2004,2005 + Copyright (C) 1988-1994,1996-1999,2003,2004,2005,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -187,7 +187,7 @@ extern int _obstack_begin_1 (struct obstack *, int, int, void (*) (void *, void *), void *); extern int _obstack_memory_used (struct obstack *); -void obstack_free (struct obstack *obstack, void *block); +void obstack_free (struct obstack *__obstack, void *__block); /* Error handler called when `obstack_chunk_alloc' failed to allocate diff --git a/nis/rpcsvc/nislib.h b/nis/rpcsvc/nislib.h index c8927ece17..f3cc2c4c51 100644 --- a/nis/rpcsvc/nislib.h +++ b/nis/rpcsvc/nislib.h @@ -1,4 +1,5 @@ -/* Copyright (C) 1997, 1998, 1999, 2006, 2007 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998, 1999, 2006, 2007, 2009 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Thorsten Kukuk <kukuk@suse.de>, 1997. @@ -111,59 +112,59 @@ extern nis_result *nis_modify (const_nis_name name, * const netobj *cookie: The value of cookie from the nis_result structure * form the previous call. */ -extern nis_result *nis_list (const_nis_name name, unsigned int flags, - int (*callback)(const_nis_name table_name, - const nis_object *obj, - const void *userdata), - const void *userdata) __THROW; -extern nis_result *nis_add_entry (const_nis_name table_name, - const nis_object *obj, - unsigned int flags) __THROW; -extern nis_result *nis_modify_entry (const_nis_name name, - const nis_object *obj, - unsigned int flags) __THROW; -extern nis_result *nis_remove_entry (const_nis_name table_name, - const nis_object *obj, - unsigned int flags) __THROW; -extern nis_result *nis_first_entry (const_nis_name table_name) __THROW; -extern nis_result *nis_next_entry (const_nis_name table_name, - const netobj *cookie) __THROW; +extern nis_result *nis_list (const_nis_name __name, unsigned int __flags, + int (*__callback)(const_nis_name __table_name, + const nis_object *__obj, + const void *__userdata), + const void *__userdata) __THROW; +extern nis_result *nis_add_entry (const_nis_name __table_name, + const nis_object *__obj, + unsigned int __flags) __THROW; +extern nis_result *nis_modify_entry (const_nis_name __name, + const nis_object *__obj, + unsigned int __flags) __THROW; +extern nis_result *nis_remove_entry (const_nis_name __table_name, + const nis_object *__obj, + unsigned int __flags) __THROW; +extern nis_result *nis_first_entry (const_nis_name __table_name) __THROW; +extern nis_result *nis_next_entry (const_nis_name __table_name, + const netobj *__cookie) __THROW; /* ** nis_server */ -extern nis_error nis_mkdir (const_nis_name dirname, - const nis_server *machine) __THROW; -extern nis_error nis_rmdir (const_nis_name dirname, - const nis_server *machine) __THROW; -extern nis_error nis_servstate (const nis_server *machine, - const nis_tag *tags, int numtags, - nis_tag **result) __THROW; -extern nis_error nis_stats (const nis_server *machine, - const nis_tag *tags, int numtags, - nis_tag **result) __THROW; -extern void nis_freetags (nis_tag *tags, int numtags) __THROW; -extern nis_server **nis_getservlist (const_nis_name dirname) __THROW; -extern void nis_freeservlist (nis_server **machines) __THROW; +extern nis_error nis_mkdir (const_nis_name __dirname, + const nis_server *__machine) __THROW; +extern nis_error nis_rmdir (const_nis_name __dirname, + const nis_server *__machine) __THROW; +extern nis_error nis_servstate (const nis_server *__machine, + const nis_tag *__tags, int __numtags, + nis_tag **__result) __THROW; +extern nis_error nis_stats (const nis_server *__machine, + const nis_tag *__tags, int __numtags, + nis_tag **__result) __THROW; +extern void nis_freetags (nis_tag *__tags, int __numtags) __THROW; +extern nis_server **nis_getservlist (const_nis_name __dirname) __THROW; +extern void nis_freeservlist (nis_server **__machines) __THROW; /* ** nis_subr */ -extern nis_name nis_leaf_of (const_nis_name name) __THROW; -extern nis_name nis_leaf_of_r (const_nis_name name, char *buffer, - size_t buflen) __THROW; -extern nis_name nis_name_of (const_nis_name name) __THROW; -extern nis_name nis_name_of_r (const_nis_name name, char *buffer, - size_t buflen) __THROW; -extern nis_name nis_domain_of (const_nis_name name) __THROW; -extern nis_name nis_domain_of_r (const_nis_name name, char *buffer, - size_t buflen) __THROW; -extern nis_name *nis_getnames (const_nis_name name) __THROW; -extern void nis_freenames (nis_name *namelist) __THROW; -extern name_pos nis_dir_cmp (const_nis_name n1, const_nis_name n2) __THROW; -extern nis_object *nis_clone_object (const nis_object *src, - nis_object *dest) __THROW; -extern void nis_destroy_object (nis_object *obj) __THROW; -extern void nis_print_object (const nis_object *obj) __THROW; +extern nis_name nis_leaf_of (const_nis_name __name) __THROW; +extern nis_name nis_leaf_of_r (const_nis_name __name, char *__buffer, + size_t __buflen) __THROW; +extern nis_name nis_name_of (const_nis_name __name) __THROW; +extern nis_name nis_name_of_r (const_nis_name __name, char *__buffer, + size_t __buflen) __THROW; +extern nis_name nis_domain_of (const_nis_name __name) __THROW; +extern nis_name nis_domain_of_r (const_nis_name __name, char *__buffer, + size_t __buflen) __THROW; +extern nis_name *nis_getnames (const_nis_name __name) __THROW; +extern void nis_freenames (nis_name *__namelist) __THROW; +extern name_pos nis_dir_cmp (const_nis_name __n1, const_nis_name __n2) __THROW; +extern nis_object *nis_clone_object (const nis_object *__src, + nis_object *__dest) __THROW; +extern void nis_destroy_object (nis_object *__obj) __THROW; +extern void nis_print_object (const nis_object *__obj) __THROW; /* ** nis_local_names @@ -176,67 +177,67 @@ extern nis_name nis_local_host (void) __THROW; /* ** nis_error */ -extern const char *nis_sperrno (const nis_error status) __THROW; -extern void nis_perror (const nis_error status, const char *label) __THROW; -extern void nis_lerror (const nis_error status, const char *label) __THROW; -extern char *nis_sperror (const nis_error status, const char *label) __THROW; -extern char *nis_sperror_r (const nis_error status, const char *label, - char *buffer, size_t buflen) __THROW; +extern const char *nis_sperrno (const nis_error __status) __THROW; +extern void nis_perror (const nis_error __status, const char *__label) __THROW; +extern void nis_lerror (const nis_error __status, const char *__label) __THROW; +extern char *nis_sperror (const nis_error status, const char *__label) __THROW; +extern char *nis_sperror_r (const nis_error __status, const char *__label, + char *__buffer, size_t __buflen) __THROW; /* ** nis_groups */ -extern bool_t nis_ismember (const_nis_name principal, - const_nis_name group) __THROW; -extern nis_error nis_addmember (const_nis_name member, - const_nis_name group) __THROW; -extern nis_error nis_removemember (const_nis_name member, - const_nis_name group) __THROW; -extern nis_error nis_creategroup (const_nis_name group, - unsigned int flags) __THROW; -extern nis_error nis_destroygroup (const_nis_name group) __THROW; -extern void nis_print_group_entry (const_nis_name group) __THROW; -extern nis_error nis_verifygroup (const_nis_name group) __THROW; +extern bool_t nis_ismember (const_nis_name __principal, + const_nis_name __group) __THROW; +extern nis_error nis_addmember (const_nis_name __member, + const_nis_name __group) __THROW; +extern nis_error nis_removemember (const_nis_name __member, + const_nis_name __group) __THROW; +extern nis_error nis_creategroup (const_nis_name __group, + unsigned int __flags) __THROW; +extern nis_error nis_destroygroup (const_nis_name __group) __THROW; +extern void nis_print_group_entry (const_nis_name __group) __THROW; +extern nis_error nis_verifygroup (const_nis_name __group) __THROW; /* ** nis_ping */ -extern void nis_ping (const_nis_name dirname, uint32_t utime, - const nis_object *dirobj) __THROW; -extern nis_result *nis_checkpoint (const_nis_name dirname) __THROW; +extern void nis_ping (const_nis_name __dirname, uint32_t __utime, + const nis_object *__dirobj) __THROW; +extern nis_result *nis_checkpoint (const_nis_name __dirname) __THROW; /* ** nis_print (XXX INTERNAL FUNCTIONS, SHOULD NOT BE USED !!) */ -extern void nis_print_result (const nis_result *result) __THROW; -extern void nis_print_rights (unsigned int rights) __THROW; -extern void nis_print_directory (const directory_obj *dirobj) __THROW; -extern void nis_print_group (const group_obj *grpobj) __THROW; -extern void nis_print_table (const table_obj *tblobj) __THROW; -extern void nis_print_link (const link_obj *lnkobj) __THROW; -extern void nis_print_entry (const entry_obj *enobj) __THROW; +extern void nis_print_result (const nis_result *__result) __THROW; +extern void nis_print_rights (unsigned int __rights) __THROW; +extern void nis_print_directory (const directory_obj *__dirobj) __THROW; +extern void nis_print_group (const group_obj *__grpobj) __THROW; +extern void nis_print_table (const table_obj *__tblobj) __THROW; +extern void nis_print_link (const link_obj *__lnkobj) __THROW; +extern void nis_print_entry (const entry_obj *__enobj) __THROW; /* ** nis_file (XXX INTERNAL FUNCTIONS, SHOULD NOT BE USED !!) */ extern directory_obj *readColdStartFile (void) __THROW; -extern bool_t writeColdStartFile (const directory_obj *dirobj) __THROW; -extern nis_object *nis_read_obj (const char *obj) __THROW; -extern bool_t nis_write_obj (const char *file, const nis_object *obj) __THROW; +extern bool_t writeColdStartFile (const directory_obj *__dirobj) __THROW; +extern nis_object *nis_read_obj (const char *__obj) __THROW; +extern bool_t nis_write_obj (const char *__file, const nis_object *__obj) __THROW; /* ** nis_clone - (XXX INTERNAL FUNCTIONS, SHOULD NOT BE USED !!) */ -extern directory_obj *nis_clone_directory (const directory_obj *src, - directory_obj *dest) __THROW; -extern nis_result *nis_clone_result (const nis_result *src, - nis_result *dest) __THROW; +extern directory_obj *nis_clone_directory (const directory_obj *__src, + directory_obj *__dest) __THROW; +extern nis_result *nis_clone_result (const nis_result *__src, + nis_result *__dest) __THROW; /* nis_free - nis_freeresult */ -extern void nis_freeresult (nis_result *result) __THROW; +extern void nis_freeresult (nis_result *__result) __THROW; /* (XXX THE FOLLOWING ARE INTERNAL FUNCTIONS, SHOULD NOT BE USED !!) */ -extern void nis_free_request (ib_request *req) __THROW; -extern void nis_free_directory (directory_obj *dirobj) __THROW; -extern void nis_free_object (nis_object *obj) __THROW; +extern void nis_free_request (ib_request *__req) __THROW; +extern void nis_free_directory (directory_obj *__dirobj) __THROW; +extern void nis_free_object (nis_object *__obj) __THROW; /* (XXX INTERNAL FUNCTIONS, SHOULD NOT BE USED !!) */ extern nis_name __nis_default_owner (char *) __THROW; @@ -245,7 +246,7 @@ extern uint32_t __nis_default_ttl (char *) __THROW; extern unsigned int __nis_default_access (char *, unsigned int) __THROW; extern fd_result *__nis_finddirectory (directory_obj *, const_nis_name) __THROW; extern void __free_fdresult (fd_result *) __THROW; -extern uint32_t __nis_hash (const void *keyarg, register size_t len) __THROW; +extern uint32_t __nis_hash (const void *__keyarg, size_t __len) __THROW; /* NIS+ cache locking */ extern int __nis_lock_cache (void) __THROW; diff --git a/nptl/ChangeLog b/nptl/ChangeLog index eb0f345cd8..c0c5f82ea8 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,8 @@ +2009-02-14 SUGIOKA Toshinobu <sugioka@itonet.co.jp> + + * sysdeps/unix/sysv/linux/sh/lowlevellock.S: Define + LOAD_FUTEX_WAIT_ABS even if (FUTEX_WAIT == 0). + 2009-01-29 Ulrich Drepper <drepper@redhat.com> * sysdeps/pthread/unwind-forcedunwind.c: Encrypt all function diff --git a/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S index c051192cee..b80c369a3c 100644 --- a/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S +++ b/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S @@ -103,7 +103,8 @@ and tmp2, reg ; \ mov #FUTEX_WAIT, tmp ; \ or tmp, reg -# define LOAD_FUTEX_WAIT_ABS(reg,tmp,tmp2) \ +# endif +# define LOAD_FUTEX_WAIT_ABS(reg,tmp,tmp2) \ stc gbr, tmp ; \ mov.w 99f, tmp2 ; \ add tmp2, tmp ; \ @@ -119,7 +120,6 @@ swap.b tmp2, tmp2; \ or tmp2, tmp; \ or tmp, reg -# endif # define LOAD_FUTEX_WAKE(reg,tmp,tmp2) \ stc gbr, tmp ; \ mov.w 99f, tmp2 ; \ diff --git a/nptl_db/ChangeLog b/nptl_db/ChangeLog index af819c301a..5166d3df66 100644 --- a/nptl_db/ChangeLog +++ b/nptl_db/ChangeLog @@ -1,3 +1,8 @@ +2009-02-06 Ulrich Drepper <drepper@redhat.com> + + * td_thr_get_info.c (td_thr_get_info): Initialize schedpolicy in + the special case [Coverity CID 251]. + 2008-03-25 Roland McGrath <roland@redhat.com> [BZ #5983] diff --git a/nptl_db/td_thr_get_info.c b/nptl_db/td_thr_get_info.c index 99e5e19bf9..52985603bf 100644 --- a/nptl_db/td_thr_get_info.c +++ b/nptl_db/td_thr_get_info.c @@ -1,5 +1,5 @@ /* Get thread information. - Copyright (C) 1999,2000,2001,2002,2003,2007 Free Software Foundation, Inc. + Copyright (C) 1999-2003,2007,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 1999. @@ -38,6 +38,7 @@ td_thr_get_info (const td_thrhandle_t *th, td_thrinfo_t *infop) copy = NULL; tls = 0; cancelhandling = 0; + schedpolicy = SCHED_OTHER; schedprio = 0; tid = 0; err = DB_GET_VALUE (report_events, th->th_ta_p, diff --git a/nscd/aicache.c b/nscd/aicache.c index 5ffab76a04..524c0a63af 100644 --- a/nscd/aicache.c +++ b/nscd/aicache.c @@ -1,5 +1,5 @@ /* Cache handling for host lookup. - Copyright (C) 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 2004-2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2004. @@ -60,7 +60,8 @@ static const ai_response_header notfound = static void addhstaiX (struct database_dyn *db, int fd, request_header *req, - void *key, uid_t uid, struct hashentry *he, struct datahead *dh) + void *key, uid_t uid, struct hashentry *const he, + struct datahead *dh) { /* Search for the entry matching the key. Please note that we don't look again in the table whether the dataset is now available. We @@ -172,13 +173,8 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, /* Now we can allocate the data structure. If the TTL of the entry is reported as zero do not cache the entry at all. */ if (ttl != 0 && he == NULL) - { - dataset = (struct dataset *) mempool_alloc (db, total - + req->key_len, - IDX_result_data); - if (dataset == NULL) - ++db->head->addfailed; - } + dataset = (struct dataset *) mempool_alloc (db, total + + req->key_len, 1); if (dataset == NULL) { @@ -300,9 +296,9 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, } else { - struct hostent *he = NULL; + struct hostent *hstent = NULL; int herrno; - struct hostent he_mem; + struct hostent hstent_mem; void *addr; size_t addrlen; int addrfamily; @@ -326,8 +322,8 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, while (1) { rc = __gethostbyaddr2_r (addr, addrlen, addrfamily, - &he_mem, tmpbuf, tmpbuflen, - &he, &herrno, NULL); + &hstent_mem, tmpbuf, tmpbuflen, + &hstent, &herrno, NULL); if (rc != ERANGE || herrno != NETDB_INTERNAL) break; tmpbuf = extend_alloca (tmpbuf, tmpbuflen, @@ -336,8 +332,8 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, if (rc == 0) { - if (he != NULL) - canon = he->h_name; + if (hstent != NULL) + canon = hstent->h_name; else canon = key; } @@ -352,13 +348,8 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, /* Now we can allocate the data structure. If the TTL of the entry is reported as zero do not cache the entry at all. */ if (ttl != 0 && he == NULL) - { - dataset = (struct dataset *) mempool_alloc (db, total - + req->key_len, - IDX_result_data); - if (dataset == NULL) - ++db->head->addfailed; - } + dataset = (struct dataset *) mempool_alloc (db, total + + req->key_len, 1); if (dataset == NULL) { @@ -436,7 +427,7 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, appropriate memory and copy it. */ struct dataset *newp = (struct dataset *) mempool_alloc (db, total + req->key_len, - IDX_result_data); + 1); if (__builtin_expect (newp != NULL, 1)) { /* Adjust pointer into the memory block. */ @@ -445,8 +436,6 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, dataset = memcpy (newp, dataset, total + req->key_len); alloca_used = false; } - else - ++db->head->addfailed; /* Mark the old record as obsolete. */ dh->usable = false; @@ -515,8 +504,7 @@ next_nip: if (fd != -1) TEMP_FAILURE_RETRY (send (fd, ¬found, total, MSG_NOSIGNAL)); - dataset = mempool_alloc (db, sizeof (struct dataset) + req->key_len, - IDX_result_data); + dataset = mempool_alloc (db, sizeof (struct dataset) + req->key_len, 1); /* If we cannot permanently store the result, so be it. */ if (dataset != NULL) { @@ -535,8 +523,6 @@ next_nip: /* Copy the key data. */ key_copy = memcpy (dataset->strdata, key, req->key_len); } - else - ++db->head->addfailed; } out: @@ -554,9 +540,6 @@ next_nip: MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - (void) cache_add (req->type, key_copy, req->key_len, &dataset->head, true, db, uid, he == NULL); diff --git a/nscd/cache.c b/nscd/cache.c index cd6e6b4440..ab842efc29 100644 --- a/nscd/cache.c +++ b/nscd/cache.c @@ -1,4 +1,4 @@ -/* Copyright (c) 1998, 1999, 2003-2007, 2008 Free Software Foundation, Inc. +/* Copyright (c) 1998, 1999, 2003-2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -155,21 +155,15 @@ cache_add (int type, const void *key, size_t len, struct datahead *packet, unsigned long int hash = __nis_hash (key, len) % table->head->module; struct hashentry *newp; - newp = mempool_alloc (table, sizeof (struct hashentry), IDX_record_data); + newp = mempool_alloc (table, sizeof (struct hashentry), 0); /* If we cannot allocate memory, just do not do anything. */ if (newp == NULL) { - ++table->head->addfailed; - /* If necessary mark the entry as unusable so that lookups will not use it. */ if (first) packet->usable = false; - /* Mark the in-flight memory as unused. */ - for (enum in_flight idx = 0; idx < IDX_record_data; ++idx) - mem_in_flight.block[idx].dbidx = -1; - return -1; } @@ -234,10 +228,6 @@ cache_add (int type, const void *key, size_t len, struct datahead *packet, pthread_cond_signal (&table->prune_cond); } - /* Mark the in-flight memory as unused. */ - for (enum in_flight idx = 0; idx < IDX_last; ++idx) - mem_in_flight.block[idx].dbidx = -1; - return 0; } diff --git a/nscd/connections.c b/nscd/connections.c index 7e3a406185..3d0727f33b 100644 --- a/nscd/connections.c +++ b/nscd/connections.c @@ -250,11 +250,6 @@ static int have_accept4; /* Number of times clients had to wait. */ unsigned long int client_queued; -/* Data structure for recording in-flight memory allocation. */ -__thread struct mem_in_flight mem_in_flight attribute_tls_model_ie; -/* Global list of the mem_in_flight variables of all the threads. */ -struct mem_in_flight *mem_in_flight_list; - ssize_t writeall (int fd, const void *buf, size_t len) @@ -1584,16 +1579,6 @@ nscd_run_worker (void *p) { char buf[256]; - /* Initialize the memory-in-flight list. */ - for (enum in_flight idx = 0; idx < IDX_last; ++idx) - mem_in_flight.block[idx].dbidx = -1; - /* And queue this threads structure. */ - do - mem_in_flight.next = mem_in_flight_list; - while (atomic_compare_and_exchange_bool_acq (&mem_in_flight_list, - &mem_in_flight, - mem_in_flight.next) != 0); - /* Initial locking. */ pthread_mutex_lock (&readylist_lock); diff --git a/nscd/grpcache.c b/nscd/grpcache.c index c49c0e1906..184d53898c 100644 --- a/nscd/grpcache.c +++ b/nscd/grpcache.c @@ -1,5 +1,5 @@ /* Cache handling for group lookup. - Copyright (C) 1998-2005, 2006, 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 1998-2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -74,7 +74,7 @@ static const gr_response_header notfound = static void cache_addgr (struct database_dyn *db, int fd, request_header *req, const void *key, struct group *grp, uid_t owner, - struct hashentry *he, struct datahead *dh, int errval) + struct hashentry *const he, struct datahead *dh, int errval) { ssize_t total; ssize_t written; @@ -114,7 +114,7 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, MSG_NOSIGNAL)); dataset = mempool_alloc (db, sizeof (struct dataset) + req->key_len, - IDX_result_data); + 1); /* If we cannot permanently store the result, so be it. */ if (dataset != NULL) { @@ -143,9 +143,6 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, + sizeof (struct dataset) + req->key_len, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - (void) cache_add (req->type, &dataset->strdata, req->key_len, &dataset->head, true, db, owner, he == NULL); @@ -155,8 +152,6 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, if (dh != NULL) dh->usable = false; } - else - ++db->head->addfailed; } } else @@ -202,12 +197,7 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, dataset = NULL; if (he == NULL) - { - dataset = (struct dataset *) mempool_alloc (db, total + n, - IDX_result_data); - if (dataset == NULL) - ++db->head->addfailed; - } + dataset = (struct dataset *) mempool_alloc (db, total + n, 1); if (dataset == NULL) { @@ -277,8 +267,7 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, /* We have to create a new record. Just allocate appropriate memory and copy it. */ struct dataset *newp - = (struct dataset *) mempool_alloc (db, total + n, - IDX_result_data); + = (struct dataset *) mempool_alloc (db, total + n, 1); if (newp != NULL) { /* Adjust pointers into the memory block. */ @@ -289,8 +278,6 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, dataset = memcpy (newp, dataset, total + n); alloca_used = false; } - else - ++db->head->addfailed; /* Mark the old record as obsolete. */ dh->usable = false; @@ -343,9 +330,6 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - /* NB: in the following code we always must add the entry marked with FIRST first. Otherwise we end up with dangling "pointers" in case a latter hash entry cannot be diff --git a/nscd/hstcache.c b/nscd/hstcache.c index 4333917ba0..51e2273960 100644 --- a/nscd/hstcache.c +++ b/nscd/hstcache.c @@ -1,5 +1,5 @@ /* Cache handling for host lookup. - Copyright (C) 1998-2005, 2006, 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 1998-2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -80,7 +80,7 @@ static const hst_response_header notfound = static void cache_addhst (struct database_dyn *db, int fd, request_header *req, const void *key, struct hostent *hst, uid_t owner, - struct hashentry *he, struct datahead *dh, int errval, + struct hashentry *const he, struct datahead *dh, int errval, int32_t ttl) { bool all_written = true; @@ -120,7 +120,7 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, all_written = false; dataset = mempool_alloc (db, sizeof (struct dataset) + req->key_len, - IDX_result_data); + 1); /* If we cannot permanently store the result, so be it. */ if (dataset != NULL) { @@ -150,9 +150,6 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, + sizeof (struct dataset) + req->key_len, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - (void) cache_add (req->type, &dataset->strdata, req->key_len, &dataset->head, true, db, owner, he == NULL); @@ -162,8 +159,6 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, if (dh != NULL) dh->usable = false; } - else - ++db->head->addfailed; } } else @@ -221,13 +216,8 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, questionable whether it is worthwhile complicating the cache handling just for handling such a special case. */ if (he == NULL && h_addr_list_cnt == 1) - { - dataset = (struct dataset *) mempool_alloc (db, - total + req->key_len, - IDX_result_data); - if (dataset == NULL) - ++db->head->addfailed; - } + dataset = (struct dataset *) mempool_alloc (db, total + req->key_len, + 1); if (dataset == NULL) { @@ -316,7 +306,7 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, struct dataset *newp = (struct dataset *) mempool_alloc (db, total + req->key_len, - IDX_result_data); + 1); if (newp != NULL) { /* Adjust pointers into the memory block. */ @@ -329,8 +319,6 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, dataset = memcpy (newp, dataset, total + req->key_len); alloca_used = false; } - else - ++db->head->addfailed; } /* Mark the old record as obsolete. */ @@ -400,9 +388,6 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, addr_list_type = (hst->h_length == NS_INADDRSZ ? GETHOSTBYADDR : GETHOSTBYADDRv6); - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - /* NB: the following code is really complicated. It has seemlingly duplicated code paths which do the same. The problem is that we always must add the hash table entry diff --git a/nscd/initgrcache.c b/nscd/initgrcache.c index c5693c6be5..c33aaf315f 100644 --- a/nscd/initgrcache.c +++ b/nscd/initgrcache.c @@ -1,5 +1,5 @@ /* Cache handling for host lookup. - Copyright (C) 2004, 2005, 2006, 2008 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2006, 2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2004. @@ -54,7 +54,7 @@ static const initgr_response_header notfound = static void addinitgroupsX (struct database_dyn *db, int fd, request_header *req, - void *key, uid_t uid, struct hashentry *he, + void *key, uid_t uid, struct hashentry *const he, struct datahead *dh) { /* Search for the entry matching the key. Please note that we don't @@ -198,7 +198,7 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, MSG_NOSIGNAL)); dataset = mempool_alloc (db, sizeof (struct dataset) + req->key_len, - IDX_result_data); + 1); /* If we cannot permanently store the result, so be it. */ if (dataset != NULL) { @@ -227,9 +227,6 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, + sizeof (struct dataset) + req->key_len, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - (void) cache_add (req->type, key_copy, req->key_len, &dataset->head, true, db, uid, he == NULL); @@ -239,8 +236,6 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, if (dh != NULL) dh->usable = false; } - else - ++db->head->addfailed; } } else @@ -257,13 +252,8 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, dataset = NULL; if (he == NULL) - { - dataset = (struct dataset *) mempool_alloc (db, - total + req->key_len, - IDX_result_data); - if (dataset == NULL) - ++db->head->addfailed; - } + dataset = (struct dataset *) mempool_alloc (db, total + req->key_len, + 1); if (dataset == NULL) { @@ -334,7 +324,7 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, appropriate memory and copy it. */ struct dataset *newp = (struct dataset *) mempool_alloc (db, total + req->key_len, - IDX_result_data); + 1); if (newp != NULL) { /* Adjust pointer into the memory block. */ @@ -343,8 +333,6 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, dataset = memcpy (newp, dataset, total + req->key_len); alloca_used = false; } - else - ++db->head->addfailed; /* Mark the old record as obsolete. */ dh->usable = false; @@ -398,9 +386,6 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, req->key_len, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - (void) cache_add (INITGROUPS, cp, req->key_len, &dataset->head, true, db, uid, he == NULL); diff --git a/nscd/mem.c b/nscd/mem.c index 7f3ea06f4a..fcea6dbd03 100644 --- a/nscd/mem.c +++ b/nscd/mem.c @@ -197,32 +197,6 @@ gc (struct database_dyn *db) } assert (cnt == db->head->nentries); - /* Go through the list of in-flight memory blocks. */ - struct mem_in_flight *mrunp = mem_in_flight_list; - while (mrunp != NULL) - { - /* NB: There can be no race between this test and another thread - setting the field to the index we are looking for because - this would require the other thread to also have the memlock - for the database. - - NB2: we do not have to look at latter blocks (higher indices) if - earlier blocks are not in flight. They are always allocated in - sequence. */ - for (enum in_flight idx = IDX_result_data; - idx < IDX_last && mrunp->block[idx].dbidx == db - dbs; ++idx) - { - assert (mrunp->block[idx].blockoff >= 0); - assert (mrunp->block[idx].blocklen < db->memsize); - assert (mrunp->block[idx].blockoff - + mrunp->block[0].blocklen <= db->memsize); - markrange (mark, mrunp->block[idx].blockoff, - mrunp->block[idx].blocklen); - } - - mrunp = mrunp->next; - } - /* Sort the entries by the addresses of the referenced data. All the entries pointing to the same DATAHEAD object will have the same key. Stability of the sorting is unimportant. */ @@ -540,13 +514,16 @@ gc (struct database_dyn *db) void * -mempool_alloc (struct database_dyn *db, size_t len, enum in_flight idx) +mempool_alloc (struct database_dyn *db, size_t len, int data_alloc) { /* Make sure LEN is a multiple of our maximum alignment so we can keep track of used memory is multiples of this alignment value. */ if ((len & BLOCK_ALIGN_M1) != 0) len += BLOCK_ALIGN - (len & BLOCK_ALIGN_M1); + if (data_alloc) + pthread_rwlock_rdlock (&db->lock); + pthread_mutex_lock (&db->memlock); assert ((db->head->first_free & BLOCK_ALIGN_M1) == 0); @@ -589,6 +566,9 @@ mempool_alloc (struct database_dyn *db, size_t len, enum in_flight idx) } } + if (data_alloc) + pthread_rwlock_unlock (&db->lock); + if (! db->last_alloc_failed) { dbg_log (_("no more memory for database '%s'"), dbnames[db - dbs]); @@ -596,17 +576,13 @@ mempool_alloc (struct database_dyn *db, size_t len, enum in_flight idx) db->last_alloc_failed = true; } + ++db->head->addfailed; + /* No luck. */ res = NULL; } else { - /* Remember that we have allocated this memory. */ - assert (idx >= 0 && idx < IDX_last); - mem_in_flight.block[idx].dbidx = db - dbs; - mem_in_flight.block[idx].blocklen = len; - mem_in_flight.block[idx].blockoff = db->head->first_free; - db->head->first_free += len; db->last_alloc_failed = false; diff --git a/nscd/nscd.c b/nscd/nscd.c index 1129cf8480..3265ea8973 100644 --- a/nscd/nscd.c +++ b/nscd/nscd.c @@ -91,6 +91,9 @@ static int write_pid (const char *file); static void print_version (FILE *stream, struct argp_state *state); void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; +/* Function to print some extra text in the help message. */ +static char *more_help (int key, const char *text, void *input); + /* Definitions of arguments for argp functions. */ static const struct argp_option options[] = { @@ -117,7 +120,7 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state); /* Data structure to communicate with argp functions. */ static struct argp argp = { - options, parse_opt, NULL, doc, + options, parse_opt, NULL, doc, NULL, more_help }; /* True if only statistics are requested. */ @@ -401,6 +404,23 @@ parse_opt (int key, char *arg, struct argp_state *state) return 0; } +/* Print bug-reporting information in the help message. */ +static char * +more_help (int key, const char *text, void *input) +{ + switch (key) + { + case ARGP_KEY_HELP_EXTRA: + /* We print some extra information. */ + return strdup (gettext ("\ +For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); + default: + break; + } + return (char *) text; +} + /* Print the version information. */ static void print_version (FILE *stream, struct argp_state *state) diff --git a/nscd/nscd.h b/nscd/nscd.h index 2d77bab989..3279b85432 100644 --- a/nscd/nscd.h +++ b/nscd/nscd.h @@ -1,5 +1,4 @@ -/* Copyright (c) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008 - Free Software Foundation, Inc. +/* Copyright (c) 1998-2001, 2003-2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Thorsten Kukuk <kukuk@suse.de>, 1998. @@ -184,31 +183,6 @@ extern uid_t old_uid; extern gid_t old_gid; -/* Memory allocation in flight. Each thread can have a limited number - of allocation in flight. No need to create dynamic data - structures. We use fixed indices. */ -enum in_flight - { - IDX_result_data = 0, - /* Keep the IDX_record_data entry last at all times. */ - IDX_record_data = 1, - IDX_last - }; -extern __thread struct mem_in_flight -{ - struct - { - int dbidx; - nscd_ssize_t blocklen; - nscd_ssize_t blockoff; - } block[IDX_last]; - - struct mem_in_flight *next; -} mem_in_flight attribute_tls_model_ie; -/* Global list of the mem_in_flight variables of all the threads. */ -extern struct mem_in_flight *mem_in_flight_list; - - /* Prototypes for global functions. */ /* nscd.c */ @@ -301,7 +275,7 @@ extern void readdservbyport (struct database_dyn *db, struct hashentry *he, /* mem.c */ extern void *mempool_alloc (struct database_dyn *db, size_t len, - enum in_flight idx); + int data_alloc); extern void gc (struct database_dyn *db); diff --git a/nscd/pwdcache.c b/nscd/pwdcache.c index 782b101371..2338e7e1e0 100644 --- a/nscd/pwdcache.c +++ b/nscd/pwdcache.c @@ -1,5 +1,5 @@ /* Cache handling for passwd lookup. - Copyright (C) 1998-2005, 2006, 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 1998-2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -80,7 +80,7 @@ static const pw_response_header notfound = static void cache_addpw (struct database_dyn *db, int fd, request_header *req, const void *key, struct passwd *pwd, uid_t owner, - struct hashentry *he, struct datahead *dh, int errval) + struct hashentry *const he, struct datahead *dh, int errval) { ssize_t total; ssize_t written; @@ -121,7 +121,7 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, MSG_NOSIGNAL)); dataset = mempool_alloc (db, sizeof (struct dataset) + req->key_len, - IDX_result_data); + 1); /* If we cannot permanently store the result, so be it. */ if (dataset != NULL) { @@ -150,9 +150,6 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, + sizeof (struct dataset) + req->key_len, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - (void) cache_add (req->type, key_copy, req->key_len, &dataset->head, true, db, owner, he == NULL); @@ -162,8 +159,6 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, if (dh != NULL) dh->usable = false; } - else - ++db->head->addfailed; } } else @@ -197,12 +192,7 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, dataset = NULL; if (he == NULL) - { - dataset = (struct dataset *) mempool_alloc (db, total + n, - IDX_result_data); - if (dataset == NULL) - ++db->head->addfailed; - } + dataset = (struct dataset *) mempool_alloc (db, total + n, 1); if (dataset == NULL) { @@ -257,19 +247,10 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, { assert (fd == -1); -#if 0 - if (dataset->head.datasize == dh->allocsize + if (dataset->head.allocsize == dh->allocsize && dataset->head.recsize == dh->recsize && memcmp (&dataset->resp, dh->data, dh->allocsize - offsetof (struct dataset, resp)) == 0) -#else - if (dataset->head.allocsize != dh->allocsize) - goto nnn; - if (dataset->head.recsize != dh->recsize) - goto nnn; - if(memcmp (&dataset->resp, dh->data, - dh->allocsize - offsetof (struct dataset, resp)) == 0) -#endif { /* The data has not changed. We will just bump the timeout value. Note that the new record has been @@ -279,12 +260,10 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, } else { - nnn:; /* We have to create a new record. Just allocate appropriate memory and copy it. */ struct dataset *newp - = (struct dataset *) mempool_alloc (db, total + n, - IDX_result_data); + = (struct dataset *) mempool_alloc (db, total + n, 1); if (newp != NULL) { /* Adjust pointer into the memory block. */ @@ -294,8 +273,6 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, dataset = memcpy (newp, dataset, total + n); alloca_used = false; } - else - ++db->head->addfailed; /* Mark the old record as obsolete. */ dh->usable = false; @@ -349,9 +326,6 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - /* NB: in the following code we always must add the entry marked with FIRST first. Otherwise we end up with dangling "pointers" in case a latter hash entry cannot be diff --git a/nscd/servicescache.c b/nscd/servicescache.c index 44f12a3c69..dc98d3005a 100644 --- a/nscd/servicescache.c +++ b/nscd/servicescache.c @@ -1,5 +1,5 @@ /* Cache handling for services lookup. - Copyright (C) 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@drepper.com>, 2007. @@ -64,7 +64,7 @@ static const serv_response_header notfound = static void cache_addserv (struct database_dyn *db, int fd, request_header *req, const void *key, struct servent *serv, uid_t owner, - struct hashentry *he, struct datahead *dh, int errval) + struct hashentry *const he, struct datahead *dh, int errval) { ssize_t total; ssize_t written; @@ -104,7 +104,7 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, MSG_NOSIGNAL)); dataset = mempool_alloc (db, sizeof (struct dataset) + req->key_len, - IDX_result_data); + 1); /* If we cannot permanently store the result, so be it. */ if (dataset != NULL) { @@ -133,9 +133,6 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, + sizeof (struct dataset) + req->key_len, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - (void) cache_add (req->type, &dataset->strdata, req->key_len, &dataset->head, true, db, owner, he == NULL); @@ -145,8 +142,6 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, if (dh != NULL) dh->usable = false; } - else - ++db->head->addfailed; } } else @@ -187,13 +182,8 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, dataset = NULL; if (he == NULL) - { - dataset = (struct dataset *) mempool_alloc (db, - total + req->key_len, - IDX_result_data); - if (dataset == NULL) - ++db->head->addfailed; - } + dataset = (struct dataset *) mempool_alloc (db, total + req->key_len, + 1); if (dataset == NULL) { @@ -262,7 +252,7 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, appropriate memory and copy it. */ struct dataset *newp = (struct dataset *) mempool_alloc (db, total + req->key_len, - IDX_result_data); + 1); if (newp != NULL) { /* Adjust pointers into the memory block. */ @@ -273,8 +263,6 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, dataset = memcpy (newp, dataset, total + req->key_len); alloca_used = false; } - else - ++db->head->addfailed; /* Mark the old record as obsolete. */ dh->usable = false; @@ -327,9 +315,6 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, + total + req->key_len, MS_ASYNC); } - /* Now get the lock to safely insert the records. */ - pthread_rwlock_rdlock (&db->lock); - (void) cache_add (req->type, key_copy, req->key_len, &dataset->head, true, db, owner, he == NULL); diff --git a/nss/getent.c b/nss/getent.c index 7a3ad52175..ea5608f1e2 100644 --- a/nss/getent.c +++ b/nss/getent.c @@ -59,9 +59,7 @@ static const struct argp_option args_options[] = }; /* Short description of program. */ -static const char doc[] = N_("Get entries from administrative database.\v\ -For bug reporting instructions, please see:\n\ -<http://www.gnu.org/software/libc/bugs.html>.\n"); +static const char doc[] = N_("Get entries from administrative database."); /* Prototype for option handler. */ static error_t parse_option (int key, char *arg, struct argp_state *state); @@ -839,6 +837,12 @@ more_help (int key, const char *text, void *input) col += len + 1; } + fputs ("\n\n", fp); + + fprintf (fp, gettext ("\ +For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); + if (fclose (fp) == 0) return doc; } diff --git a/po/Makefile b/po/Makefile index 11f92adee5..4ac253e3d1 100644 --- a/po/Makefile +++ b/po/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1996,1997,1998,1999,2001,2002,2006,2007 +# Copyright (C) 1996-1999,2001,2002,2006,2007,2009 # Free Software Foundation, Inc. # This file is part of the GNU C Library. @@ -64,6 +64,7 @@ libc.pot: header.pot libc.pot.files $< > $@.new cd ..; $(XGETTEXT) --keyword=_ --keyword=N_ \ --add-comments=TRANS --flag=error:3:c-format \ + --flag=f_print:2:c-format \ --sort-by-file --omit-header -E -n -d - \ -f po/$(word 2,$^) >> po/$@.new mv -f $@.new $@ diff --git a/po/libc.pot b/po/libc.pot index a4ae24fd1f..71d425fc56 100644 --- a/po/libc.pot +++ b/po/libc.pot @@ -5,8 +5,8 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: libc 2.7.90\n" -"POT-Creation-Date: 2008-04-09 08:07-0700\n" +"Project-Id-Version: libc 2.9.90\n" +"POT-Creation-Date: 2009-02-06 12:40-0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -100,7 +100,7 @@ msgstr "" msgid "%s%s%s:%u: %s%sAssertion `%s' failed.\n" msgstr "" -#: catgets/gencat.c:110 catgets/gencat.c:114 nscd/nscd.c:97 nss/makedb.c:61 +#: catgets/gencat.c:110 catgets/gencat.c:114 nscd/nscd.c:100 nss/makedb.c:61 msgid "NAME" msgstr "" @@ -129,20 +129,27 @@ msgid "" "[OUTPUT-FILE [INPUT-FILE]...]" msgstr "" -#: catgets/gencat.c:232 debug/pcprofiledump.c:204 iconv/iconv_prog.c:408 -#: iconv/iconvconfig.c:380 locale/programs/localedef.c:371 -#: login/programs/pt_chown.c:88 malloc/memusagestat.c:526 nss/makedb.c:231 +#: catgets/gencat.c:232 debug/pcprofiledump.c:208 debug/xtrace.sh:58 +#: elf/ldconfig.c:302 elf/ldd.bash.in:56 elf/sln.c:86 elf/sprof.c:360 +#: iconv/iconv_prog.c:408 iconv/iconvconfig.c:380 locale/programs/locale.c:278 +#: locale/programs/localedef.c:371 login/programs/pt_chown.c:88 +#: malloc/memusage.sh:65 malloc/memusagestat.c:533 nscd/nscd.c:415 +#: nss/getent.c:842 nss/makedb.c:231 posix/getconf.c:1030 +#: sunrpc/rpc_main.c:1494 sunrpc/rpcinfo.c:699 +#: sysdeps/unix/sysv/linux/lddlibc4.c:62 +#, c-format msgid "" "For bug reporting instructions, please see:\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" msgstr "" -#: catgets/gencat.c:246 debug/xtrace.sh:64 elf/ldconfig.c:296 -#: elf/ldd.bash.in:39 elf/sprof.c:355 iconv/iconv_prog.c:423 -#: iconv/iconvconfig.c:395 locale/programs/locale.c:275 +#: catgets/gencat.c:246 debug/pcprofiledump.c:222 debug/xtrace.sh:66 +#: elf/ldconfig.c:316 elf/ldd.bash.in:39 elf/sprof.c:375 +#: iconv/iconv_prog.c:423 iconv/iconvconfig.c:395 locale/programs/locale.c:293 #: locale/programs/localedef.c:387 login/programs/pt_chown.c:59 -#: malloc/memusage.sh:71 nscd/nscd.c:406 nss/getent.c:83 nss/makedb.c:245 -#: posix/getconf.c:1012 +#: malloc/memusage.sh:73 malloc/memusagestat.c:551 nscd/nscd.c:429 +#: nss/getent.c:81 nss/makedb.c:245 posix/getconf.c:1012 +#: sysdeps/unix/sysv/linux/lddlibc4.c:69 #, c-format msgid "" "Copyright (C) %s Free Software Foundation, Inc.\n" @@ -150,10 +157,12 @@ msgid "" "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" msgstr "" -#: catgets/gencat.c:251 debug/xtrace.sh:68 elf/ldconfig.c:301 elf/sprof.c:361 -#: iconv/iconv_prog.c:428 iconv/iconvconfig.c:400 locale/programs/locale.c:280 -#: locale/programs/localedef.c:392 malloc/memusage.sh:75 nscd/nscd.c:411 -#: nss/getent.c:88 nss/makedb.c:250 posix/getconf.c:1017 +#: catgets/gencat.c:251 debug/pcprofiledump.c:227 debug/xtrace.sh:70 +#: elf/ldconfig.c:321 elf/sprof.c:381 iconv/iconv_prog.c:428 +#: iconv/iconvconfig.c:400 locale/programs/locale.c:298 +#: locale/programs/localedef.c:392 malloc/memusage.sh:77 +#: malloc/memusagestat.c:556 nscd/nscd.c:434 nss/getent.c:86 nss/makedb.c:250 +#: posix/getconf.c:1017 #, c-format msgid "Written by %s.\n" msgstr "" @@ -254,17 +263,17 @@ msgstr "" msgid "[FILE]" msgstr "" -#: debug/pcprofiledump.c:104 +#: debug/pcprofiledump.c:108 #, c-format msgid "cannot open input file" msgstr "" -#: debug/pcprofiledump.c:111 +#: debug/pcprofiledump.c:115 #, c-format msgid "cannot read header" msgstr "" -#: debug/pcprofiledump.c:175 +#: debug/pcprofiledump.c:179 #, c-format msgid "invalid pointer size" msgstr "" @@ -296,24 +305,22 @@ msgid "" "corresponding\n" "short options.\n" "\n" -"For bug reporting instructions, please see:\n" -"<http://www.gnu.org/software/libc/bugs.html>.\\n" msgstr "" -#: debug/xtrace.sh:125 +#: debug/xtrace.sh:127 msgid "xtrace: unrecognized option \\`$1'\\n" msgstr "" -#: debug/xtrace.sh:138 +#: debug/xtrace.sh:140 msgid "No program name given\\n" msgstr "" -#: debug/xtrace.sh:146 +#: debug/xtrace.sh:148 #, sh-format msgid "executable \\`$program' not found\\n" msgstr "" -#: debug/xtrace.sh:150 +#: debug/xtrace.sh:152 #, sh-format msgid "\\`$program' is no executable\\n" msgstr "" @@ -334,7 +341,7 @@ msgstr "" msgid "invalid mode" msgstr "" -#: dlfcn/dlopen.c:64 +#: dlfcn/dlopen.c:65 msgid "invalid mode parameter" msgstr "" @@ -351,7 +358,7 @@ msgstr "" msgid ", OS ABI: %s %d.%d.%d" msgstr "" -#: elf/cache.c:134 elf/ldconfig.c:1269 +#: elf/cache.c:134 elf/ldconfig.c:1289 #, c-format msgid "Can't open cache file %s\n" msgstr "" @@ -470,11 +477,11 @@ msgstr "" msgid "cannot open zero fill device" msgstr "" -#: elf/dl-load.c:979 elf/dl-load.c:2224 +#: elf/dl-load.c:979 elf/dl-load.c:2215 msgid "cannot create shared object descriptor" msgstr "" -#: elf/dl-load.c:998 elf/dl-load.c:1656 elf/dl-load.c:1748 +#: elf/dl-load.c:998 elf/dl-load.c:1647 elf/dl-load.c:1739 msgid "cannot read file data" msgstr "" @@ -538,63 +545,59 @@ msgstr "" msgid "cannot close file descriptor" msgstr "" -#: elf/dl-load.c:1478 -msgid "cannot create searchlist" -msgstr "" - -#: elf/dl-load.c:1656 +#: elf/dl-load.c:1647 msgid "file too short" msgstr "" -#: elf/dl-load.c:1685 +#: elf/dl-load.c:1676 msgid "invalid ELF header" msgstr "" -#: elf/dl-load.c:1697 +#: elf/dl-load.c:1688 msgid "ELF file data encoding not big-endian" msgstr "" -#: elf/dl-load.c:1699 +#: elf/dl-load.c:1690 msgid "ELF file data encoding not little-endian" msgstr "" -#: elf/dl-load.c:1703 +#: elf/dl-load.c:1694 msgid "ELF file version ident does not match current one" msgstr "" -#: elf/dl-load.c:1707 +#: elf/dl-load.c:1698 msgid "ELF file OS ABI invalid" msgstr "" -#: elf/dl-load.c:1709 +#: elf/dl-load.c:1700 msgid "ELF file ABI version invalid" msgstr "" -#: elf/dl-load.c:1712 +#: elf/dl-load.c:1703 msgid "internal error" msgstr "" -#: elf/dl-load.c:1719 +#: elf/dl-load.c:1710 msgid "ELF file version does not match current one" msgstr "" -#: elf/dl-load.c:1727 +#: elf/dl-load.c:1718 msgid "only ET_DYN and ET_EXEC can be loaded" msgstr "" -#: elf/dl-load.c:1733 +#: elf/dl-load.c:1724 msgid "ELF file's phentsize not the expected size" msgstr "" -#: elf/dl-load.c:2240 +#: elf/dl-load.c:2231 msgid "wrong ELF class: ELFCLASS64" msgstr "" -#: elf/dl-load.c:2241 +#: elf/dl-load.c:2232 msgid "wrong ELF class: ELFCLASS32" msgstr "" -#: elf/dl-load.c:2244 +#: elf/dl-load.c:2235 msgid "cannot open shared object file" msgstr "" @@ -626,29 +629,29 @@ msgstr "" msgid "invalid target namespace in dlmopen()" msgstr "" -#: elf/dl-reloc.c:56 +#: elf/dl-reloc.c:121 msgid "cannot allocate memory in static TLS block" msgstr "" -#: elf/dl-reloc.c:198 +#: elf/dl-reloc.c:211 msgid "cannot make segment writable for relocation" msgstr "" -#: elf/dl-reloc.c:281 +#: elf/dl-reloc.c:277 #, c-format msgid "%s: no PLTREL found in object %s\n" msgstr "" -#: elf/dl-reloc.c:292 +#: elf/dl-reloc.c:288 #, c-format msgid "%s: out of memory to store relocation results for %s\n" msgstr "" -#: elf/dl-reloc.c:308 +#: elf/dl-reloc.c:304 msgid "cannot restore segment prot after reloc" msgstr "" -#: elf/dl-reloc.c:333 +#: elf/dl-reloc.c:329 msgid "cannot apply additional memory protection after relocation" msgstr "" @@ -656,11 +659,11 @@ msgstr "" msgid "RTLD_NEXT used in code not dynamically loaded" msgstr "" -#: elf/dl-sysdep.c:475 elf/dl-sysdep.c:487 +#: elf/dl-sysdep.c:481 elf/dl-sysdep.c:493 msgid "cannot create capability list" msgstr "" -#: elf/dl-tls.c:848 +#: elf/dl-tls.c:864 msgid "cannot create TLS data structures" msgstr "" @@ -668,222 +671,222 @@ msgstr "" msgid "cannot allocate version reference table" msgstr "" -#: elf/ldconfig.c:138 +#: elf/ldconfig.c:141 msgid "Print cache" msgstr "" -#: elf/ldconfig.c:139 +#: elf/ldconfig.c:142 msgid "Generate verbose messages" msgstr "" -#: elf/ldconfig.c:140 +#: elf/ldconfig.c:143 msgid "Don't build cache" msgstr "" -#: elf/ldconfig.c:141 +#: elf/ldconfig.c:144 msgid "Don't generate links" msgstr "" -#: elf/ldconfig.c:142 +#: elf/ldconfig.c:145 msgid "Change to and use ROOT as root directory" msgstr "" -#: elf/ldconfig.c:142 +#: elf/ldconfig.c:145 msgid "ROOT" msgstr "" -#: elf/ldconfig.c:143 +#: elf/ldconfig.c:146 msgid "CACHE" msgstr "" -#: elf/ldconfig.c:143 +#: elf/ldconfig.c:146 msgid "Use CACHE as cache file" msgstr "" -#: elf/ldconfig.c:144 +#: elf/ldconfig.c:147 msgid "CONF" msgstr "" -#: elf/ldconfig.c:144 +#: elf/ldconfig.c:147 msgid "Use CONF as configuration file" msgstr "" -#: elf/ldconfig.c:145 +#: elf/ldconfig.c:148 msgid "" "Only process directories specified on the command line. Don't build cache." msgstr "" -#: elf/ldconfig.c:146 +#: elf/ldconfig.c:149 msgid "Manually link individual libraries." msgstr "" -#: elf/ldconfig.c:147 +#: elf/ldconfig.c:150 msgid "FORMAT" msgstr "" -#: elf/ldconfig.c:147 +#: elf/ldconfig.c:150 msgid "Format to use: new, old or compat (default)" msgstr "" -#: elf/ldconfig.c:148 +#: elf/ldconfig.c:151 msgid "Ignore auxiliary cache file" msgstr "" -#: elf/ldconfig.c:156 +#: elf/ldconfig.c:159 msgid "Configure Dynamic Linker Run Time Bindings." msgstr "" -#: elf/ldconfig.c:319 +#: elf/ldconfig.c:339 #, c-format msgid "Path `%s' given more than once" msgstr "" -#: elf/ldconfig.c:359 +#: elf/ldconfig.c:379 #, c-format msgid "%s is not a known library type" msgstr "" -#: elf/ldconfig.c:384 +#: elf/ldconfig.c:404 #, c-format msgid "Can't stat %s" msgstr "" -#: elf/ldconfig.c:458 +#: elf/ldconfig.c:478 #, c-format msgid "Can't stat %s\n" msgstr "" -#: elf/ldconfig.c:468 +#: elf/ldconfig.c:488 #, c-format msgid "%s is not a symbolic link\n" msgstr "" -#: elf/ldconfig.c:487 +#: elf/ldconfig.c:507 #, c-format msgid "Can't unlink %s" msgstr "" -#: elf/ldconfig.c:493 +#: elf/ldconfig.c:513 #, c-format msgid "Can't link %s to %s" msgstr "" -#: elf/ldconfig.c:499 +#: elf/ldconfig.c:519 msgid " (changed)\n" msgstr "" -#: elf/ldconfig.c:501 +#: elf/ldconfig.c:521 msgid " (SKIPPED)\n" msgstr "" -#: elf/ldconfig.c:556 +#: elf/ldconfig.c:576 #, c-format msgid "Can't find %s" msgstr "" -#: elf/ldconfig.c:572 elf/ldconfig.c:745 elf/ldconfig.c:793 elf/ldconfig.c:827 +#: elf/ldconfig.c:592 elf/ldconfig.c:765 elf/ldconfig.c:813 elf/ldconfig.c:847 #, c-format msgid "Cannot lstat %s" msgstr "" -#: elf/ldconfig.c:579 +#: elf/ldconfig.c:599 #, c-format msgid "Ignored file %s since it is not a regular file." msgstr "" -#: elf/ldconfig.c:588 +#: elf/ldconfig.c:608 #, c-format msgid "No link created since soname could not be found for %s" msgstr "" -#: elf/ldconfig.c:671 +#: elf/ldconfig.c:691 #, c-format msgid "Can't open directory %s" msgstr "" -#: elf/ldconfig.c:759 +#: elf/ldconfig.c:779 #, c-format msgid "Cannot stat %s" msgstr "" -#: elf/ldconfig.c:814 elf/readlib.c:91 +#: elf/ldconfig.c:834 elf/readlib.c:91 #, c-format msgid "Input file %s not found.\n" msgstr "" -#: elf/ldconfig.c:888 +#: elf/ldconfig.c:908 #, c-format msgid "libc5 library %s in wrong directory" msgstr "" -#: elf/ldconfig.c:891 +#: elf/ldconfig.c:911 #, c-format msgid "libc6 library %s in wrong directory" msgstr "" -#: elf/ldconfig.c:894 +#: elf/ldconfig.c:914 #, c-format msgid "libc4 library %s in wrong directory" msgstr "" -#: elf/ldconfig.c:922 +#: elf/ldconfig.c:942 #, c-format msgid "" "libraries %s and %s in directory %s have same soname but different type." msgstr "" -#: elf/ldconfig.c:1031 +#: elf/ldconfig.c:1051 #, c-format msgid "Can't open configuration file %s" msgstr "" -#: elf/ldconfig.c:1095 +#: elf/ldconfig.c:1115 #, c-format msgid "%s:%u: bad syntax in hwcap line" msgstr "" -#: elf/ldconfig.c:1101 +#: elf/ldconfig.c:1121 #, c-format msgid "%s:%u: hwcap index %lu above maximum %u" msgstr "" -#: elf/ldconfig.c:1108 elf/ldconfig.c:1116 +#: elf/ldconfig.c:1128 elf/ldconfig.c:1136 #, c-format msgid "%s:%u: hwcap index %lu already defined as %s" msgstr "" -#: elf/ldconfig.c:1119 +#: elf/ldconfig.c:1139 #, c-format msgid "%s:%u: duplicate hwcap %lu %s" msgstr "" -#: elf/ldconfig.c:1141 +#: elf/ldconfig.c:1161 #, c-format msgid "need absolute file name for configuration file when using -r" msgstr "" -#: elf/ldconfig.c:1148 locale/programs/xmalloc.c:70 malloc/obstack.c:434 -#: malloc/obstack.c:436 posix/getconf.c:985 posix/getconf.c:1163 +#: elf/ldconfig.c:1168 locale/programs/xmalloc.c:70 malloc/obstack.c:434 +#: malloc/obstack.c:436 posix/getconf.c:985 posix/getconf.c:1177 #, c-format msgid "memory exhausted" msgstr "" -#: elf/ldconfig.c:1178 +#: elf/ldconfig.c:1198 #, c-format msgid "%s:%u: cannot read directory %s" msgstr "" -#: elf/ldconfig.c:1222 +#: elf/ldconfig.c:1242 #, c-format msgid "relative path `%s' used to build cache" msgstr "" -#: elf/ldconfig.c:1248 +#: elf/ldconfig.c:1268 #, c-format msgid "Can't chdir to /" msgstr "" -#: elf/ldconfig.c:1290 +#: elf/ldconfig.c:1310 #, c-format msgid "Can't open cache file directory %s\n" msgstr "" @@ -901,50 +904,48 @@ msgid "" " -r, --function-relocs process data and function relocations\n" " -u, --unused print unused direct dependencies\n" " -v, --verbose print all information\n" -"For bug reporting instructions, please see:\n" -"<http://www.gnu.org/software/libc/bugs.html>." msgstr "" -#: elf/ldd.bash.in:80 +#: elf/ldd.bash.in:82 msgid "ldd: option \\`$1' is ambiguous" msgstr "" -#: elf/ldd.bash.in:87 +#: elf/ldd.bash.in:89 msgid "unrecognized option" msgstr "" -#: elf/ldd.bash.in:88 elf/ldd.bash.in:126 +#: elf/ldd.bash.in:90 elf/ldd.bash.in:128 msgid "Try \\`ldd --help' for more information." msgstr "" -#: elf/ldd.bash.in:125 +#: elf/ldd.bash.in:127 msgid "missing file arguments" msgstr "" #. TRANS No such file or directory. This is a ``file doesn't exist'' error #. TRANS for ordinary files that are referenced in contexts where they are #. TRANS expected to already exist. -#: elf/ldd.bash.in:148 sysdeps/gnu/errlist.c:36 +#: elf/ldd.bash.in:150 sysdeps/gnu/errlist.c:36 msgid "No such file or directory" msgstr "" -#: elf/ldd.bash.in:151 inet/rcmd.c:483 +#: elf/ldd.bash.in:153 inet/rcmd.c:483 msgid "not regular file" msgstr "" -#: elf/ldd.bash.in:154 +#: elf/ldd.bash.in:156 msgid "warning: you do not have execution permission for" msgstr "" -#: elf/ldd.bash.in:183 +#: elf/ldd.bash.in:185 msgid "\tnot a dynamic executable" msgstr "" -#: elf/ldd.bash.in:191 +#: elf/ldd.bash.in:193 msgid "exited with unknown exit code" msgstr "" -#: elf/ldd.bash.in:196 +#: elf/ldd.bash.in:198 msgid "error: you do not have read permission for" msgstr "" @@ -1003,6 +1004,43 @@ msgstr "" msgid "%s is not an ELF file - it has the wrong magic bytes at the start.\n" msgstr "" +#: elf/sln.c:85 +#, c-format +msgid "" +"Usage: sln src dest|file\n" +"\n" +msgstr "" + +#: elf/sln.c:110 +#, c-format +msgid "%s: file open error: %m\n" +msgstr "" + +#: elf/sln.c:147 +#, c-format +msgid "No target in line %d\n" +msgstr "" + +#: elf/sln.c:179 +#, c-format +msgid "%s: destination must not be a directory\n" +msgstr "" + +#: elf/sln.c:185 +#, c-format +msgid "%s: failed to remove the old destination\n" +msgstr "" + +#: elf/sln.c:193 +#, c-format +msgid "%s: invalid destination: %s\n" +msgstr "" + +#: elf/sln.c:208 elf/sln.c:217 +#, c-format +msgid "Invalid link from \"%s\" to \"%s\": %s\n" +msgstr "" + #: elf/sprof.c:77 msgid "Output selection:" msgstr "" @@ -1020,102 +1058,99 @@ msgid "generate call graph" msgstr "" #: elf/sprof.c:89 -msgid "" -"Read and display shared object profiling data.\vFor bug reporting " -"instructions, please see:\n" -"<http://www.gnu.org/software/libc/bugs.html>.\n" +msgid "Read and display shared object profiling data." msgstr "" #: elf/sprof.c:94 msgid "SHOBJ [PROFDATA]" msgstr "" -#: elf/sprof.c:400 +#: elf/sprof.c:420 #, c-format msgid "failed to load shared object `%s'" msgstr "" -#: elf/sprof.c:409 +#: elf/sprof.c:429 #, c-format msgid "cannot create internal descriptors" msgstr "" -#: elf/sprof.c:528 +#: elf/sprof.c:548 #, c-format msgid "Reopening shared object `%s' failed" msgstr "" -#: elf/sprof.c:535 elf/sprof.c:629 +#: elf/sprof.c:555 elf/sprof.c:649 #, c-format msgid "reading of section headers failed" msgstr "" -#: elf/sprof.c:543 elf/sprof.c:637 +#: elf/sprof.c:563 elf/sprof.c:657 #, c-format msgid "reading of section header string table failed" msgstr "" -#: elf/sprof.c:569 +#: elf/sprof.c:589 #, c-format msgid "*** Cannot read debuginfo file name: %m\n" msgstr "" -#: elf/sprof.c:589 +#: elf/sprof.c:609 #, c-format msgid "cannot determine file name" msgstr "" -#: elf/sprof.c:622 +#: elf/sprof.c:642 #, c-format msgid "reading of ELF header failed" msgstr "" -#: elf/sprof.c:658 +#: elf/sprof.c:678 #, c-format msgid "*** The file `%s' is stripped: no detailed analysis possible\n" msgstr "" -#: elf/sprof.c:688 +#: elf/sprof.c:708 #, c-format msgid "failed to load symbol data" msgstr "" -#: elf/sprof.c:755 +#: elf/sprof.c:775 #, c-format msgid "cannot load profiling data" msgstr "" -#: elf/sprof.c:764 +#: elf/sprof.c:784 #, c-format msgid "while stat'ing profiling data file" msgstr "" -#: elf/sprof.c:772 +#: elf/sprof.c:792 #, c-format msgid "profiling data file `%s' does not match shared object `%s'" msgstr "" -#: elf/sprof.c:783 +#: elf/sprof.c:803 #, c-format msgid "failed to mmap the profiling data file" msgstr "" -#: elf/sprof.c:791 +#: elf/sprof.c:811 #, c-format msgid "error while closing the profiling data file" msgstr "" -#: elf/sprof.c:800 elf/sprof.c:870 +#: elf/sprof.c:820 elf/sprof.c:890 #, c-format msgid "cannot create internal descriptor" msgstr "" -#: elf/sprof.c:846 +#: elf/sprof.c:866 #, c-format msgid "`%s' is no correct profile data file for `%s'" msgstr "" -#: elf/sprof.c:1027 elf/sprof.c:1085 +#: elf/sprof.c:1047 elf/sprof.c:1105 #, c-format msgid "cannot allocate symbol data" msgstr "" @@ -1482,8 +1517,8 @@ msgstr "" msgid "no symbolic name given for end of range" msgstr "" -#: locale/programs/charmap.c:610 locale/programs/ld-address.c:600 -#: locale/programs/ld-collate.c:2767 locale/programs/ld-collate.c:3928 +#: locale/programs/charmap.c:610 locale/programs/ld-address.c:602 +#: locale/programs/ld-collate.c:2767 locale/programs/ld-collate.c:3924 #: locale/programs/ld-ctype.c:2232 locale/programs/ld-ctype.c:2984 #: locale/programs/ld-identification.c:452 #: locale/programs/ld-measurement.c:238 locale/programs/ld-messages.c:332 @@ -1509,8 +1544,8 @@ msgstr "" msgid "%s: error in state machine" msgstr "" -#: locale/programs/charmap.c:850 locale/programs/ld-address.c:616 -#: locale/programs/ld-collate.c:2764 locale/programs/ld-collate.c:4121 +#: locale/programs/charmap.c:850 locale/programs/ld-address.c:618 +#: locale/programs/ld-collate.c:2764 locale/programs/ld-collate.c:4117 #: locale/programs/ld-ctype.c:2229 locale/programs/ld-ctype.c:3001 #: locale/programs/ld-identification.c:468 #: locale/programs/ld-measurement.c:254 locale/programs/ld-messages.c:348 @@ -1534,7 +1569,7 @@ msgid "" "same: %d vs %d" msgstr "" -#: locale/programs/charmap.c:993 locale/programs/ld-collate.c:3045 +#: locale/programs/charmap.c:993 locale/programs/ld-collate.c:3044 #: locale/programs/repertoire.c:419 msgid "invalid names for character range" msgstr "" @@ -1556,7 +1591,7 @@ msgstr "" msgid "resulting bytes for range not representable." msgstr "" -#: locale/programs/ld-address.c:133 locale/programs/ld-collate.c:1556 +#: locale/programs/ld-address.c:135 locale/programs/ld-collate.c:1556 #: locale/programs/ld-ctype.c:420 locale/programs/ld-identification.c:133 #: locale/programs/ld-measurement.c:94 locale/programs/ld-messages.c:97 #: locale/programs/ld-monetary.c:194 locale/programs/ld-name.c:94 @@ -1566,10 +1601,10 @@ msgstr "" msgid "No definition for %s category found" msgstr "" -#: locale/programs/ld-address.c:144 locale/programs/ld-address.c:182 -#: locale/programs/ld-address.c:200 locale/programs/ld-address.c:229 -#: locale/programs/ld-address.c:301 locale/programs/ld-address.c:320 -#: locale/programs/ld-address.c:333 locale/programs/ld-identification.c:146 +#: locale/programs/ld-address.c:146 locale/programs/ld-address.c:184 +#: locale/programs/ld-address.c:202 locale/programs/ld-address.c:231 +#: locale/programs/ld-address.c:303 locale/programs/ld-address.c:322 +#: locale/programs/ld-address.c:335 locale/programs/ld-identification.c:146 #: locale/programs/ld-measurement.c:105 locale/programs/ld-monetary.c:206 #: locale/programs/ld-monetary.c:250 locale/programs/ld-monetary.c:266 #: locale/programs/ld-monetary.c:278 locale/programs/ld-name.c:105 @@ -1582,46 +1617,46 @@ msgstr "" msgid "%s: field `%s' not defined" msgstr "" -#: locale/programs/ld-address.c:156 locale/programs/ld-address.c:208 -#: locale/programs/ld-address.c:238 locale/programs/ld-address.c:276 +#: locale/programs/ld-address.c:158 locale/programs/ld-address.c:210 +#: locale/programs/ld-address.c:240 locale/programs/ld-address.c:278 #: locale/programs/ld-name.c:117 locale/programs/ld-telephone.c:117 #, c-format msgid "%s: field `%s' must not be empty" msgstr "" -#: locale/programs/ld-address.c:168 +#: locale/programs/ld-address.c:170 #, c-format msgid "%s: invalid escape `%%%c' sequence in field `%s'" msgstr "" -#: locale/programs/ld-address.c:219 +#: locale/programs/ld-address.c:221 #, c-format msgid "%s: terminology language code `%s' not defined" msgstr "" -#: locale/programs/ld-address.c:244 +#: locale/programs/ld-address.c:246 #, c-format msgid "%s: field `%s' must not be defined" msgstr "" -#: locale/programs/ld-address.c:258 locale/programs/ld-address.c:287 +#: locale/programs/ld-address.c:260 locale/programs/ld-address.c:289 #, c-format msgid "%s: language abbreviation `%s' not defined" msgstr "" -#: locale/programs/ld-address.c:265 locale/programs/ld-address.c:293 -#: locale/programs/ld-address.c:327 locale/programs/ld-address.c:339 +#: locale/programs/ld-address.c:267 locale/programs/ld-address.c:295 +#: locale/programs/ld-address.c:329 locale/programs/ld-address.c:341 #, c-format msgid "%s: `%s' value does not match `%s' value" msgstr "" -#: locale/programs/ld-address.c:312 +#: locale/programs/ld-address.c:314 #, c-format msgid "%s: numeric country code `%d' not valid" msgstr "" -#: locale/programs/ld-address.c:508 locale/programs/ld-address.c:545 -#: locale/programs/ld-address.c:583 locale/programs/ld-ctype.c:2608 +#: locale/programs/ld-address.c:510 locale/programs/ld-address.c:547 +#: locale/programs/ld-address.c:585 locale/programs/ld-ctype.c:2608 #: locale/programs/ld-identification.c:364 #: locale/programs/ld-measurement.c:221 locale/programs/ld-messages.c:301 #: locale/programs/ld-monetary.c:701 locale/programs/ld-monetary.c:736 @@ -1633,7 +1668,7 @@ msgstr "" msgid "%s: field `%s' declared more than once" msgstr "" -#: locale/programs/ld-address.c:512 locale/programs/ld-address.c:550 +#: locale/programs/ld-address.c:514 locale/programs/ld-address.c:552 #: locale/programs/ld-identification.c:368 locale/programs/ld-messages.c:311 #: locale/programs/ld-monetary.c:705 locale/programs/ld-monetary.c:740 #: locale/programs/ld-name.c:284 locale/programs/ld-numeric.c:267 @@ -1643,7 +1678,7 @@ msgstr "" msgid "%s: unknown character in field `%s'" msgstr "" -#: locale/programs/ld-address.c:597 locale/programs/ld-collate.c:3926 +#: locale/programs/ld-address.c:599 locale/programs/ld-collate.c:3922 #: locale/programs/ld-ctype.c:2981 locale/programs/ld-identification.c:449 #: locale/programs/ld-measurement.c:235 locale/programs/ld-messages.c:330 #: locale/programs/ld-monetary.c:941 locale/programs/ld-name.c:305 @@ -1653,10 +1688,10 @@ msgstr "" msgid "%s: incomplete `END' line" msgstr "" -#: locale/programs/ld-address.c:607 locale/programs/ld-collate.c:542 +#: locale/programs/ld-address.c:609 locale/programs/ld-collate.c:542 #: locale/programs/ld-collate.c:594 locale/programs/ld-collate.c:890 #: locale/programs/ld-collate.c:903 locale/programs/ld-collate.c:2733 -#: locale/programs/ld-collate.c:2754 locale/programs/ld-collate.c:4111 +#: locale/programs/ld-collate.c:2754 locale/programs/ld-collate.c:4107 #: locale/programs/ld-ctype.c:1960 locale/programs/ld-ctype.c:2219 #: locale/programs/ld-ctype.c:2806 locale/programs/ld-ctype.c:2992 #: locale/programs/ld-identification.c:459 @@ -1763,7 +1798,7 @@ msgstr "" msgid "`%s' and `%.*s' are not valid names for symbolic range" msgstr "" -#: locale/programs/ld-collate.c:1369 locale/programs/ld-collate.c:3862 +#: locale/programs/ld-collate.c:1369 locale/programs/ld-collate.c:3858 #, c-format msgid "%s: order for `%.*s' already defined at %s:%Zu" msgstr "" @@ -1804,7 +1839,7 @@ msgstr "" msgid "too many errors; giving up" msgstr "" -#: locale/programs/ld-collate.c:2659 locale/programs/ld-collate.c:4050 +#: locale/programs/ld-collate.c:2659 locale/programs/ld-collate.c:4046 #, c-format msgid "%s: nested conditionals not supported" msgstr "" @@ -1824,112 +1859,112 @@ msgstr "" msgid "%s: duplicate declaration of section `%s'" msgstr "" -#: locale/programs/ld-collate.c:3025 +#: locale/programs/ld-collate.c:3024 #, c-format msgid "%s: unknown character in collating symbol name" msgstr "" -#: locale/programs/ld-collate.c:3155 +#: locale/programs/ld-collate.c:3153 #, c-format msgid "%s: unknown character in equivalent definition name" msgstr "" -#: locale/programs/ld-collate.c:3168 +#: locale/programs/ld-collate.c:3164 #, c-format msgid "%s: unknown character in equivalent definition value" msgstr "" -#: locale/programs/ld-collate.c:3178 +#: locale/programs/ld-collate.c:3174 #, c-format msgid "%s: unknown symbol `%s' in equivalent definition" msgstr "" -#: locale/programs/ld-collate.c:3187 +#: locale/programs/ld-collate.c:3183 msgid "error while adding equivalent collating symbol" msgstr "" -#: locale/programs/ld-collate.c:3225 +#: locale/programs/ld-collate.c:3221 #, c-format msgid "duplicate definition of script `%s'" msgstr "" -#: locale/programs/ld-collate.c:3273 +#: locale/programs/ld-collate.c:3269 #, c-format msgid "%s: unknown section name `%.*s'" msgstr "" -#: locale/programs/ld-collate.c:3302 +#: locale/programs/ld-collate.c:3298 #, c-format msgid "%s: multiple order definitions for section `%s'" msgstr "" -#: locale/programs/ld-collate.c:3330 +#: locale/programs/ld-collate.c:3326 #, c-format msgid "%s: invalid number of sorting rules" msgstr "" -#: locale/programs/ld-collate.c:3357 +#: locale/programs/ld-collate.c:3353 #, c-format msgid "%s: multiple order definitions for unnamed section" msgstr "" -#: locale/programs/ld-collate.c:3411 locale/programs/ld-collate.c:3541 -#: locale/programs/ld-collate.c:3904 +#: locale/programs/ld-collate.c:3407 locale/programs/ld-collate.c:3537 +#: locale/programs/ld-collate.c:3900 #, c-format msgid "%s: missing `order_end' keyword" msgstr "" -#: locale/programs/ld-collate.c:3474 +#: locale/programs/ld-collate.c:3470 #, c-format msgid "%s: order for collating symbol %.*s not yet defined" msgstr "" -#: locale/programs/ld-collate.c:3492 +#: locale/programs/ld-collate.c:3488 #, c-format msgid "%s: order for collating element %.*s not yet defined" msgstr "" -#: locale/programs/ld-collate.c:3503 +#: locale/programs/ld-collate.c:3499 #, c-format msgid "%s: cannot reorder after %.*s: symbol not known" msgstr "" -#: locale/programs/ld-collate.c:3555 locale/programs/ld-collate.c:3916 +#: locale/programs/ld-collate.c:3551 locale/programs/ld-collate.c:3912 #, c-format msgid "%s: missing `reorder-end' keyword" msgstr "" -#: locale/programs/ld-collate.c:3589 locale/programs/ld-collate.c:3787 +#: locale/programs/ld-collate.c:3585 locale/programs/ld-collate.c:3783 #, c-format msgid "%s: section `%.*s' not known" msgstr "" -#: locale/programs/ld-collate.c:3654 +#: locale/programs/ld-collate.c:3650 #, c-format msgid "%s: bad symbol <%.*s>" msgstr "" -#: locale/programs/ld-collate.c:3850 +#: locale/programs/ld-collate.c:3846 #, c-format msgid "%s: cannot have `%s' as end of ellipsis range" msgstr "" -#: locale/programs/ld-collate.c:3900 +#: locale/programs/ld-collate.c:3896 #, c-format msgid "%s: empty category description not allowed" msgstr "" -#: locale/programs/ld-collate.c:3919 +#: locale/programs/ld-collate.c:3915 #, c-format msgid "%s: missing `reorder-sections-end' keyword" msgstr "" -#: locale/programs/ld-collate.c:4083 +#: locale/programs/ld-collate.c:4079 #, c-format msgid "%s: '%s' without matching 'ifdef' or 'ifndef'" msgstr "" -#: locale/programs/ld-collate.c:4101 +#: locale/programs/ld-collate.c:4097 #, c-format msgid "%s: 'endif' without matching 'ifdef' or 'ifndef'" msgstr "" @@ -2372,39 +2407,36 @@ msgid "Print more information" msgstr "" #: locale/programs/locale.c:87 -msgid "" -"Get locale-specific information.\vFor bug reporting instructions, please " -"see:\n" -"<http://www.gnu.org/software/libc/bugs.html>.\n" +msgid "Get locale-specific information." msgstr "" -#: locale/programs/locale.c:92 +#: locale/programs/locale.c:90 msgid "" "NAME\n" "[-a|-m]" msgstr "" -#: locale/programs/locale.c:193 +#: locale/programs/locale.c:194 #, c-format msgid "Cannot set LC_CTYPE to default locale" msgstr "" -#: locale/programs/locale.c:195 +#: locale/programs/locale.c:196 #, c-format msgid "Cannot set LC_MESSAGES to default locale" msgstr "" -#: locale/programs/locale.c:208 +#: locale/programs/locale.c:209 #, c-format msgid "Cannot set LC_COLLATE to default locale" msgstr "" -#: locale/programs/locale.c:224 +#: locale/programs/locale.c:225 #, c-format msgid "Cannot set LC_ALL to default locale" msgstr "" -#: locale/programs/locale.c:500 +#: locale/programs/locale.c:518 #, c-format msgid "while preparing output" msgstr "" @@ -2802,11 +2834,9 @@ msgid "" "corresponding\n" "short options.\n" "\n" -"For bug reporting instructions, please see:\n" -"<http://www.gnu.org/software/libc/bugs.html>." msgstr "" -#: malloc/memusage.sh:99 +#: malloc/memusage.sh:101 msgid "" "Syntax: memusage [--data=FILE] [--progname=NAME] [--png=FILE] [--" "unbuffered]\n" @@ -2815,53 +2845,53 @@ msgid "" " PROGRAM [PROGRAMOPTION]..." msgstr "" -#: malloc/memusage.sh:191 +#: malloc/memusage.sh:193 msgid "memusage: option \\`${1##*=}' is ambiguous" msgstr "" -#: malloc/memusage.sh:200 +#: malloc/memusage.sh:202 msgid "memusage: unrecognized option \\`$1'" msgstr "" -#: malloc/memusage.sh:213 +#: malloc/memusage.sh:215 msgid "No program name given" msgstr "" -#: malloc/memusagestat.c:54 +#: malloc/memusagestat.c:57 msgid "Name output file" msgstr "" -#: malloc/memusagestat.c:55 +#: malloc/memusagestat.c:58 msgid "Title string used in output graphic" msgstr "" -#: malloc/memusagestat.c:56 +#: malloc/memusagestat.c:59 msgid "" "Generate output linear to time (default is linear to number of function " "calls)" msgstr "" -#: malloc/memusagestat.c:58 +#: malloc/memusagestat.c:61 msgid "Also draw graph for total memory consumption" msgstr "" -#: malloc/memusagestat.c:59 +#: malloc/memusagestat.c:62 msgid "Make output graphic VALUE pixels wide" msgstr "" -#: malloc/memusagestat.c:60 +#: malloc/memusagestat.c:63 msgid "Make output graphic VALUE pixels high" msgstr "" -#: malloc/memusagestat.c:65 +#: malloc/memusagestat.c:68 msgid "Generate graphic from memory profiling data" msgstr "" -#: malloc/memusagestat.c:68 +#: malloc/memusagestat.c:71 msgid "DATAFILE [OUTFILE]" msgstr "" -#: misc/error.c:118 timezone/zic.c:417 +#: misc/error.c:118 msgid "Unknown system error" msgstr "" @@ -2869,7 +2899,7 @@ msgstr "" msgid "unable to free arguments" msgstr "" -#: nis/nis_error.h:1 nis/ypclnt.c:822 nis/ypclnt.c:910 posix/regcomp.c:132 +#: nis/nis_error.h:1 nis/ypclnt.c:833 nis/ypclnt.c:921 posix/regcomp.c:133 #: sysdeps/gnu/errlist.c:20 msgid "Success" msgstr "" @@ -2911,7 +2941,7 @@ msgid "First/next chain broken" msgstr "" #. TRANS Permission denied; the file permissions do not allow the attempted operation. -#: nis/nis_error.h:11 nis/ypclnt.c:867 sysdeps/gnu/errlist.c:157 +#: nis/nis_error.h:11 nis/ypclnt.c:878 sysdeps/gnu/errlist.c:157 msgid "Permission denied" msgstr "" @@ -3410,100 +3440,100 @@ msgstr "" msgid "netname2user: should not have uid 0" msgstr "" -#: nis/ypclnt.c:825 +#: nis/ypclnt.c:836 msgid "Request arguments bad" msgstr "" -#: nis/ypclnt.c:828 +#: nis/ypclnt.c:839 msgid "RPC failure on NIS operation" msgstr "" -#: nis/ypclnt.c:831 +#: nis/ypclnt.c:842 msgid "Can't bind to server which serves this domain" msgstr "" -#: nis/ypclnt.c:834 +#: nis/ypclnt.c:845 msgid "No such map in server's domain" msgstr "" -#: nis/ypclnt.c:837 +#: nis/ypclnt.c:848 msgid "No such key in map" msgstr "" -#: nis/ypclnt.c:840 +#: nis/ypclnt.c:851 msgid "Internal NIS error" msgstr "" -#: nis/ypclnt.c:843 +#: nis/ypclnt.c:854 msgid "Local resource allocation failure" msgstr "" -#: nis/ypclnt.c:846 +#: nis/ypclnt.c:857 msgid "No more records in map database" msgstr "" -#: nis/ypclnt.c:849 +#: nis/ypclnt.c:860 msgid "Can't communicate with portmapper" msgstr "" -#: nis/ypclnt.c:852 +#: nis/ypclnt.c:863 msgid "Can't communicate with ypbind" msgstr "" -#: nis/ypclnt.c:855 +#: nis/ypclnt.c:866 msgid "Can't communicate with ypserv" msgstr "" -#: nis/ypclnt.c:858 +#: nis/ypclnt.c:869 msgid "Local domain name not set" msgstr "" -#: nis/ypclnt.c:861 +#: nis/ypclnt.c:872 msgid "NIS map database is bad" msgstr "" -#: nis/ypclnt.c:864 +#: nis/ypclnt.c:875 msgid "NIS client/server version mismatch - can't supply service" msgstr "" -#: nis/ypclnt.c:870 +#: nis/ypclnt.c:881 msgid "Database is busy" msgstr "" -#: nis/ypclnt.c:873 +#: nis/ypclnt.c:884 msgid "Unknown NIS error code" msgstr "" -#: nis/ypclnt.c:913 +#: nis/ypclnt.c:924 msgid "Internal ypbind error" msgstr "" -#: nis/ypclnt.c:916 +#: nis/ypclnt.c:927 msgid "Domain not bound" msgstr "" -#: nis/ypclnt.c:919 +#: nis/ypclnt.c:930 msgid "System resource allocation failure" msgstr "" -#: nis/ypclnt.c:922 +#: nis/ypclnt.c:933 msgid "Unknown ypbind error" msgstr "" -#: nis/ypclnt.c:963 +#: nis/ypclnt.c:974 msgid "yp_update: cannot convert host to netname\n" msgstr "" -#: nis/ypclnt.c:981 +#: nis/ypclnt.c:992 msgid "yp_update: cannot get server address\n" msgstr "" -#: nscd/aicache.c:77 nscd/hstcache.c:473 +#: nscd/aicache.c:82 nscd/hstcache.c:481 #, c-format msgid "Haven't found \"%s\" in hosts cache!" msgstr "" -#: nscd/aicache.c:79 nscd/hstcache.c:475 +#: nscd/aicache.c:84 nscd/hstcache.c:483 #, c-format msgid "Reloading \"%s\" in hosts cache!" msgstr "" @@ -3517,344 +3547,369 @@ msgstr "" msgid " (first)" msgstr "" -#: nscd/cache.c:263 nscd/connections.c:811 +#: nscd/cache.c:286 nscd/connections.c:866 #, c-format msgid "cannot stat() file `%s': %s" msgstr "" -#: nscd/cache.c:305 +#: nscd/cache.c:328 #, c-format msgid "pruning %s cache; time %ld" msgstr "" -#: nscd/cache.c:334 +#: nscd/cache.c:357 #, c-format msgid "considering %s entry \"%s\", timeout %<PRIu64>" msgstr "" -#: nscd/connections.c:527 +#: nscd/connections.c:570 #, c-format msgid "invalid persistent database file \"%s\": %s" msgstr "" -#: nscd/connections.c:535 +#: nscd/connections.c:578 msgid "uninitialized header" msgstr "" -#: nscd/connections.c:540 +#: nscd/connections.c:583 msgid "header size does not match" msgstr "" -#: nscd/connections.c:550 +#: nscd/connections.c:593 msgid "file size does not match" msgstr "" -#: nscd/connections.c:567 +#: nscd/connections.c:610 msgid "verification failed" msgstr "" -#: nscd/connections.c:581 +#: nscd/connections.c:624 #, c-format msgid "" "suggested size of table for database %s larger than the persistent " "database's table" msgstr "" -#: nscd/connections.c:592 nscd/connections.c:674 +#: nscd/connections.c:635 nscd/connections.c:720 #, c-format msgid "cannot create read-only descriptor for \"%s\"; no mmap" msgstr "" -#: nscd/connections.c:653 +#: nscd/connections.c:651 +#, c-format +msgid "cannot access '%s'" +msgstr "" + +#: nscd/connections.c:699 #, c-format msgid "" "database for %s corrupted or simultaneously used; remove %s manually if " "necessary and restart" msgstr "" -#: nscd/connections.c:660 +#: nscd/connections.c:706 #, c-format msgid "cannot create %s; no persistent database used" msgstr "" -#: nscd/connections.c:663 +#: nscd/connections.c:709 #, c-format msgid "cannot create %s; no sharing possible" msgstr "" -#: nscd/connections.c:734 +#: nscd/connections.c:780 #, c-format msgid "cannot write to database file %s: %s" msgstr "" -#: nscd/connections.c:773 +#: nscd/connections.c:819 #, c-format msgid "cannot set socket to close on exec: %s; disabling paranoia mode" msgstr "" -#: nscd/connections.c:824 +#: nscd/connections.c:902 #, c-format msgid "cannot open socket: %s" msgstr "" -#: nscd/connections.c:841 +#: nscd/connections.c:922 #, c-format msgid "cannot change socket to nonblocking mode: %s" msgstr "" -#: nscd/connections.c:849 +#: nscd/connections.c:930 #, c-format msgid "cannot set socket to close on exec: %s" msgstr "" -#: nscd/connections.c:860 +#: nscd/connections.c:943 #, c-format msgid "cannot enable socket to accept connections: %s" msgstr "" -#: nscd/connections.c:960 +#: nscd/connections.c:1043 #, c-format msgid "provide access to FD %d, for %s" msgstr "" -#: nscd/connections.c:972 +#: nscd/connections.c:1055 #, c-format msgid "cannot handle old request version %d; current version is %d" msgstr "" -#: nscd/connections.c:982 +#: nscd/connections.c:1077 +#, c-format +msgid "request from %ld not handled due to missing permission" +msgstr "" + +#: nscd/connections.c:1082 +#, c-format +msgid "request from '%s' [%ld] not handled due to missing permission" +msgstr "" + +#: nscd/connections.c:1087 msgid "request not handled due to missing permission" msgstr "" -#: nscd/connections.c:1018 nscd/connections.c:1071 +#: nscd/connections.c:1125 nscd/connections.c:1178 #, c-format msgid "cannot write result: %s" msgstr "" -#: nscd/connections.c:1154 +#: nscd/connections.c:1261 #, c-format msgid "error getting caller's id: %s" msgstr "" -#: nscd/connections.c:1213 +#: nscd/connections.c:1320 #, c-format msgid "cannot open /proc/self/cmdline: %s; disabling paranoia mode" msgstr "" -#: nscd/connections.c:1227 +#: nscd/connections.c:1334 #, c-format msgid "cannot read /proc/self/cmdline: %s; disabling paranoia mode" msgstr "" -#: nscd/connections.c:1267 +#: nscd/connections.c:1374 #, c-format msgid "cannot change to old UID: %s; disabling paranoia mode" msgstr "" -#: nscd/connections.c:1277 +#: nscd/connections.c:1384 #, c-format msgid "cannot change to old GID: %s; disabling paranoia mode" msgstr "" -#: nscd/connections.c:1290 +#: nscd/connections.c:1397 #, c-format msgid "cannot change to old working directory: %s; disabling paranoia mode" msgstr "" -#: nscd/connections.c:1319 +#: nscd/connections.c:1429 #, c-format msgid "re-exec failed: %s; disabling paranoia mode" msgstr "" -#: nscd/connections.c:1328 +#: nscd/connections.c:1438 #, c-format msgid "cannot change current working directory to \"/\": %s" msgstr "" -#: nscd/connections.c:1471 +#: nscd/connections.c:1644 #, c-format msgid "short read while reading request: %s" msgstr "" -#: nscd/connections.c:1502 +#: nscd/connections.c:1677 #, c-format msgid "key length in request too long: %d" msgstr "" -#: nscd/connections.c:1515 +#: nscd/connections.c:1690 #, c-format msgid "short read while reading request key: %s" msgstr "" -#: nscd/connections.c:1524 +#: nscd/connections.c:1699 #, c-format msgid "handle_request: request received (Version = %d) from PID %ld" msgstr "" -#: nscd/connections.c:1529 +#: nscd/connections.c:1704 #, c-format msgid "handle_request: request received (Version = %d)" msgstr "" -#: nscd/connections.c:1866 +#: nscd/connections.c:1903 nscd/connections.c:2101 +#, c-format +msgid "disabled inotify after read error %d" +msgstr "" + +#: nscd/connections.c:2230 msgid "could not initialize conditional variable" msgstr "" -#: nscd/connections.c:1874 +#: nscd/connections.c:2238 msgid "could not start clean-up thread; terminating" msgstr "" -#: nscd/connections.c:1888 +#: nscd/connections.c:2252 msgid "could not start any worker thread; terminating" msgstr "" -#: nscd/connections.c:1939 nscd/connections.c:1940 nscd/connections.c:1957 -#: nscd/connections.c:1966 nscd/connections.c:1984 nscd/connections.c:1995 -#: nscd/connections.c:2006 +#: nscd/connections.c:2303 nscd/connections.c:2304 nscd/connections.c:2321 +#: nscd/connections.c:2330 nscd/connections.c:2348 nscd/connections.c:2359 +#: nscd/connections.c:2370 #, c-format msgid "Failed to run nscd as user '%s'" msgstr "" -#: nscd/connections.c:1958 +#: nscd/connections.c:2322 #, c-format msgid "initial getgrouplist failed" msgstr "" -#: nscd/connections.c:1967 +#: nscd/connections.c:2331 #, c-format msgid "getgrouplist failed" msgstr "" -#: nscd/connections.c:1985 +#: nscd/connections.c:2349 #, c-format msgid "setgroups failed" msgstr "" -#: nscd/grpcache.c:404 nscd/hstcache.c:422 nscd/initgrcache.c:414 -#: nscd/pwdcache.c:399 nscd/servicescache.c:345 +#: nscd/grpcache.c:395 nscd/hstcache.c:430 nscd/initgrcache.c:416 +#: nscd/pwdcache.c:400 nscd/servicescache.c:343 #, c-format msgid "short write in %s: %s" msgstr "" -#: nscd/grpcache.c:447 nscd/initgrcache.c:78 +#: nscd/grpcache.c:438 nscd/initgrcache.c:78 #, c-format msgid "Haven't found \"%s\" in group cache!" msgstr "" -#: nscd/grpcache.c:449 nscd/initgrcache.c:80 +#: nscd/grpcache.c:440 nscd/initgrcache.c:80 #, c-format msgid "Reloading \"%s\" in group cache!" msgstr "" -#: nscd/grpcache.c:526 +#: nscd/grpcache.c:517 #, c-format msgid "Invalid numeric gid \"%s\"!" msgstr "" -#: nscd/mem.c:422 +#: nscd/mem.c:457 #, c-format msgid "freed %zu bytes in %s cache" msgstr "" -#: nscd/mem.c:557 +#: nscd/mem.c:594 #, c-format msgid "no more memory for database '%s'" msgstr "" -#: nscd/nscd.c:98 +#: nscd/nscd.c:101 msgid "Read configuration data from NAME" msgstr "" -#: nscd/nscd.c:100 +#: nscd/nscd.c:103 msgid "Do not fork and display messages on the current tty" msgstr "" -#: nscd/nscd.c:101 +#: nscd/nscd.c:104 msgid "NUMBER" msgstr "" -#: nscd/nscd.c:101 +#: nscd/nscd.c:104 msgid "Start NUMBER threads" msgstr "" -#: nscd/nscd.c:102 +#: nscd/nscd.c:105 msgid "Shut the server down" msgstr "" -#: nscd/nscd.c:103 +#: nscd/nscd.c:106 msgid "Print current configuration statistics" msgstr "" -#: nscd/nscd.c:104 +#: nscd/nscd.c:107 msgid "TABLE" msgstr "" -#: nscd/nscd.c:105 +#: nscd/nscd.c:108 msgid "Invalidate the specified cache" msgstr "" -#: nscd/nscd.c:106 +#: nscd/nscd.c:109 msgid "TABLE,yes" msgstr "" -#: nscd/nscd.c:107 +#: nscd/nscd.c:110 msgid "Use separate cache for each user" msgstr "" -#: nscd/nscd.c:112 +#: nscd/nscd.c:115 msgid "Name Service Cache Daemon." msgstr "" -#: nscd/nscd.c:144 nss/getent.c:858 nss/makedb.c:123 +#: nscd/nscd.c:147 nss/getent.c:876 nss/makedb.c:123 #, c-format msgid "wrong number of arguments" msgstr "" -#: nscd/nscd.c:154 +#: nscd/nscd.c:157 #, c-format msgid "failure while reading configuration file; this is fatal" msgstr "" -#: nscd/nscd.c:163 +#: nscd/nscd.c:166 #, c-format msgid "already running" msgstr "" -#: nscd/nscd.c:178 nscd/nscd.c:233 +#: nscd/nscd.c:181 nscd/nscd.c:236 #, c-format msgid "cannot fork" msgstr "" -#: nscd/nscd.c:241 +#: nscd/nscd.c:244 #, c-format msgid "cannot change current working directory to \"/\"" msgstr "" -#: nscd/nscd.c:249 +#: nscd/nscd.c:252 msgid "Could not create log file" msgstr "" -#: nscd/nscd.c:302 nscd/nscd.c:327 nscd/nscd_stat.c:172 +#: nscd/nscd.c:305 nscd/nscd.c:330 nscd/nscd_stat.c:172 #, c-format msgid "Only root is allowed to use this option!" msgstr "" -#: nscd/nscd.c:364 nscd/nscd_stat.c:191 +#: nscd/nscd.c:345 +#, c-format +msgid "'%s' is not a known database" +msgstr "" + +#: nscd/nscd.c:370 nscd/nscd_stat.c:191 #, c-format msgid "write incomplete" msgstr "" -#: nscd/nscd.c:375 +#: nscd/nscd.c:381 #, c-format msgid "cannot read invalidate ACK" msgstr "" -#: nscd/nscd.c:381 +#: nscd/nscd.c:387 #, c-format msgid "invalidation failed" msgstr "" -#: nscd/nscd.c:391 +#: nscd/nscd.c:397 #, c-format msgid "secure services not implemented anymore" msgstr "" @@ -3998,17 +4053,17 @@ msgid "" "%15s check /etc/%s for changes\n" msgstr "" -#: nscd/pwdcache.c:442 +#: nscd/pwdcache.c:443 #, c-format msgid "Haven't found \"%s\" in password cache!" msgstr "" -#: nscd/pwdcache.c:444 +#: nscd/pwdcache.c:445 #, c-format msgid "Reloading \"%s\" in password cache!" msgstr "" -#: nscd/pwdcache.c:522 +#: nscd/pwdcache.c:523 #, c-format msgid "Invalid numeric uid \"%s\"!" msgstr "" @@ -4104,12 +4159,12 @@ msgid "" "%15u CAV misses\n" msgstr "" -#: nscd/servicescache.c:392 +#: nscd/servicescache.c:390 #, c-format msgid "Haven't found \"%s\" in services cache!" msgstr "" -#: nscd/servicescache.c:394 +#: nscd/servicescache.c:392 #, c-format msgid "Reloading \"%s\" in services cache!" msgstr "" @@ -4123,27 +4178,24 @@ msgid "Service configuration to be used" msgstr "" #: nss/getent.c:62 -msgid "" -"Get entries from administrative database.\vFor bug reporting instructions, " -"please see:\n" -"<http://www.gnu.org/software/libc/bugs.html>.\n" +msgid "Get entries from administrative database." msgstr "" -#: nss/getent.c:145 nss/getent.c:394 +#: nss/getent.c:143 nss/getent.c:408 #, c-format msgid "Enumeration not supported on %s\n" msgstr "" -#: nss/getent.c:782 +#: nss/getent.c:794 #, c-format msgid "Unknown database name" msgstr "" -#: nss/getent.c:808 +#: nss/getent.c:820 msgid "Supported databases:\n" msgstr "" -#: nss/getent.c:868 +#: nss/getent.c:886 #, c-format msgid "Unknown database: %s\n" msgstr "" @@ -4214,21 +4266,33 @@ msgstr "" msgid " %s -a [pathname]\n" msgstr "" -#: posix/getconf.c:1067 +#: posix/getconf.c:1023 +#, c-format +msgid "" +"Usage: getconf [-v SPEC] VAR\n" +" or: getconf [-v SPEC] PATH_VAR PATH\n" +"\n" +"Get the configuration value for variable VAR, or for variable PATH_VAR\n" +"for path PATH. If SPEC is given, give values for compilation\n" +"environment SPEC.\n" +"\n" +msgstr "" + +#: posix/getconf.c:1081 #, c-format msgid "unknown specification \"%s\"" msgstr "" -#: posix/getconf.c:1095 +#: posix/getconf.c:1109 #, c-format msgid "Couldn't execute %s" msgstr "" -#: posix/getconf.c:1135 posix/getconf.c:1151 +#: posix/getconf.c:1149 posix/getconf.c:1165 msgid "undefined" msgstr "" -#: posix/getconf.c:1173 +#: posix/getconf.c:1187 #, c-format msgid "Unrecognized variable `%s'" msgstr "" @@ -4285,75 +4349,75 @@ msgstr "" msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "" -#: posix/regcomp.c:135 +#: posix/regcomp.c:136 msgid "No match" msgstr "" -#: posix/regcomp.c:138 +#: posix/regcomp.c:139 msgid "Invalid regular expression" msgstr "" -#: posix/regcomp.c:141 +#: posix/regcomp.c:142 msgid "Invalid collation character" msgstr "" -#: posix/regcomp.c:144 +#: posix/regcomp.c:145 msgid "Invalid character class name" msgstr "" -#: posix/regcomp.c:147 +#: posix/regcomp.c:148 msgid "Trailing backslash" msgstr "" -#: posix/regcomp.c:150 +#: posix/regcomp.c:151 msgid "Invalid back reference" msgstr "" -#: posix/regcomp.c:153 +#: posix/regcomp.c:154 msgid "Unmatched [ or [^" msgstr "" -#: posix/regcomp.c:156 +#: posix/regcomp.c:157 msgid "Unmatched ( or \\(" msgstr "" -#: posix/regcomp.c:159 +#: posix/regcomp.c:160 msgid "Unmatched \\{" msgstr "" -#: posix/regcomp.c:162 +#: posix/regcomp.c:163 msgid "Invalid content of \\{\\}" msgstr "" -#: posix/regcomp.c:165 +#: posix/regcomp.c:166 msgid "Invalid range end" msgstr "" -#: posix/regcomp.c:168 +#: posix/regcomp.c:169 msgid "Memory exhausted" msgstr "" -#: posix/regcomp.c:171 +#: posix/regcomp.c:172 msgid "Invalid preceding regular expression" msgstr "" -#: posix/regcomp.c:174 +#: posix/regcomp.c:175 msgid "Premature end of regular expression" msgstr "" -#: posix/regcomp.c:177 +#: posix/regcomp.c:178 msgid "Regular expression too big" msgstr "" -#: posix/regcomp.c:180 +#: posix/regcomp.c:181 msgid "Unmatched ) or \\)" msgstr "" -#: posix/regcomp.c:660 +#: posix/regcomp.c:681 msgid "No previous regular expression" msgstr "" -#: posix/wordexp.c:1798 +#: posix/wordexp.c:1832 msgid "parameter null or not set" msgstr "" @@ -4437,7 +4501,7 @@ msgstr "" msgid "Unknown signal %d" msgstr "" -#: sunrpc/auth_unix.c:114 sunrpc/clnt_tcp.c:131 sunrpc/clnt_udp.c:140 +#: sunrpc/auth_unix.c:114 sunrpc/clnt_tcp.c:131 sunrpc/clnt_udp.c:143 #: sunrpc/clnt_unix.c:128 sunrpc/svc_tcp.c:179 sunrpc/svc_tcp.c:218 #: sunrpc/svc_udp.c:153 sunrpc/svc_unix.c:176 sunrpc/svc_unix.c:215 #: sunrpc/xdr.c:566 sunrpc/xdr.c:718 sunrpc/xdr_array.c:106 @@ -4604,121 +4668,244 @@ msgstr "" msgid "Cannot receive reply to broadcast" msgstr "" -#: sunrpc/rpc_main.c:286 +#: sunrpc/rpc_main.c:290 #, c-format msgid "%s: output would overwrite %s\n" msgstr "" -#: sunrpc/rpc_main.c:293 +#: sunrpc/rpc_main.c:297 #, c-format msgid "%s: unable to open %s: %m\n" msgstr "" -#: sunrpc/rpc_main.c:305 +#: sunrpc/rpc_main.c:309 #, c-format msgid "%s: while writing output %s: %m" msgstr "" -#: sunrpc/rpc_main.c:340 +#: sunrpc/rpc_main.c:344 #, c-format msgid "cannot find C preprocessor: %s \n" msgstr "" -#: sunrpc/rpc_main.c:348 +#: sunrpc/rpc_main.c:352 msgid "cannot find any C preprocessor (cpp)\n" msgstr "" -#: sunrpc/rpc_main.c:417 +#: sunrpc/rpc_main.c:421 #, c-format msgid "%s: C preprocessor failed with signal %d\n" msgstr "" -#: sunrpc/rpc_main.c:420 +#: sunrpc/rpc_main.c:424 #, c-format msgid "%s: C preprocessor failed with exit code %d\n" msgstr "" -#: sunrpc/rpc_main.c:460 +#: sunrpc/rpc_main.c:464 #, c-format msgid "illegal nettype: `%s'\n" msgstr "" -#: sunrpc/rpc_main.c:1122 +#: sunrpc/rpc_main.c:1130 #, c-format msgid "rpcgen: too many defines\n" msgstr "" -#: sunrpc/rpc_main.c:1134 +#: sunrpc/rpc_main.c:1142 #, c-format msgid "rpcgen: arglist coding error\n" msgstr "" #. TRANS: the file will not be removed; this is an #. TRANS: informative message. -#: sunrpc/rpc_main.c:1167 +#: sunrpc/rpc_main.c:1175 #, c-format msgid "file `%s' already exists and may be overwritten\n" msgstr "" -#: sunrpc/rpc_main.c:1212 +#: sunrpc/rpc_main.c:1220 #, c-format msgid "Cannot specify more than one input file!\n" msgstr "" -#: sunrpc/rpc_main.c:1382 +#: sunrpc/rpc_main.c:1394 +#, c-format msgid "This implementation doesn't support newstyle or MT-safe code!\n" msgstr "" -#: sunrpc/rpc_main.c:1391 +#: sunrpc/rpc_main.c:1403 #, c-format msgid "Cannot use netid flag with inetd flag!\n" msgstr "" -#: sunrpc/rpc_main.c:1403 +#: sunrpc/rpc_main.c:1415 +#, c-format msgid "Cannot use netid flag without TIRPC!\n" msgstr "" -#: sunrpc/rpc_main.c:1410 +#: sunrpc/rpc_main.c:1422 +#, c-format msgid "Cannot use table flags with newstyle!\n" msgstr "" -#: sunrpc/rpc_main.c:1429 +#: sunrpc/rpc_main.c:1441 #, c-format msgid "\"infile\" is required for template generation flags.\n" msgstr "" -#: sunrpc/rpc_main.c:1434 +#: sunrpc/rpc_main.c:1446 #, c-format msgid "Cannot have more than one file generation flag!\n" msgstr "" -#: sunrpc/rpc_main.c:1443 +#: sunrpc/rpc_main.c:1455 #, c-format msgid "usage: %s infile\n" msgstr "" -#: sunrpc/rpc_main.c:1444 +#: sunrpc/rpc_main.c:1456 #, c-format msgid "" "\t%s [-abkCLNTM][-Dname[=value]] [-i size] [-I [-K seconds]] [-Y path] " "infile\n" msgstr "" -#: sunrpc/rpc_main.c:1446 +#: sunrpc/rpc_main.c:1458 #, c-format msgid "\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] [-o outfile] [infile]\n" msgstr "" -#: sunrpc/rpc_main.c:1448 +#: sunrpc/rpc_main.c:1460 #, c-format msgid "\t%s [-s nettype]* [-o outfile] [infile]\n" msgstr "" -#: sunrpc/rpc_main.c:1449 +#: sunrpc/rpc_main.c:1461 #, c-format msgid "\t%s [-n netid]* [-o outfile] [infile]\n" msgstr "" +#: sunrpc/rpc_main.c:1469 +#, c-format +msgid "options:\n" +msgstr "" + +#: sunrpc/rpc_main.c:1470 +#, c-format +msgid "-a\t\tgenerate all files, including samples\n" +msgstr "" + +#: sunrpc/rpc_main.c:1471 +#, c-format +msgid "-b\t\tbackward compatibility mode (generates code for SunOS 4.1)\n" +msgstr "" + +#: sunrpc/rpc_main.c:1472 +#, c-format +msgid "-c\t\tgenerate XDR routines\n" +msgstr "" + +#: sunrpc/rpc_main.c:1473 +#, c-format +msgid "-C\t\tANSI C mode\n" +msgstr "" + +#: sunrpc/rpc_main.c:1474 +#, c-format +msgid "-Dname[=value]\tdefine a symbol (same as #define)\n" +msgstr "" + +#: sunrpc/rpc_main.c:1475 +#, c-format +msgid "-h\t\tgenerate header file\n" +msgstr "" + +#: sunrpc/rpc_main.c:1476 +#, c-format +msgid "-i size\t\tsize at which to start generating inline code\n" +msgstr "" + +#: sunrpc/rpc_main.c:1477 +#, c-format +msgid "-I\t\tgenerate code for inetd support in server (for SunOS 4.1)\n" +msgstr "" + +#: sunrpc/rpc_main.c:1478 +#, c-format +msgid "-K seconds\tserver exits after K seconds of inactivity\n" +msgstr "" + +#: sunrpc/rpc_main.c:1479 +#, c-format +msgid "-l\t\tgenerate client side stubs\n" +msgstr "" + +#: sunrpc/rpc_main.c:1480 +#, c-format +msgid "-L\t\tserver errors will be printed to syslog\n" +msgstr "" + +#: sunrpc/rpc_main.c:1481 +#, c-format +msgid "-m\t\tgenerate server side stubs\n" +msgstr "" + +#: sunrpc/rpc_main.c:1482 +#, c-format +msgid "-M\t\tgenerate MT-safe code\n" +msgstr "" + +#: sunrpc/rpc_main.c:1483 +#, c-format +msgid "-n netid\tgenerate server code that supports named netid\n" +msgstr "" + +#: sunrpc/rpc_main.c:1484 +#, c-format +msgid "-N\t\tsupports multiple arguments and call-by-value\n" +msgstr "" + +#: sunrpc/rpc_main.c:1485 +#, c-format +msgid "-o outfile\tname of the output file\n" +msgstr "" + +#: sunrpc/rpc_main.c:1486 +#, c-format +msgid "-s nettype\tgenerate server code that supports named nettype\n" +msgstr "" + +#: sunrpc/rpc_main.c:1487 +#, c-format +msgid "-Sc\t\tgenerate sample client code that uses remote procedures\n" +msgstr "" + +#: sunrpc/rpc_main.c:1488 +#, c-format +msgid "-Ss\t\tgenerate sample server code that defines remote procedures\n" +msgstr "" + +#: sunrpc/rpc_main.c:1489 +#, c-format +msgid "-Sm \t\tgenerate makefile template \n" +msgstr "" + +#: sunrpc/rpc_main.c:1490 +#, c-format +msgid "-t\t\tgenerate RPC dispatch table\n" +msgstr "" + +#: sunrpc/rpc_main.c:1491 +#, c-format +msgid "-T\t\tgenerate code to support RPC dispatch tables\n" +msgstr "" + +#: sunrpc/rpc_main.c:1492 +#, c-format +msgid "-Y path\t\tdirectory name to find C preprocessor (cpp)\n" +msgstr "" + #: sunrpc/rpc_scan.c:114 msgid "constant or identifier expected" msgstr "" @@ -4739,79 +4926,79 @@ msgstr "" msgid "preprocessor error" msgstr "" -#: sunrpc/rpcinfo.c:237 sunrpc/rpcinfo.c:383 +#: sunrpc/rpcinfo.c:254 sunrpc/rpcinfo.c:400 #, c-format msgid "program %lu is not available\n" msgstr "" -#: sunrpc/rpcinfo.c:264 sunrpc/rpcinfo.c:310 sunrpc/rpcinfo.c:333 -#: sunrpc/rpcinfo.c:407 sunrpc/rpcinfo.c:453 sunrpc/rpcinfo.c:476 -#: sunrpc/rpcinfo.c:510 +#: sunrpc/rpcinfo.c:281 sunrpc/rpcinfo.c:327 sunrpc/rpcinfo.c:350 +#: sunrpc/rpcinfo.c:424 sunrpc/rpcinfo.c:470 sunrpc/rpcinfo.c:493 +#: sunrpc/rpcinfo.c:527 #, c-format msgid "program %lu version %lu is not available\n" msgstr "" -#: sunrpc/rpcinfo.c:515 +#: sunrpc/rpcinfo.c:532 #, c-format msgid "program %lu version %lu ready and waiting\n" msgstr "" -#: sunrpc/rpcinfo.c:556 sunrpc/rpcinfo.c:563 +#: sunrpc/rpcinfo.c:573 sunrpc/rpcinfo.c:580 msgid "rpcinfo: can't contact portmapper" msgstr "" -#: sunrpc/rpcinfo.c:570 +#: sunrpc/rpcinfo.c:587 msgid "No remote programs registered.\n" msgstr "" -#: sunrpc/rpcinfo.c:574 +#: sunrpc/rpcinfo.c:591 msgid " program vers proto port\n" msgstr "" -#: sunrpc/rpcinfo.c:613 +#: sunrpc/rpcinfo.c:630 msgid "(unknown)" msgstr "" -#: sunrpc/rpcinfo.c:637 +#: sunrpc/rpcinfo.c:654 #, c-format msgid "rpcinfo: broadcast failed: %s\n" msgstr "" -#: sunrpc/rpcinfo.c:658 +#: sunrpc/rpcinfo.c:675 msgid "Sorry. You are not root\n" msgstr "" -#: sunrpc/rpcinfo.c:665 +#: sunrpc/rpcinfo.c:682 #, c-format msgid "rpcinfo: Could not delete registration for prog %s version %s\n" msgstr "" -#: sunrpc/rpcinfo.c:674 +#: sunrpc/rpcinfo.c:691 msgid "Usage: rpcinfo [ -n portnum ] -u host prognum [ versnum ]\n" msgstr "" -#: sunrpc/rpcinfo.c:676 +#: sunrpc/rpcinfo.c:693 msgid " rpcinfo [ -n portnum ] -t host prognum [ versnum ]\n" msgstr "" -#: sunrpc/rpcinfo.c:678 +#: sunrpc/rpcinfo.c:695 msgid " rpcinfo -p [ host ]\n" msgstr "" -#: sunrpc/rpcinfo.c:679 +#: sunrpc/rpcinfo.c:696 msgid " rpcinfo -b prognum versnum\n" msgstr "" -#: sunrpc/rpcinfo.c:680 +#: sunrpc/rpcinfo.c:697 msgid " rpcinfo -d prognum versnum\n" msgstr "" -#: sunrpc/rpcinfo.c:695 +#: sunrpc/rpcinfo.c:722 #, c-format msgid "rpcinfo: %s is unknown service\n" msgstr "" -#: sunrpc/rpcinfo.c:732 +#: sunrpc/rpcinfo.c:759 #, c-format msgid "rpcinfo: %s is unknown host\n" msgstr "" @@ -5969,415 +6156,422 @@ msgstr "" msgid "makecontext: does not know how to handle more than 8 arguments\n" msgstr "" -#: sysdeps/unix/sysv/linux/lddlibc4.c:64 +#: sysdeps/unix/sysv/linux/lddlibc4.c:61 +#, c-format +msgid "" +"Usage: lddlibc4 FILE\n" +"\n" +msgstr "" + +#: sysdeps/unix/sysv/linux/lddlibc4.c:82 #, c-format msgid "cannot open `%s'" msgstr "" -#: sysdeps/unix/sysv/linux/lddlibc4.c:68 +#: sysdeps/unix/sysv/linux/lddlibc4.c:86 #, c-format msgid "cannot read header from `%s'" msgstr "" -#: timezone/zdump.c:211 +#: timezone/zdump.c:210 msgid "lacks alphabetic at start" msgstr "" -#: timezone/zdump.c:213 +#: timezone/zdump.c:212 msgid "has fewer than 3 alphabetics" msgstr "" -#: timezone/zdump.c:215 +#: timezone/zdump.c:214 msgid "has more than 6 alphabetics" msgstr "" -#: timezone/zdump.c:223 +#: timezone/zdump.c:222 msgid "differs from POSIX standard" msgstr "" -#: timezone/zdump.c:229 +#: timezone/zdump.c:228 #, c-format msgid "%s: warning: zone \"%s\" abbreviation \"%s\" %s\n" msgstr "" -#: timezone/zdump.c:280 +#: timezone/zdump.c:279 #, c-format msgid "" "%s: usage is %s [ --version ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n" msgstr "" -#: timezone/zdump.c:297 +#: timezone/zdump.c:296 #, c-format msgid "%s: wild -c argument %s\n" msgstr "" -#: timezone/zdump.c:388 +#: timezone/zdump.c:387 msgid "Error writing to standard output" msgstr "" -#: timezone/zdump.c:411 +#: timezone/zdump.c:410 #, c-format msgid "" "%s: use of -v on system with floating time_t other than float or double\n" msgstr "" -#: timezone/zic.c:392 +#: timezone/zic.c:388 #, c-format msgid "%s: Memory exhausted: %s\n" msgstr "" -#: timezone/zic.c:451 +#: timezone/zic.c:434 #, c-format msgid "\"%s\", line %d: %s" msgstr "" -#: timezone/zic.c:454 +#: timezone/zic.c:437 #, c-format msgid " (rule from \"%s\", line %d)" msgstr "" -#: timezone/zic.c:466 +#: timezone/zic.c:449 msgid "warning: " msgstr "" -#: timezone/zic.c:476 +#: timezone/zic.c:459 #, c-format msgid "" "%s: usage is %s [ --version ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n" "\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n" msgstr "" -#: timezone/zic.c:511 +#: timezone/zic.c:494 msgid "wild compilation-time specification of zic_t" msgstr "" -#: timezone/zic.c:528 +#: timezone/zic.c:511 #, c-format msgid "%s: More than one -d option specified\n" msgstr "" -#: timezone/zic.c:538 +#: timezone/zic.c:521 #, c-format msgid "%s: More than one -l option specified\n" msgstr "" -#: timezone/zic.c:548 +#: timezone/zic.c:531 #, c-format msgid "%s: More than one -p option specified\n" msgstr "" -#: timezone/zic.c:558 +#: timezone/zic.c:541 #, c-format msgid "%s: More than one -y option specified\n" msgstr "" -#: timezone/zic.c:568 +#: timezone/zic.c:551 #, c-format msgid "%s: More than one -L option specified\n" msgstr "" -#: timezone/zic.c:617 +#: timezone/zic.c:600 msgid "link to link" msgstr "" -#: timezone/zic.c:682 +#: timezone/zic.c:665 msgid "hard link failed, symbolic link used" msgstr "" -#: timezone/zic.c:690 +#: timezone/zic.c:673 #, c-format msgid "%s: Can't link from %s to %s: %s\n" msgstr "" -#: timezone/zic.c:762 timezone/zic.c:764 +#: timezone/zic.c:745 timezone/zic.c:747 msgid "same rule name in multiple files" msgstr "" -#: timezone/zic.c:805 +#: timezone/zic.c:788 msgid "unruly zone" msgstr "" -#: timezone/zic.c:812 +#: timezone/zic.c:795 #, c-format msgid "%s in ruleless zone" msgstr "" -#: timezone/zic.c:833 +#: timezone/zic.c:816 msgid "standard input" msgstr "" -#: timezone/zic.c:838 +#: timezone/zic.c:821 #, c-format msgid "%s: Can't open %s: %s\n" msgstr "" -#: timezone/zic.c:849 +#: timezone/zic.c:832 msgid "line too long" msgstr "" -#: timezone/zic.c:869 +#: timezone/zic.c:852 msgid "input line of unknown type" msgstr "" -#: timezone/zic.c:885 +#: timezone/zic.c:868 #, c-format msgid "%s: Leap line in non leap seconds file %s\n" msgstr "" -#: timezone/zic.c:892 timezone/zic.c:1329 timezone/zic.c:1351 +#: timezone/zic.c:875 timezone/zic.c:1312 timezone/zic.c:1334 #, c-format msgid "%s: panic: Invalid l_value %d\n" msgstr "" -#: timezone/zic.c:900 +#: timezone/zic.c:883 #, c-format msgid "%s: Error reading %s\n" msgstr "" -#: timezone/zic.c:907 +#: timezone/zic.c:890 #, c-format msgid "%s: Error closing %s: %s\n" msgstr "" -#: timezone/zic.c:912 +#: timezone/zic.c:895 msgid "expected continuation line not found" msgstr "" -#: timezone/zic.c:956 timezone/zic.c:2489 timezone/zic.c:2508 +#: timezone/zic.c:939 timezone/zic.c:2476 timezone/zic.c:2495 msgid "time overflow" msgstr "" -#: timezone/zic.c:960 +#: timezone/zic.c:943 msgid "24:00 not handled by pre-1998 versions of zic" msgstr "" -#: timezone/zic.c:963 +#: timezone/zic.c:946 msgid "values over 24 hours not handled by pre-2007 versions of zic" msgstr "" -#: timezone/zic.c:976 +#: timezone/zic.c:959 msgid "wrong number of fields on Rule line" msgstr "" -#: timezone/zic.c:980 +#: timezone/zic.c:963 msgid "nameless rule" msgstr "" -#: timezone/zic.c:985 +#: timezone/zic.c:968 msgid "invalid saved time" msgstr "" -#: timezone/zic.c:1006 +#: timezone/zic.c:989 msgid "wrong number of fields on Zone line" msgstr "" -#: timezone/zic.c:1012 +#: timezone/zic.c:995 #, c-format msgid "\"Zone %s\" line and -l option are mutually exclusive" msgstr "" -#: timezone/zic.c:1020 +#: timezone/zic.c:1003 #, c-format msgid "\"Zone %s\" line and -p option are mutually exclusive" msgstr "" -#: timezone/zic.c:1032 +#: timezone/zic.c:1015 #, c-format msgid "duplicate zone name %s (file \"%s\", line %d)" msgstr "" -#: timezone/zic.c:1048 +#: timezone/zic.c:1031 msgid "wrong number of fields on Zone continuation line" msgstr "" -#: timezone/zic.c:1088 +#: timezone/zic.c:1071 msgid "invalid UTC offset" msgstr "" -#: timezone/zic.c:1091 +#: timezone/zic.c:1074 msgid "invalid abbreviation format" msgstr "" -#: timezone/zic.c:1120 +#: timezone/zic.c:1103 msgid "Zone continuation line end time is not after end time of previous line" msgstr "" -#: timezone/zic.c:1148 +#: timezone/zic.c:1131 msgid "wrong number of fields on Leap line" msgstr "" -#: timezone/zic.c:1157 +#: timezone/zic.c:1140 msgid "invalid leaping year" msgstr "" -#: timezone/zic.c:1177 timezone/zic.c:1283 +#: timezone/zic.c:1160 timezone/zic.c:1266 msgid "invalid month name" msgstr "" -#: timezone/zic.c:1190 timezone/zic.c:1396 timezone/zic.c:1410 +#: timezone/zic.c:1173 timezone/zic.c:1379 timezone/zic.c:1393 msgid "invalid day of month" msgstr "" -#: timezone/zic.c:1195 +#: timezone/zic.c:1178 msgid "time before zero" msgstr "" -#: timezone/zic.c:1199 +#: timezone/zic.c:1182 msgid "time too small" msgstr "" -#: timezone/zic.c:1203 +#: timezone/zic.c:1186 msgid "time too large" msgstr "" -#: timezone/zic.c:1207 timezone/zic.c:1312 +#: timezone/zic.c:1190 timezone/zic.c:1295 msgid "invalid time of day" msgstr "" -#: timezone/zic.c:1226 +#: timezone/zic.c:1209 msgid "illegal CORRECTION field on Leap line" msgstr "" -#: timezone/zic.c:1231 +#: timezone/zic.c:1214 msgid "illegal Rolling/Stationary field on Leap line" msgstr "" -#: timezone/zic.c:1247 +#: timezone/zic.c:1230 msgid "wrong number of fields on Link line" msgstr "" -#: timezone/zic.c:1251 +#: timezone/zic.c:1234 msgid "blank FROM field on Link line" msgstr "" -#: timezone/zic.c:1255 +#: timezone/zic.c:1238 msgid "blank TO field on Link line" msgstr "" -#: timezone/zic.c:1333 +#: timezone/zic.c:1316 msgid "invalid starting year" msgstr "" -#: timezone/zic.c:1355 +#: timezone/zic.c:1338 msgid "invalid ending year" msgstr "" -#: timezone/zic.c:1359 +#: timezone/zic.c:1342 msgid "starting year greater than ending year" msgstr "" -#: timezone/zic.c:1366 +#: timezone/zic.c:1349 msgid "typed single year" msgstr "" -#: timezone/zic.c:1401 +#: timezone/zic.c:1384 msgid "invalid weekday name" msgstr "" -#: timezone/zic.c:1579 +#: timezone/zic.c:1562 #, c-format msgid "%s: Can't remove %s: %s\n" msgstr "" -#: timezone/zic.c:1589 +#: timezone/zic.c:1572 #, c-format msgid "%s: Can't create %s: %s\n" msgstr "" -#: timezone/zic.c:1739 +#: timezone/zic.c:1722 #, c-format msgid "%s: Error writing %s\n" msgstr "" -#: timezone/zic.c:2031 +#: timezone/zic.c:2015 msgid "no POSIX environment variable for zone" msgstr "" -#: timezone/zic.c:2185 +#: timezone/zic.c:2172 msgid "can't determine time zone abbreviation to use just after until time" msgstr "" -#: timezone/zic.c:2231 +#: timezone/zic.c:2218 msgid "too many transitions?!" msgstr "" -#: timezone/zic.c:2250 +#: timezone/zic.c:2237 msgid "internal error - addtype called with bad isdst" msgstr "" -#: timezone/zic.c:2254 +#: timezone/zic.c:2241 msgid "internal error - addtype called with bad ttisstd" msgstr "" -#: timezone/zic.c:2258 +#: timezone/zic.c:2245 msgid "internal error - addtype called with bad ttisgmt" msgstr "" -#: timezone/zic.c:2277 +#: timezone/zic.c:2264 msgid "too many local time types" msgstr "" -#: timezone/zic.c:2281 +#: timezone/zic.c:2268 msgid "UTC offset out of range" msgstr "" -#: timezone/zic.c:2309 +#: timezone/zic.c:2296 msgid "too many leap seconds" msgstr "" -#: timezone/zic.c:2315 +#: timezone/zic.c:2302 msgid "repeated leap second moment" msgstr "" -#: timezone/zic.c:2367 +#: timezone/zic.c:2354 msgid "Wild result from command execution" msgstr "" -#: timezone/zic.c:2368 +#: timezone/zic.c:2355 #, c-format msgid "%s: command was '%s', result was %d\n" msgstr "" -#: timezone/zic.c:2466 +#: timezone/zic.c:2453 msgid "Odd number of quotation marks" msgstr "" -#: timezone/zic.c:2555 +#: timezone/zic.c:2542 msgid "use of 2/29 in non leap-year" msgstr "" -#: timezone/zic.c:2590 +#: timezone/zic.c:2577 msgid "" "rule goes past start/end of month--will not work with pre-2004 versions of " "zic" msgstr "" -#: timezone/zic.c:2622 +#: timezone/zic.c:2609 msgid "time zone abbreviation lacks alphabetic at start" msgstr "" -#: timezone/zic.c:2624 +#: timezone/zic.c:2611 msgid "time zone abbreviation has more than 3 alphabetics" msgstr "" -#: timezone/zic.c:2626 +#: timezone/zic.c:2613 msgid "time zone abbreviation has too many alphabetics" msgstr "" -#: timezone/zic.c:2636 +#: timezone/zic.c:2623 msgid "time zone abbreviation differs from POSIX standard" msgstr "" -#: timezone/zic.c:2648 +#: timezone/zic.c:2635 msgid "too many, or too long, time zone abbreviations" msgstr "" -#: timezone/zic.c:2689 +#: timezone/zic.c:2676 #, c-format msgid "%s: Can't create directory %s: %s\n" msgstr "" -#: timezone/zic.c:2711 +#: timezone/zic.c:2698 #, c-format msgid "%s: %d did not sign extend correctly\n" msgstr "" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: libc-2.7\n" "POT-Creation-Date: 2007-10-15 21:18-0700\n" -"PO-Revision-Date: 2008-10-28 01:02+0200\n" +"PO-Revision-Date: 2009-02-12 05:24+0200\n" "Last-Translator: Gintautas Miliauskas <gintas@akl.lt>\n" "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n" "MIME-Version: 1.0\n" @@ -19,7 +19,7 @@ msgstr "" #: argp/argp-help.c:228 #, c-format msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT parametrui rekia reikšmės" +msgstr "%.*s: ARGP_HELP_FMT parametrui reikia reikšmės" #: argp/argp-help.c:238 #, c-format @@ -70,7 +70,6 @@ msgid "Set the program name" msgstr "Nustatyti programos pavadinimą" #: argp/argp-parse.c:106 -#, fuzzy msgid "Hang for SECS seconds (default 3600)" msgstr "Laukti SEK sekundžių (standartiškai 3600)" @@ -80,7 +79,7 @@ msgstr "Išspausdinti programos versiją" #: argp/argp-parse.c:183 msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAM ERROR) Nežinoma joka versija!?" +msgstr "(PROGRAM ERROR) Nežinoma jokia versija!?" #: argp/argp-parse.c:623 #, c-format @@ -88,9 +87,8 @@ msgid "%s: Too many arguments\n" msgstr "%s: Per daug argumentų\n" #: argp/argp-parse.c:766 -#, fuzzy msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAM ERROR) Nežinoma joka versija!?" +msgstr "(PROGRAM ERROR) Parametras turėjo būti atpažintas!?" #: assert/assert-perr.c:57 #, c-format @@ -190,7 +188,6 @@ msgid "unknown set `%s'" msgstr "nežinomas rinkinys „%s“" #: catgets/gencat.c:563 -#, fuzzy msgid "invalid quote character" msgstr "netaisyklingas kabučių simbolis" @@ -208,12 +205,10 @@ msgid "duplicated message identifier" msgstr "pakartotas pranešimo identifikatorius" #: catgets/gencat.c:731 -#, fuzzy msgid "invalid character: message ignored" msgstr "netaisyklingas simbolis: pranešimas ignoruotas" #: catgets/gencat.c:774 -#, fuzzy msgid "invalid line" msgstr "nekorektiška eilutė" @@ -222,9 +217,9 @@ msgid "malformed line ignored" msgstr "nekorektiška eilutė ignoruota" #: catgets/gencat.c:992 catgets/gencat.c:1033 nss/makedb.c:183 -#, fuzzy, c-format +#, c-format msgid "cannot open output file `%s'" -msgstr "%s: nepavyko atverti laikinojo failo: %s" +msgstr "nepavyko atverti išvedimo failo: „%s“" #: catgets/gencat.c:1195 locale/programs/linereader.c:560 #, fuzzy @@ -263,9 +258,9 @@ msgid "[FILE]" msgstr "[FAILAS]" #: debug/pcprofiledump.c:104 -#, fuzzy, c-format +#, c-format msgid "cannot open input file" -msgstr "%s: nepavyko atverti laikinojo failo: %s" +msgstr "nepavyko atverti įvedimo failo" #: debug/pcprofiledump.c:111 #, c-format @@ -350,9 +345,8 @@ msgid "invalid mode parameter" msgstr "netaisyklinga veiksena" #: elf/cache.c:69 -#, fuzzy msgid "unknown" -msgstr "%s: adresas nežinomas" +msgstr "nežinoma" #: elf/cache.c:112 msgid "Unknown OS" @@ -401,7 +395,7 @@ msgstr "%s pervardinimas į %s nesėkmingas" #: elf/cache.c:440 #, c-format msgid "Renaming of %s to %s failed" -msgstr "%s pervardinimas į %s nesėkmingas" +msgstr "%s pervadinimas į %s nesėkmingas" #: elf/dl-close.c:378 elf/dl-open.c:460 #, fuzzy @@ -573,14 +567,12 @@ msgid "invalid ELF header" msgstr "netaisyklinga ELF antraštė" #: elf/dl-load.c:1697 -#, fuzzy msgid "ELF file data encoding not big-endian" msgstr "ELF failo duomenų koduotė ne big-endian" #: elf/dl-load.c:1699 -#, fuzzy msgid "ELF file data encoding not little-endian" -msgstr "ELF failo duomenų koduotė ne big-endian" +msgstr "ELF failo duomenų koduotė ne little-endian" #: elf/dl-load.c:1703 msgid "ELF file version ident does not match current one" @@ -592,7 +584,7 @@ msgstr "ELF failo OS ABI netaisyklingas" #: elf/dl-load.c:1709 msgid "ELF file ABI version invalid" -msgstr "ELF failo ABI versioja netaisyklinga" +msgstr "ELF failo ABI versija netaisyklinga" #: elf/dl-load.c:1712 msgid "internal error" @@ -619,7 +611,6 @@ msgid "wrong ELF class: ELFCLASS32" msgstr "klaidinga ELF klasė: ELFCLASS32" #: elf/dl-load.c:2244 -#, fuzzy msgid "cannot open shared object file" msgstr "nepavyko atverti bendrojo objekto failo" @@ -640,7 +631,6 @@ msgid "TLS generation counter wrapped! Please report this." msgstr "TLS kartų skaitiklis persivertė! Prašytume apie tai pranešti." #: elf/dl-open.c:549 -#, fuzzy msgid "invalid mode for dlopen()" msgstr "netaisyklinga veiksena dlopen()" @@ -764,9 +754,9 @@ msgid "Configure Dynamic Linker Run Time Bindings." msgstr "" #: elf/ldconfig.c:319 -#, fuzzy, c-format +#, c-format msgid "Path `%s' given more than once" -msgstr "%s: laukas „%s“ apibrėžtas daugiau negu vieną kartą" +msgstr "Kelias „%s“ nurodytas daugiau negu vieną kartą" #: elf/ldconfig.c:359 #, c-format @@ -784,9 +774,9 @@ msgid "Can't stat %s\n" msgstr "Nepavyko susaistyti (link) %s su %s" #: elf/ldconfig.c:468 -#, fuzzy, c-format +#, c-format msgid "%s is not a symbolic link\n" -msgstr "simbolinė nuoroda" +msgstr "%s nėra simbolinė nuoroda\n" #: elf/ldconfig.c:487 #, fuzzy, c-format @@ -817,9 +807,9 @@ msgid "Cannot lstat %s" msgstr "%s: nepavyko perskaityti: %s" #: elf/ldconfig.c:579 -#, fuzzy, c-format +#, c-format msgid "Ignored file %s since it is not a regular file." -msgstr "ne paprastas failas" +msgstr "Failas %s praleistas, nes tai nėra paprastas failas" #: elf/ldconfig.c:588 #, c-format @@ -837,9 +827,9 @@ msgid "Cannot stat %s" msgstr "%s: nepavyko perskaityti: %s" #: elf/ldconfig.c:814 elf/readlib.c:91 -#, fuzzy, c-format +#, c-format msgid "Input file %s not found.\n" -msgstr "Duomenų failas %s nerastas.\n" +msgstr "Įvedimo failas %s nerastas.\n" #: elf/ldconfig.c:888 #, c-format @@ -898,9 +888,9 @@ msgid "memory exhausted" msgstr "baigėsi atmintis" #: elf/ldconfig.c:1178 -#, fuzzy, c-format +#, c-format msgid "%s:%u: cannot read directory %s" -msgstr "nepavyko atverti aplanko %s" +msgstr "%s:%u: nepavyko atverti aplanko %s" #: elf/ldconfig.c:1223 #, c-format @@ -959,9 +949,8 @@ msgid "No such file or directory" msgstr "Toks failas ar aplankas neegzistuoja" #: elf/ldd.bash.in:151 inet/rcmd.c:483 -#, fuzzy msgid "not regular file" -msgstr "paprastas failas" +msgstr "ne paprastas failas" #: elf/ldd.bash.in:154 msgid "warning: you do not have execution permission for" @@ -1558,9 +1547,9 @@ msgstr "%s: klaida būsenų automate" #: locale/programs/ld-numeric.c:384 locale/programs/ld-paper.c:257 #: locale/programs/ld-telephone.c:329 locale/programs/ld-time.c:1237 #: locale/programs/locfile.c:826 locale/programs/repertoire.c:324 -#, fuzzy, c-format +#, c-format msgid "%s: premature end of file" -msgstr "%s: failo pabaiga" +msgstr "%s: ankstyva failo pabaiga" #: locale/programs/charmap.c:869 locale/programs/charmap.c:880 #, c-format @@ -5839,7 +5828,7 @@ msgstr "Kanalo numeris už ribų" #: sysdeps/gnu/errlist.c:1117 msgid "Level 2 not synchronized" -msgstr "2 lygmuo nesinchonizuotas" +msgstr "2 lygmuo nesinchronizuotas" #: sysdeps/gnu/errlist.c:1125 msgid "Level 3 halted" @@ -1,150 +1,155 @@ -# GNU libc +# Translation of libc messages to Russian # Copyright (C) 2005 Free Software Foundation, Inc. +# This file is distributed under the same license as the glibc package. +# # Oleg Tihonov <ost@tatnipi.ru>, 2005, 2007. +# Dimitriy Ryazantcev <DJm00n@mail.ru>, 2009. +# Pavel Maryanov <acid_jack@ukr.net>, 2009. # msgid "" msgstr "" -"Project-Id-Version: libc 2.5\n" -"POT-Creation-Date: 2006-09-29 11:38-0700\n" -"PO-Revision-Date: 2007-02-13 13:52+0300\n" -"Last-Translator: Oleg Tihonov <ost@tatnipi.ru>\n" -"Language-Team: Russian <ru@li.org>\n" +"Project-Id-Version: libc 2.7\n" +"POT-Creation-Date: 2007-10-15 21:18-0700\n" +"PO-Revision-Date: 2009-02-04 21:52+0200\n" +"Last-Translator: Pavel Maryanov <acid_jack@ukr.net>\n" +"Language-Team: Russian <gnu@mx.ru>\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=koi8-r\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: argp/argp-help.c:227 +#: argp/argp-help.c:228 #, c-format msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT " +msgstr "%.*s: параметр ARGP_HELP_FMT требует значение" -#: argp/argp-help.c:237 +#: argp/argp-help.c:238 #, c-format msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: ARGP_HELP_FMT" +msgstr "%.*s: неизвестный параметр ARGP_HELP_FMT" -#: argp/argp-help.c:250 +#: argp/argp-help.c:251 #, c-format msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr " ARGP_HELP_FMT: %s" +msgstr "Мусор в ARGP_HELP_FMT: %s" -#: argp/argp-help.c:1214 +#: argp/argp-help.c:1215 msgid "Mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options." -msgstr " ." +msgstr "Обязательные или необязательные аргументы для длинных ключей также являются обязательными или необязательными для соответствующих коротких ключей." -#: argp/argp-help.c:1600 +#: argp/argp-help.c:1601 msgid "Usage:" -msgstr ":" +msgstr "Использование:" -#: argp/argp-help.c:1604 +#: argp/argp-help.c:1605 msgid " or: " -msgstr " : " +msgstr " или: " -#: argp/argp-help.c:1616 +#: argp/argp-help.c:1617 msgid " [OPTION...]" -msgstr " [...]" +msgstr " [КЛЮЧ...]" -#: argp/argp-help.c:1643 +#: argp/argp-help.c:1644 #, c-format msgid "Try `%s --help' or `%s --usage' for more information.\n" -msgstr " `%s --help' `%s --usage' .\n" +msgstr "Попробуйте «%s --help» или «%s --usage» для получения более подробного описания.\n" -#: argp/argp-help.c:1671 +#: argp/argp-help.c:1672 #, c-format msgid "Report bugs to %s.\n" -msgstr " %s.\n" +msgstr "Сообщения об ошибках отправляйте по адресу %s.\n" #: argp/argp-parse.c:102 msgid "Give this help list" -msgstr " " +msgstr "Выдает этот справочный список" #: argp/argp-parse.c:103 msgid "Give a short usage message" -msgstr " " +msgstr "Выдает краткую информацию об использовании" #: argp/argp-parse.c:104 msgid "Set the program name" -msgstr " " +msgstr "Устанавливает имя программы" #: argp/argp-parse.c:106 msgid "Hang for SECS seconds (default 3600)" -msgstr " ( 3600)" +msgstr "Висит указанное число секунд (по умолчанию 3600)" #: argp/argp-parse.c:167 msgid "Print program version" -msgstr " " +msgstr "Печатает версию программы" #: argp/argp-parse.c:183 msgid "(PROGRAM ERROR) No version known!?" -msgstr "( ) !?" +msgstr "(ОШИБКА ПРОГРАММЫ) Версия неизвестна!?" #: argp/argp-parse.c:623 #, c-format msgid "%s: Too many arguments\n" -msgstr "%s: \n" +msgstr "%s: Слишком много аргументов\n" #: argp/argp-parse.c:766 msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "( ) !?" +msgstr "(ОШИБКА ПРОГРАММЫ) Ключ должен быть распознан!?" #: assert/assert-perr.c:57 #, c-format msgid "%s%s%s:%u: %s%sUnexpected error: %s.\n" -msgstr "%s%s%s:%u: %s%s : %s.\n" +msgstr "%s%s%s:%u: %s%sНеожиданная ошибка: %s.\n" #: assert/assert.c:57 #, c-format msgid "%s%s%s:%u: %s%sAssertion `%s' failed.\n" -msgstr "%s%s%s:%u: %s%s `%s' .\n" +msgstr "%s%s%s:%u: %s%sПроверочное утверждение «%s» не выполнено.\n" -#: catgets/gencat.c:109 catgets/gencat.c:113 nscd/nscd.c:96 nss/makedb.c:61 +#: catgets/gencat.c:110 catgets/gencat.c:114 nscd/nscd.c:97 nss/makedb.c:61 msgid "NAME" -msgstr "" +msgstr "ФАЙЛ" -#: catgets/gencat.c:110 +#: catgets/gencat.c:111 msgid "Create C header file NAME containing symbol definitions" -msgstr " , ." +msgstr "Создает заголовочный ФАЙЛ на Си, содержащий определения символов." -#: catgets/gencat.c:112 +#: catgets/gencat.c:113 msgid "Do not use existing catalog, force new output file" -msgstr " , " +msgstr "Не использовать существующий каталог, принудительно создать новый выходной файл" -#: catgets/gencat.c:113 nss/makedb.c:61 +#: catgets/gencat.c:114 nss/makedb.c:61 msgid "Write output to file NAME" -msgstr " " +msgstr "Записать вывод в ФАЙЛ" -#: catgets/gencat.c:118 +#: catgets/gencat.c:119 msgid "" -"Generate message catalog.If INPUT-FILE is -, input is read from standard input. If OUTPUT-FILE\n" +"Generate message catalog.\vIf INPUT-FILE is -, input is read from standard input. If OUTPUT-FILE\n" "is -, output is written to standard output.\n" msgstr "" -" . - -, . \n" -"- -, .\n" +"Генерирует каталог сообщений.\vЕсли ВХОДНОЙ-ФАЙЛ задан как -, читает стандартный ввод. Если\n" +"ВЫХОДНОЙ-ФАЙЛ задан как -, результат печатается на стандартный вывод.\n" -#: catgets/gencat.c:123 +#: catgets/gencat.c:124 msgid "" "-o OUTPUT-FILE [INPUT-FILE]...\n" "[OUTPUT-FILE [INPUT-FILE]...]" msgstr "" -"-o - [-]...\n" -"[- [-]...]" +"-o ВЫХОДНОЙ-ФАЙЛ [ВХОДНОЙ-ФАЙЛ]...\n" +"[ВЫХОДНОЙ-ФАЙЛ [ВХОДНОЙ-ФАЙЛ]...]" -#: catgets/gencat.c:231 debug/pcprofiledump.c:199 iconv/iconv_prog.c:410 -#: iconv/iconvconfig.c:379 locale/programs/localedef.c:370 -#: login/programs/pt_chown.c:88 malloc/memusagestat.c:525 nss/makedb.c:231 +#: catgets/gencat.c:232 debug/pcprofiledump.c:204 iconv/iconv_prog.c:411 +#: iconv/iconvconfig.c:380 locale/programs/localedef.c:371 +#: login/programs/pt_chown.c:88 malloc/memusagestat.c:526 nss/makedb.c:231 msgid "" "For bug reporting instructions, please see:\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" msgstr "" -" \n" +"Инструкции по сообщению об ошибках смотрите на\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" -#: catgets/gencat.c:245 debug/xtrace.sh:64 elf/ldconfig.c:285 -#: elf/ldd.bash.in:39 elf/sprof.c:355 iconv/iconv_prog.c:425 -#: iconv/iconvconfig.c:394 locale/programs/locale.c:274 -#: locale/programs/localedef.c:386 login/programs/pt_chown.c:59 -#: malloc/memusage.sh:71 nscd/nscd.c:401 nss/getent.c:83 nss/makedb.c:245 -#: posix/getconf.c:1007 +#: catgets/gencat.c:246 debug/xtrace.sh:64 elf/ldconfig.c:296 +#: elf/ldd.bash.in:39 elf/sprof.c:355 iconv/iconv_prog.c:426 +#: iconv/iconvconfig.c:395 locale/programs/locale.c:275 +#: locale/programs/localedef.c:387 login/programs/pt_chown.c:59 +#: malloc/memusage.sh:71 nscd/nscd.c:406 nss/getent.c:83 nss/makedb.c:245 +#: posix/getconf.c:1012 #, c-format msgid "" "Copyright (C) %s Free Software Foundation, Inc.\n" @@ -152,140 +157,142 @@ msgid "" "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" msgstr "" "Copyright (C) %s Free Software Foundation, Inc.\n" -" ; \n" -" . ; \n" -" - .\n" +"Это свободная программа; подробности об условиях распространения\n" +"смотрите в исходном тексте. Мы НЕ предоставляем гарантий; даже гарантий\n" +"КОММЕРЧЕСКОЙ ПРИГОДНОСТИ или ПРИГОДНОСТИ ДЛЯ КАКОЙ-ЛИБО ЦЕЛИ.\n" -#: catgets/gencat.c:250 debug/xtrace.sh:68 elf/ldconfig.c:290 elf/sprof.c:361 -#: iconv/iconv_prog.c:430 iconv/iconvconfig.c:399 locale/programs/locale.c:279 -#: locale/programs/localedef.c:391 malloc/memusage.sh:75 nscd/nscd.c:406 -#: nss/getent.c:88 nss/makedb.c:250 posix/getconf.c:1012 +#: catgets/gencat.c:251 debug/xtrace.sh:68 elf/ldconfig.c:301 elf/sprof.c:361 +#: iconv/iconv_prog.c:431 iconv/iconvconfig.c:400 locale/programs/locale.c:280 +#: locale/programs/localedef.c:392 malloc/memusage.sh:75 nscd/nscd.c:411 +#: nss/getent.c:88 nss/makedb.c:250 posix/getconf.c:1017 #, c-format msgid "Written by %s.\n" -msgstr " -- %s.\n" +msgstr "Автор программы -- %s.\n" -#: catgets/gencat.c:281 +#: catgets/gencat.c:282 msgid "*standard input*" -msgstr "* *" +msgstr "*стандартный ввод*" -#: catgets/gencat.c:287 iconv/iconv_charmap.c:157 iconv/iconv_prog.c:297 +#: catgets/gencat.c:288 iconv/iconv_charmap.c:158 iconv/iconv_prog.c:298 #: nss/makedb.c:170 #, c-format msgid "cannot open input file `%s'" -msgstr " `%s'" +msgstr "невозможно открыть входной файл «%s»" -#: catgets/gencat.c:416 catgets/gencat.c:493 +#: catgets/gencat.c:417 catgets/gencat.c:494 msgid "illegal set number" -msgstr " " +msgstr "неверный номер множества" -#: catgets/gencat.c:443 +#: catgets/gencat.c:444 msgid "duplicate set definition" -msgstr " " +msgstr "повторное определение множества" -#: catgets/gencat.c:445 catgets/gencat.c:622 catgets/gencat.c:676 +#: catgets/gencat.c:446 catgets/gencat.c:623 catgets/gencat.c:677 msgid "this is the first definition" -msgstr " " +msgstr "это первое определение" -#: catgets/gencat.c:521 +#: catgets/gencat.c:522 #, c-format msgid "unknown set `%s'" -msgstr " `%s'" +msgstr "неизвестное множество «%s»" -#: catgets/gencat.c:562 +#: catgets/gencat.c:563 msgid "invalid quote character" -msgstr " " +msgstr "неверный экранирующий знак" -#: catgets/gencat.c:575 +#: catgets/gencat.c:576 #, c-format msgid "unknown directive `%s': line ignored" -msgstr " `%s': " +msgstr "неизвестная директива «%s»: строка игнорирована" -#: catgets/gencat.c:620 +#: catgets/gencat.c:621 msgid "duplicated message number" -msgstr " " +msgstr "повторный номер сообщения" -#: catgets/gencat.c:673 +#: catgets/gencat.c:674 msgid "duplicated message identifier" -msgstr " " +msgstr "повторный идентификатор сообщения" -#: catgets/gencat.c:730 +#: catgets/gencat.c:731 msgid "invalid character: message ignored" -msgstr " : " +msgstr "недопустимый знак: сообщение игнорировано" -#: catgets/gencat.c:773 +#: catgets/gencat.c:774 msgid "invalid line" -msgstr " " +msgstr "неверная строка" -#: catgets/gencat.c:827 +#: catgets/gencat.c:828 msgid "malformed line ignored" -msgstr " " +msgstr "неправильная строка игнорирована" -#: catgets/gencat.c:991 catgets/gencat.c:1032 nss/makedb.c:183 +#: catgets/gencat.c:992 catgets/gencat.c:1033 nss/makedb.c:183 #, c-format msgid "cannot open output file `%s'" -msgstr " `%s'" +msgstr "невозможно открыть выходной файл «%s»" -#: catgets/gencat.c:1194 locale/programs/linereader.c:559 +#: catgets/gencat.c:1195 locale/programs/linereader.c:560 msgid "invalid escape sequence" -msgstr " " +msgstr "неверная управляющая последовательность" -#: catgets/gencat.c:1216 +#: catgets/gencat.c:1217 msgid "unterminated message" -msgstr " " +msgstr "незавершенное сообщение" -#: catgets/gencat.c:1240 +#: catgets/gencat.c:1241 #, c-format msgid "while opening old catalog file" -msgstr " " +msgstr "при открытии старого файла каталога" -#: catgets/gencat.c:1331 +#: catgets/gencat.c:1332 #, c-format msgid "conversion modules not available" -msgstr " " +msgstr "модули преобразования недоступны" -#: catgets/gencat.c:1357 +#: catgets/gencat.c:1358 #, c-format msgid "cannot determine escape character" -msgstr " " +msgstr "невозможно определить знак выхода" -#: debug/pcprofiledump.c:52 +#: debug/pcprofiledump.c:53 msgid "Don't buffer output" -msgstr " " +msgstr "Не буферировать вывод" -#: debug/pcprofiledump.c:57 +#: debug/pcprofiledump.c:58 msgid "Dump information generated by PC profiling." -msgstr " , PC." +msgstr "Сбрасывает информацию, собранную при профилировании PC." -#: debug/pcprofiledump.c:60 +#: debug/pcprofiledump.c:61 msgid "[FILE]" -msgstr "[]" +msgstr "[ФАЙЛ]" -#: debug/pcprofiledump.c:100 +#: debug/pcprofiledump.c:104 #, c-format msgid "cannot open input file" -msgstr " " +msgstr "невозможно открыть входной файл" -#: debug/pcprofiledump.c:106 +#: debug/pcprofiledump.c:111 #, c-format msgid "cannot read header" -msgstr " " +msgstr "невозможно считать заголовок" -#: debug/pcprofiledump.c:170 +#: debug/pcprofiledump.c:175 #, c-format msgid "invalid pointer size" -msgstr " " +msgstr "неверный размер указателя" #: debug/xtrace.sh:27 debug/xtrace.sh:45 msgid "Usage: xtrace [OPTION]... PROGRAM [PROGRAMOPTION]...\\n" -msgstr ": xtrace []... [-]...\\n" +msgstr "Использование: xtrace [КЛЮЧ]... ПРОГРАММА [КЛЮЧ-ПРОГРАММЫ]...\\n" #: debug/xtrace.sh:33 -msgid "Try `xtrace --help' for more information.\\n" -msgstr " `xtrace --help' .\\n" +#, fuzzy +msgid "Try \\`xtrace --help' for more information.\\n" +msgstr "Попробуйте «xtrace --help» для получения более подробного описания.\\n" #: debug/xtrace.sh:39 -msgid "xtrace: option `$1' requires an argument.\\n" -msgstr "xtrace: `%1' .\\n" +#, fuzzy +msgid "xtrace: option \\`$1' requires an argument.\\n" +msgstr "xtrace: ключ «%1» требует аргумент.\\n" #: debug/xtrace.sh:46 msgid "" @@ -303,623 +310,609 @@ msgid "" "For bug reporting instructions, please see:\n" "<http://www.gnu.org/software/libc/bugs.html>.\\n" msgstr "" -" , .\n" +"Трассирует выполнение программы, печатая выполняющуюся в данное время функцию.\n" "\n" -" --data= , .\n" +" --data=ФАЙЛ Не выполнять программу, просто напечатать данные из ФАЙЛА.\n" " \n" -" -?,--help \n" -" --usage \n" -" -V,--version \n" +" -?,--help Показать эту справку и выйти\n" +" --usage Показать краткое сообщение об использовании\n" +" -V,--version Показать информацию о версии и выйти\n" "\n" -", , \n" -" .\n" +"Аргументы, обязательные для длинных ключей, обязательны и для\n" +"соответствующих коротких.\n" "\n" -" \n" +"Инструкции по сообщению об ошибках смотрите на\n" "<http://www.gnu.org/software/libc/bugs.html>.\\n" #: debug/xtrace.sh:125 -msgid "xtrace: unrecognized option `$1'\\n" -msgstr "xtrace: `$1'\\n" +#, fuzzy +msgid "xtrace: unrecognized option \\`$1'\\n" +msgstr "xtrace: нераспознанный ключ «$1»\\n" #: debug/xtrace.sh:138 msgid "No program name given\\n" -msgstr " \\n" +msgstr "Не задано имя программы\\n" #: debug/xtrace.sh:146 -#, sh-format -msgid "executable `$program' not found\\n" -msgstr " `$program' \\n" +#, fuzzy, sh-format +msgid "executable \\`$program' not found\\n" +msgstr "исполняемый файл «$program» не найден\\n" #: debug/xtrace.sh:150 -#, sh-format -msgid "`$program' is no executable\\n" -msgstr "`$program' \\n" +#, fuzzy, sh-format +msgid "\\`$program' is no executable\\n" +msgstr "«$program» не является исполняемым файлом\\n" -#: dlfcn/dlinfo.c:67 +#: dlfcn/dlinfo.c:64 msgid "RTLD_SELF used in code not dynamically loaded" -msgstr "RTLD_SELF " +msgstr "RTLD_SELF использовано в не динамически загруженном коде" -#: dlfcn/dlinfo.c:76 +#: dlfcn/dlinfo.c:73 msgid "unsupported dlinfo request" -msgstr " dlinfo" +msgstr "неподдерживаемый запрос dlinfo" #: dlfcn/dlmopen.c:64 msgid "invalid namespace" -msgstr " " +msgstr "неверное пространство имен" #: dlfcn/dlmopen.c:69 msgid "invalid mode" -msgstr " " +msgstr "неверный режим" #: dlfcn/dlopen.c:64 msgid "invalid mode parameter" -msgstr " " +msgstr "неверный параметр режима" -#: elf/cache.c:67 +#: elf/cache.c:69 msgid "unknown" -msgstr "" +msgstr "неизвестно" -#: elf/cache.c:110 +#: elf/cache.c:112 msgid "Unknown OS" -msgstr " " +msgstr "Неизвестная ОС" -#: elf/cache.c:115 +#: elf/cache.c:117 #, c-format msgid ", OS ABI: %s %d.%d.%d" -msgstr ", ABI : %s %d.%d.%d" +msgstr ", ABI ОС: %s %d.%d.%d" -#: elf/cache.c:141 elf/ldconfig.c:1231 +#: elf/cache.c:134 elf/ldconfig.c:1270 #, c-format msgid "Can't open cache file %s\n" -msgstr " - %s\n" +msgstr "Невозможно открыть кэш-файл %s\n" -#: elf/cache.c:153 +#: elf/cache.c:148 #, c-format msgid "mmap of cache file failed.\n" -msgstr " - .\n" +msgstr "отображение кэш-файла в память не удалось.\n" -#: elf/cache.c:157 elf/cache.c:167 +#: elf/cache.c:152 elf/cache.c:166 #, c-format msgid "File is not a cache file.\n" -msgstr " -.\n" +msgstr "Это не кэш-файл.\n" -#: elf/cache.c:200 elf/cache.c:210 +#: elf/cache.c:199 elf/cache.c:209 #, c-format msgid "%d libs found in cache `%s'\n" -msgstr "%d `%s'\n" - -#: elf/cache.c:409 -#, c-format -msgid "Can't remove old temporary cache file %s" -msgstr " - %s" +msgstr "%d библиотек найдено в кэше «%s»\n" -#: elf/cache.c:416 +#: elf/cache.c:403 #, c-format msgid "Can't create temporary cache file %s" -msgstr " - %s" +msgstr "Невозможно создать временный кэш-файл %s" -#: elf/cache.c:424 elf/cache.c:434 elf/cache.c:438 +#: elf/cache.c:411 elf/cache.c:421 elf/cache.c:425 elf/cache.c:430 #, c-format msgid "Writing of cache data failed" -msgstr " " - -#: elf/cache.c:442 -#, c-format -msgid "Writing of cache data failed." -msgstr " ." +msgstr "Запись данных кэша неуспешна" -#: elf/cache.c:449 +#: elf/cache.c:435 #, c-format msgid "Changing access rights of %s to %#o failed" -msgstr " %s %#o " +msgstr "Изменение прав доступа для %s на %#o неуспешно" -#: elf/cache.c:454 +#: elf/cache.c:440 #, c-format msgid "Renaming of %s to %s failed" -msgstr " %s %s " +msgstr "Переименование %s в %s неуспешно" + +#: elf/dl-close.c:378 elf/dl-open.c:460 +msgid "cannot create scope list" +msgstr "невозможно создать список областей" -#: elf/dl-close.c:116 +#: elf/dl-close.c:724 msgid "shared object not open" -msgstr " " +msgstr "разделяемый объект не открыт" -#: elf/dl-deps.c:112 +#: elf/dl-deps.c:114 msgid "DST not allowed in SUID/SGID programs" -msgstr "DST SUID/SGID" +msgstr "DST не допускается в программах с SUID/SGID" -#: elf/dl-deps.c:125 -msgid "empty dynamics string token substitution" -msgstr "" +#: elf/dl-deps.c:127 elf/dl-open.c:282 +msgid "empty dynamic string token substitution" +msgstr "пустое вхождение динамического строкового токена" -#: elf/dl-deps.c:131 +#: elf/dl-deps.c:133 #, c-format msgid "cannot load auxiliary `%s' because of empty dynamic string token substitution\n" -msgstr "" +msgstr "невозможно загрузить вспомогательное «%s» из-за вхождения пустого динамического строкового токена\n" -#: elf/dl-deps.c:472 +#: elf/dl-deps.c:474 msgid "cannot allocate dependency list" -msgstr " " +msgstr "невозможно выделить память под список зависимостей" -#: elf/dl-deps.c:505 elf/dl-deps.c:560 +#: elf/dl-deps.c:510 elf/dl-deps.c:565 msgid "cannot allocate symbol search list" -msgstr " " +msgstr "невозможно выделить память под список поиска символов" -#: elf/dl-deps.c:545 +#: elf/dl-deps.c:550 msgid "Filters not supported with LD_TRACE_PRELINKING" -msgstr " LD_TRACE_PRELINKING" +msgstr "Фильтры не поддерживаются с LD_TRACE_PRELINKING" #: elf/dl-error.c:77 msgid "DYNAMIC LINKER BUG!!!" -msgstr " !!!" +msgstr "ОШИБКА ДИНАМИЧЕСКОГО КОМПОНОВЩИКА!!!" #: elf/dl-error.c:124 msgid "error while loading shared libraries" -msgstr " " +msgstr "ошибка при загрузке разделяемых библиотек" #: elf/dl-fptr.c:88 msgid "cannot map pages for fdesc table" -msgstr " fdesc" +msgstr "невозможно отобразить страницы для таблицы fdesc" #: elf/dl-fptr.c:192 msgid "cannot map pages for fptr table" -msgstr " fptr" +msgstr "невозможно отобразить страницы для таблицы fptr" #: elf/dl-fptr.c:221 msgid "internal error: symidx out of range of fptr table" -msgstr " : symidx fptr" +msgstr "внутренняя ошибка: symidx выходит за пределы таблицы fptr" #: elf/dl-load.c:372 msgid "cannot allocate name record" -msgstr " " +msgstr "невозможно выделить память под запись имени" -#: elf/dl-load.c:474 elf/dl-load.c:553 elf/dl-load.c:673 elf/dl-load.c:786 +#: elf/dl-load.c:474 elf/dl-load.c:582 elf/dl-load.c:667 elf/dl-load.c:780 msgid "cannot create cache for search path" -msgstr " " +msgstr "невозможно создать кэш для путей поиска" -#: elf/dl-load.c:576 +#: elf/dl-load.c:565 msgid "cannot create RUNPATH/RPATH copy" -msgstr " RUNPATH/RPATH" +msgstr "невозможно создать копию RUNPATH/RPATH" -#: elf/dl-load.c:659 +#: elf/dl-load.c:653 msgid "cannot create search path array" -msgstr " " +msgstr "невозможно создать массив путей поиска" -#: elf/dl-load.c:870 +#: elf/dl-load.c:864 msgid "cannot stat shared object" -msgstr " stat " +msgstr "невозможно выполнить stat для разделяемого объекта" -#: elf/dl-load.c:940 +#: elf/dl-load.c:934 msgid "cannot open zero fill device" -msgstr " - " +msgstr "невозможно открыть файл-источник нулей" -#: elf/dl-load.c:985 elf/dl-load.c:2215 +#: elf/dl-load.c:979 elf/dl-load.c:2224 msgid "cannot create shared object descriptor" -msgstr " " +msgstr "невозможно создать дескриптор разделяемого объекта" -#: elf/dl-load.c:1004 elf/dl-load.c:1663 elf/dl-load.c:1755 +#: elf/dl-load.c:998 elf/dl-load.c:1656 elf/dl-load.c:1748 msgid "cannot read file data" -msgstr " " +msgstr "невозможно прочитать данные файла" -#: elf/dl-load.c:1048 +#: elf/dl-load.c:1042 msgid "ELF load command alignment not page-aligned" -msgstr " ELF " +msgstr "выравнивание команды загрузки ELF не выровнено по странице" -#: elf/dl-load.c:1055 +#: elf/dl-load.c:1049 msgid "ELF load command address/offset not properly aligned" -msgstr "/ ELF " +msgstr "адрес/смещение команды загрузки ELF не выровнено правильно" -#: elf/dl-load.c:1139 +#: elf/dl-load.c:1132 msgid "cannot allocate TLS data structures for initial thread" -msgstr " TLS- " +msgstr "невозможно выделить память под TLS-структуры для начального треда" -#: elf/dl-load.c:1163 +#: elf/dl-load.c:1155 msgid "cannot handle TLS data" -msgstr " TLS" +msgstr "невозможно обработать данные TLS" -#: elf/dl-load.c:1182 +#: elf/dl-load.c:1174 msgid "object file has no loadable segments" -msgstr " " +msgstr "в объектном файле нет загружаемых сегментов" -#: elf/dl-load.c:1218 +#: elf/dl-load.c:1210 msgid "failed to map segment from shared object" -msgstr " " +msgstr "сбой отображения сегмента из разделяемого объекта" -#: elf/dl-load.c:1242 +#: elf/dl-load.c:1236 msgid "cannot dynamically load executable" -msgstr " " +msgstr "невозможно динамически загрузить исполняемый файл" -#: elf/dl-load.c:1303 +#: elf/dl-load.c:1298 msgid "cannot change memory protections" -msgstr " " +msgstr "невозможно изменить защиту памяти" -#: elf/dl-load.c:1322 +#: elf/dl-load.c:1317 msgid "cannot map zero-fill pages" -msgstr " " +msgstr "невозможно отобразить страницы заполнения нулями" -#: elf/dl-load.c:1336 +#: elf/dl-load.c:1331 msgid "object file has no dynamic section" -msgstr " " +msgstr "в объектном файле нет динамической секции" -#: elf/dl-load.c:1359 +#: elf/dl-load.c:1354 msgid "shared object cannot be dlopen()ed" -msgstr " dlopen() " +msgstr "невозможно применить dlopen() к разделяемому объекту" -#: elf/dl-load.c:1372 +#: elf/dl-load.c:1367 msgid "cannot allocate memory for program header" -msgstr " " +msgstr "невозможно выделить память под заголовок программы" -#: elf/dl-load.c:1389 elf/dl-open.c:174 +#: elf/dl-load.c:1384 elf/dl-open.c:218 msgid "invalid caller" -msgstr " " +msgstr "неверная вызывающая функция" -#: elf/dl-load.c:1428 +#: elf/dl-load.c:1423 msgid "cannot enable executable stack as shared object requires" -msgstr " , " +msgstr "невозможно задействовать исполняемый стек, как требует разделяемый объект" -#: elf/dl-load.c:1443 +#: elf/dl-load.c:1436 msgid "cannot close file descriptor" -msgstr " " +msgstr "невозможно закрыть дескриптор файла" -#: elf/dl-load.c:1485 +#: elf/dl-load.c:1478 msgid "cannot create searchlist" -msgstr " " +msgstr "невозможно создать список поиска" -#: elf/dl-load.c:1663 +#: elf/dl-load.c:1656 msgid "file too short" -msgstr " " +msgstr "файл слишком мал" -#: elf/dl-load.c:1692 +#: elf/dl-load.c:1685 msgid "invalid ELF header" -msgstr " ELF" +msgstr "неверный заголовок ELF" -#: elf/dl-load.c:1704 +#: elf/dl-load.c:1697 msgid "ELF file data encoding not big-endian" -msgstr " ELF- " +msgstr "кодировка данных в ELF-файле не тупоконечная" -#: elf/dl-load.c:1706 +#: elf/dl-load.c:1699 msgid "ELF file data encoding not little-endian" -msgstr " ELF- " +msgstr "кодировка данных в ELF-файле не остроконечная" -#: elf/dl-load.c:1710 +#: elf/dl-load.c:1703 msgid "ELF file version ident does not match current one" -msgstr " ELF- " +msgstr "идентификатор версии ELF-файла не соответствует текущей версии" -#: elf/dl-load.c:1714 +#: elf/dl-load.c:1707 msgid "ELF file OS ABI invalid" -msgstr " ABI ELF-" +msgstr "неверный ABI ОС ELF-файла" -#: elf/dl-load.c:1716 +#: elf/dl-load.c:1709 msgid "ELF file ABI version invalid" -msgstr " ABI ELF-" +msgstr "неверная версия ABI ELF-файла" -#: elf/dl-load.c:1719 +#: elf/dl-load.c:1712 msgid "internal error" -msgstr " " +msgstr "внутренняя ошибка" -#: elf/dl-load.c:1726 +#: elf/dl-load.c:1719 msgid "ELF file version does not match current one" -msgstr " ELF- " +msgstr "версия ELF-файла не соответствует текущей версии" -#: elf/dl-load.c:1734 +#: elf/dl-load.c:1727 msgid "only ET_DYN and ET_EXEC can be loaded" -msgstr " ET_DYN ET_EXEC" +msgstr "можно загрузить только ET_DYN и ET_EXEC" # ??? -#: elf/dl-load.c:1740 +#: elf/dl-load.c:1733 msgid "ELF file's phentsize not the expected size" -msgstr "phentsize ELF- " +msgstr "phentsize ELF-файла не совпадает с ожидаемым размером" -#: elf/dl-load.c:2231 +#: elf/dl-load.c:2240 msgid "wrong ELF class: ELFCLASS64" -msgstr " ELF: ELFCLASS64" +msgstr "неправильный класс ELF: ELFCLASS64" -#: elf/dl-load.c:2232 +#: elf/dl-load.c:2241 msgid "wrong ELF class: ELFCLASS32" -msgstr " ELF: ELFCLASS32" +msgstr "неправильный класс ELF: ELFCLASS32" -#: elf/dl-load.c:2235 +#: elf/dl-load.c:2244 msgid "cannot open shared object file" -msgstr " " +msgstr "невозможно открыть разделяемый объектный файл" -#: elf/dl-lookup.c:261 +#: elf/dl-lookup.c:356 msgid "relocation error" -msgstr " " +msgstr "ошибка перемещения" -#: elf/dl-lookup.c:289 +#: elf/dl-lookup.c:384 msgid "symbol lookup error" -msgstr " " +msgstr "ошибка поиска символа" -#: elf/dl-open.c:112 +#: elf/dl-open.c:114 msgid "cannot extend global scope" -msgstr " " +msgstr "невозможно расширить глобальную область" -#: elf/dl-open.c:237 -msgid "empty dynamic string token substitution" -msgstr "" - -#: elf/dl-open.c:406 elf/dl-open.c:417 elf/dl-open.c:425 -msgid "cannot create scope list" -msgstr " " - -#: elf/dl-open.c:470 +#: elf/dl-open.c:512 msgid "TLS generation counter wrapped! Please report this." -msgstr " TLS! , ." +msgstr "Переполнение счетчика поколений TLS! Пожалуйста, сообщите об этом." -#: elf/dl-open.c:508 +#: elf/dl-open.c:549 msgid "invalid mode for dlopen()" -msgstr " dlopen()" +msgstr "неверный режим для dlopen()" -#: elf/dl-open.c:525 +#: elf/dl-open.c:566 msgid "no more namespaces available for dlmopen()" -msgstr " dlmopen()" +msgstr "больше нет доступных пространств имен для dlmopen()" -#: elf/dl-open.c:538 +#: elf/dl-open.c:579 msgid "invalid target namespace in dlmopen()" -msgstr " dlmopen()" +msgstr "неверное целевое пространство имен в dlmopen()" -#: elf/dl-reloc.c:55 +#: elf/dl-reloc.c:54 msgid "cannot allocate memory in static TLS block" -msgstr " TLS" +msgstr "невозможно выделить память в статичном блоке TLS" -#: elf/dl-reloc.c:198 +#: elf/dl-reloc.c:196 msgid "cannot make segment writable for relocation" -msgstr " " +msgstr "невозможно сделать сегмент записываемым для перемещения" -#: elf/dl-reloc.c:279 +#: elf/dl-reloc.c:277 #, c-format msgid "%s: no PLTREL found in object %s\n" -msgstr "%s: %s PLTREL\n" +msgstr "%s: в объекте %s не найдено PLTREL\n" -#: elf/dl-reloc.c:290 +#: elf/dl-reloc.c:288 #, c-format msgid "%s: out of memory to store relocation results for %s\n" -msgstr "%s: %s\n" +msgstr "%s: недостаточно памяти для записи результатов релокации для %s\n" -#: elf/dl-reloc.c:306 +#: elf/dl-reloc.c:304 msgid "cannot restore segment prot after reloc" -msgstr " " +msgstr "невозможно восстановить защиту сегмента после перемещения" -#: elf/dl-reloc.c:331 +#: elf/dl-reloc.c:329 msgid "cannot apply additional memory protection after relocation" -msgstr " " +msgstr "невозможно применить дополнительную защиту памяти после релокации" -#: elf/dl-sym.c:98 +#: elf/dl-sym.c:162 msgid "RTLD_NEXT used in code not dynamically loaded" -msgstr "RTLD_NEXT " +msgstr "RTLD_NEXT использовано в не динамически загруженном коде" -#: elf/dl-sysdep.c:495 +#: elf/dl-sysdep.c:469 elf/dl-sysdep.c:481 msgid "cannot create capability list" -msgstr " " +msgstr "невозможно создать список возможностей" -#: elf/dl-tls.c:829 +#: elf/dl-tls.c:825 msgid "cannot create TLS data structures" -msgstr " TLS" +msgstr "невозможно создать структуры данных TLS" #: elf/dl-version.c:303 msgid "cannot allocate version reference table" -msgstr " " +msgstr "невозможно выделить память под таблицу ссылок на версии" -#: elf/ldconfig.c:133 +#: elf/ldconfig.c:138 msgid "Print cache" -msgstr " " +msgstr "Напечатать кэш" -#: elf/ldconfig.c:134 +#: elf/ldconfig.c:139 msgid "Generate verbose messages" -msgstr " " +msgstr "Генерировать подробные сообщения" -#: elf/ldconfig.c:135 +#: elf/ldconfig.c:140 msgid "Don't build cache" -msgstr " " +msgstr "Не строить кэш" -#: elf/ldconfig.c:136 +#: elf/ldconfig.c:141 msgid "Don't generate links" -msgstr " " +msgstr "Не генерировать ссылки" -#: elf/ldconfig.c:137 +#: elf/ldconfig.c:142 msgid "Change to and use ROOT as root directory" -msgstr " ROOT " +msgstr "Перейти в КОРЕНЬ и использовать его как корневой каталог" -#: elf/ldconfig.c:137 +#: elf/ldconfig.c:142 msgid "ROOT" -msgstr "" +msgstr "КОРЕНЬ" -#: elf/ldconfig.c:138 +#: elf/ldconfig.c:143 msgid "CACHE" -msgstr "" +msgstr "КЭШ" -#: elf/ldconfig.c:138 +#: elf/ldconfig.c:143 msgid "Use CACHE as cache file" -msgstr " CACHE -" +msgstr "Использовать КЭШ в качестве кэш-файла" -#: elf/ldconfig.c:139 +#: elf/ldconfig.c:144 msgid "CONF" -msgstr "" +msgstr "КОНФИГУРАЦИЯ" -#: elf/ldconfig.c:139 +#: elf/ldconfig.c:144 msgid "Use CONF as configuration file" -msgstr " CONF " +msgstr "Использовать КОНФИГУРАЦИЯ в качестве конфигурационного файла" -#: elf/ldconfig.c:140 +#: elf/ldconfig.c:145 msgid "Only process directories specified on the command line. Don't build cache." -msgstr " , . ." +msgstr "Обработать только каталоги, указанные в командной строке. Не строить кэш." -#: elf/ldconfig.c:141 +#: elf/ldconfig.c:146 msgid "Manually link individual libraries." -msgstr " ." +msgstr "Вручную скомпоновать отдельные библиотеки." -#: elf/ldconfig.c:142 +#: elf/ldconfig.c:147 msgid "FORMAT" -msgstr "" +msgstr "FORMAT" -#: elf/ldconfig.c:142 +#: elf/ldconfig.c:147 msgid "Format to use: new, old or compat (default)" -msgstr " : new, old compat ( )" +msgstr "Используемый формат: new, old или compat (по умолчанию)" -#: elf/ldconfig.c:150 +#: elf/ldconfig.c:148 +msgid "Ignore auxiliary cache file" +msgstr "Игнорирование вспомогательного файла кэша" + +#: elf/ldconfig.c:156 msgid "Configure Dynamic Linker Run Time Bindings." -msgstr " ." +msgstr "Конфигурирует связи времени выполнения для динамического компоновщика." -#: elf/ldconfig.c:308 +#: elf/ldconfig.c:319 #, c-format msgid "Path `%s' given more than once" -msgstr " `%s' " +msgstr "Путь «%s» задан несколько раз" -#: elf/ldconfig.c:348 +#: elf/ldconfig.c:359 #, c-format msgid "%s is not a known library type" -msgstr "%s " +msgstr "%s не является известным типом библиотеки" -#: elf/ldconfig.c:373 +#: elf/ldconfig.c:384 #, c-format msgid "Can't stat %s" -msgstr " stat %s" +msgstr "Невозможно выполнить stat %s" -#: elf/ldconfig.c:447 +#: elf/ldconfig.c:458 #, c-format msgid "Can't stat %s\n" -msgstr " stat %s\n" +msgstr "Невозможно выполнить stat %s\n" -#: elf/ldconfig.c:457 +#: elf/ldconfig.c:468 #, c-format msgid "%s is not a symbolic link\n" -msgstr "%s \n" +msgstr "%s не является символьной ссылкой\n" -#: elf/ldconfig.c:476 +#: elf/ldconfig.c:487 #, c-format msgid "Can't unlink %s" -msgstr " %s" +msgstr "Невозможно удалить ссылку %s" -#: elf/ldconfig.c:482 +#: elf/ldconfig.c:493 #, c-format msgid "Can't link %s to %s" -msgstr " %s %s" +msgstr "Невозможно создать ссылку с %s на %s" -#: elf/ldconfig.c:488 +#: elf/ldconfig.c:499 msgid " (changed)\n" -msgstr " ()\n" +msgstr " (именено)\n" -#: elf/ldconfig.c:490 +#: elf/ldconfig.c:501 msgid " (SKIPPED)\n" -msgstr " ()\n" +msgstr " (ПРОПУЩЕНО)\n" -#: elf/ldconfig.c:545 +#: elf/ldconfig.c:556 #, c-format msgid "Can't find %s" -msgstr " %s" +msgstr "Невозможно найти %s" -#: elf/ldconfig.c:561 +#: elf/ldconfig.c:572 elf/ldconfig.c:745 elf/ldconfig.c:793 elf/ldconfig.c:827 #, c-format -msgid "Can't lstat %s" -msgstr " lstat %s" +msgid "Cannot lstat %s" +msgstr "Невозможно выполнить lstat %s" -#: elf/ldconfig.c:568 +#: elf/ldconfig.c:579 #, c-format msgid "Ignored file %s since it is not a regular file." -msgstr " %s , " +msgstr "Файл %s игнорирован, поскольку это не обычный файл" -#: elf/ldconfig.c:576 +#: elf/ldconfig.c:588 #, c-format msgid "No link created since soname could not be found for %s" -msgstr " , %s soname" +msgstr "Ссылка не создана, поскольку для %s не было найдено soname" -#: elf/ldconfig.c:667 +#: elf/ldconfig.c:671 #, c-format msgid "Can't open directory %s" -msgstr " %s" - -#: elf/ldconfig.c:735 elf/ldconfig.c:782 -#, c-format -msgid "Cannot lstat %s" -msgstr " lstat %s" +msgstr "Невозможно открыть каталог %s" -#: elf/ldconfig.c:747 +#: elf/ldconfig.c:759 #, c-format msgid "Cannot stat %s" -msgstr " stat %s" +msgstr "Невозможно выполнить stat %s" -#: elf/ldconfig.c:804 elf/readlib.c:90 +#: elf/ldconfig.c:814 elf/readlib.c:91 #, c-format msgid "Input file %s not found.\n" -msgstr " %s .\n" +msgstr "Входной файл %s не найден.\n" -#: elf/ldconfig.c:855 +#: elf/ldconfig.c:888 #, c-format msgid "libc5 library %s in wrong directory" -msgstr "libc5- %s " +msgstr "libc5-библиотека %s в неправильном каталоге" -#: elf/ldconfig.c:858 +#: elf/ldconfig.c:891 #, c-format msgid "libc6 library %s in wrong directory" -msgstr "libc6- %s " +msgstr "libc6-библиотека %s в неправильном каталоге" -#: elf/ldconfig.c:861 +#: elf/ldconfig.c:894 #, c-format msgid "libc4 library %s in wrong directory" -msgstr "libc4- %s " +msgstr "libc4-библиотека %s в неправильном каталоге" -#: elf/ldconfig.c:888 +#: elf/ldconfig.c:922 #, c-format msgid "libraries %s and %s in directory %s have same soname but different type." -msgstr " %s %s %s soname, ." +msgstr "библиотеки %s и %s в каталоге %s имеют одинаковый soname, но разные типы." -#: elf/ldconfig.c:995 +#: elf/ldconfig.c:1031 #, c-format msgid "Can't open configuration file %s" -msgstr " %s" +msgstr "Невозможно открыть конфигурационный файл %s" -#: elf/ldconfig.c:1059 +#: elf/ldconfig.c:1095 #, c-format msgid "%s:%u: bad syntax in hwcap line" -msgstr "%s:%u: hwcap" +msgstr "%s:%u: неправильный синтаксис в строке hwcap" -#: elf/ldconfig.c:1065 +#: elf/ldconfig.c:1101 #, c-format msgid "%s:%u: hwcap index %lu above maximum %u" -msgstr "%s:%u: hwcap %lu %u" +msgstr "%s:%u: индекс hwcap %lu превышает максимум %u" -#: elf/ldconfig.c:1072 elf/ldconfig.c:1080 +#: elf/ldconfig.c:1108 elf/ldconfig.c:1116 #, c-format msgid "%s:%u: hwcap index %lu already defined as %s" -msgstr "%s:%u: hwcap %lu %s" +msgstr "%s:%u: индекс hwcap %lu уже определен как %s" -#: elf/ldconfig.c:1083 +#: elf/ldconfig.c:1119 #, c-format msgid "%s:%u: duplicate hwcap %lu %s" -msgstr "%s:%u: hwcap %lu %s" +msgstr "%s:%u: повторное hwcap %lu %s" -#: elf/ldconfig.c:1105 +#: elf/ldconfig.c:1141 #, c-format msgid "need absolute file name for configuration file when using -r" -msgstr " -r " +msgstr "при использовании -r необходимо задавать абсолютное имя для конфигурационного файла" -#: elf/ldconfig.c:1112 locale/programs/xmalloc.c:69 malloc/obstack.c:434 -#: malloc/obstack.c:436 posix/getconf.c:980 posix/getconf.c:1158 +#: elf/ldconfig.c:1148 locale/programs/xmalloc.c:70 malloc/obstack.c:434 +#: malloc/obstack.c:436 posix/getconf.c:985 posix/getconf.c:1163 #, c-format msgid "memory exhausted" -msgstr " " +msgstr "память исчерпана" -#: elf/ldconfig.c:1142 +#: elf/ldconfig.c:1178 #, c-format msgid "%s:%u: cannot read directory %s" -msgstr "%s:%u: %s" +msgstr "%s:%u: невозможно прочитать каталог %s" -#: elf/ldconfig.c:1182 +#: elf/ldconfig.c:1223 #, c-format msgid "relative path `%s' used to build cache" -msgstr " `%s'" +msgstr "для построения кэша использован относительный путь «%s»" -#: elf/ldconfig.c:1210 +#: elf/ldconfig.c:1249 #, c-format msgid "Can't chdir to /" -msgstr " /" +msgstr "Невозможно перейти в каталог /" -#: elf/ldconfig.c:1252 +#: elf/ldconfig.c:1291 #, c-format msgid "Can't open cache file directory %s\n" -msgstr " - %s\n" +msgstr "Невозможно открыть каталог кэш-файла %s\n" #: elf/ldd.bash.in:43 msgid "Written by %s and %s.\n" -msgstr " -- %s %s.\n" +msgstr "Авторы программы -- %s и %s.\n" #: elf/ldd.bash.in:48 msgid "" @@ -933,362 +926,364 @@ msgid "" "For bug reporting instructions, please see:\n" "<http://www.gnu.org/software/libc/bugs.html>." msgstr "" -": ldd []... ...\n" -" --help \n" -" --version \n" -" -d, --data-relocs \n" -" -r, --function-relocs \n" -" -u, --unused \n" -" -v, --verbose \n" -" \n" +"Использование: ldd [КЛЮЧ]... ФАЙЛ...\n" +" --help напечатать эту справку и выйти\n" +" --version напечатать информацию о версии и выйти\n" +" -d, --data-relocs обработать релокации данных\n" +" -r, --function-relocs обработать релокации данных и функций\n" +" -u, --unused напечатать неиспользуемые прямые зависимости\n" +" -v, --verbose напечатать всю информацию\n" +"Инструкции по сообщению об ошибках смотрите на\n" "<http://www.gnu.org/software/libc/bugs.html>." #: elf/ldd.bash.in:80 -msgid "ldd: option `$1' is ambiguous" -msgstr "ldd: `$1' " +#, fuzzy +msgid "ldd: option \\`$1' is ambiguous" +msgstr "ldd: ключ «$1» неоднозначен" #: elf/ldd.bash.in:87 msgid "unrecognized option" -msgstr " " +msgstr "нераспознанный ключ" #: elf/ldd.bash.in:88 elf/ldd.bash.in:126 -msgid "Try `ldd --help' for more information." -msgstr " `ldd --help' ." +#, fuzzy +msgid "Try \\`ldd --help' for more information." +msgstr "Попробуйте «ldd --help» для получения более подробного описания." #: elf/ldd.bash.in:125 msgid "missing file arguments" -msgstr " , " +msgstr "отсутствуют аргументы, задающие файлы" #. TRANS No such file or directory. This is a ``file doesn't exist'' error #. TRANS for ordinary files that are referenced in contexts where they are #. TRANS expected to already exist. #: elf/ldd.bash.in:148 sysdeps/gnu/errlist.c:36 msgid "No such file or directory" -msgstr " " +msgstr "Нет такого файла или каталога" #: elf/ldd.bash.in:151 inet/rcmd.c:483 msgid "not regular file" -msgstr " " +msgstr "не обычный файл" #: elf/ldd.bash.in:154 msgid "warning: you do not have execution permission for" -msgstr ": " +msgstr "предупреждение: у вас нет прав на выполнение" #: elf/ldd.bash.in:183 msgid "\tnot a dynamic executable" -msgstr "\t " +msgstr "\tне является динамическим исполняемым файлом" #: elf/ldd.bash.in:191 msgid "exited with unknown exit code" -msgstr " " +msgstr "завершено с неизвестным выходным кодом" #: elf/ldd.bash.in:196 msgid "error: you do not have read permission for" -msgstr ": " +msgstr "ошибка: у вас нет разрешения на чтение" #: elf/readelflib.c:35 #, c-format msgid "file %s is truncated\n" -msgstr " %s \n" +msgstr "файл %s усечен\n" #: elf/readelflib.c:67 #, c-format msgid "%s is a 32 bit ELF file.\n" -msgstr "%s 32- ELF-.\n" +msgstr "%s является 32-битным ELF-файлом.\n" #: elf/readelflib.c:69 #, c-format msgid "%s is a 64 bit ELF file.\n" -msgstr "%s 64- ELF-.\n" +msgstr "%s является 64-битным ELF-файлом.\n" #: elf/readelflib.c:71 #, c-format msgid "Unknown ELFCLASS in file %s.\n" -msgstr " ELFCLASS %s.\n" +msgstr "Неизвестный ELFCLASS в файле %s.\n" #: elf/readelflib.c:78 #, c-format msgid "%s is not a shared object file (Type: %d).\n" -msgstr "%s (: %d).\n" +msgstr "%s не является разделяемым объектным файлом (Тип: %d).\n" #: elf/readelflib.c:109 #, c-format msgid "more than one dynamic segment\n" -msgstr " \n" +msgstr "более одного динамических сегментов\n" -#: elf/readlib.c:96 +#: elf/readlib.c:97 #, c-format msgid "Cannot fstat file %s.\n" -msgstr " fstat %s.\n" +msgstr "Невозможно выполнить fstat для файла %s.\n" -#: elf/readlib.c:107 +#: elf/readlib.c:108 #, c-format msgid "File %s is empty, not checked." -msgstr " %s ; ." +msgstr "Файл %s пуст; не был проверен." -#: elf/readlib.c:113 +#: elf/readlib.c:114 #, c-format msgid "File %s is too small, not checked." -msgstr " %s ; ." +msgstr "Файл %s слишком мал; не был проверен." -#: elf/readlib.c:123 +#: elf/readlib.c:124 #, c-format msgid "Cannot mmap file %s.\n" -msgstr " %s.\n" +msgstr "Невозможно отобразить в память файл %s.\n" -#: elf/readlib.c:161 +#: elf/readlib.c:162 #, c-format msgid "%s is not an ELF file - it has the wrong magic bytes at the start.\n" -msgstr "%s ELF- -- .\n" +msgstr "%s не является ELF-файлом -- у него в начале неправильные волшебные байты.\n" #: elf/sprof.c:77 msgid "Output selection:" -msgstr " :" +msgstr "Выбор типа вывода:" #: elf/sprof.c:79 msgid "print list of count paths and their number of use" -msgstr " " +msgstr "напечатать список путей счетчиков и число их использований" #: elf/sprof.c:81 msgid "generate flat profile with counts and ticks" -msgstr " " +msgstr "генерировать плоский профиль со счетчиками и метками" #: elf/sprof.c:82 msgid "generate call graph" -msgstr " " +msgstr "генерировать граф вызовов" #: elf/sprof.c:89 msgid "" -"Read and display shared object profiling data.For bug reporting instructions, please see:\n" +"Read and display shared object profiling data.\vFor bug reporting instructions, please see:\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" msgstr "" -" . \n" +"Считывает и отображает данные профилирования разделяемого объекта.\vИнструкции по сообщению об ошибках смотрите на\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" #: elf/sprof.c:94 msgid "SHOBJ [PROFDATA]" -msgstr "- [-]" +msgstr "РАЗД-ОБЪЕКТ [ПРОФ-ДАННЫЕ]" #: elf/sprof.c:400 #, c-format msgid "failed to load shared object `%s'" -msgstr " `%s'" +msgstr "не удалось загрузить разделяемый объект «%s»" #: elf/sprof.c:409 #, c-format msgid "cannot create internal descriptors" -msgstr " " +msgstr "невозможно создать внутренние дескрипторы" #: elf/sprof.c:528 #, c-format msgid "Reopening shared object `%s' failed" -msgstr " `%s'" +msgstr "Сбой повторного открытия разделяемого объекта «%s»" #: elf/sprof.c:535 elf/sprof.c:629 #, c-format msgid "reading of section headers failed" -msgstr " " +msgstr "чтение заголовков секции неуспешно" #: elf/sprof.c:543 elf/sprof.c:637 #, c-format msgid "reading of section header string table failed" -msgstr " " +msgstr "чтение строки заголовка секции неуспешно" #: elf/sprof.c:569 #, c-format msgid "*** Cannot read debuginfo file name: %m\n" -msgstr "*** : %m\n" +msgstr "*** Невозможно прочитать файл с отладочной информацией: %m\n" #: elf/sprof.c:589 #, c-format msgid "cannot determine file name" -msgstr " " +msgstr "невозможно определить имя файла" #: elf/sprof.c:622 #, c-format msgid "reading of ELF header failed" -msgstr " ELF " +msgstr "считывание заголовка ELF неуспешно" #: elf/sprof.c:658 #, c-format msgid "*** The file `%s' is stripped: no detailed analysis possible\n" -msgstr "*** `%s' : \n" +msgstr "*** Файл «%s» очищен: подробный анализ невозможен\n" #: elf/sprof.c:688 #, c-format msgid "failed to load symbol data" -msgstr " " +msgstr "не удалось загрузить данные о символах" #: elf/sprof.c:755 #, c-format msgid "cannot load profiling data" -msgstr " " +msgstr "не удалось загрузить профилировочные данные" #: elf/sprof.c:764 #, c-format msgid "while stat'ing profiling data file" -msgstr " stat " +msgstr "при операции stat над файлом с профилировочными данными" #: elf/sprof.c:772 #, c-format msgid "profiling data file `%s' does not match shared object `%s'" -msgstr " `%s' `%s'" +msgstr "файл с профилировочными данными «%s» не соответствует разделяемому объекту «%s»" #: elf/sprof.c:783 #, c-format msgid "failed to mmap the profiling data file" -msgstr " " +msgstr "не удалось отобразить в память файл с профилировочными данными" #: elf/sprof.c:791 #, c-format msgid "error while closing the profiling data file" -msgstr " " +msgstr "ошибка при закрытии файла с профилировочными данными" #: elf/sprof.c:800 elf/sprof.c:870 #, c-format msgid "cannot create internal descriptor" -msgstr " " +msgstr "невозможно создать внутренний дескриптор" #: elf/sprof.c:846 #, c-format msgid "`%s' is no correct profile data file for `%s'" -msgstr "`%s' `%s'" +msgstr "«%s» не является верным файлом с профилировочными данными для «%s»" #: elf/sprof.c:1027 elf/sprof.c:1085 #, c-format msgid "cannot allocate symbol data" -msgstr " " +msgstr "невозможно выделить память под данные символа" -#: iconv/iconv_charmap.c:175 iconv/iconv_prog.c:315 +#: iconv/iconv_charmap.c:176 iconv/iconv_prog.c:316 #, c-format msgid "error while closing input `%s'" -msgstr " `%s'" +msgstr "ошибка при закрытии входного файла «%s»" -#: iconv/iconv_charmap.c:449 +#: iconv/iconv_charmap.c:450 #, c-format msgid "illegal input sequence at position %Zd" -msgstr " %Zd" +msgstr "недопустимая входная последовательность в позиции %Zd" -#: iconv/iconv_charmap.c:468 iconv/iconv_prog.c:525 +#: iconv/iconv_charmap.c:469 iconv/iconv_prog.c:526 #, c-format msgid "incomplete character or shift sequence at end of buffer" -msgstr " " +msgstr "неполный знак или последовательность сдвига в конце буфера" -#: iconv/iconv_charmap.c:513 iconv/iconv_charmap.c:549 iconv/iconv_prog.c:568 -#: iconv/iconv_prog.c:604 +#: iconv/iconv_charmap.c:514 iconv/iconv_charmap.c:550 iconv/iconv_prog.c:569 +#: iconv/iconv_prog.c:605 #, c-format msgid "error while reading the input" -msgstr " " +msgstr "ошибка при чтении входного файла" -#: iconv/iconv_charmap.c:531 iconv/iconv_prog.c:586 +#: iconv/iconv_charmap.c:532 iconv/iconv_prog.c:587 #, c-format msgid "unable to allocate buffer for input" -msgstr " " +msgstr "невозможно получить буфер для ввода" -#: iconv/iconv_prog.c:59 +#: iconv/iconv_prog.c:60 msgid "Input/Output format specification:" -msgstr " /:" +msgstr "Спецификация формата ввода/вывода:" -#: iconv/iconv_prog.c:60 +#: iconv/iconv_prog.c:61 msgid "encoding of original text" -msgstr " " +msgstr "кодировка оригинального текста" -#: iconv/iconv_prog.c:61 +#: iconv/iconv_prog.c:62 msgid "encoding for output" -msgstr " " +msgstr "кодировка для вывода" -#: iconv/iconv_prog.c:62 +#: iconv/iconv_prog.c:63 msgid "Information:" -msgstr ":" +msgstr "Информация:" -#: iconv/iconv_prog.c:63 +#: iconv/iconv_prog.c:64 msgid "list all known coded character sets" -msgstr " " +msgstr "перечислить все известные встроенные кодировки" -#: iconv/iconv_prog.c:64 locale/programs/localedef.c:126 +#: iconv/iconv_prog.c:65 locale/programs/localedef.c:127 msgid "Output control:" -msgstr " :" +msgstr "Усправление выводом:" -#: iconv/iconv_prog.c:65 +#: iconv/iconv_prog.c:66 msgid "omit invalid characters from output" -msgstr " " +msgstr "пропускать на выводе недопустимые знаки" -#: iconv/iconv_prog.c:66 +#: iconv/iconv_prog.c:67 msgid "output file" -msgstr " " +msgstr "выходной файл" -#: iconv/iconv_prog.c:67 +#: iconv/iconv_prog.c:68 msgid "suppress warnings" -msgstr " " +msgstr "не печатать предупреждения" -#: iconv/iconv_prog.c:68 +#: iconv/iconv_prog.c:69 msgid "print progress information" -msgstr " " +msgstr "печатать информацию о ходе работы" -#: iconv/iconv_prog.c:73 +#: iconv/iconv_prog.c:74 msgid "Convert encoding of given files from one encoding to another." -msgstr " ." +msgstr "Преобразует указанные файлы из одной кодировки в другую." -#: iconv/iconv_prog.c:77 +#: iconv/iconv_prog.c:78 msgid "[FILE...]" -msgstr "[...]" +msgstr "[ФАЙЛ...]" -#: iconv/iconv_prog.c:199 +#: iconv/iconv_prog.c:200 #, c-format msgid "cannot open output file" -msgstr " " +msgstr "невозможно открыть выходной файл" -#: iconv/iconv_prog.c:241 +#: iconv/iconv_prog.c:242 #, c-format msgid "conversions from `%s' and to `%s' are not supported" -msgstr " `%s' `%s' " +msgstr "преобразования из «%s» и в «%s» не поддерживаются" -#: iconv/iconv_prog.c:246 +#: iconv/iconv_prog.c:247 #, c-format msgid "conversion from `%s' is not supported" -msgstr " `%s' " +msgstr "преобразование из «%s» не поддерживается" -#: iconv/iconv_prog.c:253 +#: iconv/iconv_prog.c:254 #, c-format msgid "conversion to `%s' is not supported" -msgstr " `%s' " +msgstr "преобразование в «%s» не поддерживается" -#: iconv/iconv_prog.c:257 +#: iconv/iconv_prog.c:258 #, c-format msgid "conversion from `%s' to `%s' is not supported" -msgstr " `%s' `%s' " +msgstr "преобразование из «%s» в «%s» не поддерживается" -#: iconv/iconv_prog.c:267 +#: iconv/iconv_prog.c:268 #, c-format msgid "failed to start conversion processing" -msgstr " " +msgstr "не удалось начать преобразование" -#: iconv/iconv_prog.c:361 +#: iconv/iconv_prog.c:362 #, c-format msgid "error while closing output file" -msgstr " " +msgstr "ошибка при закрытии выходного файла" -#: iconv/iconv_prog.c:470 iconv/iconv_prog.c:496 +#: iconv/iconv_prog.c:471 iconv/iconv_prog.c:497 #, c-format msgid "conversion stopped due to problem in writing the output" -msgstr " - " +msgstr "преобразование остановлено из-за проблемы при записи вывода" -#: iconv/iconv_prog.c:521 +#: iconv/iconv_prog.c:522 #, c-format msgid "illegal input sequence at position %ld" -msgstr " %ld" +msgstr "недопустимая входная последовательность в позиции %ld" -#: iconv/iconv_prog.c:529 +#: iconv/iconv_prog.c:530 #, c-format msgid "internal error (illegal descriptor)" -msgstr " ( )" +msgstr "внутренняя ошибка (неверный дескриптор)" -#: iconv/iconv_prog.c:532 +#: iconv/iconv_prog.c:533 #, c-format msgid "unknown iconv() error %d" -msgstr " iconv() %d" +msgstr "неизвестная ошибка iconv() %d" -#: iconv/iconv_prog.c:778 +#: iconv/iconv_prog.c:779 msgid "" "The following list contain all the coded character sets known. This does\n" "not necessarily mean that all combinations of these names can be used for\n" @@ -1297,1258 +1292,1259 @@ msgid "" "\n" " " msgstr "" -" . \n" -" , \n" -" FROM TO. \n" -" ().\n" +"Следующий список содержит все известные встроенные кодировки. Это не\n" +"обязательно означает, что можно использовать любые комбинации данных\n" +"имен в параметрах командной строки FROM и TO. Одна и та же кодировка\n" +"может быть перечислена под несколькими именами (псевдонимами).\n" "\n" " " -#: iconv/iconvconfig.c:109 +#: iconv/iconvconfig.c:110 msgid "Create fastloading iconv module configuration file." -msgstr " iconv." +msgstr "Создает быстрозагружаемый конфигурационный файл модуля iconv." -#: iconv/iconvconfig.c:113 +#: iconv/iconvconfig.c:114 msgid "[DIR...]" -msgstr "[...]" +msgstr "[КАТАЛОГ...]" -#: iconv/iconvconfig.c:126 +#: iconv/iconvconfig.c:127 msgid "Prefix used for all file accesses" -msgstr ", " +msgstr "Префикс, используемый для доступа ко всем файлам" -#: iconv/iconvconfig.c:127 +#: iconv/iconvconfig.c:128 msgid "Put output in FILE instead of installed location (--prefix does not apply to FILE)" -msgstr " , (--prefix )" +msgstr "Записать вывод в ФАЙЛ, а не в место установки (--prefix не применяется к ФАЙЛУ)" -#: iconv/iconvconfig.c:131 +#: iconv/iconvconfig.c:132 msgid "Do not search standard directories, only those on the command line" -msgstr " , " +msgstr "Не искать в стандартных каталогах, а только в указанных в командной строке" -#: iconv/iconvconfig.c:300 +#: iconv/iconvconfig.c:301 #, c-format msgid "Directory arguments required when using --nostdlib" -msgstr " --nostdlib -" +msgstr "При использовании --nostdlib требуется задавать аргументы-каталоги" -#: iconv/iconvconfig.c:342 locale/programs/localedef.c:290 +#: iconv/iconvconfig.c:343 locale/programs/localedef.c:291 #, c-format msgid "no output file produced because warnings were issued" -msgstr " , " +msgstr "выходной файл не создан, поскольку были предупреждения" -#: iconv/iconvconfig.c:428 +#: iconv/iconvconfig.c:429 #, c-format msgid "while inserting in search tree" -msgstr " " +msgstr "при вставке в дерево поиска" -#: iconv/iconvconfig.c:1236 +#: iconv/iconvconfig.c:1238 #, c-format msgid "cannot generate output file" -msgstr " " +msgstr "невозможно сгенерировать выходной файл" #: inet/rcmd.c:157 msgid "rcmd: Cannot allocate memory\n" -msgstr "rcmd: \n" +msgstr "rcmd: Невозможно выделить память\n" #: inet/rcmd.c:172 msgid "rcmd: socket: All ports in use\n" -msgstr "rcmd: socket: \n" +msgstr "rcmd: socket: Все порты используются\n" #: inet/rcmd.c:200 #, c-format msgid "connect to address %s: " -msgstr " %s: " +msgstr "соединение с адресом %s: " #: inet/rcmd.c:213 #, c-format msgid "Trying %s...\n" -msgstr " %s...\n" +msgstr "Попытка %s...\n" #: inet/rcmd.c:249 #, c-format msgid "rcmd: write (setting up stderr): %m\n" -msgstr "rcmd: write ( stderr): %m\n" +msgstr "rcmd: write (настройка stderr): %m\n" #: inet/rcmd.c:265 #, c-format msgid "rcmd: poll (setting up stderr): %m\n" -msgstr "rcmd: poll ( stderr): %m\n" +msgstr "rcmd: poll (настройка stderr): %m\n" #: inet/rcmd.c:268 msgid "poll: protocol failure in circuit setup\n" -msgstr "poll: \n" +msgstr "poll: сбой протокола при настройке цепи\n" #: inet/rcmd.c:301 msgid "socket: protocol failure in circuit setup\n" -msgstr "socket: \n" +msgstr "socket: сбой протокола при настройке цепи\n" #: inet/rcmd.c:325 #, c-format msgid "rcmd: %s: short read" -msgstr "rcmd: %s: " +msgstr "rcmd: %s: неполное чтение" #: inet/rcmd.c:481 msgid "lstat failed" -msgstr "lstat " +msgstr "lstat неуспешна" #: inet/rcmd.c:488 msgid "cannot open" -msgstr " " +msgstr "невозможно открыть" #: inet/rcmd.c:490 msgid "fstat failed" -msgstr "fstat " +msgstr "fstat неуспешна" #: inet/rcmd.c:492 msgid "bad owner" -msgstr " " +msgstr "неправильный владелец" #: inet/rcmd.c:494 msgid "writeable by other than owner" -msgstr " " +msgstr "может записываться не владельцем" #: inet/rcmd.c:496 msgid "hard linked somewhere" -msgstr " " +msgstr "имеется жесткая ссылка" #: inet/ruserpass.c:170 inet/ruserpass.c:193 msgid "out of memory" -msgstr " " +msgstr "недостаточно памяти" #: inet/ruserpass.c:184 msgid "Error: .netrc file is readable by others." -msgstr ": .netrc ." +msgstr "Ошибка: файл .netrc может записываться другими." #: inet/ruserpass.c:185 msgid "Remove password or make file unreadable by others." -msgstr " ." +msgstr "Удалите пароль или сделайте файл нечитаемым другими." #: inet/ruserpass.c:277 #, c-format msgid "Unknown .netrc keyword %s" -msgstr " .netrc %s" +msgstr "Неизвестное ключевое слово .netrc %s" #: libidn/nfkc.c:464 msgid "Character out of range for UTF-8" -msgstr " UTF-8" +msgstr "Знак вне диапазона для UTF-8" -#: locale/programs/charmap-dir.c:57 +#: locale/programs/charmap-dir.c:59 #, c-format msgid "cannot read character map directory `%s'" -msgstr " `%s'" +msgstr "невозможно прочитать каталог отображений знаков «%s»" -#: locale/programs/charmap.c:137 +#: locale/programs/charmap.c:138 #, c-format msgid "character map file `%s' not found" -msgstr " `%s' " +msgstr "файл отображений знаков «%s» не найден" -#: locale/programs/charmap.c:194 +#: locale/programs/charmap.c:195 #, c-format msgid "default character map file `%s' not found" -msgstr " `%s' " +msgstr "применяемый по умолчанию файл отображений знаков «%s» не найден" -#: locale/programs/charmap.c:257 +#: locale/programs/charmap.c:258 #, c-format msgid "character map `%s' is not ASCII compatible, locale not ISO C compliant\n" -msgstr " `%s' ASCII, ISO C\n" +msgstr "отображение знаков «%s» не совместимо с ASCII, локаль не соответствует стандарту ISO C\n" -#: locale/programs/charmap.c:336 +#: locale/programs/charmap.c:337 #, c-format msgid "%s: <mb_cur_max> must be greater than <mb_cur_min>\n" -msgstr "%s: <mb_cur_max> <mb_cur_min>\n" +msgstr "%s: <mb_cur_max> должно быть больше чем <mb_cur_min>\n" -#: locale/programs/charmap.c:356 locale/programs/charmap.c:373 +#: locale/programs/charmap.c:357 locale/programs/charmap.c:374 #: locale/programs/repertoire.c:174 #, c-format msgid "syntax error in prolog: %s" -msgstr " : %s" +msgstr "синтаксическая ошибка в прологе: %s" -#: locale/programs/charmap.c:357 +#: locale/programs/charmap.c:358 msgid "invalid definition" -msgstr " " +msgstr "неверное определение" -#: locale/programs/charmap.c:374 locale/programs/locfile.c:125 -#: locale/programs/locfile.c:152 locale/programs/repertoire.c:175 +#: locale/programs/charmap.c:375 locale/programs/locfile.c:126 +#: locale/programs/locfile.c:153 locale/programs/repertoire.c:175 msgid "bad argument" -msgstr " " +msgstr "неправильный аргумент" -#: locale/programs/charmap.c:402 +#: locale/programs/charmap.c:403 #, c-format msgid "duplicate definition of <%s>" -msgstr " <%s>" +msgstr "повторное определение для <%s>" -#: locale/programs/charmap.c:409 +#: locale/programs/charmap.c:410 #, c-format msgid "value for <%s> must be 1 or greater" -msgstr " <%s> 1 " +msgstr "значение <%s> должно быть 1 или больше" -#: locale/programs/charmap.c:421 +#: locale/programs/charmap.c:422 #, c-format msgid "value of <%s> must be greater or equal than the value of <%s>" -msgstr " <%s> <%s>" +msgstr "значение <%s> должно быть больше или равно значению <%s>" -#: locale/programs/charmap.c:444 locale/programs/repertoire.c:183 +#: locale/programs/charmap.c:445 locale/programs/repertoire.c:183 #, c-format msgid "argument to <%s> must be a single character" -msgstr " <%s> " +msgstr "аргумент для <%s> должен быть одним знаком" -#: locale/programs/charmap.c:470 +#: locale/programs/charmap.c:471 msgid "character sets with locking states are not supported" -msgstr " " +msgstr "кодировки с блокирующими состояниями не поддерживаются" -#: locale/programs/charmap.c:497 locale/programs/charmap.c:551 -#: locale/programs/charmap.c:583 locale/programs/charmap.c:677 -#: locale/programs/charmap.c:732 locale/programs/charmap.c:773 -#: locale/programs/charmap.c:814 +#: locale/programs/charmap.c:498 locale/programs/charmap.c:552 +#: locale/programs/charmap.c:584 locale/programs/charmap.c:678 +#: locale/programs/charmap.c:733 locale/programs/charmap.c:774 +#: locale/programs/charmap.c:815 #, c-format msgid "syntax error in %s definition: %s" -msgstr " %s: %s" +msgstr "синтаксическая ошибка в определении %s: %s" -#: locale/programs/charmap.c:498 locale/programs/charmap.c:678 -#: locale/programs/charmap.c:774 locale/programs/repertoire.c:230 +#: locale/programs/charmap.c:499 locale/programs/charmap.c:679 +#: locale/programs/charmap.c:775 locale/programs/repertoire.c:230 msgid "no symbolic name given" -msgstr " " +msgstr "не задано символьное имя" -#: locale/programs/charmap.c:552 +#: locale/programs/charmap.c:553 msgid "invalid encoding given" -msgstr " " +msgstr "задана неверная кодировка" -#: locale/programs/charmap.c:561 +#: locale/programs/charmap.c:562 msgid "too few bytes in character encoding" -msgstr " " +msgstr "слишком мало байт в кодировке знака" -#: locale/programs/charmap.c:563 +#: locale/programs/charmap.c:564 msgid "too many bytes in character encoding" -msgstr " " +msgstr "слишком много байт в кодировке знака" -#: locale/programs/charmap.c:585 locale/programs/charmap.c:733 -#: locale/programs/charmap.c:816 locale/programs/repertoire.c:296 +#: locale/programs/charmap.c:586 locale/programs/charmap.c:734 +#: locale/programs/charmap.c:817 locale/programs/repertoire.c:296 msgid "no symbolic name given for end of range" -msgstr " " - -#: locale/programs/charmap.c:609 locale/programs/locfile.c:818 +msgstr "не задано символьное имя для конца диапазона" + +#: locale/programs/charmap.c:610 locale/programs/ld-address.c:600 +#: locale/programs/ld-collate.c:2767 locale/programs/ld-collate.c:3924 +#: locale/programs/ld-ctype.c:2232 locale/programs/ld-ctype.c:2984 +#: locale/programs/ld-identification.c:452 +#: locale/programs/ld-measurement.c:238 locale/programs/ld-messages.c:332 +#: locale/programs/ld-monetary.c:943 locale/programs/ld-name.c:307 +#: locale/programs/ld-numeric.c:368 locale/programs/ld-paper.c:241 +#: locale/programs/ld-telephone.c:313 locale/programs/ld-time.c:1221 #: locale/programs/repertoire.c:313 #, c-format -msgid "`%1$s' definition does not end with `END %1$s'" -msgstr " `%1$s' `END %1$s'" +msgid "%1$s: definition does not end with `END %1$s'" +msgstr "%1$s: определение не заканчивается на «END %1$s»" -#: locale/programs/charmap.c:642 +#: locale/programs/charmap.c:643 msgid "only WIDTH definitions are allowed to follow the CHARMAP definition" -msgstr " CHARMAP WIDTH" +msgstr "после определения CHARMAP могут следовать только определения WIDTH" -#: locale/programs/charmap.c:650 locale/programs/charmap.c:713 +#: locale/programs/charmap.c:651 locale/programs/charmap.c:714 #, c-format msgid "value for %s must be an integer" -msgstr " %s " +msgstr "значение для %s должно быть целым числом" -#: locale/programs/charmap.c:841 +#: locale/programs/charmap.c:842 #, c-format msgid "%s: error in state machine" -msgstr "%s: " - -#: locale/programs/charmap.c:849 locale/programs/ld-address.c:615 -#: locale/programs/ld-collate.c:2650 locale/programs/ld-collate.c:3820 -#: locale/programs/ld-ctype.c:2224 locale/programs/ld-ctype.c:2996 -#: locale/programs/ld-identification.c:467 -#: locale/programs/ld-measurement.c:253 locale/programs/ld-messages.c:347 -#: locale/programs/ld-monetary.c:956 locale/programs/ld-name.c:322 -#: locale/programs/ld-numeric.c:383 locale/programs/ld-paper.c:256 -#: locale/programs/ld-telephone.c:328 locale/programs/ld-time.c:1236 -#: locale/programs/locfile.c:825 locale/programs/repertoire.c:324 +msgstr "%s: ошибка в автомате" + +#: locale/programs/charmap.c:850 locale/programs/ld-address.c:616 +#: locale/programs/ld-collate.c:2764 locale/programs/ld-collate.c:4115 +#: locale/programs/ld-ctype.c:2229 locale/programs/ld-ctype.c:3001 +#: locale/programs/ld-identification.c:468 +#: locale/programs/ld-measurement.c:254 locale/programs/ld-messages.c:348 +#: locale/programs/ld-monetary.c:959 locale/programs/ld-name.c:323 +#: locale/programs/ld-numeric.c:384 locale/programs/ld-paper.c:257 +#: locale/programs/ld-telephone.c:329 locale/programs/ld-time.c:1237 +#: locale/programs/locfile.c:826 locale/programs/repertoire.c:324 #, c-format msgid "%s: premature end of file" -msgstr "%s: " +msgstr "%s: преждевременный конец файла" -#: locale/programs/charmap.c:868 locale/programs/charmap.c:879 +#: locale/programs/charmap.c:869 locale/programs/charmap.c:880 #, c-format msgid "unknown character `%s'" -msgstr " `%s'" +msgstr "неизвестный знак «%s»" -#: locale/programs/charmap.c:887 +#: locale/programs/charmap.c:888 #, c-format msgid "number of bytes for byte sequence of beginning and end of range not the same: %d vs %d" -msgstr " : %d %d" +msgstr "число байт для последовательности байт начала и конца диапазона не совпадают: %d и %d" -#: locale/programs/charmap.c:992 locale/programs/ld-collate.c:2933 +#: locale/programs/charmap.c:993 locale/programs/ld-collate.c:3047 #: locale/programs/repertoire.c:419 msgid "invalid names for character range" -msgstr " " +msgstr "недопустимые имена для диапазона знаков" -#: locale/programs/charmap.c:1004 locale/programs/repertoire.c:431 +#: locale/programs/charmap.c:1005 locale/programs/repertoire.c:431 msgid "hexadecimal range format should use only capital characters" -msgstr " " +msgstr "в шестнадцатиричном формате диапазона следует использовать только заглавные буквы" -#: locale/programs/charmap.c:1022 +#: locale/programs/charmap.c:1023 locale/programs/repertoire.c:449 #, c-format -msgid "<%s> and <%s> are illegal names for range" -msgstr "<%s> <%s> -- " +msgid "<%s> and <%s> are invalid names for range" +msgstr "<%s> и <%s> не являются допустимыми именами диапазона" -#: locale/programs/charmap.c:1028 -msgid "upper limit in range is not higher then lower limit" -msgstr " " +#: locale/programs/charmap.c:1029 locale/programs/repertoire.c:456 +#, fuzzy +msgid "upper limit in range is smaller than lower limit" +msgstr "верхняя граница диапазона не меньше нижней" -#: locale/programs/charmap.c:1086 +#: locale/programs/charmap.c:1087 msgid "resulting bytes for range not representable." -msgstr " ." +msgstr "результирующие байты для диапазона невозможно машинно представить." -#: locale/programs/ld-address.c:132 locale/programs/ld-collate.c:1532 -#: locale/programs/ld-ctype.c:419 locale/programs/ld-identification.c:132 -#: locale/programs/ld-measurement.c:93 locale/programs/ld-messages.c:96 -#: locale/programs/ld-monetary.c:192 locale/programs/ld-name.c:93 -#: locale/programs/ld-numeric.c:97 locale/programs/ld-paper.c:90 -#: locale/programs/ld-telephone.c:93 locale/programs/ld-time.c:158 +#: locale/programs/ld-address.c:133 locale/programs/ld-collate.c:1556 +#: locale/programs/ld-ctype.c:420 locale/programs/ld-identification.c:133 +#: locale/programs/ld-measurement.c:94 locale/programs/ld-messages.c:97 +#: locale/programs/ld-monetary.c:194 locale/programs/ld-name.c:94 +#: locale/programs/ld-numeric.c:98 locale/programs/ld-paper.c:91 +#: locale/programs/ld-telephone.c:94 locale/programs/ld-time.c:159 #, c-format msgid "No definition for %s category found" -msgstr " %s" - -#: locale/programs/ld-address.c:143 locale/programs/ld-address.c:181 -#: locale/programs/ld-address.c:199 locale/programs/ld-address.c:228 -#: locale/programs/ld-address.c:300 locale/programs/ld-address.c:319 -#: locale/programs/ld-address.c:332 locale/programs/ld-identification.c:145 -#: locale/programs/ld-measurement.c:104 locale/programs/ld-monetary.c:204 -#: locale/programs/ld-monetary.c:248 locale/programs/ld-monetary.c:264 -#: locale/programs/ld-monetary.c:276 locale/programs/ld-name.c:104 -#: locale/programs/ld-name.c:141 locale/programs/ld-numeric.c:111 -#: locale/programs/ld-numeric.c:125 locale/programs/ld-paper.c:101 -#: locale/programs/ld-paper.c:110 locale/programs/ld-telephone.c:104 -#: locale/programs/ld-telephone.c:161 locale/programs/ld-time.c:174 -#: locale/programs/ld-time.c:195 +msgstr "Не найдено определения для категории %s" + +#: locale/programs/ld-address.c:144 locale/programs/ld-address.c:182 +#: locale/programs/ld-address.c:200 locale/programs/ld-address.c:229 +#: locale/programs/ld-address.c:301 locale/programs/ld-address.c:320 +#: locale/programs/ld-address.c:333 locale/programs/ld-identification.c:146 +#: locale/programs/ld-measurement.c:105 locale/programs/ld-monetary.c:206 +#: locale/programs/ld-monetary.c:250 locale/programs/ld-monetary.c:266 +#: locale/programs/ld-monetary.c:278 locale/programs/ld-name.c:105 +#: locale/programs/ld-name.c:142 locale/programs/ld-numeric.c:112 +#: locale/programs/ld-numeric.c:126 locale/programs/ld-paper.c:102 +#: locale/programs/ld-paper.c:111 locale/programs/ld-telephone.c:105 +#: locale/programs/ld-telephone.c:162 locale/programs/ld-time.c:175 +#: locale/programs/ld-time.c:196 #, c-format msgid "%s: field `%s' not defined" -msgstr "%s: `%s' " +msgstr "%s: поле «%s» не определено" -#: locale/programs/ld-address.c:155 locale/programs/ld-address.c:207 -#: locale/programs/ld-address.c:237 locale/programs/ld-address.c:275 -#: locale/programs/ld-name.c:116 locale/programs/ld-telephone.c:116 +#: locale/programs/ld-address.c:156 locale/programs/ld-address.c:208 +#: locale/programs/ld-address.c:238 locale/programs/ld-address.c:276 +#: locale/programs/ld-name.c:117 locale/programs/ld-telephone.c:117 #, c-format msgid "%s: field `%s' must not be empty" -msgstr "%s: `%s' " +msgstr "%s: поле «%s» должно быть непустым" -#: locale/programs/ld-address.c:167 +#: locale/programs/ld-address.c:168 #, c-format msgid "%s: invalid escape `%%%c' sequence in field `%s'" -msgstr "%s: `%%%c' `%s'" +msgstr "%s: неверная управляющая последовательность «%%%c» в поле «%s»" -#: locale/programs/ld-address.c:218 +#: locale/programs/ld-address.c:219 #, c-format msgid "%s: terminology language code `%s' not defined" -msgstr "" +msgstr "%s: термин языка «%s» не определен" -#: locale/programs/ld-address.c:243 +#: locale/programs/ld-address.c:244 #, c-format msgid "%s: field `%s' must not be defined" -msgstr "%s: `%s' " +msgstr "%s: поле «%s» не должно быть определено" -#: locale/programs/ld-address.c:257 locale/programs/ld-address.c:286 +#: locale/programs/ld-address.c:258 locale/programs/ld-address.c:287 #, c-format msgid "%s: language abbreviation `%s' not defined" -msgstr "%s: `%s' " +msgstr "%s: сокращенное имя языка «%s» не определено" -#: locale/programs/ld-address.c:264 locale/programs/ld-address.c:292 -#: locale/programs/ld-address.c:326 locale/programs/ld-address.c:338 +#: locale/programs/ld-address.c:265 locale/programs/ld-address.c:293 +#: locale/programs/ld-address.c:327 locale/programs/ld-address.c:339 #, c-format msgid "%s: `%s' value does not match `%s' value" -msgstr "%s: `%s' `%s'" +msgstr "%s: значение «%s» не совпадает со значением «%s»" -#: locale/programs/ld-address.c:311 +#: locale/programs/ld-address.c:312 #, c-format msgid "%s: numeric country code `%d' not valid" -msgstr "%s: `%d'" - -#: locale/programs/ld-address.c:507 locale/programs/ld-address.c:544 -#: locale/programs/ld-address.c:582 locale/programs/ld-ctype.c:2603 -#: locale/programs/ld-identification.c:363 -#: locale/programs/ld-measurement.c:220 locale/programs/ld-messages.c:300 -#: locale/programs/ld-monetary.c:698 locale/programs/ld-monetary.c:733 -#: locale/programs/ld-monetary.c:774 locale/programs/ld-name.c:279 -#: locale/programs/ld-numeric.c:262 locale/programs/ld-paper.c:223 -#: locale/programs/ld-telephone.c:287 locale/programs/ld-time.c:1125 -#: locale/programs/ld-time.c:1167 +msgstr "%s: неверный числовой код страны «%d»" + +#: locale/programs/ld-address.c:508 locale/programs/ld-address.c:545 +#: locale/programs/ld-address.c:583 locale/programs/ld-ctype.c:2608 +#: locale/programs/ld-identification.c:364 +#: locale/programs/ld-measurement.c:221 locale/programs/ld-messages.c:301 +#: locale/programs/ld-monetary.c:701 locale/programs/ld-monetary.c:736 +#: locale/programs/ld-monetary.c:777 locale/programs/ld-name.c:280 +#: locale/programs/ld-numeric.c:263 locale/programs/ld-paper.c:224 +#: locale/programs/ld-telephone.c:288 locale/programs/ld-time.c:1126 +#: locale/programs/ld-time.c:1168 #, c-format msgid "%s: field `%s' declared more than once" -msgstr "%s: `%s' " +msgstr "%s: поле «%s» объявлено несколько раз" -#: locale/programs/ld-address.c:511 locale/programs/ld-address.c:549 -#: locale/programs/ld-identification.c:367 locale/programs/ld-messages.c:310 -#: locale/programs/ld-monetary.c:702 locale/programs/ld-monetary.c:737 -#: locale/programs/ld-name.c:283 locale/programs/ld-numeric.c:266 -#: locale/programs/ld-telephone.c:291 locale/programs/ld-time.c:1019 -#: locale/programs/ld-time.c:1088 locale/programs/ld-time.c:1130 +#: locale/programs/ld-address.c:512 locale/programs/ld-address.c:550 +#: locale/programs/ld-identification.c:368 locale/programs/ld-messages.c:311 +#: locale/programs/ld-monetary.c:705 locale/programs/ld-monetary.c:740 +#: locale/programs/ld-name.c:284 locale/programs/ld-numeric.c:267 +#: locale/programs/ld-telephone.c:292 locale/programs/ld-time.c:1020 +#: locale/programs/ld-time.c:1089 locale/programs/ld-time.c:1131 #, c-format msgid "%s: unknown character in field `%s'" -msgstr "%s: `%s'" +msgstr "%s: неизвестный знак в поле «%s»" -#: locale/programs/ld-address.c:596 locale/programs/ld-collate.c:3802 -#: locale/programs/ld-ctype.c:2976 locale/programs/ld-identification.c:448 -#: locale/programs/ld-measurement.c:234 locale/programs/ld-messages.c:329 -#: locale/programs/ld-monetary.c:938 locale/programs/ld-name.c:304 -#: locale/programs/ld-numeric.c:365 locale/programs/ld-paper.c:238 -#: locale/programs/ld-telephone.c:310 locale/programs/ld-time.c:1218 +#: locale/programs/ld-address.c:597 locale/programs/ld-collate.c:3922 +#: locale/programs/ld-ctype.c:2981 locale/programs/ld-identification.c:449 +#: locale/programs/ld-measurement.c:235 locale/programs/ld-messages.c:330 +#: locale/programs/ld-monetary.c:941 locale/programs/ld-name.c:305 +#: locale/programs/ld-numeric.c:366 locale/programs/ld-paper.c:239 +#: locale/programs/ld-telephone.c:311 locale/programs/ld-time.c:1219 #, c-format msgid "%s: incomplete `END' line" -msgstr "%s: `END'" - -#: locale/programs/ld-address.c:599 locale/programs/ld-collate.c:2653 -#: locale/programs/ld-collate.c:3804 locale/programs/ld-ctype.c:2227 -#: locale/programs/ld-ctype.c:2979 locale/programs/ld-identification.c:451 -#: locale/programs/ld-measurement.c:237 locale/programs/ld-messages.c:331 -#: locale/programs/ld-monetary.c:940 locale/programs/ld-name.c:306 -#: locale/programs/ld-numeric.c:367 locale/programs/ld-paper.c:240 -#: locale/programs/ld-telephone.c:312 locale/programs/ld-time.c:1220 -#, c-format -msgid "%1$s: definition does not end with `END %1$s'" -msgstr "%1$s: `END %1$s'" - -#: locale/programs/ld-address.c:606 locale/programs/ld-collate.c:521 -#: locale/programs/ld-collate.c:573 locale/programs/ld-collate.c:869 -#: locale/programs/ld-collate.c:882 locale/programs/ld-collate.c:2640 -#: locale/programs/ld-collate.c:3811 locale/programs/ld-ctype.c:1955 -#: locale/programs/ld-ctype.c:2214 locale/programs/ld-ctype.c:2801 -#: locale/programs/ld-ctype.c:2987 locale/programs/ld-identification.c:458 -#: locale/programs/ld-measurement.c:244 locale/programs/ld-messages.c:338 -#: locale/programs/ld-monetary.c:947 locale/programs/ld-name.c:313 -#: locale/programs/ld-numeric.c:374 locale/programs/ld-paper.c:247 -#: locale/programs/ld-telephone.c:319 locale/programs/ld-time.c:1227 +msgstr "%s: незавершенная строка «END»" + +#: locale/programs/ld-address.c:607 locale/programs/ld-collate.c:542 +#: locale/programs/ld-collate.c:594 locale/programs/ld-collate.c:890 +#: locale/programs/ld-collate.c:903 locale/programs/ld-collate.c:2733 +#: locale/programs/ld-collate.c:2754 locale/programs/ld-collate.c:4105 +#: locale/programs/ld-ctype.c:1960 locale/programs/ld-ctype.c:2219 +#: locale/programs/ld-ctype.c:2806 locale/programs/ld-ctype.c:2992 +#: locale/programs/ld-identification.c:459 +#: locale/programs/ld-measurement.c:245 locale/programs/ld-messages.c:339 +#: locale/programs/ld-monetary.c:950 locale/programs/ld-name.c:314 +#: locale/programs/ld-numeric.c:375 locale/programs/ld-paper.c:248 +#: locale/programs/ld-telephone.c:320 locale/programs/ld-time.c:1228 #, c-format msgid "%s: syntax error" -msgstr "%s: " +msgstr "%s: синтаксическая ошибка" -#: locale/programs/ld-collate.c:396 +#: locale/programs/ld-collate.c:417 #, c-format msgid "`%.*s' already defined in charmap" -msgstr "`%.*s' " +msgstr "«%.*s» уже определен в отображении знаков" -#: locale/programs/ld-collate.c:405 +#: locale/programs/ld-collate.c:426 #, c-format msgid "`%.*s' already defined in repertoire" -msgstr "`%.*s' " +msgstr "«%.*s» уже определено в репертуаре" -#: locale/programs/ld-collate.c:412 +#: locale/programs/ld-collate.c:433 #, c-format msgid "`%.*s' already defined as collating symbol" -msgstr "`%.*s' " +msgstr "«%.*s» уже определено как символ сортировки" -#: locale/programs/ld-collate.c:419 +#: locale/programs/ld-collate.c:440 #, c-format msgid "`%.*s' already defined as collating element" -msgstr "`%.*s' " +msgstr "«%.*s» уже определено как элемент сортировки" -#: locale/programs/ld-collate.c:450 locale/programs/ld-collate.c:476 +#: locale/programs/ld-collate.c:471 locale/programs/ld-collate.c:497 #, c-format msgid "%s: `forward' and `backward' are mutually excluding each other" -msgstr "%s: `forward' `backward' " +msgstr "%s: «forward» и «backward» взаимно исключаются" -#: locale/programs/ld-collate.c:460 locale/programs/ld-collate.c:486 -#: locale/programs/ld-collate.c:502 +#: locale/programs/ld-collate.c:481 locale/programs/ld-collate.c:507 +#: locale/programs/ld-collate.c:523 #, c-format msgid "%s: `%s' mentioned more than once in definition of weight %d" -msgstr "%s: `%s' %d" +msgstr "%s: «%s» встречается более одного раза в определении веса %d" -#: locale/programs/ld-collate.c:558 +#: locale/programs/ld-collate.c:579 #, c-format msgid "%s: too many rules; first entry only had %d" -msgstr "%s: ; %d" +msgstr "%s: слишком много правил; в первом вхождении было только %d" -#: locale/programs/ld-collate.c:594 +#: locale/programs/ld-collate.c:615 #, c-format msgid "%s: not enough sorting rules" -msgstr "%s: " +msgstr "%s: недостаточно правил сортировки" -#: locale/programs/ld-collate.c:759 +#: locale/programs/ld-collate.c:780 #, c-format msgid "%s: empty weight string not allowed" -msgstr "%s: " +msgstr "%s: пустая строка веса недопустима" -#: locale/programs/ld-collate.c:854 +#: locale/programs/ld-collate.c:875 #, c-format msgid "%s: weights must use the same ellipsis symbol as the name" -msgstr "%s: , " +msgstr "%s: веса должны использовать такой же символ эллипсиса, как имя" -#: locale/programs/ld-collate.c:910 +#: locale/programs/ld-collate.c:931 #, c-format msgid "%s: too many values" -msgstr "%s: " +msgstr "%s: слишком много значений" -#: locale/programs/ld-collate.c:1029 locale/programs/ld-collate.c:1204 +#: locale/programs/ld-collate.c:1051 locale/programs/ld-collate.c:1226 #, c-format msgid "order for `%.*s' already defined at %s:%Zu" -msgstr " `%.*s' %s:%Zu" +msgstr "порядок для «%.*s» уже определен в %s:%Zu" -#: locale/programs/ld-collate.c:1079 +#: locale/programs/ld-collate.c:1101 #, c-format msgid "%s: the start and the end symbol of a range must stand for characters" -msgstr "%s: " +msgstr "%s: начальный и конечный символы диапазона должны обозначать знаки" -#: locale/programs/ld-collate.c:1106 +#: locale/programs/ld-collate.c:1128 #, c-format msgid "%s: byte sequences of first and last character must have the same length" -msgstr "%s: " +msgstr "%s: последовательности байт для первого и последнего знака должны быть одинаковой длины" -#: locale/programs/ld-collate.c:1148 -#, c-format -msgid "%s: byte sequence of first character of sequence is not lower than that of the last character" -msgstr "%s: " +#: locale/programs/ld-collate.c:1170 +#, fuzzy, c-format +msgid "%s: byte sequence of first character of range is not lower than that of the last character" +msgstr "%s: последовательность байт для первого знака диапазона не меньше чем для последнего" -#: locale/programs/ld-collate.c:1273 +#: locale/programs/ld-collate.c:1295 #, c-format msgid "%s: symbolic range ellipsis must not directly follow `order_start'" -msgstr "%s: `order_start'" +msgstr "%s: эллипсис символьного диапазона не может непосредственно следовать после «order_start»" -#: locale/programs/ld-collate.c:1277 +#: locale/programs/ld-collate.c:1299 #, c-format msgid "%s: symbolic range ellipsis must not be directly followed by `order_end'" -msgstr "%s: `order_end'" +msgstr "%s: после эллипсиса символьного диапазона не может непосредственно следовать «order_end»" -#: locale/programs/ld-collate.c:1297 locale/programs/ld-ctype.c:1475 +#: locale/programs/ld-collate.c:1319 locale/programs/ld-ctype.c:1477 #, c-format msgid "`%s' and `%.*s' are not valid names for symbolic range" -msgstr "`%s' `%.*s' " +msgstr "«%s» и «%.*s» не являются верными именами символьного диапозона" -#: locale/programs/ld-collate.c:1346 locale/programs/ld-collate.c:3739 +#: locale/programs/ld-collate.c:1369 locale/programs/ld-collate.c:3858 #, c-format msgid "%s: order for `%.*s' already defined at %s:%Zu" -msgstr "%s: `%.*s' %s:%Zu" +msgstr "%s: порядок для «%.*s» уже определен в %s:%Zu" -#: locale/programs/ld-collate.c:1355 +#: locale/programs/ld-collate.c:1378 #, c-format msgid "%s: `%s' must be a character" -msgstr "%s: `%s' " +msgstr "%s: «%s» должно быть знаком" -#: locale/programs/ld-collate.c:1548 +#: locale/programs/ld-collate.c:1573 #, c-format msgid "%s: `position' must be used for a specific level in all sections or none" -msgstr "%s: `position' , " +msgstr "%s: «position» должно использоваться для одного конкретного уровня либо во всех секциях, либо ни в одной" -#: locale/programs/ld-collate.c:1573 +#: locale/programs/ld-collate.c:1598 #, c-format msgid "symbol `%s' not defined" -msgstr " `%s' " +msgstr "символ «%s» не определен" -#: locale/programs/ld-collate.c:1649 locale/programs/ld-collate.c:1755 +#: locale/programs/ld-collate.c:1674 locale/programs/ld-collate.c:1780 #, c-format msgid "symbol `%s' has the same encoding as" -msgstr " `%s' " +msgstr "символ «%s» имеет такую же кодировку как" -#: locale/programs/ld-collate.c:1653 locale/programs/ld-collate.c:1759 +#: locale/programs/ld-collate.c:1678 locale/programs/ld-collate.c:1784 #, c-format msgid "symbol `%s'" -msgstr " `%s'" +msgstr "символ «%s»" -#: locale/programs/ld-collate.c:1801 +#: locale/programs/ld-collate.c:1826 #, c-format msgid "no definition of `UNDEFINED'" -msgstr " `UNDEFINED'" +msgstr "нет определения для «UNDEFINED»" -#: locale/programs/ld-collate.c:1830 +#: locale/programs/ld-collate.c:1855 #, c-format msgid "too many errors; giving up" -msgstr " ; " +msgstr "слишком много ошибок; конец" + +#: locale/programs/ld-collate.c:2659 locale/programs/ld-collate.c:4044 +#, c-format +msgid "%s: nested conditionals not supported" +msgstr "%s: вложенные условия не поддерживаются" + +#: locale/programs/ld-collate.c:2677 +#, c-format +msgid "%s: more then one 'else'" +msgstr "%s: больше одного 'else'" -#: locale/programs/ld-collate.c:2738 +#: locale/programs/ld-collate.c:2852 #, c-format msgid "%s: duplicate definition of `%s'" -msgstr "%s: `%s'" +msgstr "%s: повторное определение «%s»" -#: locale/programs/ld-collate.c:2774 +#: locale/programs/ld-collate.c:2888 #, c-format msgid "%s: duplicate declaration of section `%s'" -msgstr "%s: `%s'" +msgstr "%s: повторное объявление секции «%s»" -#: locale/programs/ld-collate.c:2913 +#: locale/programs/ld-collate.c:3027 #, c-format msgid "%s: unknown character in collating symbol name" -msgstr "%s: " +msgstr "%s: неизвестный знак в имени символа сортировки" -#: locale/programs/ld-collate.c:3045 +#: locale/programs/ld-collate.c:3159 #, c-format msgid "%s: unknown character in equivalent definition name" -msgstr "%s: " +msgstr "%s: неизвестный знак в имени определения эквивалентности" -#: locale/programs/ld-collate.c:3058 +#: locale/programs/ld-collate.c:3172 #, c-format msgid "%s: unknown character in equivalent definition value" -msgstr "%s: " +msgstr "%s: неизвестный знак в значении определеная эквивалентности" -#: locale/programs/ld-collate.c:3068 +#: locale/programs/ld-collate.c:3182 #, c-format msgid "%s: unknown symbol `%s' in equivalent definition" -msgstr "%s: `%s' " +msgstr "%s: неизвестный символ «%s» в определении эквивалентности" -#: locale/programs/ld-collate.c:3077 +#: locale/programs/ld-collate.c:3191 msgid "error while adding equivalent collating symbol" -msgstr " " +msgstr "ошибка при добавлении эквивалентного символа сортировки" -#: locale/programs/ld-collate.c:3107 +#: locale/programs/ld-collate.c:3221 #, c-format msgid "duplicate definition of script `%s'" -msgstr " `%s'" +msgstr "повторное определение системы письма «%s»" -#: locale/programs/ld-collate.c:3155 -#, c-format -msgid "%s: unknown section name `%s'" -msgstr "%s: `%s'" +#: locale/programs/ld-collate.c:3269 +#, fuzzy, c-format +msgid "%s: unknown section name `%.*s'" +msgstr "%s: неизвестное имя секции «%s»" -#: locale/programs/ld-collate.c:3183 +#: locale/programs/ld-collate.c:3298 #, c-format msgid "%s: multiple order definitions for section `%s'" -msgstr "%s: `%s'" +msgstr "%s: повторное определение порядка для секции «%s»" -#: locale/programs/ld-collate.c:3208 +#: locale/programs/ld-collate.c:3326 #, c-format msgid "%s: invalid number of sorting rules" -msgstr "%s: " +msgstr "%s: неверное число правил сортировки" -#: locale/programs/ld-collate.c:3235 +#: locale/programs/ld-collate.c:3353 #, c-format msgid "%s: multiple order definitions for unnamed section" -msgstr "%s: " +msgstr "%s: повторное определение порядка для безымянной секции" -#: locale/programs/ld-collate.c:3289 locale/programs/ld-collate.c:3417 -#: locale/programs/ld-collate.c:3780 +#: locale/programs/ld-collate.c:3407 locale/programs/ld-collate.c:3537 +#: locale/programs/ld-collate.c:3900 #, c-format msgid "%s: missing `order_end' keyword" -msgstr "%s: `order_end'" +msgstr "%s: пропущено ключевое слово «order_end»" -#: locale/programs/ld-collate.c:3350 +#: locale/programs/ld-collate.c:3470 #, c-format msgid "%s: order for collating symbol %.*s not yet defined" -msgstr "%s: %.*s " +msgstr "%s: порядок для символа сортировки %.*s еще не определен" -#: locale/programs/ld-collate.c:3368 +#: locale/programs/ld-collate.c:3488 #, c-format msgid "%s: order for collating element %.*s not yet defined" -msgstr "%s: %.*s " +msgstr "%s: порядок для элемента сортировки %.*s еще не определен" -#: locale/programs/ld-collate.c:3379 +#: locale/programs/ld-collate.c:3499 #, c-format msgid "%s: cannot reorder after %.*s: symbol not known" -msgstr "%s: %.*s: " +msgstr "%s: невозможно поменять порядок после %.*s: символ неизвестен" -#: locale/programs/ld-collate.c:3431 locale/programs/ld-collate.c:3792 +#: locale/programs/ld-collate.c:3551 locale/programs/ld-collate.c:3912 #, c-format msgid "%s: missing `reorder-end' keyword" -msgstr "%s: `reorder-end'" +msgstr "%s: пропущено ключевое слово «reorder-end»" -#: locale/programs/ld-collate.c:3465 locale/programs/ld-collate.c:3664 +#: locale/programs/ld-collate.c:3585 locale/programs/ld-collate.c:3783 #, c-format msgid "%s: section `%.*s' not known" -msgstr "%s: `%.*s' " +msgstr "%s: секция «%.*s» неизвестна" -#: locale/programs/ld-collate.c:3530 +#: locale/programs/ld-collate.c:3650 #, c-format msgid "%s: bad symbol <%.*s>" -msgstr "%s: <%.*s>" +msgstr "%s: неправильный символ <%.*s>" -#: locale/programs/ld-collate.c:3727 +#: locale/programs/ld-collate.c:3846 #, c-format msgid "%s: cannot have `%s' as end of ellipsis range" -msgstr "%s: `%s' " +msgstr "%s: «%s» не может быть концом диапазона с эллипсисом" -#: locale/programs/ld-collate.c:3776 +#: locale/programs/ld-collate.c:3896 #, c-format msgid "%s: empty category description not allowed" -msgstr "%s: " +msgstr "%s: пустые описания категорий недопустимы" -#: locale/programs/ld-collate.c:3795 +#: locale/programs/ld-collate.c:3915 #, c-format msgid "%s: missing `reorder-sections-end' keyword" -msgstr "%s: `reorder-sections-end'" +msgstr "%s: пропущено ключевое слово «reorder-sections-end»" + +#: locale/programs/ld-collate.c:4077 +#, c-format +msgid "%s: '%s' without matching 'ifdef' or 'ifndef'" +msgstr "%s: '%s' без соответствующего 'ifdef' или 'ifndef'" + +#: locale/programs/ld-collate.c:4095 +#, c-format +msgid "%s: 'endif' without matching 'ifdef' or 'ifndef'" +msgstr "%s: 'endif' без соответствующего 'ifdef' или 'ifndef'" -#: locale/programs/ld-ctype.c:438 +#: locale/programs/ld-ctype.c:439 #, c-format msgid "No character set name specified in charmap" -msgstr " " +msgstr "В отображении знаков не указано имя набора знаков" -#: locale/programs/ld-ctype.c:467 +#: locale/programs/ld-ctype.c:468 #, c-format msgid "character L'\\u%0*x' in class `%s' must be in class `%s'" -msgstr " L'\\u%0*x' `%s' `%s'" +msgstr "знак L'\\u%0*x' в классе «%s» должен быть в классе «%s»" -#: locale/programs/ld-ctype.c:482 +#: locale/programs/ld-ctype.c:483 #, c-format msgid "character L'\\u%0*x' in class `%s' must not be in class `%s'" -msgstr " L'\\u%0*x' `%s' `%s'" +msgstr "знак L'\\u%0*x' в классе «%s» не должен быть в классе «%s»" -#: locale/programs/ld-ctype.c:496 locale/programs/ld-ctype.c:554 +#: locale/programs/ld-ctype.c:497 locale/programs/ld-ctype.c:555 #, c-format msgid "internal error in %s, line %u" -msgstr " %s, %u" +msgstr "внутренняя ошибка в %s, строка %u" -#: locale/programs/ld-ctype.c:525 +#: locale/programs/ld-ctype.c:526 #, c-format msgid "character '%s' in class `%s' must be in class `%s'" -msgstr " '%s' `%s' `%s'" +msgstr "знак »%s» в классе «%s» должен быть в классе «%s»" -#: locale/programs/ld-ctype.c:541 +#: locale/programs/ld-ctype.c:542 #, c-format msgid "character '%s' in class `%s' must not be in class `%s'" -msgstr " '%s' `%s' `%s'" +msgstr "знак »%s» в классе «%s» не должен быть в классе «%s»" -#: locale/programs/ld-ctype.c:571 locale/programs/ld-ctype.c:609 +#: locale/programs/ld-ctype.c:572 locale/programs/ld-ctype.c:610 #, c-format msgid "<SP> character not in class `%s'" -msgstr " <SP> `%s'" +msgstr "знак <SP> не в классе «%s»" -#: locale/programs/ld-ctype.c:583 locale/programs/ld-ctype.c:620 +#: locale/programs/ld-ctype.c:584 locale/programs/ld-ctype.c:621 #, c-format msgid "<SP> character must not be in class `%s'" -msgstr " <SP> `%s'" +msgstr "знак <SP> не должен быть в классе «%s»" -#: locale/programs/ld-ctype.c:598 +#: locale/programs/ld-ctype.c:599 #, c-format msgid "character <SP> not defined in character map" -msgstr " <SP> " +msgstr "знак <SP> не определен в отображении знаков" -#: locale/programs/ld-ctype.c:712 +#: locale/programs/ld-ctype.c:714 #, c-format msgid "`digit' category has not entries in groups of ten" -msgstr " `digit' " +msgstr "вхождения категории «digit» не группируются по десять" -#: locale/programs/ld-ctype.c:761 +#: locale/programs/ld-ctype.c:763 #, c-format msgid "no input digits defined and none of the standard names in the charmap" -msgstr "" +msgstr "не указаны входные цифры или стандартные имена в таблице символов" -#: locale/programs/ld-ctype.c:826 +#: locale/programs/ld-ctype.c:828 #, c-format msgid "not all characters used in `outdigit' are available in the charmap" -msgstr "" +msgstr "не все знаки, использованные в «outdigit», доступны в данной таблице символов" -#: locale/programs/ld-ctype.c:843 +#: locale/programs/ld-ctype.c:845 #, c-format msgid "not all characters used in `outdigit' are available in the repertoire" -msgstr " , `outdigit', " +msgstr "не все знаки, использованные в «outdigit», доступны в данном репертуаре" -#: locale/programs/ld-ctype.c:1243 +#: locale/programs/ld-ctype.c:1245 #, c-format msgid "character class `%s' already defined" -msgstr " `%s' " +msgstr "класс знаков «%s» уже определен" -#: locale/programs/ld-ctype.c:1249 +#: locale/programs/ld-ctype.c:1251 #, c-format msgid "implementation limit: no more than %Zd character classes allowed" -msgstr " : %Zd " +msgstr "ограничение реализации: поддерживается не более %Zd классов знаков" -#: locale/programs/ld-ctype.c:1275 +#: locale/programs/ld-ctype.c:1277 #, c-format msgid "character map `%s' already defined" -msgstr " `%s' " +msgstr "отображение знаков «%s» уже определено" -#: locale/programs/ld-ctype.c:1281 +#: locale/programs/ld-ctype.c:1283 #, c-format msgid "implementation limit: no more than %d character maps allowed" -msgstr " : %d " +msgstr "ограничение реализации: допускается не более %d отображений знаков" -#: locale/programs/ld-ctype.c:1546 locale/programs/ld-ctype.c:1671 -#: locale/programs/ld-ctype.c:1777 locale/programs/ld-ctype.c:2466 -#: locale/programs/ld-ctype.c:3462 +#: locale/programs/ld-ctype.c:1548 locale/programs/ld-ctype.c:1673 +#: locale/programs/ld-ctype.c:1779 locale/programs/ld-ctype.c:2471 +#: locale/programs/ld-ctype.c:3467 #, c-format msgid "%s: field `%s' does not contain exactly ten entries" -msgstr "%s: `%s' " +msgstr "%s: поле «%s» не содержит ровно десять вхождений" -#: locale/programs/ld-ctype.c:1574 locale/programs/ld-ctype.c:2145 +#: locale/programs/ld-ctype.c:1576 locale/programs/ld-ctype.c:2150 #, c-format msgid "to-value <U%0*X> of range is smaller than from-value <U%0*X>" -msgstr " <U%0*X> <U%0*X>" +msgstr "верхнее значение диапазона <U%0*X> меньше чем нижнее значение <U%0*X>" -#: locale/programs/ld-ctype.c:1701 +#: locale/programs/ld-ctype.c:1703 msgid "start and end character sequence of range must have the same length" -msgstr " " +msgstr "начальная и конечная последовательности знаков диапазона должны быть одинаковой длины" -#: locale/programs/ld-ctype.c:1708 +#: locale/programs/ld-ctype.c:1710 msgid "to-value character sequence is smaller than from-value sequence" -msgstr " " +msgstr "конечная последовательность знаков диапазона меньше чем начальная" -#: locale/programs/ld-ctype.c:2065 locale/programs/ld-ctype.c:2116 +#: locale/programs/ld-ctype.c:2070 locale/programs/ld-ctype.c:2121 msgid "premature end of `translit_ignore' definition" -msgstr " `translit_ignore'" +msgstr "преждевременный конец определения «translit_ignore»" -#: locale/programs/ld-ctype.c:2071 locale/programs/ld-ctype.c:2122 -#: locale/programs/ld-ctype.c:2164 +#: locale/programs/ld-ctype.c:2076 locale/programs/ld-ctype.c:2127 +#: locale/programs/ld-ctype.c:2169 msgid "syntax error" -msgstr " " +msgstr "синтаксическая ошибка" -#: locale/programs/ld-ctype.c:2298 +#: locale/programs/ld-ctype.c:2303 #, c-format msgid "%s: syntax error in definition of new character class" -msgstr "%s: " +msgstr "%s: синтаксическая ошибка в определении нового класса знаков" -#: locale/programs/ld-ctype.c:2313 +#: locale/programs/ld-ctype.c:2318 #, c-format msgid "%s: syntax error in definition of new character map" -msgstr "%s: " +msgstr "%s: синтаксическая ошибка в определении нового отображения знаков" -#: locale/programs/ld-ctype.c:2488 +#: locale/programs/ld-ctype.c:2493 msgid "ellipsis range must be marked by two operands of same type" -msgstr " " +msgstr "диапазон с эллипсисом должен быть помечен двумя операндами одного типа" -#: locale/programs/ld-ctype.c:2497 +#: locale/programs/ld-ctype.c:2502 msgid "with symbolic name range values the absolute ellipsis `...' must not be used" -msgstr " `...'" +msgstr "с символьными именами значений диапазона нельзя использовать абсолютный эллипсис «...»" -#: locale/programs/ld-ctype.c:2512 +#: locale/programs/ld-ctype.c:2517 msgid "with UCS range values one must use the hexadecimal symbolic ellipsis `..'" -msgstr " UCS- `..'" +msgstr "с UCS-значениями диапазона следует использовать шестнадцатиричный символьный эллипсис «..»" -#: locale/programs/ld-ctype.c:2526 +#: locale/programs/ld-ctype.c:2531 msgid "with character code range values one must use the absolute ellipsis `...'" -msgstr " `...'" +msgstr "со знаковыми кодами значений диапазона следует использовать абсолютный эллипсис «...»" -#: locale/programs/ld-ctype.c:2677 +#: locale/programs/ld-ctype.c:2682 #, c-format msgid "duplicated definition for mapping `%s'" -msgstr " `%s'" +msgstr "повторное определение отображения «%s»" -#: locale/programs/ld-ctype.c:2763 locale/programs/ld-ctype.c:2907 +#: locale/programs/ld-ctype.c:2768 locale/programs/ld-ctype.c:2912 #, c-format msgid "%s: `translit_start' section does not end with `translit_end'" -msgstr "%s: `translit_start' `translit_end'" +msgstr "%s: секция «translit_start» не заканчивается на «translit_end»" -#: locale/programs/ld-ctype.c:2858 +#: locale/programs/ld-ctype.c:2863 #, c-format msgid "%s: duplicate `default_missing' definition" -msgstr "%s: `default_missing'" +msgstr "%s: повторное определение «default_missing»" -#: locale/programs/ld-ctype.c:2863 +#: locale/programs/ld-ctype.c:2868 msgid "previous definition was here" -msgstr " " +msgstr "предыдущее определение было здесь" -#: locale/programs/ld-ctype.c:2885 +#: locale/programs/ld-ctype.c:2890 #, c-format msgid "%s: no representable `default_missing' definition found" -msgstr "%s: `default_missing'" - -#: locale/programs/ld-ctype.c:3038 -#, c-format -msgid "%s: character `%s' not defined in charmap while needed as default value" -msgstr "%s: `%s' , " +msgstr "%s: не найдено представимого определения «default_missing»" #: locale/programs/ld-ctype.c:3043 locale/programs/ld-ctype.c:3127 #: locale/programs/ld-ctype.c:3147 locale/programs/ld-ctype.c:3168 #: locale/programs/ld-ctype.c:3189 locale/programs/ld-ctype.c:3210 #: locale/programs/ld-ctype.c:3231 locale/programs/ld-ctype.c:3271 #: locale/programs/ld-ctype.c:3292 locale/programs/ld-ctype.c:3359 -#, c-format -msgid "%s: character `%s' in charmap not representable with one byte" -msgstr "%s: `%s' " - -#: locale/programs/ld-ctype.c:3122 locale/programs/ld-ctype.c:3142 -#: locale/programs/ld-ctype.c:3184 locale/programs/ld-ctype.c:3205 -#: locale/programs/ld-ctype.c:3226 locale/programs/ld-ctype.c:3266 -#: locale/programs/ld-ctype.c:3287 locale/programs/ld-ctype.c:3354 -#: locale/programs/ld-ctype.c:3396 locale/programs/ld-ctype.c:3421 +#: locale/programs/ld-ctype.c:3401 locale/programs/ld-ctype.c:3426 #, c-format msgid "%s: character `%s' not defined while needed as default value" -msgstr "%s: `%s' , " +msgstr "%s: знак «%s» не определен, хотя он нужен как значение по умолчанию" -#: locale/programs/ld-ctype.c:3163 +#: locale/programs/ld-ctype.c:3048 locale/programs/ld-ctype.c:3132 +#: locale/programs/ld-ctype.c:3152 locale/programs/ld-ctype.c:3173 +#: locale/programs/ld-ctype.c:3194 locale/programs/ld-ctype.c:3215 +#: locale/programs/ld-ctype.c:3236 locale/programs/ld-ctype.c:3276 +#: locale/programs/ld-ctype.c:3297 locale/programs/ld-ctype.c:3364 #, c-format -msgid "character `%s' not defined while needed as default value" -msgstr " `%s' , " +msgid "%s: character `%s' in charmap not representable with one byte" +msgstr "%s: знак «%s» в отображении знаков непредставим одним байтом" -#: locale/programs/ld-ctype.c:3403 locale/programs/ld-ctype.c:3428 +#: locale/programs/ld-ctype.c:3408 locale/programs/ld-ctype.c:3433 #, c-format msgid "%s: character `%s' needed as default value not representable with one byte" -msgstr "%s: `%s' , " +msgstr "%s: знак «%s» нужен как значение по умолчанию, но его нельзя представить одним байтом" -#: locale/programs/ld-ctype.c:3483 +#: locale/programs/ld-ctype.c:3489 #, c-format msgid "no output digits defined and none of the standard names in the charmap" -msgstr "" +msgstr "не указаны выходные цифры или стандартные имена в таблице символов" -#: locale/programs/ld-ctype.c:3774 +#: locale/programs/ld-ctype.c:3780 #, c-format msgid "%s: transliteration data from locale `%s' not available" -msgstr "%s: `%s'" +msgstr "%s: нет данных для транслитерации из локали «%s»" -#: locale/programs/ld-ctype.c:3875 +#: locale/programs/ld-ctype.c:3881 #, c-format msgid "%s: table for class \"%s\": %lu bytes\n" -msgstr "%s: \"%s\": %lu \n" +msgstr "%s: таблица для класса «%s»: %lu байт\n" -#: locale/programs/ld-ctype.c:3944 +#: locale/programs/ld-ctype.c:3950 #, c-format msgid "%s: table for map \"%s\": %lu bytes\n" -msgstr "%s: \"%s\": %lu \n" +msgstr "%s: таблица для отображения «%s»: %lu байт\n" -#: locale/programs/ld-ctype.c:4077 +#: locale/programs/ld-ctype.c:4083 #, c-format msgid "%s: table for width: %lu bytes\n" -msgstr "%s: : %lu \n" +msgstr "%s: таблица для ширины: %lu байт\n" -#: locale/programs/ld-identification.c:169 +#: locale/programs/ld-identification.c:170 #, c-format msgid "%s: no identification for category `%s'" -msgstr "%s: `%s'" +msgstr "%s: нет идентификации для категории «%s»" -#: locale/programs/ld-identification.c:434 +#: locale/programs/ld-identification.c:435 #, c-format msgid "%s: duplicate category version definition" -msgstr "%s: " +msgstr "%s: повторное определение версии категории" -#: locale/programs/ld-measurement.c:112 +#: locale/programs/ld-measurement.c:113 #, c-format msgid "%s: invalid value for field `%s'" -msgstr "%s: `%s'" +msgstr "%s: недопустимое значение поля «%s»" -#: locale/programs/ld-messages.c:113 locale/programs/ld-messages.c:147 +#: locale/programs/ld-messages.c:114 locale/programs/ld-messages.c:148 #, c-format msgid "%s: field `%s' undefined" -msgstr "%s: `%s' " +msgstr "%s: поле «%s» не определено" -#: locale/programs/ld-messages.c:120 locale/programs/ld-messages.c:154 +#: locale/programs/ld-messages.c:121 locale/programs/ld-messages.c:155 +#: locale/programs/ld-monetary.c:256 locale/programs/ld-numeric.c:118 #, c-format msgid "%s: value for field `%s' must not be an empty string" -msgstr "%s: `%s' " +msgstr "%s: значение поля «%s» не должно быть пустой строкой" -#: locale/programs/ld-messages.c:136 locale/programs/ld-messages.c:170 +#: locale/programs/ld-messages.c:137 locale/programs/ld-messages.c:171 #, c-format msgid "%s: no correct regular expression for field `%s': %s" -msgstr "%s: `%s': %s" +msgstr "%s: нет правильного регулярного выражения для поля «%s»: %s" -#: locale/programs/ld-monetary.c:222 +#: locale/programs/ld-monetary.c:224 #, c-format msgid "%s: value of field `int_curr_symbol' has wrong length" -msgstr "%s: `int_curr_symbol' " +msgstr "%s: значение поля «int_curr_symbol» имеет неправильную длину" -#: locale/programs/ld-monetary.c:235 +#: locale/programs/ld-monetary.c:237 #, c-format msgid "%s: value of field `int_curr_symbol' does not correspond to a valid name in ISO 4217" -msgstr "%s: `int_curr_symbol' ISO 4217" +msgstr "%s: значение поля «int_curr_symbol» не соответствует ни одному верному имени из ISO 4217" -#: locale/programs/ld-monetary.c:254 locale/programs/ld-numeric.c:117 -#, c-format -msgid "%s: value for field `%s' must not be the empty string" -msgstr "%s: `%s' " - -#: locale/programs/ld-monetary.c:282 locale/programs/ld-monetary.c:312 +#: locale/programs/ld-monetary.c:285 locale/programs/ld-monetary.c:315 #, c-format msgid "%s: value for field `%s' must be in range %d...%d" -msgstr "%s: `%s' %d...%d" +msgstr "%s: значение поля «%s» должно быть в диапазоне %d...%d" -#: locale/programs/ld-monetary.c:744 locale/programs/ld-numeric.c:273 +#: locale/programs/ld-monetary.c:747 locale/programs/ld-numeric.c:274 #, c-format msgid "%s: value for field `%s' must be a single character" -msgstr "%s: `%s' " +msgstr "%s: значение поля «%s» должно быть одним знаком" -#: locale/programs/ld-monetary.c:841 locale/programs/ld-numeric.c:317 +#: locale/programs/ld-monetary.c:844 locale/programs/ld-numeric.c:318 #, c-format msgid "%s: `-1' must be last entry in `%s' field" -msgstr "%s: `-1' `%s'" +msgstr "%s: «-1» должно быть последним вхождение в поле «%s»" -#: locale/programs/ld-monetary.c:863 locale/programs/ld-numeric.c:334 +#: locale/programs/ld-monetary.c:866 locale/programs/ld-numeric.c:335 #, c-format msgid "%s: values for field `%s' must be smaller than 127" -msgstr "%s: `%s' 127" +msgstr "%s: значения поля «%s» должны быть меньше 127" -#: locale/programs/ld-monetary.c:906 +#: locale/programs/ld-monetary.c:909 msgid "conversion rate value cannot be zero" -msgstr " " +msgstr "значение обменного курса не может быть нулем" -#: locale/programs/ld-name.c:128 locale/programs/ld-telephone.c:125 -#: locale/programs/ld-telephone.c:148 +#: locale/programs/ld-name.c:129 locale/programs/ld-telephone.c:126 +#: locale/programs/ld-telephone.c:149 #, c-format msgid "%s: invalid escape sequence in field `%s'" -msgstr "%s: `%s'" +msgstr "%s: недопустимая управляющая последовательность в поле «%s»" -#: locale/programs/ld-time.c:246 +#: locale/programs/ld-time.c:247 #, c-format msgid "%s: direction flag in string %Zd in `era' field is not '+' nor '-'" -msgstr "%s: %Zd `era' '+' '-'" +msgstr "%s: флаг направления в строке %Zd в поле «era» не »+» и не »-»" -#: locale/programs/ld-time.c:257 +#: locale/programs/ld-time.c:258 #, c-format msgid "%s: direction flag in string %Zd in `era' field is not a single character" -msgstr "%s: %Zd `era' " +msgstr "%s: флаг направления в строке %Zd в поле «era» не является одним знаком" -#: locale/programs/ld-time.c:270 +#: locale/programs/ld-time.c:271 #, c-format msgid "%s: invalid number for offset in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: недопустимое число для смещения в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:278 +#: locale/programs/ld-time.c:279 #, c-format msgid "%s: garbage at end of offset value in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: мусор в конце значения смещения в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:329 +#: locale/programs/ld-time.c:330 #, c-format msgid "%s: invalid starting date in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: недопустимая начальная дата в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:338 +#: locale/programs/ld-time.c:339 #, c-format msgid "%s: garbage at end of starting date in string %Zd in `era' field " -msgstr "%s: %Zd `era'" +msgstr "%s: мусор в конце начальной даты в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:357 +#: locale/programs/ld-time.c:358 #, c-format msgid "%s: starting date is invalid in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: неверная начальная дата в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:406 +#: locale/programs/ld-time.c:407 #, c-format msgid "%s: invalid stopping date in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: неверная конечная дата в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:415 +#: locale/programs/ld-time.c:416 #, c-format msgid "%s: garbage at end of stopping date in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: мусор в конце конечной даты в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:434 +#: locale/programs/ld-time.c:435 #, c-format msgid "%s: stopping date is invalid in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: неверная конечная дата в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:443 +#: locale/programs/ld-time.c:444 #, c-format msgid "%s: missing era name in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: пропущено имя эры в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:455 +#: locale/programs/ld-time.c:456 #, c-format msgid "%s: missing era format in string %Zd in `era' field" -msgstr "%s: %Zd `era'" +msgstr "%s: пропущен формат эры в строке %Zd в поле «era»" -#: locale/programs/ld-time.c:496 +#: locale/programs/ld-time.c:497 #, c-format msgid "%s: third operand for value of field `%s' must not be larger than %d" -msgstr "%s: `%s' %d" - -#: locale/programs/ld-time.c:504 locale/programs/ld-time.c:512 -#, c-format -msgid "%s: values of field `%s' must not be larger than %d" -msgstr "%s: `%s' %d" +msgstr "%s: третий операнд для значения поля «%s» не должен быть больше %d" -#: locale/programs/ld-time.c:520 +#: locale/programs/ld-time.c:505 locale/programs/ld-time.c:513 +#: locale/programs/ld-time.c:521 #, c-format msgid "%s: values for field `%s' must not be larger than %d" -msgstr "%s: `%s' %d" +msgstr "%s: значения для поля «%s» не должны быть больше %d" -#: locale/programs/ld-time.c:1003 +#: locale/programs/ld-time.c:1004 #, c-format msgid "%s: too few values for field `%s'" -msgstr "%s: `%s'" +msgstr "%s: слишком мало значений для поля «%s»" -#: locale/programs/ld-time.c:1048 +#: locale/programs/ld-time.c:1049 msgid "extra trailing semicolon" -msgstr " " +msgstr "лишнее двоеточие в конце" -#: locale/programs/ld-time.c:1051 +#: locale/programs/ld-time.c:1052 #, c-format msgid "%s: too many values for field `%s'" -msgstr "%s: `%s'" +msgstr "%s: слишком много значений для поля «%s»" -#: locale/programs/linereader.c:129 +#: locale/programs/linereader.c:130 msgid "trailing garbage at end of line" -msgstr " " +msgstr "мусор в конце строки" -#: locale/programs/linereader.c:297 +#: locale/programs/linereader.c:298 msgid "garbage at end of number" -msgstr " " +msgstr "мусор в конце числа" -#: locale/programs/linereader.c:409 +#: locale/programs/linereader.c:410 msgid "garbage at end of character code specification" -msgstr " " +msgstr "мусор в конце спецификации кода знака" -#: locale/programs/linereader.c:495 +#: locale/programs/linereader.c:496 msgid "unterminated symbolic name" -msgstr " " +msgstr "незавершенное символьное имя" -#: locale/programs/linereader.c:622 +#: locale/programs/linereader.c:623 msgid "illegal escape sequence at end of string" -msgstr " " +msgstr "неверная управляющая последовательность в конце строки" -#: locale/programs/linereader.c:626 locale/programs/linereader.c:854 +#: locale/programs/linereader.c:627 locale/programs/linereader.c:855 msgid "unterminated string" -msgstr " " +msgstr "незавершенная строка" -#: locale/programs/linereader.c:668 +#: locale/programs/linereader.c:669 msgid "non-symbolic character value should not be used" -msgstr " " +msgstr "не стоит использовать несимвольное знаковое значение" -#: locale/programs/linereader.c:815 +#: locale/programs/linereader.c:816 #, c-format msgid "symbol `%.*s' not in charmap" -msgstr " `%.*s' " +msgstr "символ «%.*s» отсутствует в отображении знаков" -#: locale/programs/linereader.c:836 +#: locale/programs/linereader.c:837 #, c-format msgid "symbol `%.*s' not in repertoire map" -msgstr " `%.*s' " +msgstr "символ «%.*s» отсутствует в отображении репертуара" -#: locale/programs/locale.c:73 +#: locale/programs/locale.c:74 msgid "System information:" -msgstr " :" +msgstr "Информация о системе:" -#: locale/programs/locale.c:75 +#: locale/programs/locale.c:76 msgid "Write names of available locales" -msgstr " " +msgstr "Написать имена доступных локалей" -#: locale/programs/locale.c:77 +#: locale/programs/locale.c:78 msgid "Write names of available charmaps" -msgstr " " +msgstr "Печатает имена доступных отображений знаков" -#: locale/programs/locale.c:78 +#: locale/programs/locale.c:79 msgid "Modify output format:" -msgstr " :" +msgstr "Изменение выходного формата:" -#: locale/programs/locale.c:79 +#: locale/programs/locale.c:80 msgid "Write names of selected categories" -msgstr " " +msgstr "Написать имена выбранных категорий" -#: locale/programs/locale.c:80 +#: locale/programs/locale.c:81 msgid "Write names of selected keywords" -msgstr " " +msgstr "Написать имена выбранных ключевых слов" -#: locale/programs/locale.c:81 +#: locale/programs/locale.c:82 msgid "Print more information" -msgstr " " +msgstr "Напечатать больше информации" -#: locale/programs/locale.c:86 +#: locale/programs/locale.c:87 msgid "" -"Get locale-specific information.For bug reporting instructions, please see:\n" +"Get locale-specific information.\vFor bug reporting instructions, please see:\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" msgstr "" -" , . \n" +"Выдает информацию, относящуюся к локали.\vИнструкции по сообщению об ошибках смотрите на\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" -#: locale/programs/locale.c:91 +#: locale/programs/locale.c:92 msgid "" "NAME\n" "[-a|-m]" msgstr "" -"\n" +"ИМЯ\n" "[-a|-m]" -#: locale/programs/locale.c:192 +#: locale/programs/locale.c:193 #, c-format msgid "Cannot set LC_CTYPE to default locale" -msgstr " LC_CTYPE ." +msgstr "Невозможно установить LC_CTYPE в локаль по умолчанию." -#: locale/programs/locale.c:194 +#: locale/programs/locale.c:195 #, c-format msgid "Cannot set LC_MESSAGES to default locale" -msgstr " LC_MESSAGES ." +msgstr "Невозможно установить LC_MESSAGES в локаль по умолчанию." -#: locale/programs/locale.c:207 +#: locale/programs/locale.c:208 #, c-format msgid "Cannot set LC_COLLATE to default locale" -msgstr " LC_COLLATE ." +msgstr "Невозможно установить LC_COLLATE в локаль по умолчанию." -#: locale/programs/locale.c:223 +#: locale/programs/locale.c:224 #, c-format msgid "Cannot set LC_ALL to default locale" -msgstr " LC_ALL ." +msgstr "Невозможно установить LC_ALL в локаль по умолчанию." -#: locale/programs/locale.c:499 +#: locale/programs/locale.c:500 #, c-format msgid "while preparing output" -msgstr " " +msgstr "при подготовке вывода" -#: locale/programs/localedef.c:119 +#: locale/programs/localedef.c:120 msgid "Input Files:" -msgstr " :" +msgstr "Входные файлы:" -#: locale/programs/localedef.c:121 +#: locale/programs/localedef.c:122 msgid "Symbolic character names defined in FILE" -msgstr " " +msgstr "Символьные имена знаков объявлены в ФАЙЛЕ" -#: locale/programs/localedef.c:122 +#: locale/programs/localedef.c:123 msgid "Source definitions are found in FILE" -msgstr " " +msgstr "Исходные определения находятся в ФАЙЛЕ" -#: locale/programs/localedef.c:124 +#: locale/programs/localedef.c:125 msgid "FILE contains mapping from symbolic names to UCS4 values" -msgstr " UCS4" +msgstr "ФАЙЛ содержит отображения из символьных имен в значения UCS4" -#: locale/programs/localedef.c:128 +#: locale/programs/localedef.c:129 msgid "Create output even if warning messages were issued" -msgstr " , " +msgstr "Создавать вывод, даже если были предупреждения" -#: locale/programs/localedef.c:129 +#: locale/programs/localedef.c:130 msgid "Create old-style tables" -msgstr " " +msgstr "Создавать таблицы в старом стиле" -#: locale/programs/localedef.c:130 +#: locale/programs/localedef.c:131 msgid "Optional output file prefix" -msgstr " " +msgstr "Необязательный префикс для выходных файлов" -#: locale/programs/localedef.c:131 +#: locale/programs/localedef.c:132 msgid "Be strictly POSIX conform" -msgstr " POSIX" +msgstr "Строго следовать стандарту POSIX" -#: locale/programs/localedef.c:133 +#: locale/programs/localedef.c:134 msgid "Suppress warnings and information messages" -msgstr " " +msgstr "Не выводить предупреждения и информационные сообщения" -#: locale/programs/localedef.c:134 +#: locale/programs/localedef.c:135 msgid "Print more messages" -msgstr " " +msgstr "Печатать больше сообщений" -#: locale/programs/localedef.c:135 +#: locale/programs/localedef.c:136 msgid "Archive control:" -msgstr " :" +msgstr "Управление архивом:" -#: locale/programs/localedef.c:137 +#: locale/programs/localedef.c:138 msgid "Don't add new data to archive" -msgstr " " +msgstr "Не добавлять в архив новые данные" -#: locale/programs/localedef.c:139 +#: locale/programs/localedef.c:140 msgid "Add locales named by parameters to archive" -msgstr " , " +msgstr "Добавить в архив локали, указанные в параметрах" -#: locale/programs/localedef.c:140 +#: locale/programs/localedef.c:141 msgid "Replace existing archive content" -msgstr " " +msgstr "Заменить существующее содержимое архива" -#: locale/programs/localedef.c:142 +#: locale/programs/localedef.c:143 msgid "Remove locales named by parameters from archive" -msgstr " , " +msgstr "Удалить из архива локали, указанные в параметрах" -#: locale/programs/localedef.c:143 +#: locale/programs/localedef.c:144 msgid "List content of archive" -msgstr " " +msgstr "Перечислить содержимое архива" -#: locale/programs/localedef.c:145 +#: locale/programs/localedef.c:146 msgid "locale.alias file to consult when making archive" -msgstr " locale.alias, " +msgstr "файл locale.alias, к которому следует обращаться при создании архива" -#: locale/programs/localedef.c:150 +#: locale/programs/localedef.c:151 msgid "Compile locale specification" -msgstr " " +msgstr "Компилирует спецификацию локали" -#: locale/programs/localedef.c:153 +#: locale/programs/localedef.c:154 msgid "" "NAME\n" "[--add-to-archive|--delete-from-archive] FILE...\n" "--list-archive [FILE]" msgstr "" -"\n" -"[--add-to-archive|--delete-from-archive] ...\n" -"--list-archive []" +"ИМЯ\n" +"[--add-to-archive|--delete-from-archive] ФАЙЛ...\n" +"--list-archive [ФАЙЛ]" -#: locale/programs/localedef.c:231 +#: locale/programs/localedef.c:232 #, c-format msgid "cannot create directory for output files" -msgstr " " +msgstr "невозможно создать каталог для выходных файлов" -#: locale/programs/localedef.c:242 +#: locale/programs/localedef.c:243 #, c-format msgid "FATAL: system does not define `_POSIX2_LOCALEDEF'" -msgstr " : `_POSIX2_LOCALEDEF'" +msgstr "ФАТАЛЬНАЯ ОШИБКА: система не определяет «_POSIX2_LOCALEDEF»" -#: locale/programs/localedef.c:256 locale/programs/localedef.c:272 -#: locale/programs/localedef.c:598 locale/programs/localedef.c:618 +#: locale/programs/localedef.c:257 locale/programs/localedef.c:273 +#: locale/programs/localedef.c:599 locale/programs/localedef.c:619 #, c-format msgid "cannot open locale definition file `%s'" -msgstr " `%s'" +msgstr "невозможно открыть файл с определением локали «%s»" -#: locale/programs/localedef.c:284 +#: locale/programs/localedef.c:285 #, c-format msgid "cannot write output files to `%s'" -msgstr " `%s'" +msgstr "невозможно записать выходные файлы в «%s»" -#: locale/programs/localedef.c:365 +#: locale/programs/localedef.c:366 #, c-format msgid "" "System's directory for character maps : %s\n" @@ -2556,218 +2552,214 @@ msgid "" " locale path : %s\n" "%s" msgstr "" -" : %s\n" -" : %s\n" -" : %s\n" +"Системные каталоги для отображений знаков: %s\n" +" отображений репертуаров: %s\n" +" путь локали : %s\n" "%s" -#: locale/programs/localedef.c:566 +#: locale/programs/localedef.c:567 #, c-format msgid "circular dependencies between locale definitions" -msgstr " " +msgstr "циклические зависимости между определениями локалей" -#: locale/programs/localedef.c:572 +#: locale/programs/localedef.c:573 #, c-format msgid "cannot add already read locale `%s' a second time" -msgstr " `%s' " +msgstr "невозможно добавить уже считанную локаль «%s» второй раз" -#: locale/programs/locarchive.c:87 locale/programs/locarchive.c:256 +#: locale/programs/locarchive.c:88 locale/programs/locarchive.c:261 #, c-format msgid "cannot create temporary file" -msgstr " " +msgstr "невозможно создать временный файл" -#: locale/programs/locarchive.c:116 locale/programs/locarchive.c:302 +#: locale/programs/locarchive.c:118 locale/programs/locarchive.c:307 #, c-format msgid "cannot initialize archive file" -msgstr " " +msgstr "невозможно проинициализировать архивный файл" -#: locale/programs/locarchive.c:123 locale/programs/locarchive.c:309 +#: locale/programs/locarchive.c:125 locale/programs/locarchive.c:314 #, c-format msgid "cannot resize archive file" -msgstr " " +msgstr "невозможно изменить размер архивного файла" -#: locale/programs/locarchive.c:132 locale/programs/locarchive.c:318 -#: locale/programs/locarchive.c:506 +#: locale/programs/locarchive.c:134 locale/programs/locarchive.c:323 +#: locale/programs/locarchive.c:527 #, c-format msgid "cannot map archive header" -msgstr " " +msgstr "невозможно отобразить в память заголовок архива" -#: locale/programs/locarchive.c:154 +#: locale/programs/locarchive.c:156 #, c-format msgid "failed to create new locale archive" -msgstr " " +msgstr "не удалось создать новый архив локали" -#: locale/programs/locarchive.c:166 +#: locale/programs/locarchive.c:168 #, c-format msgid "cannot change mode of new locale archive" -msgstr " " +msgstr "невозможно изменить права доступа для нового архивного файла" -#: locale/programs/locarchive.c:250 +#: locale/programs/locarchive.c:255 #, c-format msgid "cannot map locale archive file" -msgstr " " +msgstr "невозможно отобразить в память архивный файл локали" -#: locale/programs/locarchive.c:326 +#: locale/programs/locarchive.c:331 #, c-format msgid "cannot lock new archive" -msgstr " " +msgstr "невозможно заблокировать новый архив" -#: locale/programs/locarchive.c:375 +#: locale/programs/locarchive.c:396 #, c-format msgid "cannot extend locale archive file" -msgstr " " +msgstr "невозможно расширить архивный файл локали" -#: locale/programs/locarchive.c:384 +#: locale/programs/locarchive.c:405 #, c-format msgid "cannot change mode of resized locale archive" -msgstr " " +msgstr "невозможно изменить права доступа архива локали после изменения размера" -#: locale/programs/locarchive.c:392 +#: locale/programs/locarchive.c:413 #, c-format msgid "cannot rename new archive" -msgstr " " +msgstr "невозможно переименовать новый архив" -#: locale/programs/locarchive.c:445 +#: locale/programs/locarchive.c:466 #, c-format msgid "cannot open locale archive \"%s\"" -msgstr " \"%s\"" +msgstr "невозможно открыть архив локали «%s»" -#: locale/programs/locarchive.c:450 +#: locale/programs/locarchive.c:471 #, c-format msgid "cannot stat locale archive \"%s\"" -msgstr " stat \"%s\"" +msgstr "невозможно выполнить stat для архива локали «%s»" -#: locale/programs/locarchive.c:469 +#: locale/programs/locarchive.c:490 #, c-format msgid "cannot lock locale archive \"%s\"" -msgstr " \"%s\"" +msgstr "невозможно заблокировать архив локали «%s»" -#: locale/programs/locarchive.c:492 +#: locale/programs/locarchive.c:513 #, c-format msgid "cannot read archive header" -msgstr " " +msgstr "невозможно считать заголовок архива" -#: locale/programs/locarchive.c:552 +#: locale/programs/locarchive.c:573 #, c-format msgid "locale '%s' already exists" -msgstr " '%s' " +msgstr "локаль «%s» уже существует" -#: locale/programs/locarchive.c:783 locale/programs/locarchive.c:798 -#: locale/programs/locarchive.c:810 locale/programs/locarchive.c:822 -#: locale/programs/locfile.c:343 +#: locale/programs/locarchive.c:804 locale/programs/locarchive.c:819 +#: locale/programs/locarchive.c:831 locale/programs/locarchive.c:843 +#: locale/programs/locfile.c:344 #, c-format msgid "cannot add to locale archive" -msgstr " " +msgstr "невозможно добавить к архиву локали" -#: locale/programs/locarchive.c:977 +#: locale/programs/locarchive.c:998 #, c-format msgid "locale alias file `%s' not found" -msgstr " `%s' " +msgstr "файл псевдонимов локалей «%s» не найден" -#: locale/programs/locarchive.c:1121 +#: locale/programs/locarchive.c:1142 #, c-format msgid "Adding %s\n" -msgstr " %s\n" +msgstr "Добавление %s\n" -#: locale/programs/locarchive.c:1127 +#: locale/programs/locarchive.c:1148 #, c-format msgid "stat of \"%s\" failed: %s: ignored" -msgstr " stat \"%s\" : %s: " +msgstr "операция stat для «%s» неуспешна: %s: игнорировано" -#: locale/programs/locarchive.c:1133 +#: locale/programs/locarchive.c:1154 #, c-format msgid "\"%s\" is no directory; ignored" -msgstr "\"%s\" ; " +msgstr "«%s» не является каталогом; игнорировано" -#: locale/programs/locarchive.c:1140 +#: locale/programs/locarchive.c:1161 #, c-format msgid "cannot open directory \"%s\": %s: ignored" -msgstr " \"%s\": %s: " +msgstr "невозможно открыть каталог «%s»: %s: игнорировано" -#: locale/programs/locarchive.c:1212 +#: locale/programs/locarchive.c:1233 #, c-format msgid "incomplete set of locale files in \"%s\"" -msgstr " \"%s\"" +msgstr "неполный набор файлов локали в «%s»" -#: locale/programs/locarchive.c:1276 +#: locale/programs/locarchive.c:1297 #, c-format msgid "cannot read all files in \"%s\": ignored" -msgstr " \"%s\": " +msgstr "невозможно прочитать все файлы в «%s»: игнорировано" -#: locale/programs/locarchive.c:1346 +#: locale/programs/locarchive.c:1367 #, c-format msgid "locale \"%s\" not in archive" -msgstr " \"%s\" " +msgstr "локаль «%s» отсутствует в архиве" -#: locale/programs/locfile.c:131 +#: locale/programs/locfile.c:132 #, c-format msgid "argument to `%s' must be a single character" -msgstr " `%s' " +msgstr "аргумент для «%s» должен быть одним знаком" -#: locale/programs/locfile.c:251 +#: locale/programs/locfile.c:252 msgid "syntax error: not inside a locale definition section" -msgstr " : " +msgstr "синтаксическая ошибка: вне секции определения локали" -#: locale/programs/locfile.c:625 +#: locale/programs/locfile.c:626 #, c-format msgid "cannot open output file `%s' for category `%s'" -msgstr " `%s' `%s'" +msgstr "невозможно открыть выходной файл «%s» для категории «%s»" -#: locale/programs/locfile.c:649 +#: locale/programs/locfile.c:650 #, c-format msgid "failure while writing data for category `%s'" -msgstr " `%s'" +msgstr "ошибка при записи данных для категории«%s»" -#: locale/programs/locfile.c:745 +#: locale/programs/locfile.c:746 #, c-format msgid "cannot create output file `%s' for category `%s'" -msgstr " `%s' `%s'" +msgstr "невозможно создать выходной файл «%s» для категории «%s»" -#: locale/programs/locfile.c:781 +#: locale/programs/locfile.c:782 msgid "expect string argument for `copy'" -msgstr " `copy' -" +msgstr "для «copy» ожидается аргумент-строка" -#: locale/programs/locfile.c:785 +#: locale/programs/locfile.c:786 msgid "locale name should consist only of portable characters" -msgstr " " +msgstr "имя локали должно состоять только из переносимых знаков" -#: locale/programs/locfile.c:804 +#: locale/programs/locfile.c:805 msgid "no other keyword shall be specified when `copy' is used" -msgstr " `copy' " +msgstr "при использовании «copy» нельзя задавать другие ключевые слова" + +#: locale/programs/locfile.c:819 +#, c-format +msgid "`%1$s' definition does not end with `END %1$s'" +msgstr "определение «%1$s» не заканчивается на «END %1$s»" #: locale/programs/repertoire.c:229 locale/programs/repertoire.c:270 #: locale/programs/repertoire.c:295 #, c-format msgid "syntax error in repertoire map definition: %s" -msgstr " : %s" +msgstr "синтаксическая ошибка в определении отображения репертуара: %s" #: locale/programs/repertoire.c:271 msgid "no <Uxxxx> or <Uxxxxxxxx> value given" -msgstr " <Uxxxx> <Uxxxxxxxx>" +msgstr "не задано значение <Uxxxx> или <Uxxxxxxxx>" #: locale/programs/repertoire.c:331 #, c-format msgid "cannot save new repertoire map" -msgstr " " +msgstr "невозможно сохранить новое отображение репертуара" #: locale/programs/repertoire.c:342 #, c-format msgid "repertoire map file `%s' not found" -msgstr " `%s' " - -#: locale/programs/repertoire.c:449 -#, c-format -msgid "<%s> and <%s> are invalid names for range" -msgstr "<%s> <%s> " - -#: locale/programs/repertoire.c:456 -msgid "upper limit in range is not smaller then lower limit" -msgstr " " +msgstr "файл отображения репертуара «%s» не найден" #: login/programs/pt_chown.c:74 #, c-format msgid "Set the owner, group and access permission of the slave pseudo terminal corresponding to the master pseudo terminal passed on file descriptor `%d'. This is the helper program for the `grantpt' function. It is not intended to be run directly from the command line.\n" -msgstr " , , , `%d'. `grantpt'. .\n" +msgstr "Устанавливает владельца, группу и права доступа для подчиненного псевдотерминала, соответствующего основному псевдотерминалу, переданного по дескриптору файла «%d». Это вспомогательная программа для функции «grantpt». Она не предназначена для непосредственного запуска из командной строки.\n" #: login/programs/pt_chown.c:84 #, c-format @@ -2776,49 +2768,52 @@ msgid "" "\n" "%s" msgstr "" -" , `%s', `%o'.\n" +"Владелец устанавлен в текущего пользователя, группа устанавлена в «%s», права доступа устанавлены в «%o».\n" "\n" "%s" #: login/programs/pt_chown.c:161 #, c-format msgid "too many arguments" -msgstr " " +msgstr "слишком много аргументов" #: login/programs/pt_chown.c:169 #, c-format msgid "needs to be installed setuid `root'" -msgstr " setuid `root'" +msgstr "необходимо установить с setuid «root»" -#: malloc/mcheck.c:324 +#: malloc/mcheck.c:330 msgid "memory is consistent, library is buggy\n" -msgstr " , \n" +msgstr "память в хорошем состоянии, ошибки в библиотеке\n" -#: malloc/mcheck.c:327 +#: malloc/mcheck.c:333 msgid "memory clobbered before allocated block\n" -msgstr " \n" +msgstr "память затерта перед выделенным блоком\n" -#: malloc/mcheck.c:330 +#: malloc/mcheck.c:336 msgid "memory clobbered past end of allocated block\n" -msgstr " \n" +msgstr "память затерта после конца выделенного блока\n" -#: malloc/mcheck.c:333 +#: malloc/mcheck.c:339 msgid "block freed twice\n" -msgstr " \n" +msgstr "блок освобожден дважды\n" -#: malloc/mcheck.c:336 +#: malloc/mcheck.c:342 msgid "bogus mcheck_status, library is buggy\n" -msgstr " mcheck_status, \n" +msgstr "неадекватный mcheck_status, в библиотеке ошибки\n" #: malloc/memusage.sh:27 -msgid "Try `memusage --help' for more information." -msgstr " `memusage --help' ." +#, fuzzy +msgid "Try \\`memusage --help' for more information." +msgstr "Попробуйте «memusage --help» для получения более подробного описания." #: malloc/memusage.sh:33 -msgid "memusage: option `$1' requires an argument" -msgstr "memusage: `$1' " +#, fuzzy +msgid "memusage: option \\`$1' requires an argument" +msgstr "memusage: ключ «$1» требует аргумент" #: malloc/memusage.sh:39 +#, fuzzy msgid "" "Usage: memusage [OPTION]... PROGRAM [PROGRAMOPTION]...\n" "Profile memory usage of PROGRAM.\n" @@ -2828,7 +2823,7 @@ msgid "" " -d,--data=FILE Generate binary data file and store it in FILE\n" " -u,--unbuffered Don't buffer output\n" " -b,--buffer=SIZE Collect SIZE entries before writing them out\n" -" --no-timer Don't collect additional information though timer\n" +" --no-timer Don't collect additional information through timer\n" " -m,--mmap Also trace mmap & friends\n" "\n" " -?,--help Print this help and exit\n" @@ -2848,413 +2843,417 @@ msgid "" "For bug reporting instructions, please see:\n" "<http://www.gnu.org/software/libc/bugs.html>." msgstr "" -": memusage []... [-]...\n" -" .\n" +"Использование: memusage [КЛЮЧ]... ПРОГРАММА [КЛЮЧ-ПРОГРАММЫ]...\n" +"Профилирует использование памяти ПРОГРАММОЙ.\n" "\n" -" -n,--progname= \n" -" -p,--png= PNG- \n" -" -d,--data= \n" -" -u,--unbuffered \n" -" -b,--buffer= \n" -" --no-timer \n" -" -m,--mmap mmap \n" +" -n,--progname=ИМЯ Имя программного файла для профилировки\n" +" -p,--png=ФАЙЛ Создать PNG-график и записать его в ФАЙЛ\n" +" -d,--data=ФАЙЛ Создать бинарный файл данных и записать его ФАЙЛ\n" +" -u,--unbuffered Не буферировать вывод\n" +" -b,--buffer=ЧИСЛО Собрать заданное ЧИСЛО вхождений перед записью\n" +" --no-timer Не собирать дополнительную информацию по таймеру\n" +" -m,--mmap Трассировать также mmap и ее друзей\n" "\n" -" -?,--help \n" -" --usage \n" -" -V,--version \n" +" -?,--help Напечатать эту справку и выйти\n" +" --usage Показать краткую справку об использовании\n" +" -V,--version Напечатать информацию о версии и выйти\n" "\n" -" :\n" -" -t,--time-based \n" -" -T,--total \n" -" --title= \n" -" -x,--x-size= \n" -" -y,--y-size= \n" +" Следующие ключи применимы только при генерировании графического вывода:\n" +" -t,--time-based Сделать линейный по времени график\n" +" -T,--total Начертить также итоговый график использования памяти\n" +" --title=СТРОКА Использовать СТРОКУ в качестве заголовка графика\n" +" -x,--x-size=ЧИСЛО Сделать график высотой в заданное ЧИСЛО пикселов\n" +" -y,--y-size=ЧИСЛО Сделать график шириной в заданное ЧИСЛО пикселов\n" "\n" "\n" -", , \n" -" .\n" +"Аргументы, обязательные для длинных ключей, обязательны и для\n" +"соответствующих коротких.\n" "\n" -" \n" +"Инструкции по сообщению об ошибках смотрите на\n" "<http://www.gnu.org/software/libc/bugs.html>." -#: malloc/memusage.sh:90 +#: malloc/memusage.sh:99 msgid "" "Syntax: memusage [--data=FILE] [--progname=NAME] [--png=FILE] [--unbuffered]\n" " [--buffer=SIZE] [--no-timer] [--time-based] [--total]\n" " [--title=STRING] [--x-size=SIZE] [--y-size=SIZE]\n" " PROGRAM [PROGRAMOPTION]..." msgstr "" -": memusage [--data=] [--progname=] [--png=] [--unbuffered]\n" -" [--buffer=] [--no-timer] [--time-based] [--total]\n" -" [--title=] [--x-size=] [--y-size=]\n" -" [-]..." - -#: malloc/memusage.sh:182 -msgid "memusage: option `${1##*=}' is ambiguous" -msgstr "memusage: `${1##*=}' " +"Синтаксис: memusage [--data=ФАЙЛ] [--progname=ИМЯ] [--png=ФАЙЛ] [--unbuffered]\n" +" [--buffer=ЧИСЛО] [--no-timer] [--time-based] [--total]\n" +" [--title=СТРОКА] [--x-size=ЧИСЛО] [--y-size=ЧИСЛО]\n" +" ПРОГРАММА [КЛЮЧ-ПРОГРАММЫ]..." #: malloc/memusage.sh:191 -msgid "memusage: unrecognized option `$1'" -msgstr "memusage: `$1'" +#, fuzzy +msgid "memusage: option \\`${1##*=}' is ambiguous" +msgstr "memusage: ключ «${1##*=}» неоднозначен" + +#: malloc/memusage.sh:200 +#, fuzzy +msgid "memusage: unrecognized option \\`$1'" +msgstr "memusage: нераспознанный ключ «$1»" -#: malloc/memusage.sh:204 +#: malloc/memusage.sh:213 msgid "No program name given" -msgstr " " +msgstr "Не задано имя программы" -#: malloc/memusagestat.c:53 +#: malloc/memusagestat.c:54 msgid "Name output file" -msgstr " " +msgstr "Имя выходного файла" -#: malloc/memusagestat.c:54 +#: malloc/memusagestat.c:55 msgid "Title string used in output graphic" -msgstr " " +msgstr "Заголовок для выходного графика" -#: malloc/memusagestat.c:55 +#: malloc/memusagestat.c:56 msgid "Generate output linear to time (default is linear to number of function calls)" -msgstr " ( )" - -#: malloc/memusagestat.c:57 -msgid "Also draw graph for total memory consumption" -msgstr " " +msgstr "Генерировать вывод линейно относительно времени (по умолчанию линейно относительно числу вызовов функций)" #: malloc/memusagestat.c:58 -msgid "make output graphic VALUE pixel wide" -msgstr " VALUE " +msgid "Also draw graph for total memory consumption" +msgstr "Построить также график итогового потребления памяти" #: malloc/memusagestat.c:59 -msgid "make output graphic VALUE pixel high" -msgstr " VALUE " +#, fuzzy +msgid "Make output graphic VALUE pixels wide" +msgstr "Рисовать график шириной в VALUE пикселов" + +#: malloc/memusagestat.c:60 +#, fuzzy +msgid "Make output graphic VALUE pixels high" +msgstr "Рисовать график высотой в VALUE пикселов" -#: malloc/memusagestat.c:64 +#: malloc/memusagestat.c:65 msgid "Generate graphic from memory profiling data" -msgstr " " +msgstr "Сгенерировать график по данным профилирования памяти" -#: malloc/memusagestat.c:67 +#: malloc/memusagestat.c:68 msgid "DATAFILE [OUTFILE]" -msgstr "- [-]" +msgstr "ФАЙЛ-ДАННЫХ [ВЫХОДНОЙ-ФАЙЛ]" -#: misc/error.c:118 timezone/zic.c:396 +#: misc/error.c:118 timezone/zic.c:417 msgid "Unknown system error" -msgstr " " +msgstr "Неизвестная системная ошибка" #: nis/nis_callback.c:189 msgid "unable to free arguments" -msgstr " " +msgstr "не удалось высвободить занятую аргументами память" #: nis/nis_error.h:1 nis/ypclnt.c:822 nis/ypclnt.c:910 posix/regcomp.c:132 #: sysdeps/gnu/errlist.c:20 msgid "Success" -msgstr "" +msgstr "Победа" #: nis/nis_error.h:2 msgid "Probable success" -msgstr " " +msgstr "Вероятный успех" #: nis/nis_error.h:3 msgid "Not found" -msgstr " " +msgstr "Не найдено" #: nis/nis_error.h:4 msgid "Probably not found" -msgstr ", " +msgstr "Вероятно, не найдено" #: nis/nis_error.h:5 msgid "Cache expired" -msgstr " " +msgstr "Время жизни кэша истекло " #: nis/nis_error.h:6 msgid "NIS+ servers unreachable" -msgstr " NIS+ " +msgstr "Службы NIS+ недостижимы" #: nis/nis_error.h:7 msgid "Unknown object" -msgstr " " +msgstr "Неизвестный объект" #: nis/nis_error.h:8 msgid "Server busy, try again" -msgstr " , " +msgstr "Сервер занят, попробуйте еще раз" #: nis/nis_error.h:9 msgid "Generic system error" -msgstr " " +msgstr "Общая ошибка системы" #: nis/nis_error.h:10 msgid "First/next chain broken" -msgstr " /" +msgstr "Разорвана цепочка первый/следующий" #. TRANS Permission denied; the file permissions do not allow the attempted operation. #: nis/nis_error.h:11 nis/ypclnt.c:867 sysdeps/gnu/errlist.c:157 msgid "Permission denied" -msgstr " " +msgstr "Отказано в доступе" #: nis/nis_error.h:12 msgid "Not owner" -msgstr " " +msgstr "Не владелец" #: nis/nis_error.h:13 msgid "Name not served by this server" -msgstr " " +msgstr "Имя не обслуживается данным сервером" #: nis/nis_error.h:14 msgid "Server out of memory" -msgstr " " +msgstr "Память на сервере исчерпана" #: nis/nis_error.h:15 msgid "Object with same name exists" -msgstr " " +msgstr "Существует объект с таким же именем" #: nis/nis_error.h:16 msgid "Not master server for this domain" -msgstr " - " +msgstr "Это не мастер-сервер для данного домена" #: nis/nis_error.h:17 msgid "Invalid object for operation" -msgstr " " +msgstr "Недопустимый для данной операции объект" #: nis/nis_error.h:18 msgid "Malformed name, or illegal name" -msgstr " " +msgstr "Неправильно указанное или недопустимое имя" #: nis/nis_error.h:19 msgid "Unable to create callback" -msgstr "" +msgstr "Не удалось создать обратный вызов" #: nis/nis_error.h:20 msgid "Results sent to callback proc" -msgstr "" +msgstr "Результат отправлен процедуре обратного вызова" #: nis/nis_error.h:21 msgid "Not found, no such name" -msgstr " , " +msgstr "Не найдено, нет такого имени" #: nis/nis_error.h:22 msgid "Name/entry isn't unique" -msgstr "/ " +msgstr "Имя/запись не уникально" #: nis/nis_error.h:23 msgid "Modification failed" -msgstr " " +msgstr "Модификация не удалась" #: nis/nis_error.h:24 msgid "Database for table does not exist" -msgstr " " +msgstr "База данных для таблицы не существует" #: nis/nis_error.h:25 msgid "Entry/table type mismatch" -msgstr " /" +msgstr "Несоответствие типов записи/таблицы" #: nis/nis_error.h:26 msgid "Link points to illegal name" -msgstr " " +msgstr "Ссылка указывает на недопустимое имя" #: nis/nis_error.h:27 msgid "Partial success" -msgstr " " +msgstr "Частичный успех" #: nis/nis_error.h:28 msgid "Too many attributes" -msgstr " " +msgstr "Слишком много атрибутов" #: nis/nis_error.h:29 msgid "Error in RPC subsystem" -msgstr " RPC" +msgstr "Ошибка в подсистеме RPC" #: nis/nis_error.h:30 msgid "Missing or malformed attribute" -msgstr " " +msgstr "Пропущенный или неправильно указанный атрибут" #: nis/nis_error.h:31 msgid "Named object is not searchable" -msgstr " " +msgstr "Именованный объект не поддерживает поиск" #: nis/nis_error.h:32 msgid "Error while talking to callback proc" -msgstr "" +msgstr "Ошибка вызова процедуры обратного вызова" #: nis/nis_error.h:33 msgid "Non NIS+ namespace encountered" -msgstr " -NIS+ " +msgstr "Обнаружено не-NIS+ пространство имен" #: nis/nis_error.h:34 msgid "Illegal object type for operation" -msgstr " " +msgstr "Не допустимый для операции тип объекта" #: nis/nis_error.h:35 msgid "Passed object is not the same object on server" -msgstr " , " +msgstr "Переданный объект не того же типа, что объект на сервере" #: nis/nis_error.h:36 msgid "Modify operation failed" -msgstr " " +msgstr "Операция модификации неуспешна" #: nis/nis_error.h:37 msgid "Query illegal for named table" -msgstr " " +msgstr "Недопустимый запрос для именованной таблицы" #: nis/nis_error.h:38 msgid "Attempt to remove a non-empty table" -msgstr " " +msgstr "Попытка удалить непустую таблицу" #: nis/nis_error.h:39 msgid "Error in accessing NIS+ cold start file. Is NIS+ installed?" -msgstr " NIS+. NIS+?" +msgstr "Ошибка обращения к файлу холодного запуска NIS+. Установлен ли NIS+?" #: nis/nis_error.h:40 msgid "Full resync required for directory" -msgstr " " +msgstr "Для каталога требуется полная ресинхронизация" #: nis/nis_error.h:41 msgid "NIS+ operation failed" -msgstr " NIS+ " +msgstr "Операция NIS+ неуспешна" #: nis/nis_error.h:42 msgid "NIS+ service is unavailable or not installed" -msgstr " NIS+ " +msgstr "Служба NIS+ недоступна или не установлена" #: nis/nis_error.h:43 msgid "Yes, 42 is the meaning of life" -msgstr ", 42 -- " +msgstr "Да, 42 -- это смысл жизни" #: nis/nis_error.h:44 msgid "Unable to authenticate NIS+ server" -msgstr " NIS+" +msgstr "Не удалось аутенфицировать сервер NIS+" #: nis/nis_error.h:45 msgid "Unable to authenticate NIS+ client" -msgstr " NIS+" +msgstr "Не удалось аутенфицировать клиент NIS+" #: nis/nis_error.h:46 msgid "No file space on server" -msgstr " " +msgstr "На сервере нет дискового пространства" #: nis/nis_error.h:47 msgid "Unable to create process on server" -msgstr " " +msgstr "Не удалось создать процесс на сервере" #: nis/nis_error.h:48 msgid "Master server busy, full dump rescheduled." -msgstr "- , ." +msgstr "Мастер-сервер занят, запланирован полный дамп." #: nis/nis_local_names.c:122 #, c-format msgid "LOCAL entry for UID %d in directory %s not unique\n" -msgstr " LOCAL UID %d %s \n" +msgstr "Запись LOCAL для UID %d в каталоге %s не уникальна\n" #: nis/nis_print.c:51 msgid "UNKNOWN" -msgstr "" +msgstr "НЕИЗВЕСТНО" #: nis/nis_print.c:109 msgid "BOGUS OBJECT\n" -msgstr " \n" +msgstr "НЕАДЕКВАТНЫЙ ОБЪЕКТ\n" #: nis/nis_print.c:112 msgid "NO OBJECT\n" -msgstr " \n" +msgstr "НЕТ ОБЪЕКТА\n" #: nis/nis_print.c:115 msgid "DIRECTORY\n" -msgstr "\n" +msgstr "КАТАЛОГ\n" #: nis/nis_print.c:118 msgid "GROUP\n" -msgstr "\n" +msgstr "ГРУППА\n" #: nis/nis_print.c:121 msgid "TABLE\n" -msgstr "\n" +msgstr "ТАБЛИЦА\n" #: nis/nis_print.c:124 msgid "ENTRY\n" -msgstr "\n" +msgstr "ЗАПИСЬ\n" #: nis/nis_print.c:127 msgid "LINK\n" -msgstr "\n" +msgstr "ССЫЛКА\n" #: nis/nis_print.c:130 msgid "PRIVATE\n" -msgstr "\n" +msgstr "ПРИВАТНОЕ\n" #: nis/nis_print.c:133 msgid "(Unknown object)\n" -msgstr "( )\n" +msgstr "(Неизвестный объект)\n" #: nis/nis_print.c:167 #, c-format msgid "Name : `%s'\n" -msgstr " : `%s'\n" +msgstr "Имя : «%s»\n" #: nis/nis_print.c:168 #, c-format msgid "Type : %s\n" -msgstr " : %s\n" +msgstr "Тип : %s\n" #: nis/nis_print.c:173 msgid "Master Server :\n" -msgstr "- :\n" +msgstr "Мастер-сервер :\n" #: nis/nis_print.c:175 msgid "Replicate :\n" -msgstr " :\n" +msgstr "Реплика :\n" #: nis/nis_print.c:176 #, c-format msgid "\tName : %s\n" -msgstr "\t : %s\n" +msgstr "\tИмя : %s\n" #: nis/nis_print.c:177 msgid "\tPublic Key : " -msgstr "\t : " +msgstr "\tПубличный ключ : " #: nis/nis_print.c:181 msgid "None.\n" -msgstr ".\n" +msgstr "Нет.\n" #: nis/nis_print.c:184 #, c-format msgid "Diffie-Hellmann (%d bits)\n" -msgstr "- (%d )\n" +msgstr "Диффи-Хелман (%d бит)\n" #: nis/nis_print.c:189 #, c-format msgid "RSA (%d bits)\n" -msgstr "RSA (%d )\n" +msgstr "RSA (%d бит)\n" #: nis/nis_print.c:192 msgid "Kerberos.\n" -msgstr ".\n" +msgstr "Керберос.\n" #: nis/nis_print.c:195 #, c-format msgid "Unknown (type = %d, bits = %d)\n" -msgstr " ( = %d, = %d)\n" +msgstr "Неизвестно (тип = %d, биты = %d)\n" #: nis/nis_print.c:206 #, c-format msgid "\tUniversal addresses (%u)\n" -msgstr "\t (%u)\n" +msgstr "\tУниверсальные адреса (%u)\n" #: nis/nis_print.c:228 msgid "Time to live : " -msgstr " : " +msgstr "Время жизни : " #: nis/nis_print.c:230 msgid "Default Access rights :\n" -msgstr " :\n" +msgstr "Права доступа по умолчанию :\n" #: nis/nis_print.c:239 #, c-format msgid "\tType : %s\n" -msgstr "\t : %s\n" +msgstr "\tТип : %s\n" #: nis/nis_print.c:240 msgid "\tAccess rights: " -msgstr "\t : " +msgstr "\tПрава доступа: " #: nis/nis_print.c:254 msgid "Group Flags :" -msgstr " :" +msgstr "Флаги группы :" #: nis/nis_print.c:257 msgid "" @@ -3262,96 +3261,96 @@ msgid "" "Group Members :\n" msgstr "" "\n" -" :\n" +"Члены группы :\n" #: nis/nis_print.c:269 #, c-format msgid "Table Type : %s\n" -msgstr " : %s\n" +msgstr "Тип таблицы : %s\n" #: nis/nis_print.c:270 #, c-format msgid "Number of Columns : %d\n" -msgstr " : %d\n" +msgstr "Число столбцов : %d\n" #: nis/nis_print.c:271 #, c-format msgid "Character Separator : %c\n" -msgstr "- : %c\n" +msgstr "Знак-разделитель : %c\n" #: nis/nis_print.c:272 #, c-format msgid "Search Path : %s\n" -msgstr " : %s\n" +msgstr "Путь поиска : %s\n" #: nis/nis_print.c:273 msgid "Columns :\n" -msgstr " :\n" +msgstr "Столбцы :\n" #: nis/nis_print.c:276 #, c-format msgid "\t[%d]\tName : %s\n" -msgstr "\t[%d]\t : %s\n" +msgstr "\t[%d]\tИмя : %s\n" #: nis/nis_print.c:278 msgid "\t\tAttributes : " -msgstr "\t\t : " +msgstr "\t\tАтрибуты : " #: nis/nis_print.c:280 msgid "\t\tAccess Rights : " -msgstr "\t\t : " +msgstr "\t\tПрава доступа : " #: nis/nis_print.c:290 msgid "Linked Object Type : " -msgstr " : " +msgstr "Тип объекта по ссылке : " #: nis/nis_print.c:292 #, c-format msgid "Linked to : %s\n" -msgstr " : %s\n" +msgstr "Ссылка на : %s\n" #: nis/nis_print.c:302 #, c-format msgid "\tEntry data of type %s\n" -msgstr "\t %s\n" +msgstr "\tДанные записи типа %s\n" #: nis/nis_print.c:305 #, c-format msgid "\t[%u] - [%u bytes] " -msgstr "\t[%u] - [%u ] " +msgstr "\t[%u] - [%u байт] " #: nis/nis_print.c:308 msgid "Encrypted data\n" -msgstr " \n" +msgstr "Зашифрованные данные\n" #: nis/nis_print.c:310 msgid "Binary data\n" -msgstr " \n" +msgstr "Бинарные данные\n" #: nis/nis_print.c:326 #, c-format msgid "Object Name : %s\n" -msgstr " : %s\n" +msgstr "Имя объекта : %s\n" #: nis/nis_print.c:327 #, c-format msgid "Directory : %s\n" -msgstr " : %s\n" +msgstr "Каталог : %s\n" #: nis/nis_print.c:328 #, c-format msgid "Owner : %s\n" -msgstr " : %s\n" +msgstr "Владелец : %s\n" #: nis/nis_print.c:329 #, c-format msgid "Group : %s\n" -msgstr " : %s\n" +msgstr "Группа : %s\n" -# ??? , -- +# ??? здесь, ниже и выше -- расставить пробелы как надо #: nis/nis_print.c:330 msgid "Access Rights : " -msgstr " : " +msgstr "Права доступа : " #: nis/nis_print.c:332 #, c-format @@ -3360,102 +3359,106 @@ msgid "" "Time to Live : " msgstr "" "\n" -" : " +"Время жизни : " #: nis/nis_print.c:335 #, c-format msgid "Creation Time : %s" -msgstr " : %s" +msgstr "Время создания : %s" #: nis/nis_print.c:337 #, c-format msgid "Mod. Time : %s" -msgstr " : %s" +msgstr "Время модификации : %s" #: nis/nis_print.c:338 msgid "Object Type : " -msgstr " : " +msgstr "Тип объекта : " #: nis/nis_print.c:358 #, c-format msgid " Data Length = %u\n" -msgstr " = %u\n" +msgstr " Длина данных = %u\n" #: nis/nis_print.c:372 #, c-format msgid "Status : %s\n" -msgstr " : %s\n" +msgstr "Статус : %s\n" #: nis/nis_print.c:373 #, c-format msgid "Number of objects : %u\n" -msgstr " : %u\n" +msgstr "Число объектов : %u\n" #: nis/nis_print.c:377 #, c-format msgid "Object #%d:\n" -msgstr " #%d:\n" +msgstr "Объект #%d:\n" #: nis/nis_print_group_entry.c:117 #, c-format msgid "Group entry for \"%s.%s\" group:\n" -msgstr " \"%s.%s\":\n" +msgstr "Запись группы для группы «%s.%s»:\n" #: nis/nis_print_group_entry.c:125 msgid " Explicit members:\n" -msgstr " :\n" +msgstr " Явные члены:\n" #: nis/nis_print_group_entry.c:130 msgid " No explicit members\n" -msgstr " \n" +msgstr " Нет явных членов\n" #: nis/nis_print_group_entry.c:133 msgid " Implicit members:\n" -msgstr " :\n" +msgstr " Неявные члены:\n" #: nis/nis_print_group_entry.c:138 msgid " No implicit members\n" -msgstr " \n" +msgstr " Нет неявных членов\n" #: nis/nis_print_group_entry.c:141 msgid " Recursive members:\n" -msgstr " :\n" +msgstr " Рекурсивные члены:\n" #: nis/nis_print_group_entry.c:146 msgid " No recursive members\n" -msgstr " \n" +msgstr " Нет рекурсивных членов\n" -#: nis/nis_print_group_entry.c:149 nis/nis_print_group_entry.c:165 +#: nis/nis_print_group_entry.c:149 msgid " Explicit nonmembers:\n" -msgstr " -:\n" +msgstr " Явные не-члены:\n" #: nis/nis_print_group_entry.c:154 msgid " No explicit nonmembers\n" -msgstr " -\n" +msgstr " Нет явных не-членов\n" #: nis/nis_print_group_entry.c:157 msgid " Implicit nonmembers:\n" -msgstr " -:\n" +msgstr " Неявные не-члены:\n" #: nis/nis_print_group_entry.c:162 msgid " No implicit nonmembers\n" -msgstr " -\n" +msgstr " Нет неявных не-членов\n" + +#: nis/nis_print_group_entry.c:165 +msgid " Recursive nonmembers:\n" +msgstr " Рекурсивные не-члены:\n" #: nis/nis_print_group_entry.c:170 msgid " No recursive nonmembers\n" -msgstr " -\n" +msgstr " Нет рекурсивных не-членов\n" # ??? #: nis/nss_nisplus/nisplus-publickey.c:101 #: nis/nss_nisplus/nisplus-publickey.c:183 #, c-format msgid "DES entry for netname %s not unique\n" -msgstr " DES netname %s \n" +msgstr "Запись DES для netname %s не уникальна\n" #: nis/nss_nisplus/nisplus-publickey.c:220 -#, c-format -msgid "netname2user: missing group id list in `%s'." -msgstr "netname2user: `%s'." +#, fuzzy, c-format +msgid "netname2user: missing group id list in `%s'" +msgstr "netname2user: пропущен список идентификаторов групп в «%s»." #: nis/nss_nisplus/nisplus-publickey.c:302 #: nis/nss_nisplus/nisplus-publickey.c:308 @@ -3463,521 +3466,530 @@ msgstr "netname2user: `%s'." #: nis/nss_nisplus/nisplus-publickey.c:382 #, c-format msgid "netname2user: (nis+ lookup): %s\n" -msgstr "netname2user: ( nis+): %s\n" +msgstr "netname2user: (поиск в nis+): %s\n" #: nis/nss_nisplus/nisplus-publickey.c:321 #, c-format msgid "netname2user: DES entry for %s in directory %s not unique" -msgstr "netname2user: DES %s %s " +msgstr "netname2user: запись DES для %s в каталоге %s не уникальна" #: nis/nss_nisplus/nisplus-publickey.c:339 #, c-format msgid "netname2user: principal name `%s' too long" -msgstr "netname2user: `%s' " +msgstr "netname2user: имя принципала «%s» слишком велико" #: nis/nss_nisplus/nisplus-publickey.c:395 #, c-format msgid "netname2user: LOCAL entry for %s in directory %s not unique" -msgstr "netname2user: LOCAL %s %s " +msgstr "netname2user: запись LOCAL для %s в каталоге %s не уникальна" #: nis/nss_nisplus/nisplus-publickey.c:402 msgid "netname2user: should not have uid 0" -msgstr "netname2user: uid" +msgstr "netname2user: не должен иметь нулевой uid" #: nis/ypclnt.c:825 msgid "Request arguments bad" -msgstr " " +msgstr "Неправильные аргументы запроса" #: nis/ypclnt.c:828 msgid "RPC failure on NIS operation" -msgstr " RPC NIS" +msgstr "Сбой RPC при операции NIS" #: nis/ypclnt.c:831 msgid "Can't bind to server which serves this domain" -msgstr " , " +msgstr "Не удается соединиться с сервером, обслуживающим этот домен" #: nis/ypclnt.c:834 msgid "No such map in server's domain" -msgstr " " +msgstr "Нет такого отображения в домене сервера" #: nis/ypclnt.c:837 msgid "No such key in map" -msgstr " " +msgstr "Нет такого ключа в отображении" #: nis/ypclnt.c:840 msgid "Internal NIS error" -msgstr " NIS" +msgstr "Внутренняя ошибка NIS" #: nis/ypclnt.c:843 msgid "Local resource allocation failure" -msgstr " " +msgstr "Сбой при выделении локального ресурса" #: nis/ypclnt.c:846 msgid "No more records in map database" -msgstr " " +msgstr "Больше нет записей в базе данных отображений" #: nis/ypclnt.c:849 msgid "Can't communicate with portmapper" -msgstr " " +msgstr "Невозможно связаться с отображателем портов" #: nis/ypclnt.c:852 msgid "Can't communicate with ypbind" -msgstr " ypbind" +msgstr "Невозможно связаться с ypbind" #: nis/ypclnt.c:855 msgid "Can't communicate with ypserv" -msgstr " ypserv" +msgstr "Невозможно связаться с ypserv" #: nis/ypclnt.c:858 msgid "Local domain name not set" -msgstr " " +msgstr "Локальное имя домена не установлено" #: nis/ypclnt.c:861 msgid "NIS map database is bad" -msgstr " NIS" +msgstr "Неправильная база данных отображений NIS" #: nis/ypclnt.c:864 msgid "NIS client/server version mismatch - can't supply service" -msgstr " / NIS -- " +msgstr "Несоответствие версий клиента/сервера NIS -- невозможно предоставить службу" #: nis/ypclnt.c:870 msgid "Database is busy" -msgstr " " +msgstr "База данных занята" #: nis/ypclnt.c:873 msgid "Unknown NIS error code" -msgstr " NIS" +msgstr "Неизвестный код ошибки NIS" #: nis/ypclnt.c:913 msgid "Internal ypbind error" -msgstr " ypbind" +msgstr "Внутренняя ошибка ypbind" #: nis/ypclnt.c:916 msgid "Domain not bound" -msgstr " " +msgstr "Домен не найден" #: nis/ypclnt.c:919 msgid "System resource allocation failure" -msgstr " " +msgstr "Сбой выделения системного ресурса" #: nis/ypclnt.c:922 msgid "Unknown ypbind error" -msgstr " ypbind" +msgstr "Неизвестная ошибка ypbind" #: nis/ypclnt.c:963 msgid "yp_update: cannot convert host to netname\n" -msgstr "yp_update: netname\n" +msgstr "yp_update: невозможно преобразовать хост в netname\n" #: nis/ypclnt.c:981 msgid "yp_update: cannot get server address\n" -msgstr "yp_update: \n" +msgstr "yp_update: невозможно получить адрес сервера\n" -#: nscd/aicache.c:76 nscd/hstcache.c:461 +#: nscd/aicache.c:77 nscd/hstcache.c:468 #, c-format msgid "Haven't found \"%s\" in hosts cache!" -msgstr " \"%s\" !" +msgstr "Не найдено «%s» в кэше хостов!" -#: nscd/aicache.c:78 nscd/hstcache.c:463 +#: nscd/aicache.c:79 nscd/hstcache.c:470 #, c-format msgid "Reloading \"%s\" in hosts cache!" -msgstr " \"%s\" !" +msgstr "Перезагрузка «%s» в кэше хостов!" -#: nscd/cache.c:126 +#: nscd/cache.c:146 #, c-format msgid "add new entry \"%s\" of type %s for %s to cache%s" -msgstr " \"%s\" %s %s %s" +msgstr "добавить новую запись «%s» типа %s для %s в кэш%s" + +#: nscd/cache.c:148 +msgid " (first)" +msgstr " (первый)" -#: nscd/cache.c:233 nscd/connections.c:750 +#: nscd/cache.c:256 nscd/connections.c:810 #, c-format msgid "cannot stat() file `%s': %s" -msgstr " stat() `%s': %s" +msgstr "невозможно выполнить stat() для файла «%s»: %s" -#: nscd/cache.c:262 +#: nscd/cache.c:285 #, c-format msgid "pruning %s cache; time %ld" -msgstr "" +msgstr "очитка %s кэша; время %ld" -#: nscd/cache.c:289 +#: nscd/cache.c:312 #, c-format msgid "considering %s entry \"%s\", timeout %<PRIu64>" -msgstr "" +msgstr "вычисление %s элемента «%s», тайм-аут %<PRIu64>" -#: nscd/connections.c:469 nscd/connections.c:481 nscd/connections.c:493 -#: nscd/connections.c:512 +#: nscd/connections.c:521 nscd/connections.c:533 nscd/connections.c:545 +#: nscd/connections.c:564 #, c-format msgid "invalid persistent database file \"%s\": %s" -msgstr " \"%s\": %s" +msgstr "неверный файл с постоянной базой данных «%s»: %s" -#: nscd/connections.c:483 +#: nscd/connections.c:535 msgid "header size does not match" -msgstr " " +msgstr "размер заголовка не совпадает" -#: nscd/connections.c:495 +#: nscd/connections.c:547 msgid "file size does not match" -msgstr " " +msgstr "не совпадает размер файла" -#: nscd/connections.c:514 +#: nscd/connections.c:566 msgid "verification failed" -msgstr " " +msgstr "верификация не удалась" -#: nscd/connections.c:528 +#: nscd/connections.c:580 #, c-format msgid "suggested size of table for database %s larger than the persistent database's table" -msgstr " %s " +msgstr "предлагаемый размер таблицы для базы данных %s больше чем таблица у постоянной базы данных" -#: nscd/connections.c:538 nscd/connections.c:619 +#: nscd/connections.c:591 nscd/connections.c:673 #, c-format msgid "cannot create read-only descriptor for \"%s\"; no mmap" -msgstr " \"%s\"; mmap" +msgstr "невозможно создать дескриптор только для чтения для «%s»; отсутствует mmap" -#: nscd/connections.c:598 +#: nscd/connections.c:652 #, c-format msgid "database for %s corrupted or simultaneously used; remove %s manually if necessary and restart" -msgstr " %s ; %s , , " +msgstr "база данных для %s повреждена или параллельно используется; удалите %s вручную, если необходимо, и перезапустите" -#: nscd/connections.c:605 +#: nscd/connections.c:659 #, c-format msgid "cannot create %s; no persistent database used" -msgstr " %s; " +msgstr "невозможно создать %s; постоянные базы данных не использованы" -#: nscd/connections.c:608 +#: nscd/connections.c:662 #, c-format msgid "cannot create %s; no sharing possible" -msgstr " %s; " +msgstr "невозможно создать %s; разделение невозможно" -#: nscd/connections.c:679 +#: nscd/connections.c:733 #, c-format msgid "cannot write to database file %s: %s" -msgstr " %s: %s " +msgstr "невозможно записать в файл базы данных %s: %s " -#: nscd/connections.c:713 +#: nscd/connections.c:772 #, c-format msgid "cannot set socket to close on exec: %s; disabling paranoia mode" -msgstr " exec: %s; " +msgstr "невозможно установить закрытие сокета при exec: %s; параноидальный режим выключен" -#: nscd/connections.c:763 +#: nscd/connections.c:823 #, c-format msgid "cannot open socket: %s" -msgstr " : %s" +msgstr "невозможно открыть сокет: %s" -#: nscd/connections.c:780 +#: nscd/connections.c:840 #, c-format msgid "cannot change socket to nonblocking mode: %s" -msgstr " : %s" +msgstr "невозможно перевести сокет в неблокирующий режим: %s" -#: nscd/connections.c:788 +#: nscd/connections.c:848 #, c-format msgid "cannot set socket to close on exec: %s" -msgstr " exec: %s" +msgstr "невозможно сделать сокет закрывающимся при выполнении exec: %s" -#: nscd/connections.c:799 +#: nscd/connections.c:859 #, c-format msgid "cannot enable socket to accept connections: %s" -msgstr " : %s" +msgstr "невозможно сделать сокет принимающим соединения: %s" -#: nscd/connections.c:892 +#: nscd/connections.c:955 #, c-format msgid "provide access to FD %d, for %s" -msgstr "" +msgstr "предоставить доступ FD %d, для %s" -#: nscd/connections.c:904 +#: nscd/connections.c:967 #, c-format msgid "cannot handle old request version %d; current version is %d" -msgstr " %d; %d" +msgstr "невозможно обработать запрос старой версии %d; текущая версия %d" -#: nscd/connections.c:954 nscd/connections.c:1007 +#: nscd/connections.c:1009 nscd/connections.c:1062 #, c-format msgid "cannot write result: %s" -msgstr " : %s" +msgstr "невозможно записать результат: %s" -#: nscd/connections.c:1082 +#: nscd/connections.c:1145 #, c-format msgid "error getting caller's id: %s" -msgstr " : %s" +msgstr "ошибка при получении идентификатора вызывающей стороны: %s" -#: nscd/connections.c:1140 nscd/connections.c:1154 +#: nscd/connections.c:1204 #, c-format msgid "cannot open /proc/self/cmdline: %s; disabling paranoia mode" -msgstr " /proc/self/cmdline: %s; " +msgstr "невозможно открыть /proc/self/cmdline: %s; параноидальный режим выключен" + +#: nscd/connections.c:1218 +#, c-format +msgid "cannot read /proc/self/cmdline: %s; disabling paranoia mode" +msgstr "невозможно прочитать /proc/self/cmdline: %s; параноидальный режим выключен" -#: nscd/connections.c:1194 +#: nscd/connections.c:1258 #, c-format msgid "cannot change to old UID: %s; disabling paranoia mode" -msgstr " UID : %s; " +msgstr "невозможно сменить UID на прежний: %s; параноидальный режим выключен" -#: nscd/connections.c:1204 +#: nscd/connections.c:1268 #, c-format msgid "cannot change to old GID: %s; disabling paranoia mode" -msgstr " GID : %s; " +msgstr "невозможно сменить GID на прежний: %s; параноидальный режим выключен" -#: nscd/connections.c:1217 +#: nscd/connections.c:1281 #, c-format msgid "cannot change to old working directory: %s; disabling paranoia mode" -msgstr " : %s; " +msgstr "невозможно вернуться в прежний рабочий каталог: %s; параноидальный режим выключен" -#: nscd/connections.c:1245 +#: nscd/connections.c:1310 #, c-format msgid "re-exec failed: %s; disabling paranoia mode" -msgstr " exec : %s; " +msgstr "повторный exec не успешен: %s; параноидальный режим выключен" -#: nscd/connections.c:1254 +#: nscd/connections.c:1319 #, c-format msgid "cannot change current working directory to \"/\": %s" -msgstr " \"/\": %s" +msgstr "невозможно сменить рабочий каталог на «/»: %s" -#: nscd/connections.c:1372 +#: nscd/connections.c:1437 #, c-format msgid "short read while reading request: %s" -msgstr " : %s" +msgstr "неполный считанный блок при чтении запроса: %s" -#: nscd/connections.c:1404 +#: nscd/connections.c:1468 #, c-format msgid "key length in request too long: %d" -msgstr " : %d" +msgstr "длина ключа в запросе слишком велика: %d" -#: nscd/connections.c:1417 +#: nscd/connections.c:1481 #, c-format msgid "short read while reading request key: %s" -msgstr " : %s" +msgstr "неполный считанный блок при чтении ключа запроса: %s" -#: nscd/connections.c:1426 +#: nscd/connections.c:1490 #, c-format msgid "handle_request: request received (Version = %d) from PID %ld" -msgstr "handle_request: ( = %d) PID %ld" +msgstr "handle_request: получен запрос (версия = %d) от PID %ld" -#: nscd/connections.c:1431 +#: nscd/connections.c:1495 #, c-format msgid "handle_request: request received (Version = %d)" -msgstr "handle_request: ( = %d)" +msgstr "handle_request: получен запрос (версия = %d)" -#: nscd/connections.c:1792 +#: nscd/connections.c:1856 #, c-format msgid "could only start %d threads; terminating" -msgstr " %d ; " +msgstr "удалось запустить только %d поток; останов" -#: nscd/connections.c:1840 nscd/connections.c:1841 nscd/connections.c:1858 -#: nscd/connections.c:1867 nscd/connections.c:1885 nscd/connections.c:1896 -#: nscd/connections.c:1907 +#: nscd/connections.c:1904 nscd/connections.c:1905 nscd/connections.c:1922 +#: nscd/connections.c:1931 nscd/connections.c:1949 nscd/connections.c:1960 +#: nscd/connections.c:1971 #, c-format msgid "Failed to run nscd as user '%s'" -msgstr " nscd '%s'" +msgstr "Не удалось запустить nscd от имени пользователя »%s»" -#: nscd/connections.c:1859 +#: nscd/connections.c:1923 #, c-format msgid "initial getgrouplist failed" -msgstr " getgrouplist " +msgstr "первоначальная getgrouplist неуспешна" -#: nscd/connections.c:1868 +#: nscd/connections.c:1932 #, c-format msgid "getgrouplist failed" -msgstr "getgrouplist " +msgstr "getgrouplist неуспешна" -#: nscd/connections.c:1886 +#: nscd/connections.c:1950 #, c-format msgid "setgroups failed" -msgstr "setgroups " +msgstr "setgroups неуспешна" -#: nscd/grpcache.c:400 nscd/hstcache.c:411 nscd/initgrcache.c:411 -#: nscd/pwdcache.c:395 +#: nscd/grpcache.c:402 nscd/hstcache.c:418 nscd/initgrcache.c:412 +#: nscd/pwdcache.c:397 nscd/servicescache.c:343 #, c-format msgid "short write in %s: %s" -msgstr " %s: %s" +msgstr "неполная запись в %s: %s" -#: nscd/grpcache.c:443 nscd/initgrcache.c:77 +#: nscd/grpcache.c:445 nscd/initgrcache.c:78 #, c-format msgid "Haven't found \"%s\" in group cache!" -msgstr " \"%s\" !" +msgstr "Не найдено «%s» в кэше групп!" -#: nscd/grpcache.c:445 nscd/initgrcache.c:79 +#: nscd/grpcache.c:447 nscd/initgrcache.c:80 #, c-format msgid "Reloading \"%s\" in group cache!" -msgstr " \"%s\" !" +msgstr "Перезагрузка «%s» в кэше групп!" -#: nscd/grpcache.c:536 +#: nscd/grpcache.c:524 #, c-format msgid "Invalid numeric gid \"%s\"!" -msgstr " \"%s\"!" +msgstr "Неверный числовой идентификатор группы «%s»!" -#: nscd/mem.c:382 +#: nscd/mem.c:383 #, c-format msgid "freed %zu bytes in %s cache" -msgstr " %zu %s" +msgstr "освобождено %zu байт в кэше %s" -#: nscd/mem.c:511 +#: nscd/mem.c:512 #, c-format msgid "no more memory for database '%s'" -msgstr " '%s'" +msgstr "недостаточно памяти для базы данных «%s»" -#: nscd/nscd.c:97 +#: nscd/nscd.c:98 msgid "Read configuration data from NAME" -msgstr " " +msgstr "Читать конфигурационные данные из ФАЙЛА" -#: nscd/nscd.c:99 +#: nscd/nscd.c:100 msgid "Do not fork and display messages on the current tty" -msgstr " , " +msgstr "Не порождать дочерний процесс, печатать сообщения на текущий терминал" -#: nscd/nscd.c:100 +#: nscd/nscd.c:101 msgid "NUMBER" -msgstr "" +msgstr "ЧИСЛО" -#: nscd/nscd.c:100 +#: nscd/nscd.c:101 msgid "Start NUMBER threads" -msgstr " " +msgstr "Запустить указанное ЧИСЛО нитей" -#: nscd/nscd.c:101 +#: nscd/nscd.c:102 msgid "Shut the server down" -msgstr " " +msgstr "Выключить сервер" -#: nscd/nscd.c:102 +#: nscd/nscd.c:103 msgid "Print current configuration statistic" -msgstr " " +msgstr "Напечатать статистику по текущей конфигурации" -#: nscd/nscd.c:103 +#: nscd/nscd.c:104 msgid "TABLE" -msgstr "" +msgstr "ТАБЛИЦА" -#: nscd/nscd.c:104 +#: nscd/nscd.c:105 msgid "Invalidate the specified cache" -msgstr " " +msgstr "Объявить указанный кэш недействительным" -#: nscd/nscd.c:105 +#: nscd/nscd.c:106 msgid "TABLE,yes" -msgstr ",yes" +msgstr "ТАБЛИЦА,yes" -#: nscd/nscd.c:106 +#: nscd/nscd.c:107 msgid "Use separate cache for each user" -msgstr " " +msgstr "Использовать отдельный кэш для каждого пользователя" -#: nscd/nscd.c:111 +#: nscd/nscd.c:112 msgid "Name Service Cache Daemon." -msgstr " ." +msgstr "Демон кэша службы имен." -#: nscd/nscd.c:143 nss/getent.c:858 nss/makedb.c:123 +#: nscd/nscd.c:144 nss/getent.c:858 nss/makedb.c:123 #, c-format msgid "wrong number of arguments" -msgstr " " +msgstr "Неправильное число аргументов" -#: nscd/nscd.c:153 +#: nscd/nscd.c:154 #, c-format msgid "failure while reading configuration file; this is fatal" -msgstr " ; " +msgstr "невозможно прочитать файл конфигурации; это фатальный сбой" -#: nscd/nscd.c:162 +#: nscd/nscd.c:163 #, c-format msgid "already running" -msgstr " " +msgstr "уже запущен" -#: nscd/nscd.c:177 nscd/nscd.c:232 +#: nscd/nscd.c:178 nscd/nscd.c:233 #, c-format msgid "cannot fork" -msgstr " " +msgstr "невозможно породить дочерний процесс" -#: nscd/nscd.c:240 +#: nscd/nscd.c:241 #, c-format msgid "cannot change current working directory to \"/\"" -msgstr " \"/\"" +msgstr "невозможно сменить рабочий каталог на «/»" -#: nscd/nscd.c:248 +#: nscd/nscd.c:249 msgid "Could not create log file" -msgstr " " +msgstr "Не удалось создать файл протокола" -#: nscd/nscd.c:301 nscd/nscd.c:326 nscd/nscd_stat.c:172 +#: nscd/nscd.c:302 nscd/nscd.c:327 nscd/nscd_stat.c:172 #, c-format msgid "Only root is allowed to use this option!" -msgstr " !" +msgstr "Только суперпользователь может использовать этот ключ!" -#: nscd/nscd.c:359 nscd/nscd_stat.c:191 +#: nscd/nscd.c:364 nscd/nscd_stat.c:191 #, c-format msgid "write incomplete" -msgstr " " +msgstr "незавершенная запись" -#: nscd/nscd.c:370 +#: nscd/nscd.c:375 #, c-format msgid "cannot read invalidate ACK" -msgstr "" +msgstr "невозможно прочитать аннулированный ACK" -#: nscd/nscd.c:376 +#: nscd/nscd.c:381 #, c-format msgid "invalidation failed" -msgstr "" +msgstr "аннулирование не удалось" -#: nscd/nscd.c:386 +#: nscd/nscd.c:391 #, c-format msgid "secure services not implemented anymore" -msgstr "" +msgstr "безопасные сервисы более не поддерживаются" -#: nscd/nscd_conf.c:55 -#, c-format -msgid "database %s is not supported\n" -msgstr " %s \n" +#: nscd/nscd_conf.c:57 +#, fuzzy, c-format +msgid "database %s is not supported" +msgstr "база данных %s не поддерживается\n" -#: nscd/nscd_conf.c:106 +#: nscd/nscd_conf.c:108 #, c-format msgid "Parse error: %s" -msgstr " : %s" +msgstr "Ошибка разбора: %s" -#: nscd/nscd_conf.c:191 +#: nscd/nscd_conf.c:193 #, c-format msgid "Must specify user name for server-user option" -msgstr " server-user" +msgstr "Нужно указать имя пользователя для ключа server-user" -#: nscd/nscd_conf.c:198 +#: nscd/nscd_conf.c:200 #, c-format msgid "Must specify user name for stat-user option" -msgstr " stat-user" +msgstr "Нужно указать имя пользователя для ключа stat-user" -#: nscd/nscd_conf.c:242 +#: nscd/nscd_conf.c:244 #, c-format msgid "invalid value for 'reload-count': %u" -msgstr " 'reload-count': %u" +msgstr "недопустимое значение для «reload-count»: %u" -#: nscd/nscd_conf.c:257 +#: nscd/nscd_conf.c:259 #, c-format msgid "Must specify value for restart-interval option" -msgstr " restart-interval" +msgstr "Нужно указать значение для ключа restart-interval" -#: nscd/nscd_conf.c:271 +#: nscd/nscd_conf.c:273 #, c-format msgid "Unknown option: %s %s %s" -msgstr " : %s %s %s" +msgstr "Неизвестный ключ: %s %s %s" -#: nscd/nscd_conf.c:284 +#: nscd/nscd_conf.c:286 #, c-format msgid "cannot get current working directory: %s; disabling paranoia mode" -msgstr " : %s; " +msgstr "невозможно получить текущий рабочий каталог: %s; параноидальный режим выключен" -#: nscd/nscd_conf.c:304 +#: nscd/nscd_conf.c:306 #, c-format msgid "maximum file size for %s database too small" -msgstr " %s " +msgstr "максимальный размер файла для базы данных %s слишком мал" #: nscd/nscd_stat.c:141 #, c-format msgid "cannot write statistics: %s" -msgstr " : %s" +msgstr "невозможно записать статистику: %s" #: nscd/nscd_stat.c:156 msgid "yes" -msgstr "" +msgstr "да" #: nscd/nscd_stat.c:157 msgid "no" -msgstr "" +msgstr "нет" #: nscd/nscd_stat.c:168 #, c-format msgid "Only root or %s is allowed to use this option!" -msgstr " %s !" +msgstr "Только суперпользователь или %s могут использовать этот ключ!" #: nscd/nscd_stat.c:179 #, c-format msgid "nscd not running!\n" -msgstr "nscd !\n" +msgstr "nscd не запущен!\n" #: nscd/nscd_stat.c:203 #, c-format msgid "cannot read statistics data" -msgstr " " +msgstr "невозможно считать статистические данные" #: nscd/nscd_stat.c:206 #, c-format @@ -3986,29 +3998,29 @@ msgid "" "\n" "%15d server debug level\n" msgstr "" -" nscd:\n" +"Конфигурация nscd:\n" "\n" -"%15d \n" +"%15d уровень отладки сервера\n" #: nscd/nscd_stat.c:230 #, c-format msgid "%3ud %2uh %2um %2lus server runtime\n" -msgstr "%3ud %2uh %2um %2lus \n" +msgstr "%3ud %2uh %2um %2lus время работы сервера\n" #: nscd/nscd_stat.c:233 #, c-format msgid " %2uh %2um %2lus server runtime\n" -msgstr " %2uh %2um %2lus \n" +msgstr " %2uh %2um %2lus время работы сервера\n" #: nscd/nscd_stat.c:235 #, c-format msgid " %2um %2lus server runtime\n" -msgstr " %2um %2lus \n" +msgstr " %2um %2lus время работы сервера\n" #: nscd/nscd_stat.c:237 #, c-format msgid " %2lus server runtime\n" -msgstr " %2lus \n" +msgstr " %2lus время работы сервера\n" #: nscd/nscd_stat.c:239 #, c-format @@ -4019,11 +4031,11 @@ msgid "" "%15s paranoia mode enabled\n" "%15lu restart internal\n" msgstr "" -"%15d \n" -"%15d \n" -"%15lu , \n" -"%15s \n" -"%15lu \n" +"%15d текущее количество потоков\n" +"%15d максимальное число потоков\n" +"%15lu число случаев, когда клиентам пришлось ждать\n" +"%15s параноидальный режим включен\n" +"%15lu внутренний перезапуск\n" #: nscd/nscd_stat.c:273 #, c-format @@ -4053,120 +4065,116 @@ msgid "" "%15s check /etc/%s for changes\n" msgstr "" "\n" -" %s:\n" +"Кэш %s:\n" "\n" -"%15s \n" -"%15s \n" -"%15s \n" -"%15Zu \n" -"%15zu \n" -"%15zu \n" -"%15lu \n" -"%15lu \n" -"%15<PRIuMAX> \n" -"%15<PRIuMAX> \n" -"%15<PRIuMAX> \n" -"%15<PRIuMAX> \n" -"%15lu%% \n" -"%15zu \n" -"%15zu \n" -"%15zu \n" -"%15<PRIuMAX> rdlock\n" -"%15<PRIuMAX> wrlock\n" -"%15<PRIuMAX> \n" -"%15s /etc/%s \n" - -#: nscd/pwdcache.c:438 +"%15s кэш задействован\n" +"%15s кэш постоянный\n" +"%15s кэш разделяемый\n" +"%15Zu предлагаемый размер\n" +"%15zu общий объем пула данных\n" +"%15zu использованный объем пула данных\n" +"%15lu секунды жизни для положительных записей\n" +"%15lu секунды жизни для отрицательных записей\n" +"%15<PRIuMAX> попадания на положительные записи\n" +"%15<PRIuMAX> попадания на отрицательные записи\n" +"%15<PRIuMAX> промахи на положительные записи\n" +"%15<PRIuMAX> промахи на отрицательные записи\n" +"%15lu%% частота попадания на кэш\n" +"%15zu текущее число кэшированных значений\n" +"%15zu максимальное число кэшированных значений\n" +"%15zu максимальная длина цепочки поиска\n" +"%15<PRIuMAX> число задержек на rdlock\n" +"%15<PRIuMAX> число задержек на wrlock\n" +"%15<PRIuMAX> число ошибок выделения памяти\n" +"%15s отслеживаются ли изменения /etc/%s \n" + +#: nscd/pwdcache.c:440 #, c-format msgid "Haven't found \"%s\" in password cache!" -msgstr " \"%s\" !" +msgstr "Не найдено «%s» в кэше паролей!" -#: nscd/pwdcache.c:440 +#: nscd/pwdcache.c:442 #, c-format msgid "Reloading \"%s\" in password cache!" -msgstr " \"%s\" !" +msgstr "Перезагрузка «%s» в кэше паролей!" -#: nscd/pwdcache.c:532 +#: nscd/pwdcache.c:520 #, c-format msgid "Invalid numeric uid \"%s\"!" -msgstr " \"%s\"!" +msgstr "Неверный числовой идентификатор пользователя «%s»!" -#: nscd/selinux.c:151 +#: nscd/selinux.c:156 #, c-format msgid "Failed opening connection to the audit subsystem: %m" -msgstr " : %m" +msgstr "Не удалось открыть соединение с подсистемой аудита: %m" -#: nscd/selinux.c:172 +#: nscd/selinux.c:177 msgid "Failed to set keep-capabilities" -msgstr "" +msgstr "Не удалось установить возможности хранения" -#: nscd/selinux.c:173 nscd/selinux.c:232 +#: nscd/selinux.c:178 nscd/selinux.c:241 #, c-format msgid "prctl(KEEPCAPS) failed" -msgstr "prctl(KEEPCAPS) " +msgstr "prctl(KEEPCAPS) неуспешна" -#: nscd/selinux.c:187 +#: nscd/selinux.c:192 msgid "Failed to initialize drop of capabilities" -msgstr "" +msgstr "Не удалось инициализировать возможности сброса" -#: nscd/selinux.c:188 +#: nscd/selinux.c:193 #, c-format msgid "cap_init failed" -msgstr "cap_init " +msgstr "cap_init неуспешна" -#: nscd/selinux.c:205 -msgid "Failed to drop capabilities\n" -msgstr "" +#: nscd/selinux.c:214 nscd/selinux.c:231 +msgid "Failed to drop capabilities" +msgstr "Не удалось сбросить возможности" -#: nscd/selinux.c:206 nscd/selinux.c:223 +#: nscd/selinux.c:215 nscd/selinux.c:232 #, c-format msgid "cap_set_proc failed" -msgstr "cap_set_proc " - -#: nscd/selinux.c:222 -msgid "Failed to drop capabilities" -msgstr "" +msgstr "cap_set_proc неуспешна" -#: nscd/selinux.c:231 +#: nscd/selinux.c:240 msgid "Failed to unset keep-capabilities" -msgstr "" +msgstr "Не удалось снять возможности хранения" -#: nscd/selinux.c:247 +#: nscd/selinux.c:256 msgid "Failed to determine if kernel supports SELinux" -msgstr " , SELinux" +msgstr "Не удалось определить, поддерживает ли ядро SELinux" -#: nscd/selinux.c:262 +#: nscd/selinux.c:271 #, c-format msgid "Failed to start AVC thread" -msgstr " AVC" +msgstr "Не удалось запустить тред AVC" -#: nscd/selinux.c:284 +#: nscd/selinux.c:293 #, c-format msgid "Failed to create AVC lock" -msgstr " " +msgstr "Не удалось создать блокировку" -#: nscd/selinux.c:324 +#: nscd/selinux.c:333 #, c-format msgid "Failed to start AVC" -msgstr " AVC" +msgstr "Не удалось запустить AVC" -#: nscd/selinux.c:326 +#: nscd/selinux.c:335 msgid "Access Vector Cache (AVC) started" -msgstr "Access Vector Cache (AVC) " +msgstr "Access Vector Cache (AVC) запущен" -#: nscd/selinux.c:347 +#: nscd/selinux.c:356 msgid "Error getting context of socket peer" -msgstr " " +msgstr "Ошибка получения контекста другой стороны сокета" -#: nscd/selinux.c:352 +#: nscd/selinux.c:361 msgid "Error getting context of nscd" -msgstr " nscd" +msgstr "Ошибка получения контекста nscd" -#: nscd/selinux.c:358 +#: nscd/selinux.c:367 msgid "Error getting sid from context" -msgstr " sid " +msgstr "Ошибка получения sid из контекста" -#: nscd/selinux.c:390 +#: nscd/selinux.c:399 #, c-format msgid "" "\n" @@ -4182,67 +4190,77 @@ msgid "" "%15u CAV misses\n" msgstr "" "\n" -" AVC SELinux:\n" +"Статистика AVC SELinux:\n" "\n" -"%15u \n" -"%15u \n" -"%15u \n" -"%15u \n" -"%15u CAV\n" -"%15u CAV\n" -"%15u CAV\n" -"%15u CAV\n" +"%15u поисков записей\n" +"%15u попаданий\n" +"%15u промахов\n" +"%15u сбросов записей\n" +"%15u поисков CAV\n" +"%15u попаданий CAV\n" +"%15u проверок CAV\n" +"%15u промахов CAV\n" + +#: nscd/servicescache.c:390 +#, c-format +msgid "Haven't found \"%s\" in services cache!" +msgstr "Не найдено \"%s\" в кэше сервисов!" + +#: nscd/servicescache.c:392 +#, c-format +msgid "Reloading \"%s\" in services cache!" +msgstr "Перезагрузка \"%s\" в кэше сервисов!" #: nss/getent.c:52 msgid "database [key ...]" -msgstr "- [ ...]" +msgstr "база-данных [ключ ...]" #: nss/getent.c:57 msgid "Service configuration to be used" -msgstr " " +msgstr "Используемая конфигурация службы" #: nss/getent.c:62 msgid "" -"Get entries from administrative database.For bug reporting instructions, please see:\n" +"Get entries from administrative database.\vFor bug reporting instructions, please see:\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" msgstr "" -" . :\n" +"Получает записи из административной базы данных.\vИнструкции по сообщению об ошибках смотрите на:\n" "<http://www.gnu.org/software/libc/bugs.html>.\n" #: nss/getent.c:145 nss/getent.c:394 #, c-format msgid "Enumeration not supported on %s\n" -msgstr " %s\n" +msgstr "Перечисление не поддерживается для %s\n" #: nss/getent.c:782 #, c-format msgid "Unknown database name" -msgstr " " +msgstr "Неизвестное имя базы данных" #: nss/getent.c:808 msgid "Supported databases:\n" -msgstr " :\n" +msgstr "Поддерживаемые базы данных:\n" #: nss/getent.c:868 #, c-format msgid "Unknown database: %s\n" -msgstr " : %s\n" +msgstr "Неизвестная база данных: %s\n" #: nss/makedb.c:60 msgid "Convert key to lower case" -msgstr " " +msgstr "Преобразовать ключ в нижний регистр" #: nss/makedb.c:63 msgid "Do not print messages while building database" -msgstr " " +msgstr "Не печатать сообщений при построении базы данных" #: nss/makedb.c:65 msgid "Print content of database file, one entry a line" -msgstr " , " +msgstr "Напечатать содержимое файла базы данных, по одной записи в строку" #: nss/makedb.c:70 msgid "Create simple DB database from textual input." -msgstr " DB ." +msgstr "Построить простую базу данных DB из текстового ввода." #: nss/makedb.c:73 msgid "" @@ -4250,833 +4268,840 @@ msgid "" "-o OUTPUT-FILE INPUT-FILE\n" "-u INPUT-FILE" msgstr "" -"- -\n" -"-o - -\n" -"-u -" +"ВХОДНОЙ-ФАЙЛ ВЫХОДНОЙ-ФАЙЛ\n" +"-o ВЫХОДНОЙ-ФАЙЛ ВХОДНОЙ-ФАЙЛ\n" +"-u ВХОДНОЙ-ФАЙЛ" #: nss/makedb.c:142 #, c-format msgid "No usable database library found." -msgstr " ." +msgstr "Не найдено подходящей библиотеки." #: nss/makedb.c:149 #, c-format msgid "cannot open database file `%s': %s" -msgstr " `%s': %s" +msgstr "невозможно открыть файл базы данных «%s»: %s" #: nss/makedb.c:151 msgid "incorrectly formatted file" -msgstr " " +msgstr "неправильно отформатированный файл" #: nss/makedb.c:331 msgid "duplicate key" -msgstr " " +msgstr "дублированный ключ" #: nss/makedb.c:337 #, c-format msgid "while writing database file" -msgstr " " +msgstr "при записи файла базы данных" #: nss/makedb.c:348 #, c-format msgid "problems while reading `%s'" -msgstr " `%s'" +msgstr "проблемы при чтении «%s»" #: nss/makedb.c:368 nss/makedb.c:385 #, c-format msgid "while reading database" -msgstr " " +msgstr "при чтении базы данных" -#: posix/getconf.c:940 +#: posix/getconf.c:945 #, c-format msgid "Usage: %s [-v specification] variable_name [pathname]\n" -msgstr ": %s [-v ] - []\n" +msgstr "Использование: %s [-v спецификация] имя-переменной [путь]\n" -#: posix/getconf.c:943 +#: posix/getconf.c:948 #, c-format msgid " %s -a [pathname]\n" -msgstr " %s -a []\n" +msgstr " %s -a [путь]\n" -#: posix/getconf.c:1062 +#: posix/getconf.c:1067 #, c-format msgid "unknown specification \"%s\"" -msgstr " \"%s\"" +msgstr "неизвестная спецификация «%s»" -#: posix/getconf.c:1090 +#: posix/getconf.c:1095 #, c-format msgid "Couldn't execute %s" -msgstr " %s" +msgstr "Невозможно выполнить %s" -#: posix/getconf.c:1130 posix/getconf.c:1146 +#: posix/getconf.c:1135 posix/getconf.c:1151 msgid "undefined" -msgstr " " +msgstr "не определено" -#: posix/getconf.c:1168 +#: posix/getconf.c:1173 #, c-format msgid "Unrecognized variable `%s'" -msgstr " `%s'" +msgstr "Нераспознанная переменная «%s»" #: posix/getopt.c:571 posix/getopt.c:587 #, c-format msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: `%s' \n" +msgstr "%s: неоднозначный ключ «%s»\n" #: posix/getopt.c:620 posix/getopt.c:624 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: `--%s' \n" +msgstr "%s: ключ «--%s» должен использоваться без аргумента\n" #: posix/getopt.c:633 posix/getopt.c:638 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: `%c%s' \n" +msgstr "%s: ключ «%c%s» должен использоваться без аргумента\n" #: posix/getopt.c:681 posix/getopt.c:700 posix/getopt.c:1016 #: posix/getopt.c:1035 #, c-format msgid "%s: option `%s' requires an argument\n" -msgstr "%s: `%s' \n" +msgstr "%s: ключ «%s» должен использоваться с аргументом\n" #: posix/getopt.c:738 posix/getopt.c:741 #, c-format msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: `--%s'\n" +msgstr "%s: неизвестный ключ «--%s»\n" #: posix/getopt.c:749 posix/getopt.c:752 #, c-format msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: `%c%s'\n" +msgstr "%s: неизвестный ключ «%c%s»\n" #: posix/getopt.c:804 posix/getopt.c:807 #, c-format msgid "%s: illegal option -- %c\n" -msgstr "%s: -- %c\n" +msgstr "%s: недопустимый ключ -- %c\n" #: posix/getopt.c:813 posix/getopt.c:816 #, c-format msgid "%s: invalid option -- %c\n" -msgstr "%s: -- %c\n" +msgstr "%s: неверный ключ -- %c\n" #: posix/getopt.c:868 posix/getopt.c:884 posix/getopt.c:1088 #: posix/getopt.c:1106 #, c-format msgid "%s: option requires an argument -- %c\n" -msgstr "%s: -- %c\n" +msgstr "%s: ключ должен использоваться с аргументом -- %c\n" #: posix/getopt.c:937 posix/getopt.c:953 #, c-format msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: `-W %s' \n" +msgstr "%s: неоднозначный ключ «-W %s»\n" #: posix/getopt.c:977 posix/getopt.c:995 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: `-W %s' \n" +msgstr "%s: ключ «-W %s» должен использоваться без аргумента\n" #: posix/regcomp.c:135 msgid "No match" -msgstr " " +msgstr "Нет совпадения" #: posix/regcomp.c:138 msgid "Invalid regular expression" -msgstr " " +msgstr "Неверное регулярное выражение" #: posix/regcomp.c:141 msgid "Invalid collation character" -msgstr " " +msgstr "Неверный знак сортировки" #: posix/regcomp.c:144 msgid "Invalid character class name" -msgstr " " +msgstr "Неверное имя класса знаков" #: posix/regcomp.c:147 msgid "Trailing backslash" -msgstr " " +msgstr "Обратная косая черта в конце" #: posix/regcomp.c:150 msgid "Invalid back reference" -msgstr " " +msgstr "Неверная ссылка назад" #: posix/regcomp.c:153 msgid "Unmatched [ or [^" -msgstr " [ [^" +msgstr "Непарная [ или [^" #: posix/regcomp.c:156 msgid "Unmatched ( or \\(" -msgstr " ( \\(" +msgstr "Непарная ( или \\(" #: posix/regcomp.c:159 msgid "Unmatched \\{" -msgstr " \\{" +msgstr "Непарная \\{" #: posix/regcomp.c:162 msgid "Invalid content of \\{\\}" -msgstr " \\{\\}" +msgstr "Неверное содержимое в \\{\\}" #: posix/regcomp.c:165 msgid "Invalid range end" -msgstr " " +msgstr "Неверный конец диапазона" #: posix/regcomp.c:168 msgid "Memory exhausted" -msgstr " " +msgstr "Память исчерпана" #: posix/regcomp.c:171 msgid "Invalid preceding regular expression" -msgstr " " +msgstr "Неверное предшествующее регулярное выражение" #: posix/regcomp.c:174 msgid "Premature end of regular expression" -msgstr " " +msgstr "Преждевременный конец регулярного выражения" #: posix/regcomp.c:177 msgid "Regular expression too big" -msgstr " " +msgstr "Регулярное выражение слишком велико" #: posix/regcomp.c:180 msgid "Unmatched ) or \\)" -msgstr " ) \\)" +msgstr "Непарная ) или \\)" #: posix/regcomp.c:660 msgid "No previous regular expression" -msgstr " " +msgstr "Нет предшествующего регулярного выражения" #: posix/wordexp.c:1798 msgid "parameter null or not set" -msgstr " " +msgstr "параметр пуст или не задан" #: resolv/herror.c:68 msgid "Resolver Error 0 (no error)" -msgstr " 0 ( )" +msgstr "Ошибка ресолвера 0 (нет ошибки)" #: resolv/herror.c:69 msgid "Unknown host" -msgstr " " +msgstr "Неизвестный хост" #: resolv/herror.c:70 msgid "Host name lookup failure" -msgstr " " +msgstr "Сбой поиска имени хоста" #: resolv/herror.c:71 msgid "Unknown server error" -msgstr " " +msgstr "Неизвестная ошибка сервера" #: resolv/herror.c:72 msgid "No address associated with name" -msgstr " " +msgstr "С именем не связано ни одного адреса" #: resolv/herror.c:107 msgid "Resolver internal error" -msgstr " " +msgstr "Внутренняя ошибка ресолвера" #: resolv/herror.c:110 msgid "Unknown resolver error" -msgstr " " +msgstr "Неизвестная ошибка ресолвера" #: resolv/res_hconf.c:124 #, c-format msgid "%s: line %d: cannot specify more than %d trim domains" -msgstr "" +msgstr "%s: строка %d: не удалось указать более %d готовых доменов" #: resolv/res_hconf.c:145 #, c-format msgid "%s: line %d: list delimiter not followed by domain" -msgstr "%s: %d: " +msgstr "%s: строка %d: после разделителя списка не стоит домен" #: resolv/res_hconf.c:204 #, c-format msgid "%s: line %d: expected `on' or `off', found `%s'\n" -msgstr "%s: %d: `on' `off', `%s'\n" +msgstr "%s: строка %d: ожидается «on» или «off», найдено «%s»\n" #: resolv/res_hconf.c:247 #, c-format msgid "%s: line %d: bad command `%s'\n" -msgstr "%s: %d: `%s'\n" +msgstr "%s: строка %d: неправильная команда «%s»\n" #: resolv/res_hconf.c:282 #, c-format msgid "%s: line %d: ignoring trailing garbage `%s'\n" -msgstr "%s: %d: `%s'\n" +msgstr "%s: строка %d: игнорирован мусор в конце «%s»\n" #: stdio-common/psignal.c:51 #, c-format msgid "%s%sUnknown signal %d\n" -msgstr "%s%s %d\n" +msgstr "%s%sНеизвестный сигнал %d\n" #: stdio-common/psignal.c:52 msgid "Unknown signal" -msgstr " " +msgstr "Неизвестный сигнал" #: string/_strerror.c:45 sysdeps/mach/_strerror.c:87 msgid "Unknown error " -msgstr " " +msgstr "Неизвестная ошибка " #: string/strerror.c:43 msgid "Unknown error" -msgstr " " +msgstr "Неизвестная ошибка" #: string/strsignal.c:65 #, c-format msgid "Real-time signal %d" -msgstr " %d" +msgstr "Сигнал реального времени %d" #: string/strsignal.c:69 #, c-format msgid "Unknown signal %d" -msgstr " %d" +msgstr "Неизвестный сигнал %d" #: sunrpc/auth_unix.c:114 msgid "authunix_create: out of memory\n" -msgstr "authunix_create: \n" +msgstr "authunix_create: недостаточно памяти\n" #: sunrpc/auth_unix.c:350 -msgid "auth_none.c - Fatal marshalling problem" -msgstr "auth_none.c -- " +#, fuzzy +msgid "auth_unix.c: Fatal marshalling problem" +msgstr "auth_none.c - Фатальная ошибка маршаллинга" #: sunrpc/clnt_perr.c:118 sunrpc/clnt_perr.c:139 #, c-format msgid "; low version = %lu, high version = %lu" -msgstr "; = %lu, = %lu" +msgstr "; нижняя версия = %lu, верхняя версия = %lu" #: sunrpc/clnt_perr.c:125 msgid "; why = " -msgstr "; = " +msgstr "; причина = " #: sunrpc/clnt_perr.c:132 #, c-format msgid "(unknown authentication error - %d)" -msgstr "( -- %d)" +msgstr "(неизвестная ошибка аутентификации - %d)" #: sunrpc/clnt_perr.c:172 msgid "RPC: Success" -msgstr "RPC: " +msgstr "RPC: Успех" #: sunrpc/clnt_perr.c:175 msgid "RPC: Can't encode arguments" -msgstr "RPC: " +msgstr "RPC: Невозможно закодировать аргументы" #: sunrpc/clnt_perr.c:179 msgid "RPC: Can't decode result" -msgstr "RPC: " +msgstr "RPC: Невозможно раскодировать результат" #: sunrpc/clnt_perr.c:183 msgid "RPC: Unable to send" -msgstr "RPC: " +msgstr "RPC: Не удалось послать" #: sunrpc/clnt_perr.c:187 msgid "RPC: Unable to receive" -msgstr "RPC: " +msgstr "RPC: Не удалось получить" #: sunrpc/clnt_perr.c:191 msgid "RPC: Timed out" -msgstr "RPC: " +msgstr "RPC: Время ожидания истекло" #: sunrpc/clnt_perr.c:195 msgid "RPC: Incompatible versions of RPC" -msgstr "RPC: RPC" +msgstr "RPC: Несовместимые версии RPC" #: sunrpc/clnt_perr.c:199 msgid "RPC: Authentication error" -msgstr "RPC: " +msgstr "RPC: Ошибка аутентификации" #: sunrpc/clnt_perr.c:203 msgid "RPC: Program unavailable" -msgstr "RPC: " +msgstr "RPC: Программа недоступна" #: sunrpc/clnt_perr.c:207 msgid "RPC: Program/version mismatch" -msgstr "RPC: /" +msgstr "RPC: Несовпадение программы/версии" #: sunrpc/clnt_perr.c:211 msgid "RPC: Procedure unavailable" -msgstr "RPC: " +msgstr "RPC: Процедура недоступна" #: sunrpc/clnt_perr.c:215 msgid "RPC: Server can't decode arguments" -msgstr "RPC: " +msgstr "RPC: Сервер не может раскодировать аргументы" #: sunrpc/clnt_perr.c:219 msgid "RPC: Remote system error" -msgstr "RPC: " +msgstr "RPC: Ошибка удаленной системы" #: sunrpc/clnt_perr.c:223 msgid "RPC: Unknown host" -msgstr "RPC: " +msgstr "RPC: Неизвестный хост" #: sunrpc/clnt_perr.c:227 msgid "RPC: Unknown protocol" -msgstr "RPC: " +msgstr "RPC: Неизвестный протокол" #: sunrpc/clnt_perr.c:231 msgid "RPC: Port mapper failure" -msgstr "RPC: " +msgstr "RPC: Сбой отображателя портов" #: sunrpc/clnt_perr.c:235 msgid "RPC: Program not registered" -msgstr "RPC: " +msgstr "RPC: Программа не зарегистрирована" #: sunrpc/clnt_perr.c:239 msgid "RPC: Failed (unspecified error)" -msgstr "RPC: ( )" +msgstr "RPC: Сбой (ошибка не указана)" #: sunrpc/clnt_perr.c:280 msgid "RPC: (unknown error code)" -msgstr "RPC: ( )" +msgstr "RPC: (неизвестный код ошибки)" #: sunrpc/clnt_perr.c:342 msgid "Authentication OK" -msgstr " " +msgstr "Аутентификация успешна" #: sunrpc/clnt_perr.c:345 msgid "Invalid client credential" -msgstr " " +msgstr "Неверный реквизит клиента" #: sunrpc/clnt_perr.c:349 msgid "Server rejected credential" -msgstr " " +msgstr "Сервер отверг реквизит" #: sunrpc/clnt_perr.c:353 msgid "Invalid client verifier" -msgstr "" +msgstr "Неверный верификатор клиента" #: sunrpc/clnt_perr.c:357 msgid "Server rejected verifier" -msgstr "" +msgstr "Сервер отверг реквизит" #: sunrpc/clnt_perr.c:361 msgid "Client credential too weak" -msgstr " " +msgstr "Реквизит клиента слишком слаб" #: sunrpc/clnt_perr.c:365 msgid "Invalid server verifier" -msgstr "" +msgstr "Неверный верификатор сервера" #: sunrpc/clnt_perr.c:369 msgid "Failed (unspecified error)" -msgstr " ( )" +msgstr "Сбой (ошибка не указана)" #: sunrpc/clnt_raw.c:117 -msgid "clnt_raw.c - Fatal header serialization error." -msgstr "clnt_raw.c -- ." +#, fuzzy +msgid "clnt_raw.c: fatal header serialization error" +msgstr "clnt_raw.c - фатальная ошибка сериализации заголовка." #: sunrpc/clnt_tcp.c:131 msgid "clnttcp_create: out of memory\n" -msgstr "clnttcp_create: \n" +msgstr "clnttcp_create: память исчерпана\n" #: sunrpc/clnt_udp.c:139 msgid "clntudp_create: out of memory\n" -msgstr "clntudp_create: \n" +msgstr "clntudp_create: память исчерпана\n" #: sunrpc/clnt_unix.c:128 msgid "clntunix_create: out of memory\n" -msgstr "clntunix_create: \n" +msgstr "clntunix_create: память исчерпана\n" #: sunrpc/pm_getmaps.c:83 -msgid "pmap_getmaps rpc problem" -msgstr " pmap_getmaps rpc" +#, fuzzy +msgid "pmap_getmaps.c: rpc problem" +msgstr "pmap_getmaps проблема rpc" #: sunrpc/pmap_clnt.c:129 msgid "Cannot register service" -msgstr " " +msgstr "Невозможно зарегистрировать службу" #: sunrpc/pmap_rmt.c:248 msgid "Cannot create socket for broadcast rpc" -msgstr " rpc" +msgstr "Невозможно создать сокет для широковещательного rpc" #: sunrpc/pmap_rmt.c:255 msgid "Cannot set socket option SO_BROADCAST" -msgstr " SO_BROADCAST" +msgstr "Невозможно установить возможность сокета SO_BROADCAST" #: sunrpc/pmap_rmt.c:307 msgid "Cannot send broadcast packet" -msgstr " " +msgstr "Невозможно послать широковещательный пакет" #: sunrpc/pmap_rmt.c:332 msgid "Broadcast poll problem" -msgstr " " +msgstr "Проблема с широковещательным опросом" #: sunrpc/pmap_rmt.c:345 msgid "Cannot receive reply to broadcast" -msgstr " " +msgstr "Невозможно получить ответ на широковещательное сообщение" #: sunrpc/rpc_main.c:286 #, c-format msgid "%s: output would overwrite %s\n" -msgstr "%s: %s\n" +msgstr "%s: вывод перезаписал бы %s\n" #: sunrpc/rpc_main.c:293 #, c-format msgid "%s: unable to open %s: %m\n" -msgstr "%s: %s: %m\n" +msgstr "%s: невозможно открыть %s: %m\n" #: sunrpc/rpc_main.c:305 #, c-format msgid "%s: while writing output %s: %m" -msgstr "%s: %s: %m" +msgstr "%s: во время записи вывода %s: %m" #: sunrpc/rpc_main.c:340 #, c-format msgid "cannot find C preprocessor: %s \n" -msgstr " : %s \n" +msgstr "невозможно найти препроцессор Си: %s \n" #: sunrpc/rpc_main.c:348 msgid "cannot find any C preprocessor (cpp)\n" -msgstr " (cpp)\n" +msgstr "невозможно найти никакого препроцессора Си (cpp)\n" #: sunrpc/rpc_main.c:417 #, c-format msgid "%s: C preprocessor failed with signal %d\n" -msgstr "%s: %d\n" +msgstr "%s: препроцессор Си завершился не успешно с сигналом %d\n" #: sunrpc/rpc_main.c:420 #, c-format msgid "%s: C preprocessor failed with exit code %d\n" -msgstr "%s: %d\n" +msgstr "%s: препроцессор Си завершился не успешно с выходным кодом %d\n" #: sunrpc/rpc_main.c:460 -#, c-format -msgid "illegal nettype :`%s'\n" -msgstr " nettype :`%s'\n" +#, fuzzy, c-format +msgid "illegal nettype: `%s'\n" +msgstr "неверный nettype:«%s»\n" #: sunrpc/rpc_main.c:1122 #, c-format msgid "rpcgen: too many defines\n" -msgstr "rpcgen: \n" +msgstr "rpcgen: слишком много определений\n" #: sunrpc/rpc_main.c:1134 #, c-format msgid "rpcgen: arglist coding error\n" -msgstr "rpcgen: \n" +msgstr "rpcgen: ошибка кодирования списка аргументов\n" #. TRANS: the file will not be removed; this is an #. TRANS: informative message. #: sunrpc/rpc_main.c:1167 #, c-format msgid "file `%s' already exists and may be overwritten\n" -msgstr " `%s' \n" +msgstr "файл «%s» уже существует и может быть перезаписан\n" #: sunrpc/rpc_main.c:1212 #, c-format msgid "Cannot specify more than one input file!\n" -msgstr " !\n" +msgstr "Нельзя задавать более одного входного файла!\n" #: sunrpc/rpc_main.c:1382 msgid "This implementation doesn't support newstyle or MT-safe code!\n" -msgstr "" +msgstr "Эта реализация не поддерживает код нового стиля или безопасный многопоточный код!\n" #: sunrpc/rpc_main.c:1391 #, c-format msgid "Cannot use netid flag with inetd flag!\n" -msgstr " netid inetd!\n" +msgstr "Невозможно использовать флаг netid с флагом inetd!\n" #: sunrpc/rpc_main.c:1403 msgid "Cannot use netid flag without TIRPC!\n" -msgstr " netid TIRPC!\n" +msgstr "Невозможно использовать флаг netid без TIRPC!\n" #: sunrpc/rpc_main.c:1410 msgid "Cannot use table flags with newstyle!\n" -msgstr "" +msgstr "Невозможно использовать флаги таблиц с новым стилем!\n" #: sunrpc/rpc_main.c:1429 #, c-format msgid "\"infile\" is required for template generation flags.\n" -msgstr " \"-\" .\n" +msgstr "Требуется задать «входной-файл» для флагов генерирования шаблона.\n" #: sunrpc/rpc_main.c:1434 #, c-format msgid "Cannot have more than one file generation flag!\n" -msgstr " !\n" +msgstr "Нельзя задавать более одного флага генерирования файла!\n" #: sunrpc/rpc_main.c:1443 #, c-format msgid "usage: %s infile\n" -msgstr ": %s -\n" +msgstr "использование: %s входной-файл\n" #: sunrpc/rpc_main.c:1444 #, c-format msgid "\t%s [-abkCLNTM][-Dname[=value]] [-i size] [-I [-K seconds]] [-Y path] infile\n" -msgstr "\t%s [-abkCLNTM][-Dname[=]] [-i ] [-I [-K ]] [-Y ] -\n" +msgstr "\t%s [-abkCLNTM][-Dname[=значение]] [-i размер] [-I [-K секунды]] [-Y путь] входной-файл\n" #: sunrpc/rpc_main.c:1446 #, c-format msgid "\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] [-o outfile] [infile]\n" -msgstr "\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] [-o -] [-]\n" +msgstr "\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] [-o выходной-файл] [входной-файл]\n" # ??? #: sunrpc/rpc_main.c:1448 #, c-format msgid "\t%s [-s nettype]* [-o outfile] [infile]\n" -msgstr "\t%s [-s nettype]* [-o -] [-]\n" +msgstr "\t%s [-s nettype]* [-o выходной-файл] [входной-файл]\n" #: sunrpc/rpc_main.c:1449 #, c-format msgid "\t%s [-n netid]* [-o outfile] [infile]\n" -msgstr "\t%s [-n netid]* [-o -] [-]\n" +msgstr "\t%s [-n netid]* [-o выходной-файл] [входной-файл]\n" #: sunrpc/rpc_scan.c:114 msgid "constant or identifier expected" -msgstr " " +msgstr "ожидается константа или идентификатор" #: sunrpc/rpc_scan.c:310 msgid "illegal character in file: " -msgstr " : " +msgstr "неверный знак в файле: " #: sunrpc/rpc_scan.c:349 sunrpc/rpc_scan.c:375 msgid "unterminated string constant" -msgstr " " +msgstr "незавершенная строковая константа" #: sunrpc/rpc_scan.c:381 msgid "empty char string" -msgstr " " +msgstr "пустая строка" #: sunrpc/rpc_scan.c:523 sunrpc/rpc_scan.c:533 msgid "preprocessor error" -msgstr " " +msgstr "ошибка препроцессора" #: sunrpc/rpcinfo.c:237 sunrpc/rpcinfo.c:383 #, c-format msgid "program %lu is not available\n" -msgstr " %lu \n" +msgstr "программа %lu недоступна\n" #: sunrpc/rpcinfo.c:264 sunrpc/rpcinfo.c:310 sunrpc/rpcinfo.c:333 #: sunrpc/rpcinfo.c:407 sunrpc/rpcinfo.c:453 sunrpc/rpcinfo.c:476 #: sunrpc/rpcinfo.c:510 #, c-format msgid "program %lu version %lu is not available\n" -msgstr " %lu %lu \n" +msgstr "программа %lu версии %lu недоступна\n" #: sunrpc/rpcinfo.c:515 #, c-format msgid "program %lu version %lu ready and waiting\n" -msgstr " %lu %lu \n" +msgstr "программа %lu версии %lu готова и ждет\n" #: sunrpc/rpcinfo.c:556 sunrpc/rpcinfo.c:563 msgid "rpcinfo: can't contact portmapper" -msgstr "rpcinfo: " +msgstr "rpcinfo: невозможно связаться с отображателем портов" #: sunrpc/rpcinfo.c:570 msgid "No remote programs registered.\n" -msgstr " .\n" +msgstr "Нет зарегистрированных удаленных программ.\n" #: sunrpc/rpcinfo.c:574 msgid " program vers proto port\n" -msgstr " - \n" +msgstr " прог-ма верс прото порт\n" #: sunrpc/rpcinfo.c:613 msgid "(unknown)" -msgstr "()" +msgstr "(неизвестно)" #: sunrpc/rpcinfo.c:637 #, c-format msgid "rpcinfo: broadcast failed: %s\n" -msgstr "rpcinfo: : %s\n" +msgstr "rpcinfo: широковещательное сообщение не успешно: %s\n" #: sunrpc/rpcinfo.c:658 msgid "Sorry. You are not root\n" -msgstr ", .\n" +msgstr "Извините, вы не суперпользователь.\n" #: sunrpc/rpcinfo.c:665 #, c-format msgid "rpcinfo: Could not delete registration for prog %s version %s\n" -msgstr "rpcinfo: %s %s\n" +msgstr "rpcinfo: Невозможно удалить регистрацию программы %s версии %s\n" #: sunrpc/rpcinfo.c:674 msgid "Usage: rpcinfo [ -n portnum ] -u host prognum [ versnum ]\n" -msgstr "Usage: rpcinfo [ -n - ] -u - [ - ]\n" +msgstr "Usage: rpcinfo [ -n номер-порта ] -u хост номер-программы [ номер-версии ]\n" #: sunrpc/rpcinfo.c:676 msgid " rpcinfo [ -n portnum ] -t host prognum [ versnum ]\n" -msgstr " rpcinfo [ -n - ] -t - [ - ]\n" +msgstr " rpcinfo [ -n номер-порта ] -t хост номер-программы [ номер-версии ]\n" #: sunrpc/rpcinfo.c:678 msgid " rpcinfo -p [ host ]\n" -msgstr " rpcinfo -p [ ]\n" +msgstr " rpcinfo -p [ хост ]\n" #: sunrpc/rpcinfo.c:679 msgid " rpcinfo -b prognum versnum\n" -msgstr " rpcinfo -b - -\n" +msgstr " rpcinfo -b номер-программы номер-версии\n" #: sunrpc/rpcinfo.c:680 msgid " rpcinfo -d prognum versnum\n" -msgstr " rpcinfo -d - -\n" +msgstr " rpcinfo -d номер-программы номер-версии\n" #: sunrpc/rpcinfo.c:695 #, c-format msgid "rpcinfo: %s is unknown service\n" -msgstr "rpcinfo: %s \n" +msgstr "rpcinfo: служба %s неизвестна\n" #: sunrpc/rpcinfo.c:732 #, c-format msgid "rpcinfo: %s is unknown host\n" -msgstr "rpcinfo: %s \n" +msgstr "rpcinfo: хост %s неизвестен\n" + +#: sunrpc/svc_run.c:70 +msgid "svc_run: - out of memory" +msgstr "svc_run: недостаточно памяти" -#: sunrpc/svc_run.c:76 +#: sunrpc/svc_run.c:90 msgid "svc_run: - poll failed" -msgstr "svc_run: -- " +msgstr "svc_run: -- опрос неуспешен" #: sunrpc/svc_simple.c:87 #, c-format msgid "can't reassign procedure number %ld\n" -msgstr " %ld\n" +msgstr "невозможно переназначить номер процедуры %ld\n" #: sunrpc/svc_simple.c:97 msgid "couldn't create an rpc server\n" -msgstr " rpc\n" +msgstr "невозможно создать сервер rpc\n" #: sunrpc/svc_simple.c:105 #, c-format msgid "couldn't register prog %ld vers %ld\n" -msgstr " %ld %ld\n" +msgstr "невозможно зарегистрировать программу %ld версии %ld\n" #: sunrpc/svc_simple.c:113 msgid "registerrpc: out of memory\n" -msgstr "registerrpc: \n" +msgstr "registerrpc: память исчерпана\n" #: sunrpc/svc_simple.c:173 #, c-format msgid "trouble replying to prog %d\n" -msgstr " %d\n" +msgstr "проблемы при отправке ответа программе %d\n" #: sunrpc/svc_simple.c:182 #, c-format msgid "never registered prog %d\n" -msgstr " %d\n" +msgstr "ни разу не регистрированная программа %d\n" #: sunrpc/svc_tcp.c:155 msgid "svc_tcp.c - tcp socket creation problem" -msgstr "svc_tcp.c -- tcp-" +msgstr "svc_tcp.c -- проблема при создании tcp-сокета" #: sunrpc/svc_tcp.c:170 msgid "svc_tcp.c - cannot getsockname or listen" -msgstr "svc_tcp.c -- getsockname listen" +msgstr "svc_tcp.c -- невозможно выполнить getsockname или listen" #: sunrpc/svc_tcp.c:179 msgid "svctcp_create: out of memory\n" -msgstr "svctcp_create: \n" +msgstr "svctcp_create: память исчерпана\n" #: sunrpc/svc_tcp.c:218 msgid "svc_tcp: makefd_xprt: out of memory\n" -msgstr "svc_tcp: makefd_xprt: \n" +msgstr "svc_tcp: makefd_xprt: память исчерпана\n" #: sunrpc/svc_udp.c:128 msgid "svcudp_create: socket creation problem" -msgstr "svcudp_create: " +msgstr "svcudp_create: проблема при создании сокета" #: sunrpc/svc_udp.c:142 msgid "svcudp_create - cannot getsockname" -msgstr "svcudp_create -- getsockname" +msgstr "svcudp_create -- невозможно выполнить getsockname" #: sunrpc/svc_udp.c:152 msgid "svcudp_create: out of memory\n" -msgstr "svcudp_create: \n" +msgstr "svcudp_create: память исчерпана\n" #: sunrpc/svc_udp.c:174 msgid "svcudp_create: xp_pad is too small for IP_PKTINFO\n" -msgstr "svcudp_create: xp_pad IP_PKTINFO\n" +msgstr "svcudp_create: xp_pad слишком мало для IP_PKTINFO\n" #: sunrpc/svc_udp.c:474 msgid "enablecache: cache already enabled" -msgstr "enablecache: " +msgstr "enablecache: кэш уже задействован" #: sunrpc/svc_udp.c:480 msgid "enablecache: could not allocate cache" -msgstr "enablecache: " +msgstr "enablecache: не удалось выделить место под кэш" #: sunrpc/svc_udp.c:489 msgid "enablecache: could not allocate cache data" -msgstr "enablecache: " +msgstr "enablecache: не удалось выделить место под данные кэша" #: sunrpc/svc_udp.c:497 msgid "enablecache: could not allocate cache fifo" -msgstr "enablecache: " +msgstr "enablecache: не удалось выделить место под очередь кэша" #: sunrpc/svc_udp.c:532 msgid "cache_set: victim not found" -msgstr "cache_set: " +msgstr "cache_set: жертва не найдена" #: sunrpc/svc_udp.c:543 msgid "cache_set: victim alloc failed" -msgstr "cache_set: " +msgstr "cache_set: сбой выделения памяти для жертвы" #: sunrpc/svc_udp.c:550 msgid "cache_set: could not allocate new rpc_buffer" -msgstr "cache_set: rpc_buffer" +msgstr "cache_set: не удалось выделить память под новый rpc_buffer" #: sunrpc/svc_unix.c:150 msgid "svc_unix.c - AF_UNIX socket creation problem" -msgstr "svc_unix.c -- AF_UNIX-" +msgstr "svc_unix.c -- проблема при создании AF_UNIX-сокета" #: sunrpc/svc_unix.c:166 msgid "svc_unix.c - cannot getsockname or listen" -msgstr "svc_unix.c -- getsockname listen" +msgstr "svc_unix.c -- невозможно выполнить getsockname или listen" #: sunrpc/svc_unix.c:176 msgid "svcunix_create: out of memory\n" -msgstr "svcunix_create: \n" +msgstr "svcunix_create: память исчерпана\n" #: sunrpc/svc_unix.c:215 msgid "svc_unix: makefd_xprt: out of memory\n" -msgstr "svc_unix: makefd_xprt: \n" +msgstr "svc_unix: makefd_xprt: память исчерпана\n" #: sunrpc/xdr.c:566 msgid "xdr_bytes: out of memory\n" -msgstr "xdr_bytes: \n" +msgstr "xdr_bytes: память исчерпана\n" #: sunrpc/xdr.c:718 msgid "xdr_string: out of memory\n" -msgstr "xdr_string: \n" +msgstr "xdr_string: память исчерпана\n" #: sunrpc/xdr_array.c:106 msgid "xdr_array: out of memory\n" -msgstr "xdr_array: \n" +msgstr "xdr_array: память исчерпана\n" #: sunrpc/xdr_rec.c:156 msgid "xdrrec_create: out of memory\n" -msgstr "xdrrec_create: \n" +msgstr "xdrrec_create: память исчерпана\n" #: sunrpc/xdr_ref.c:86 msgid "xdr_reference: out of memory\n" -msgstr "xdr_reference: \n" +msgstr "xdr_reference: память исчерпана\n" #: sysdeps/generic/siglist.h:29 sysdeps/unix/siglist.c:27 msgid "Hangup" -msgstr " " +msgstr "Обрыв терминальной линии" #: sysdeps/generic/siglist.h:30 sysdeps/unix/siglist.c:28 msgid "Interrupt" -msgstr "" +msgstr "Прерывание" #: sysdeps/generic/siglist.h:31 sysdeps/unix/siglist.c:29 msgid "Quit" -msgstr "" +msgstr "Выход" #: sysdeps/generic/siglist.h:32 sysdeps/unix/siglist.c:30 msgid "Illegal instruction" -msgstr " " +msgstr "Недопустимая инструкция" #: sysdeps/generic/siglist.h:33 sysdeps/unix/siglist.c:31 msgid "Trace/breakpoint trap" -msgstr " /" +msgstr "Ловушка трассировки/останова" #: sysdeps/generic/siglist.h:34 msgid "Aborted" -msgstr " " +msgstr "Аварийный останов" #: sysdeps/generic/siglist.h:35 sysdeps/unix/siglist.c:34 msgid "Floating point exception" -msgstr " " +msgstr "Исключение в операции с плавающей точкой" #: sysdeps/generic/siglist.h:36 sysdeps/unix/siglist.c:35 msgid "Killed" -msgstr "" +msgstr "Убито" #: sysdeps/generic/siglist.h:37 sysdeps/unix/siglist.c:36 msgid "Bus error" -msgstr " " +msgstr "Ошибка шины" #: sysdeps/generic/siglist.h:38 sysdeps/unix/siglist.c:37 msgid "Segmentation fault" -msgstr " " +msgstr "Ошибка сегментирования" #. TRANS Broken pipe; there is no process reading from the other end of a pipe. #. TRANS Every library function that returns this error code also generates a @@ -5086,110 +5111,110 @@ msgstr " " #: sysdeps/generic/siglist.h:39 sysdeps/gnu/errlist.c:359 #: sysdeps/unix/siglist.c:39 msgid "Broken pipe" -msgstr " " +msgstr "Обрыв канала" #: sysdeps/generic/siglist.h:40 sysdeps/unix/siglist.c:40 msgid "Alarm clock" -msgstr " " +msgstr "Сигнал таймера" #: sysdeps/generic/siglist.h:41 sysdeps/unix/siglist.c:41 msgid "Terminated" -msgstr "" +msgstr "Завершено" #: sysdeps/generic/siglist.h:42 sysdeps/unix/siglist.c:42 msgid "Urgent I/O condition" -msgstr " /" +msgstr "Ситуация срочного ввода/вывода" #: sysdeps/generic/siglist.h:43 sysdeps/unix/siglist.c:43 msgid "Stopped (signal)" -msgstr " ()" +msgstr "Остановлено (сигнал)" #: sysdeps/generic/siglist.h:44 sysdeps/unix/siglist.c:44 msgid "Stopped" -msgstr "" +msgstr "Остановлено" #: sysdeps/generic/siglist.h:45 sysdeps/unix/siglist.c:45 msgid "Continued" -msgstr "" +msgstr "Продолжено" #: sysdeps/generic/siglist.h:46 sysdeps/unix/siglist.c:46 msgid "Child exited" -msgstr " " +msgstr "Дочерний процесс завершился" #: sysdeps/generic/siglist.h:47 sysdeps/unix/siglist.c:47 msgid "Stopped (tty input)" -msgstr " ( )" +msgstr "Остановлено (ввод с терминала)" #: sysdeps/generic/siglist.h:48 sysdeps/unix/siglist.c:48 msgid "Stopped (tty output)" -msgstr " ( )" +msgstr "Остановлено (вывод на терминал)" #: sysdeps/generic/siglist.h:49 sysdeps/unix/siglist.c:49 msgid "I/O possible" -msgstr " /" +msgstr "Возможен ввод/вывод" #: sysdeps/generic/siglist.h:50 sysdeps/unix/siglist.c:50 msgid "CPU time limit exceeded" -msgstr " " +msgstr "Превышен лимит процессорного времени" #: sysdeps/generic/siglist.h:51 sysdeps/unix/siglist.c:51 msgid "File size limit exceeded" -msgstr " " +msgstr "Превышен лимит размера файла" #: sysdeps/generic/siglist.h:52 sysdeps/unix/siglist.c:52 msgid "Virtual timer expired" -msgstr " " +msgstr "Виртуальный таймер истек" #: sysdeps/generic/siglist.h:53 sysdeps/unix/siglist.c:53 msgid "Profiling timer expired" -msgstr " " +msgstr "Профилировочный таймер истек" #: sysdeps/generic/siglist.h:54 sysdeps/unix/siglist.c:54 msgid "Window changed" -msgstr " " +msgstr "Окно изменилось" #: sysdeps/generic/siglist.h:55 sysdeps/unix/siglist.c:56 msgid "User defined signal 1" -msgstr " 1" +msgstr "Определяемый пользователем сигнал 1" #: sysdeps/generic/siglist.h:56 sysdeps/unix/siglist.c:57 msgid "User defined signal 2" -msgstr " 2" +msgstr "Определяемый пользователем сигнал 2" #: sysdeps/generic/siglist.h:60 sysdeps/unix/siglist.c:33 msgid "EMT trap" -msgstr " EMT" +msgstr "Ловушка EMT" #: sysdeps/generic/siglist.h:63 sysdeps/unix/siglist.c:38 msgid "Bad system call" -msgstr " " +msgstr "Неверный системный вызов" #: sysdeps/generic/siglist.h:66 msgid "Stack fault" -msgstr " " +msgstr "Ошибка стека" #: sysdeps/generic/siglist.h:69 msgid "Information request" -msgstr " " +msgstr "Запрос информации" #: sysdeps/generic/siglist.h:71 msgid "Power failure" -msgstr " " +msgstr "Сбой питания" #: sysdeps/generic/siglist.h:74 sysdeps/unix/siglist.c:55 msgid "Resource lost" -msgstr " " +msgstr "Потеря ресурса" #. TRANS Operation not permitted; only the owner of the file (or other resource) #. TRANS or processes with special privileges can perform the operation. #: sysdeps/gnu/errlist.c:25 msgid "Operation not permitted" -msgstr " " +msgstr "Операция не позволяется" #. TRANS No process matches the specified process ID. #: sysdeps/gnu/errlist.c:45 msgid "No such process" -msgstr " " +msgstr "Нет такого процесса" #. TRANS Interrupted function call; an asynchronous signal occurred and prevented #. TRANS completion of the call. When this happens, you should try the call @@ -5200,12 +5225,12 @@ msgstr " " #. TRANS Primitives}. #: sysdeps/gnu/errlist.c:60 msgid "Interrupted system call" -msgstr " " +msgstr "Прерван системный вызов" #. TRANS Input/output error; usually used for physical read or write errors. #: sysdeps/gnu/errlist.c:69 msgid "Input/output error" -msgstr " /" +msgstr "Ошибка ввода/вывода" #. TRANS No such device or address. The system tried to use the device #. TRANS represented by a file you specified, and it couldn't find the device. @@ -5214,7 +5239,7 @@ msgstr " /" #. TRANS computer. #: sysdeps/gnu/errlist.c:82 msgid "No such device or address" -msgstr " " +msgstr "Нет такого устройства или адреса" #. TRANS Argument list too long; used when the arguments passed to a new program #. TRANS being executed with one of the @code{exec} functions (@pxref{Executing a @@ -5222,27 +5247,27 @@ msgstr " " #. TRANS GNU system. #: sysdeps/gnu/errlist.c:94 msgid "Argument list too long" -msgstr " " +msgstr "Слишком длинный список аргументов" #. TRANS Invalid executable file format. This condition is detected by the #. TRANS @code{exec} functions; see @ref{Executing a File}. #: sysdeps/gnu/errlist.c:104 msgid "Exec format error" -msgstr " " +msgstr "Ошибка формата выполняемого файла" #. TRANS Bad file descriptor; for example, I/O on a descriptor that has been #. TRANS closed or reading from a descriptor open only for writing (or vice #. TRANS versa). #: sysdeps/gnu/errlist.c:115 msgid "Bad file descriptor" -msgstr " " +msgstr "Неправильный дескриптор файла" #. TRANS There are no child processes. This error happens on operations that are #. TRANS supposed to manipulate child processes, when there aren't any processes #. TRANS to manipulate. #: sysdeps/gnu/errlist.c:126 msgid "No child processes" -msgstr " " +msgstr "Нет дочерних процессов" #. TRANS Deadlock avoided; allocating a system resource would have resulted in a #. TRANS deadlock situation. The system does not guarantee that it will notice @@ -5250,69 +5275,69 @@ msgstr " " #. TRANS noticed; it might just hang. @xref{File Locks}, for an example. #: sysdeps/gnu/errlist.c:138 msgid "Resource deadlock avoided" -msgstr " " +msgstr "Предотвращена тупиковая ситуация при обращении к ресурсу" #. TRANS No memory available. The system cannot allocate more virtual memory #. TRANS because its capacity is full. #: sysdeps/gnu/errlist.c:148 msgid "Cannot allocate memory" -msgstr " " +msgstr "Невозможно выделить память" #. TRANS Bad address; an invalid pointer was detected. #. TRANS In the GNU system, this error never happens; you get a signal instead. #: sysdeps/gnu/errlist.c:167 msgid "Bad address" -msgstr " " +msgstr "Неправильный адрес" #. TRANS A file that isn't a block special file was given in a situation that #. TRANS requires one. For example, trying to mount an ordinary file as a file #. TRANS system in Unix gives this error. #: sysdeps/gnu/errlist.c:178 msgid "Block device required" -msgstr " " +msgstr "Требуется блочное устройство" #. TRANS Resource busy; a system resource that can't be shared is already in use. #. TRANS For example, if you try to delete a file that is the root of a currently #. TRANS mounted filesystem, you get this error. #: sysdeps/gnu/errlist.c:189 msgid "Device or resource busy" -msgstr " " +msgstr "Устройство или ресурс занято" #. TRANS File exists; an existing file was specified in a context where it only #. TRANS makes sense to specify a new file. #: sysdeps/gnu/errlist.c:199 msgid "File exists" -msgstr " " +msgstr "Файл существует" #. TRANS An attempt to make an improper link across file systems was detected. #. TRANS This happens not only when you use @code{link} (@pxref{Hard Links}) but #. TRANS also when you rename a file with @code{rename} (@pxref{Renaming Files}). #: sysdeps/gnu/errlist.c:210 msgid "Invalid cross-device link" -msgstr " " +msgstr "Неверная ссылка между устройствами" #. TRANS The wrong type of device was given to a function that expects a #. TRANS particular sort of device. #: sysdeps/gnu/errlist.c:220 msgid "No such device" -msgstr " " +msgstr "Нет такого устройства" #. TRANS A file that isn't a directory was specified when a directory is required. #: sysdeps/gnu/errlist.c:229 msgid "Not a directory" -msgstr " " +msgstr "Это не каталог" #. TRANS File is a directory; you cannot open a directory for writing, #. TRANS or create or remove hard links to it. #: sysdeps/gnu/errlist.c:239 msgid "Is a directory" -msgstr " " +msgstr "Это каталог" #. TRANS Invalid argument. This is used to indicate various kinds of problems #. TRANS with passing the wrong argument to a library function. #: sysdeps/gnu/errlist.c:249 msgid "Invalid argument" -msgstr " " +msgstr "Недопустимый аргумент" #. TRANS The current process has too many files open and can't open any more. #. TRANS Duplicate descriptors do count toward this limit. @@ -5323,20 +5348,20 @@ msgstr " " #. TRANS @pxref{Limits on Resources}. #: sysdeps/gnu/errlist.c:264 msgid "Too many open files" -msgstr " " +msgstr "Слишком много открытых файлов" #. TRANS There are too many distinct file openings in the entire system. Note #. TRANS that any number of linked channels count as just one file opening; see #. TRANS @ref{Linked Channels}. This error never occurs in the GNU system. #: sysdeps/gnu/errlist.c:275 msgid "Too many open files in system" -msgstr " " +msgstr "Слишком много открытых файлов в системе" #. TRANS Inappropriate I/O control operation, such as trying to set terminal #. TRANS modes on an ordinary file. #: sysdeps/gnu/errlist.c:285 msgid "Inappropriate ioctl for device" -msgstr " ioctl" +msgstr "Неприменимый к данному устройству ioctl" #. TRANS An attempt to execute a file that is currently open for writing, or #. TRANS write to a file that is currently being executed. Often using a @@ -5345,47 +5370,47 @@ msgstr " ioctl" #. TRANS is not an error in the GNU system; the text is copied as necessary. #: sysdeps/gnu/errlist.c:298 msgid "Text file busy" -msgstr " " +msgstr "Текстовый файл занят" #. TRANS File too big; the size of a file would be larger than allowed by the system. #: sysdeps/gnu/errlist.c:307 msgid "File too large" -msgstr " " +msgstr "Файл слишком велик" #. TRANS No space left on device; write operation on a file failed because the #. TRANS disk is full. #: sysdeps/gnu/errlist.c:317 msgid "No space left on device" -msgstr " " +msgstr "На устройстве кончилось место" #. TRANS Invalid seek operation (such as on a pipe). #: sysdeps/gnu/errlist.c:326 msgid "Illegal seek" -msgstr " " +msgstr "Недопустимая операция смещения" #. TRANS An attempt was made to modify something on a read-only file system. #: sysdeps/gnu/errlist.c:335 msgid "Read-only file system" -msgstr " " +msgstr "Файловая система доступна только для чтения" #. TRANS Too many links; the link count of a single file would become too large. #. TRANS @code{rename} can cause this error if the file being renamed already has #. TRANS as many links as it can take (@pxref{Renaming Files}). #: sysdeps/gnu/errlist.c:346 msgid "Too many links" -msgstr " " +msgstr "Слишком много ссылок" #. TRANS Domain error; used by mathematical functions when an argument value does #. TRANS not fall into the domain over which the function is defined. #: sysdeps/gnu/errlist.c:369 msgid "Numerical argument out of domain" -msgstr " " +msgstr "Числовой аргумент вне области определения" #. TRANS Range error; used by mathematical functions when the result value is #. TRANS not representable because of overflow or underflow. #: sysdeps/gnu/errlist.c:379 msgid "Numerical result out of range" -msgstr " " +msgstr "Числовой результат вне представимого диапазона" #. TRANS Resource temporarily unavailable; the call might work if you try again #. TRANS later. The macro @code{EWOULDBLOCK} is another name for @code{EAGAIN}; @@ -5418,7 +5443,7 @@ msgstr " " #. TRANS @end itemize #: sysdeps/gnu/errlist.c:416 msgid "Resource temporarily unavailable" -msgstr " " +msgstr "Ресурс временно недоступен" #. TRANS In the GNU C library, this is another name for @code{EAGAIN} (above). #. TRANS The values are always the same, on every operating system. @@ -5427,7 +5452,7 @@ msgstr " " #. TRANS separate error code. #: sysdeps/gnu/errlist.c:429 msgid "Operation would block" -msgstr " " +msgstr "Операция приведет к блокировке" #. TRANS An operation that cannot complete immediately was initiated on an object #. TRANS that has non-blocking mode selected. Some functions that must always @@ -5439,47 +5464,47 @@ msgstr " " #. TRANS has completed; @pxref{Waiting for I/O}. #: sysdeps/gnu/errlist.c:445 msgid "Operation now in progress" -msgstr " " +msgstr "Операция выполняется в данный момент" #. TRANS An operation is already in progress on an object that has non-blocking #. TRANS mode selected. #: sysdeps/gnu/errlist.c:455 msgid "Operation already in progress" -msgstr " " +msgstr "Операция уже выполняется" #. TRANS A file that isn't a socket was specified when a socket is required. #: sysdeps/gnu/errlist.c:464 msgid "Socket operation on non-socket" -msgstr " -" +msgstr "Операция для сокета применена к не-сокету" #. TRANS The size of a message sent on a socket was larger than the supported #. TRANS maximum size. #: sysdeps/gnu/errlist.c:474 msgid "Message too long" -msgstr " " +msgstr "Сообщение слишком длинное" #. TRANS The socket type does not support the requested communications protocol. #: sysdeps/gnu/errlist.c:483 msgid "Protocol wrong type for socket" -msgstr " " +msgstr "Неподдерживаемый для сокета тип протокола" #. TRANS You specified a socket option that doesn't make sense for the #. TRANS particular protocol being used by the socket. @xref{Socket Options}. #: sysdeps/gnu/errlist.c:493 msgid "Protocol not available" -msgstr " " +msgstr "Протокол недоступен" #. TRANS The socket domain does not support the requested communications protocol #. TRANS (perhaps because the requested protocol is completely invalid). #. TRANS @xref{Creating a Socket}. #: sysdeps/gnu/errlist.c:504 msgid "Protocol not supported" -msgstr " " +msgstr "Протокол не поддерживается" #. TRANS The socket type is not supported. #: sysdeps/gnu/errlist.c:513 msgid "Socket type not supported" -msgstr " " +msgstr "Неподдерживаемый тип сокета" #. TRANS The operation you requested is not supported. Some socket functions #. TRANS don't make sense for all types of sockets, and others may not be @@ -5489,71 +5514,71 @@ msgstr " " #. TRANS nothing to do for that call. #: sysdeps/gnu/errlist.c:527 msgid "Operation not supported" -msgstr " " +msgstr "Неподдерживаемая операция" #. TRANS The socket communications protocol family you requested is not supported. #: sysdeps/gnu/errlist.c:536 msgid "Protocol family not supported" -msgstr " " +msgstr "Неподдерживаемое семейство протоколов" #. TRANS The address family specified for a socket is not supported; it is #. TRANS inconsistent with the protocol being used on the socket. @xref{Sockets}. #: sysdeps/gnu/errlist.c:546 msgid "Address family not supported by protocol" -msgstr " " +msgstr "Семейство адресов не поддерживается протоколом" #. TRANS The requested socket address is already in use. @xref{Socket Addresses}. #: sysdeps/gnu/errlist.c:555 msgid "Address already in use" -msgstr " " +msgstr "Адрес уже используется" #. TRANS The requested socket address is not available; for example, you tried #. TRANS to give a socket a name that doesn't match the local host name. #. TRANS @xref{Socket Addresses}. #: sysdeps/gnu/errlist.c:566 msgid "Cannot assign requested address" -msgstr " " +msgstr "Невозможно назначить запрошенный адрес" #. TRANS A socket operation failed because the network was down. #: sysdeps/gnu/errlist.c:575 msgid "Network is down" -msgstr " " +msgstr "Сеть не работает" #. TRANS A socket operation failed because the subnet containing the remote host #. TRANS was unreachable. #: sysdeps/gnu/errlist.c:585 msgid "Network is unreachable" -msgstr " " +msgstr "Сеть недоступна" #. TRANS A network connection was reset because the remote host crashed. #: sysdeps/gnu/errlist.c:594 msgid "Network dropped connection on reset" -msgstr " " +msgstr "Сетевое соединение было сброшено" #. TRANS A network connection was aborted locally. #: sysdeps/gnu/errlist.c:603 msgid "Software caused connection abort" -msgstr " " +msgstr "Программа вызвала сброс соединения" #. TRANS A network connection was closed for reasons outside the control of the #. TRANS local host, such as by the remote machine rebooting or an unrecoverable #. TRANS protocol violation. #: sysdeps/gnu/errlist.c:614 msgid "Connection reset by peer" -msgstr " " +msgstr "Соединение сброшено другой стороной" #. TRANS The kernel's buffers for I/O operations are all in use. In GNU, this #. TRANS error is always synonymous with @code{ENOMEM}; you may get one or the #. TRANS other from network operations. #: sysdeps/gnu/errlist.c:625 msgid "No buffer space available" -msgstr " " +msgstr "Недостаточно буферного пространства" #. TRANS You tried to connect a socket that is already connected. #. TRANS @xref{Connecting}. #: sysdeps/gnu/errlist.c:635 msgid "Transport endpoint is already connected" -msgstr " " +msgstr "Конечная точка передачи уже подсоединена" #. TRANS The socket is not connected to anything. You get this error when you #. TRANS try to transmit data over a socket, without first specifying a @@ -5561,83 +5586,83 @@ msgstr " " #. TRANS protocols, such as UDP), you get @code{EDESTADDRREQ} instead. #: sysdeps/gnu/errlist.c:647 msgid "Transport endpoint is not connected" -msgstr " " +msgstr "Конечная точка передачи не подсоединена" #. TRANS No default destination address was set for the socket. You get this #. TRANS error when you try to transmit data over a connectionless socket, #. TRANS without first specifying a destination for the data with @code{connect}. #: sysdeps/gnu/errlist.c:658 msgid "Destination address required" -msgstr " " +msgstr "Требуется указать адрес назначения" #. TRANS The socket has already been shut down. #: sysdeps/gnu/errlist.c:667 msgid "Cannot send after transport endpoint shutdown" -msgstr " " +msgstr "Невозможно послать данные после выключения конечной точки передачи" #. TRANS ??? #: sysdeps/gnu/errlist.c:676 msgid "Too many references: cannot splice" -msgstr " : " +msgstr "Слишком много ссылок: невозможно объединить" #. TRANS A socket operation with a specified timeout received no response during #. TRANS the timeout period. #: sysdeps/gnu/errlist.c:686 msgid "Connection timed out" -msgstr " " +msgstr "Время ожидания соединения истекло" #. TRANS A remote host refused to allow the network connection (typically because #. TRANS it is not running the requested service). #: sysdeps/gnu/errlist.c:696 msgid "Connection refused" -msgstr " " +msgstr "В соединении отказано" #. TRANS Too many levels of symbolic links were encountered in looking up a file name. #. TRANS This often indicates a cycle of symbolic links. #: sysdeps/gnu/errlist.c:706 msgid "Too many levels of symbolic links" -msgstr " " +msgstr "Слишком много уровней символьных ссылок" #. TRANS Filename too long (longer than @code{PATH_MAX}; @pxref{Limits for #. TRANS Files}) or host name too long (in @code{gethostname} or #. TRANS @code{sethostname}; @pxref{Host Identification}). #: sysdeps/gnu/errlist.c:717 msgid "File name too long" -msgstr " " +msgstr "Слишком длинное имя файла" #. TRANS The remote host for a requested network connection is down. #: sysdeps/gnu/errlist.c:726 msgid "Host is down" -msgstr " " +msgstr "Хост выключен" #. TRANS The remote host for a requested network connection is not reachable. #: sysdeps/gnu/errlist.c:735 msgid "No route to host" -msgstr " " +msgstr "Нет пути до хоста" #. TRANS Directory not empty, where an empty directory was expected. Typically, #. TRANS this error occurs when you are trying to delete a directory. #: sysdeps/gnu/errlist.c:745 msgid "Directory not empty" -msgstr " " +msgstr "Каталог не пуст" #. TRANS This means that the per-user limit on new process would be exceeded by #. TRANS an attempted @code{fork}. @xref{Limits on Resources}, for details on #. TRANS the @code{RLIMIT_NPROC} limit. #: sysdeps/gnu/errlist.c:756 msgid "Too many processes" -msgstr " " +msgstr "Слишком много процессов" #. TRANS The file quota system is confused because there are too many users. #. TRANS @c This can probably happen in a GNU system when using NFS. #: sysdeps/gnu/errlist.c:766 msgid "Too many users" -msgstr " " +msgstr "Слишком много пользователей" #. TRANS The user's disk quota was exceeded. #: sysdeps/gnu/errlist.c:775 msgid "Disk quota exceeded" -msgstr " " +msgstr "Превышена дисковая квота" #. TRANS Stale NFS file handle. This indicates an internal confusion in the NFS #. TRANS system which is due to file system rearrangements on the server host. @@ -5645,7 +5670,7 @@ msgstr " " #. TRANS the NFS file system on the local host. #: sysdeps/gnu/errlist.c:787 msgid "Stale NFS file handle" -msgstr " NFS" +msgstr "Устаревший хэндл файла NFS" #. TRANS An attempt was made to NFS-mount a remote file system with a file name that #. TRANS already specifies an NFS-mounted file. @@ -5653,32 +5678,32 @@ msgstr " NFS" #. TRANS properly on the GNU system, making this error code impossible.) #: sysdeps/gnu/errlist.c:799 msgid "Object is remote" -msgstr " " +msgstr "Это удаленный объект" #. TRANS ??? #: sysdeps/gnu/errlist.c:808 msgid "RPC struct is bad" -msgstr " RPC " +msgstr " RPC неправильная структура" #. TRANS ??? #: sysdeps/gnu/errlist.c:817 msgid "RPC version wrong" -msgstr "RPC " +msgstr "RPC неправильная версия" #. TRANS ??? #: sysdeps/gnu/errlist.c:826 msgid "RPC program not available" -msgstr "RPC " +msgstr "RPC программа недоступна" #. TRANS ??? #: sysdeps/gnu/errlist.c:835 msgid "RPC program version wrong" -msgstr "RPC " +msgstr "RPC неправильная версия программы" #. TRANS ??? #: sysdeps/gnu/errlist.c:844 msgid "RPC bad procedure for program" -msgstr "RPC " +msgstr "RPC неправильная процедура для программы" #. TRANS No locks available. This is used by the file locking facilities; see #. TRANS @ref{File Locks}. This error is never generated by the GNU system, but @@ -5686,7 +5711,7 @@ msgstr "RPC " #. TRANS operating system. #: sysdeps/gnu/errlist.c:856 msgid "No locks available" -msgstr " " +msgstr "Нет доступных блокировок" #. TRANS Inappropriate file type or format. The file was the wrong type for the #. TRANS operation, or a data file had the wrong format. @@ -5695,17 +5720,17 @@ msgstr " " #. TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}. #: sysdeps/gnu/errlist.c:869 msgid "Inappropriate file type or format" -msgstr " " +msgstr "Неподходящий тип или формат файла" #. TRANS ??? #: sysdeps/gnu/errlist.c:878 msgid "Authentication error" -msgstr " " +msgstr "Ошибка аутентификации" #. TRANS ??? #: sysdeps/gnu/errlist.c:887 msgid "Need authenticator" -msgstr " " +msgstr "Необходим аутентификатор" #. TRANS Function not implemented. This indicates that the function called is #. TRANS not implemented at all, either in the C library itself or in the @@ -5714,7 +5739,7 @@ msgstr " " #. TRANS install a new version of the C library or the operating system. #: sysdeps/gnu/errlist.c:900 msgid "Function not implemented" -msgstr " " +msgstr "Функция не реализована" #. TRANS Not supported. A function returns this error when certain parameter #. TRANS values are valid, but the functionality they request is not available. @@ -5730,13 +5755,13 @@ msgstr " " #. TRANS it returns @code{ENOSYS} instead. #: sysdeps/gnu/errlist.c:920 msgid "Not supported" -msgstr " " +msgstr "Не поддерживается" #. TRANS While decoding a multibyte character the function came along an invalid #. TRANS or an incomplete sequence of bytes or the given wide character is invalid. #: sysdeps/gnu/errlist.c:930 msgid "Invalid or incomplete multibyte or wide character" -msgstr " " +msgstr "Неверный или неполный мультибайтный или широкий знак" #. TRANS In the GNU system, servers supporting the @code{term} protocol return #. TRANS this error for certain operations when the caller is not in the @@ -5746,14 +5771,14 @@ msgstr " " #. TRANS for information on process groups and these signals. #: sysdeps/gnu/errlist.c:944 msgid "Inappropriate operation for background process" -msgstr " " +msgstr "Неподходящая операция для фонового процесса" #. TRANS In the GNU system, opening a file returns this error when the file is #. TRANS translated by a program and the translator program dies while starting #. TRANS up, before it has connected to the file. #: sysdeps/gnu/errlist.c:955 msgid "Translator died" -msgstr " " +msgstr "Транслятор умер" #. TRANS The experienced user will know what is wrong. #. TRANS @c This error code is a joke. Its perror text is part of the joke. @@ -5765,61 +5790,61 @@ msgstr "?" #. TRANS You did @strong{what}? #: sysdeps/gnu/errlist.c:975 msgid "You really blew it this time" -msgstr " " +msgstr "На этот раз вы всех опрокинули" #. TRANS Go home and have a glass of warm, dairy-fresh milk. #: sysdeps/gnu/errlist.c:984 msgid "Computer bought the farm" -msgstr " " +msgstr "Компьютер купил ферму" #. TRANS This error code has no purpose. #: sysdeps/gnu/errlist.c:993 msgid "Gratuitous error" -msgstr " " +msgstr "Безвозмездная ошибка" #: sysdeps/gnu/errlist.c:1001 msgid "Bad message" -msgstr " " +msgstr "Неправильное сообщение" #: sysdeps/gnu/errlist.c:1009 msgid "Identifier removed" -msgstr " " +msgstr "Идентификатор был удален" #: sysdeps/gnu/errlist.c:1017 msgid "Multihop attempted" -msgstr "" +msgstr "Попытка Multihop" #: sysdeps/gnu/errlist.c:1025 msgid "No data available" -msgstr " " +msgstr "Нет доступных данных" #: sysdeps/gnu/errlist.c:1033 msgid "Link has been severed" -msgstr " " +msgstr "Соединение было разорвано" #: sysdeps/gnu/errlist.c:1041 msgid "No message of desired type" -msgstr " " +msgstr "Нет сообщения желаемого типа" #: sysdeps/gnu/errlist.c:1049 msgid "Out of streams resources" -msgstr " " +msgstr "Недостаточно потоковых ресурсов" #: sysdeps/gnu/errlist.c:1057 msgid "Device not a stream" -msgstr " " +msgstr "Устройство не является потоком" #: sysdeps/gnu/errlist.c:1065 msgid "Value too large for defined data type" -msgstr " " +msgstr "Значение слишком велико для такого типа данных" #: sysdeps/gnu/errlist.c:1073 msgid "Protocol error" -msgstr " " +msgstr "Ошибка протокола" #: sysdeps/gnu/errlist.c:1081 msgid "Timer expired" -msgstr " " +msgstr "Таймер истек" #. TRANS Operation canceled; an asynchronous operation was canceled before it #. TRANS completed. @xref{Asynchronous I/O}. When you call @code{aio_cancel}, @@ -5827,685 +5852,748 @@ msgstr " " #. TRANS error; @pxref{Cancel AIO Operations}. #: sysdeps/gnu/errlist.c:1093 msgid "Operation canceled" -msgstr " " +msgstr "Операция отменена" #: sysdeps/gnu/errlist.c:1101 msgid "Interrupted system call should be restarted" -msgstr " " +msgstr "Прерванный системный вызов следует перезапустить" #: sysdeps/gnu/errlist.c:1109 msgid "Channel number out of range" -msgstr " " +msgstr "Номер канала вне диапазона" #: sysdeps/gnu/errlist.c:1117 msgid "Level 2 not synchronized" -msgstr " 2 " +msgstr "Уровень 2 не синхронизирован" #: sysdeps/gnu/errlist.c:1125 msgid "Level 3 halted" -msgstr " 3 " +msgstr "Уровень 3 остановлен" #: sysdeps/gnu/errlist.c:1133 msgid "Level 3 reset" -msgstr " 3 " +msgstr "Уровень 3 сброшен" #: sysdeps/gnu/errlist.c:1141 msgid "Link number out of range" -msgstr " " +msgstr "Число ссылок вне допустимого диапазона" #: sysdeps/gnu/errlist.c:1149 msgid "Protocol driver not attached" -msgstr " " +msgstr "Драйвер протокола не подсоединен" #: sysdeps/gnu/errlist.c:1157 msgid "No CSI structure available" -msgstr " CSI-" +msgstr "Нет доступной CSI-структуры" #: sysdeps/gnu/errlist.c:1165 msgid "Level 2 halted" -msgstr " 2 " +msgstr "Уровень 2 остановлен" #: sysdeps/gnu/errlist.c:1173 msgid "Invalid exchange" -msgstr "" +msgstr "Некорректный обмен" #: sysdeps/gnu/errlist.c:1181 msgid "Invalid request descriptor" -msgstr " " +msgstr "Неверный дескриптор запроса" #: sysdeps/gnu/errlist.c:1189 msgid "Exchange full" -msgstr "" +msgstr "Обмен полный" #: sysdeps/gnu/errlist.c:1197 msgid "No anode" -msgstr "" +msgstr "Нет anode" #: sysdeps/gnu/errlist.c:1205 msgid "Invalid request code" -msgstr " " +msgstr "Неверный код запроса" #: sysdeps/gnu/errlist.c:1213 msgid "Invalid slot" -msgstr "" +msgstr "Некорректный слот" #: sysdeps/gnu/errlist.c:1221 msgid "File locking deadlock error" -msgstr ": " +msgstr "Ошибка: тупик при блокировке файла" #: sysdeps/gnu/errlist.c:1229 msgid "Bad font file format" -msgstr " " +msgstr "Неверный формат файла со шрифтом" #: sysdeps/gnu/errlist.c:1237 msgid "Machine is not on the network" -msgstr " " +msgstr "Машина не в сети" #: sysdeps/gnu/errlist.c:1245 msgid "Package not installed" -msgstr " " +msgstr "Пакет не установлен" #: sysdeps/gnu/errlist.c:1253 msgid "Advertise error" -msgstr "" +msgstr "Ошибка объявления" #: sysdeps/gnu/errlist.c:1261 msgid "Srmount error" -msgstr " Srmount" +msgstr "Ошибка Srmount" #: sysdeps/gnu/errlist.c:1269 msgid "Communication error on send" -msgstr " " +msgstr "Ошибка связи при отправке" #: sysdeps/gnu/errlist.c:1277 msgid "RFS specific error" -msgstr " RFS " +msgstr "Специфичная для RFS ошибка" #: sysdeps/gnu/errlist.c:1285 msgid "Name not unique on network" -msgstr " " +msgstr "Имя не уникально в сети" #: sysdeps/gnu/errlist.c:1293 msgid "File descriptor in bad state" -msgstr " " +msgstr "Дескриптор файла в плохом состоянии" #: sysdeps/gnu/errlist.c:1301 msgid "Remote address changed" -msgstr " " +msgstr "Удаленный адрес был изменен" #: sysdeps/gnu/errlist.c:1309 msgid "Can not access a needed shared library" -msgstr " " +msgstr "Невозможно получить доступ к нужной разделяемой библиотеке" #: sysdeps/gnu/errlist.c:1317 msgid "Accessing a corrupted shared library" -msgstr " " +msgstr "Обращение к поврежденной разделяемой библиотеке" #: sysdeps/gnu/errlist.c:1325 msgid ".lib section in a.out corrupted" -msgstr " .lib a.out " +msgstr "Секция .lib в a.out повреждена" #: sysdeps/gnu/errlist.c:1333 msgid "Attempting to link in too many shared libraries" -msgstr " " +msgstr "Попытка подключить слишком много разделяемый библиотек" #: sysdeps/gnu/errlist.c:1341 msgid "Cannot exec a shared library directly" -msgstr " " +msgstr "Невозможно непосредственно выполнить разделяемую библиотеку" #: sysdeps/gnu/errlist.c:1349 msgid "Streams pipe error" -msgstr "" +msgstr "Ошибка потоков канала" #: sysdeps/gnu/errlist.c:1357 msgid "Structure needs cleaning" -msgstr " " +msgstr "Структуру необходимо почистить" #: sysdeps/gnu/errlist.c:1365 msgid "Not a XENIX named type file" -msgstr "" +msgstr "Тип файла не назван XENIX" #: sysdeps/gnu/errlist.c:1373 msgid "No XENIX semaphores available" -msgstr " XENIX " +msgstr "Семафоры XENIX недоступны" #: sysdeps/gnu/errlist.c:1381 msgid "Is a named type file" -msgstr "" +msgstr "Является файлом имен типов" #: sysdeps/gnu/errlist.c:1389 msgid "Remote I/O error" -msgstr " /" +msgstr "Ошибка удаленного ввода/вывода" #: sysdeps/gnu/errlist.c:1397 msgid "No medium found" -msgstr " " +msgstr "Носитель не найден" #: sysdeps/gnu/errlist.c:1405 msgid "Wrong medium type" -msgstr " " +msgstr "Неправильный тип носителя" #: sysdeps/gnu/errlist.c:1413 msgid "Required key not available" -msgstr " " +msgstr "Требуемый ключ недоступен" #: sysdeps/gnu/errlist.c:1421 msgid "Key has expired" -msgstr " " +msgstr "Время жизни ключа истекло" #: sysdeps/gnu/errlist.c:1429 msgid "Key has been revoked" -msgstr " " +msgstr "Ключ был отозван" #: sysdeps/gnu/errlist.c:1437 msgid "Key was rejected by service" -msgstr " " +msgstr "Ключ был отвергнут службой" #: sysdeps/gnu/errlist.c:1445 msgid "Owner died" -msgstr " " +msgstr "Владелец умер" #: sysdeps/gnu/errlist.c:1453 msgid "State not recoverable" -msgstr " " +msgstr "Состояние нельзя восстановить" #: sysdeps/mach/_strerror.c:57 msgid "Error in unknown error system: " -msgstr " : " +msgstr "Ошибка в неизвестной системе ошибок: " #: sysdeps/posix/gai_strerror-strs.h:1 msgid "Address family for hostname not supported" -msgstr " " +msgstr "Семейство адресов не поддерживается для данного имени хоста" #: sysdeps/posix/gai_strerror-strs.h:2 msgid "Temporary failure in name resolution" -msgstr " " +msgstr "Временный сбой в разрешении имен" #: sysdeps/posix/gai_strerror-strs.h:3 msgid "Bad value for ai_flags" -msgstr " ai_flags" +msgstr "Неправильное значение для ai_flags" #: sysdeps/posix/gai_strerror-strs.h:4 msgid "Non-recoverable failure in name resolution" -msgstr " " +msgstr "Неисправимая ошибка в разрешении имен" #: sysdeps/posix/gai_strerror-strs.h:5 msgid "ai_family not supported" -msgstr "ai_family " +msgstr "ai_family не поддерживается" #: sysdeps/posix/gai_strerror-strs.h:6 msgid "Memory allocation failure" -msgstr " " +msgstr "Ошибка выделения памяти" #: sysdeps/posix/gai_strerror-strs.h:7 msgid "No address associated with hostname" -msgstr " " +msgstr "С именем хоста не связано ни одного адреса" #: sysdeps/posix/gai_strerror-strs.h:8 msgid "Name or service not known" -msgstr " " +msgstr "Имя или служба не известны" #: sysdeps/posix/gai_strerror-strs.h:9 msgid "Servname not supported for ai_socktype" -msgstr "Servname ai_socktype" +msgstr "Servname не поддерживается для ai_socktype" #: sysdeps/posix/gai_strerror-strs.h:10 msgid "ai_socktype not supported" -msgstr "ai_socktype " +msgstr "ai_socktype не поддерживается" #: sysdeps/posix/gai_strerror-strs.h:11 msgid "System error" -msgstr " " +msgstr "Системная ошибка" #: sysdeps/posix/gai_strerror-strs.h:12 msgid "Processing request in progress" -msgstr " " +msgstr "Обработка запроса продолжается" #: sysdeps/posix/gai_strerror-strs.h:13 msgid "Request canceled" -msgstr " " +msgstr "Запрос отменен" #: sysdeps/posix/gai_strerror-strs.h:14 msgid "Request not canceled" -msgstr " " +msgstr "Запрос не отменен" #: sysdeps/posix/gai_strerror-strs.h:15 msgid "All requests done" -msgstr " " +msgstr "Все запросы выполнены" #: sysdeps/posix/gai_strerror-strs.h:16 msgid "Interrupted by a signal" -msgstr " " +msgstr "Прервано по сигналу" #: sysdeps/posix/gai_strerror-strs.h:17 msgid "Parameter string not correctly encoded" -msgstr " " +msgstr "Неправильно закодирована строка параметра" #: sysdeps/unix/siglist.c:26 msgid "Signal 0" -msgstr " 0" +msgstr "Сигнал 0" #: sysdeps/unix/siglist.c:32 msgid "IOT trap" -msgstr " IOT" +msgstr "Ловушка IOT" #: sysdeps/unix/sysv/linux/i386/readelflib.c:49 #, c-format msgid "%s is for unknown machine %d.\n" -msgstr "%s %d.\n" +msgstr "%s предназначен для неизвестной машины %d.\n" #: sysdeps/unix/sysv/linux/ia64/makecontext.c:63 #, c-format msgid "makecontext: does not know how to handle more than 8 arguments\n" -msgstr "makecontext: \n" +msgstr "makecontext: нет возможности обработать более восьми аргументов\n" #: sysdeps/unix/sysv/linux/lddlibc4.c:64 #, c-format msgid "cannot open `%s'" -msgstr " `%s'" +msgstr "невозможно открыть «%s»" #: sysdeps/unix/sysv/linux/lddlibc4.c:68 #, c-format msgid "cannot read header from `%s'" -msgstr " `%s'" +msgstr "невозможно считать заголовок из «%s»" -#: timezone/zdump.c:215 +#: timezone/zdump.c:211 msgid "lacks alphabetic at start" -msgstr " " +msgstr "вначале нет буквы" -#: timezone/zdump.c:217 +#: timezone/zdump.c:213 msgid "has fewer than 3 alphabetics" -msgstr " 3 " +msgstr "содержит менее 3 букв" -#: timezone/zdump.c:219 +#: timezone/zdump.c:215 msgid "has more than 6 alphabetics" -msgstr " 6 " +msgstr "содержит более 6 букв" -#: timezone/zdump.c:227 +#: timezone/zdump.c:223 msgid "differs from POSIX standard" -msgstr " POSIX" +msgstr "отличается от стандарта POSIX" -#: timezone/zdump.c:233 +#: timezone/zdump.c:229 #, c-format msgid "%s: warning: zone \"%s\" abbreviation \"%s\" %s\n" -msgstr "%s: : \"%s\" \"%s\" %s\n" +msgstr "%s: предупреждение: зона «%s» сокращение «%s» %s\n" -#: timezone/zdump.c:284 +#: timezone/zdump.c:280 #, c-format msgid "%s: usage is %s [ --version ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n" -msgstr "%s: : %s [ --version ] [ -v ] [ -c [-,]- ] - ...\n" +msgstr "%s: использование: %s [ --version ] [ -v ] [ -c [первый-год,]последний-год ] имя-зоны ...\n" -#: timezone/zdump.c:301 +#: timezone/zdump.c:297 #, c-format msgid "%s: wild -c argument %s\n" -msgstr "" +msgstr "%s: не обработан аргумент -c, %s\n" -#: timezone/zdump.c:392 +#: timezone/zdump.c:388 msgid "Error writing to standard output" -msgstr " " +msgstr "Ошибка записи на стандартный вывод" -#: timezone/zdump.c:415 +#: timezone/zdump.c:411 #, c-format msgid "%s: use of -v on system with floating time_t other than float or double\n" -msgstr "%s: -v , time_t , float double\n" +msgstr "%s: использование -v на системе, где time_t имеет тип с плавающей запятой, отличный от float или double\n" -#: timezone/zic.c:371 +#: timezone/zic.c:392 #, c-format msgid "%s: Memory exhausted: %s\n" -msgstr "%s: : %s\n" +msgstr "%s: Память исчерпана: %s\n" -#: timezone/zic.c:430 +#: timezone/zic.c:451 #, c-format msgid "\"%s\", line %d: %s" -msgstr "\"%s\", %d: %s" +msgstr "«%s», строка %d: %s" -#: timezone/zic.c:433 +#: timezone/zic.c:454 #, c-format msgid " (rule from \"%s\", line %d)" -msgstr " ( \"%s\", %d)" +msgstr " (правило из «%s», строка %d)" -#: timezone/zic.c:445 +#: timezone/zic.c:466 msgid "warning: " -msgstr ": " +msgstr "предупреждение: " -#: timezone/zic.c:455 -#, c-format +#: timezone/zic.c:476 +#, fuzzy, c-format msgid "" -"%s: usage is %s [ --version ] [ -s ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n" +"%s: usage is %s [ --version ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n" "\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n" msgstr "" -"%s: : %s [ --version ] [ -s ] [ -v ] [ -l - ] [ -p -posix ] \\\n" -"\t[ -d ] [ -L - ] [ -y yearistype ] [ - ... ]\n" +"%s: использование: %s [ --version ] [ -s ] [ -v ] [ -l местное-время ] [ -p правила-posix ] \\\n" +"\t[ -d каталог ] [ -L високосные-секунды ] [ -y yearistype ] [ имя-файла ... ]\n" + +#: timezone/zic.c:511 +msgid "wild compilation-time specification of zic_t" +msgstr "плохая спецификация при компиляции для zic_t" -#: timezone/zic.c:503 +#: timezone/zic.c:528 #, c-format msgid "%s: More than one -d option specified\n" -msgstr "%s: -d\n" +msgstr "%s: Задано более одного ключа -d\n" -#: timezone/zic.c:513 +#: timezone/zic.c:538 #, c-format msgid "%s: More than one -l option specified\n" -msgstr "%s: -l\n" +msgstr "%s: Задано более одного ключа -l\n" -#: timezone/zic.c:523 +#: timezone/zic.c:548 #, c-format msgid "%s: More than one -p option specified\n" -msgstr "%s: -p\n" +msgstr "%s: Задано более одного ключа -p\n" -#: timezone/zic.c:533 +#: timezone/zic.c:558 #, c-format msgid "%s: More than one -y option specified\n" -msgstr "%s: -y\n" +msgstr "%s: Задано более одного ключа -y\n" -#: timezone/zic.c:543 +#: timezone/zic.c:568 #, c-format msgid "%s: More than one -L option specified\n" -msgstr "%s: -L\n" +msgstr "%s: Задано более одного ключа -L\n" -#: timezone/zic.c:592 +#: timezone/zic.c:617 msgid "link to link" -msgstr " " +msgstr "ссылка на ссылку" -#: timezone/zic.c:657 +#: timezone/zic.c:682 msgid "hard link failed, symbolic link used" -msgstr " , " +msgstr "не удалось сделать жесткую ссылку, используется символьная" -#: timezone/zic.c:665 +#: timezone/zic.c:690 #, c-format msgid "%s: Can't link from %s to %s: %s\n" -msgstr "%s: %s %s: %s\n" +msgstr "%s: Невозможно сделать ссылку с %s на %s: %s\n" -#: timezone/zic.c:774 timezone/zic.c:776 +#: timezone/zic.c:762 timezone/zic.c:764 msgid "same rule name in multiple files" -msgstr " " +msgstr "одинаковое имя правила в нескольких файлах" -#: timezone/zic.c:817 +#: timezone/zic.c:805 msgid "unruly zone" -msgstr " " +msgstr "не подчиняющаяся правилам зона" -#: timezone/zic.c:824 +#: timezone/zic.c:812 #, c-format msgid "%s in ruleless zone" -msgstr "%s " +msgstr "%s в зоне без правил" -#: timezone/zic.c:845 +#: timezone/zic.c:833 msgid "standard input" -msgstr " " +msgstr "стандартный ввод" -#: timezone/zic.c:850 +#: timezone/zic.c:838 #, c-format msgid "%s: Can't open %s: %s\n" -msgstr "%s: %s: %s\n" +msgstr "%s: Невозможно открыть %s: %s\n" -#: timezone/zic.c:861 +#: timezone/zic.c:849 msgid "line too long" -msgstr " " +msgstr "строка слишком длинная" -#: timezone/zic.c:881 +#: timezone/zic.c:869 msgid "input line of unknown type" -msgstr " " +msgstr "входная строка неизвестного типа" -#: timezone/zic.c:897 +#: timezone/zic.c:885 #, c-format msgid "%s: Leap line in non leap seconds file %s\n" -msgstr "%s: %s\n" +msgstr "%s: Високосная строка век файла високосных секунд %s\n" -#: timezone/zic.c:904 timezone/zic.c:1325 timezone/zic.c:1350 +#: timezone/zic.c:892 timezone/zic.c:1329 timezone/zic.c:1351 #, c-format msgid "%s: panic: Invalid l_value %d\n" -msgstr "%s: : l_value %d\n" +msgstr "%s: паника: Недопустимое l_value %d\n" -#: timezone/zic.c:912 +#: timezone/zic.c:900 #, c-format msgid "%s: Error reading %s\n" -msgstr "%s: %s\n" +msgstr "%s: Ошибка чтения %s\n" -#: timezone/zic.c:919 +#: timezone/zic.c:907 #, c-format msgid "%s: Error closing %s: %s\n" -msgstr "%s: %s: %s\n" +msgstr "%s: Ошибка закрытия %s: %s\n" -#: timezone/zic.c:924 +#: timezone/zic.c:912 msgid "expected continuation line not found" -msgstr " " +msgstr "ожидаемая строка продолжения не найдена" + +#: timezone/zic.c:956 timezone/zic.c:2489 timezone/zic.c:2508 +msgid "time overflow" +msgstr "переполнение времени" -#: timezone/zic.c:968 +#: timezone/zic.c:960 msgid "24:00 not handled by pre-1998 versions of zic" -msgstr "24:00 zic 1998 " +msgstr "24:00 не поддерживается версиями zic старше 1998 года" -#: timezone/zic.c:982 +#: timezone/zic.c:963 +msgid "values over 24 hours not handled by pre-2007 versions of zic" +msgstr "значения больше 24 часов не поддерживается версиями zic старше 2007 года" + +#: timezone/zic.c:976 msgid "wrong number of fields on Rule line" -msgstr " Rule" +msgstr "неправильное число полей в строке Rule" -#: timezone/zic.c:986 +#: timezone/zic.c:980 msgid "nameless rule" -msgstr " " +msgstr "безымянное правило" -#: timezone/zic.c:991 +#: timezone/zic.c:985 msgid "invalid saved time" -msgstr " " +msgstr "неверное сохраненное время" -#: timezone/zic.c:1010 +#: timezone/zic.c:1006 msgid "wrong number of fields on Zone line" -msgstr " Zone" +msgstr "неверное число полей в строке Zone" -#: timezone/zic.c:1016 +#: timezone/zic.c:1012 #, c-format msgid "\"Zone %s\" line and -l option are mutually exclusive" -msgstr " \"Zone %s\" -l " +msgstr "строка «Zone %s» и ключ -l взаимно исключаются" -#: timezone/zic.c:1024 +#: timezone/zic.c:1020 #, c-format msgid "\"Zone %s\" line and -p option are mutually exclusive" -msgstr " \"Zone %s\" -p " +msgstr "строка «Zone %s» и ключ -p взаимно исключаются" -#: timezone/zic.c:1036 +#: timezone/zic.c:1032 #, c-format msgid "duplicate zone name %s (file \"%s\", line %d)" -msgstr " %s ( \"%s\", %d)" +msgstr "повторное имя зоны %s (файл «%s», строка %d)" -#: timezone/zic.c:1052 +#: timezone/zic.c:1048 msgid "wrong number of fields on Zone continuation line" -msgstr " Zone" +msgstr "неправильное число полей в строке продолжения Zone" -#: timezone/zic.c:1092 +#: timezone/zic.c:1088 msgid "invalid UTC offset" -msgstr " UTC" +msgstr "неверное смещение от UTC" -#: timezone/zic.c:1095 +#: timezone/zic.c:1091 msgid "invalid abbreviation format" -msgstr " " +msgstr "неверный формат сокращения" -#: timezone/zic.c:1122 +#: timezone/zic.c:1120 msgid "Zone continuation line end time is not after end time of previous line" -msgstr " Zone " +msgstr "конечное время в строке продолжения Zone не позднее конечного времени в предыдущей строке" -#: timezone/zic.c:1150 +#: timezone/zic.c:1148 msgid "wrong number of fields on Leap line" -msgstr " Leap" +msgstr "неверное число полей в строке Leap" -#: timezone/zic.c:1159 +#: timezone/zic.c:1157 msgid "invalid leaping year" -msgstr " " +msgstr "неверный високосный год" -#: timezone/zic.c:1174 timezone/zic.c:1280 +#: timezone/zic.c:1177 timezone/zic.c:1283 msgid "invalid month name" -msgstr " " +msgstr "неверное название месяца" -#: timezone/zic.c:1187 timezone/zic.c:1402 timezone/zic.c:1416 +#: timezone/zic.c:1190 timezone/zic.c:1396 timezone/zic.c:1410 msgid "invalid day of month" -msgstr " " +msgstr "неверный день месяца" -#: timezone/zic.c:1192 +#: timezone/zic.c:1195 msgid "time before zero" -msgstr " " +msgstr "время до нуля" -#: timezone/zic.c:1196 +#: timezone/zic.c:1199 msgid "time too small" -msgstr " " +msgstr "время слишком мало" -#: timezone/zic.c:1200 +#: timezone/zic.c:1203 msgid "time too large" -msgstr " " +msgstr "время слишком велико" -#: timezone/zic.c:1204 timezone/zic.c:1309 +#: timezone/zic.c:1207 timezone/zic.c:1312 msgid "invalid time of day" -msgstr " " +msgstr "неверное время дня" -#: timezone/zic.c:1223 +#: timezone/zic.c:1226 msgid "illegal CORRECTION field on Leap line" -msgstr " CORRECTION Leap" +msgstr "неверное поле CORRECTION в строке Leap" -#: timezone/zic.c:1228 +#: timezone/zic.c:1231 msgid "illegal Rolling/Stationary field on Leap line" -msgstr " Rolling/Stationary Leap" +msgstr "неверное поле Rolling/Stationary в строке Leap" -#: timezone/zic.c:1244 +#: timezone/zic.c:1247 msgid "wrong number of fields on Link line" -msgstr " Link" +msgstr "неверное число полей в строке Link" -#: timezone/zic.c:1248 +#: timezone/zic.c:1251 msgid "blank FROM field on Link line" -msgstr " FROM Link" +msgstr "пустое поле FROM в строке Link" -#: timezone/zic.c:1252 +#: timezone/zic.c:1255 msgid "blank TO field on Link line" -msgstr " TO Link" - -#: timezone/zic.c:1329 -msgid "invalid starting year" -msgstr " " +msgstr "пустое поле TO в строке Link" #: timezone/zic.c:1333 -msgid "starting year too low to be represented" -msgstr " " - -#: timezone/zic.c:1335 -msgid "starting year too high to be represented" -msgstr " " +msgid "invalid starting year" +msgstr "неверный начальный год" -#: timezone/zic.c:1354 +#: timezone/zic.c:1355 msgid "invalid ending year" -msgstr " " - -#: timezone/zic.c:1358 -msgid "ending year too low to be represented" -msgstr " " - -#: timezone/zic.c:1360 -msgid "ending year too high to be represented" -msgstr " " +msgstr "неверный конечный год" -#: timezone/zic.c:1363 +#: timezone/zic.c:1359 msgid "starting year greater than ending year" -msgstr " " +msgstr "начальный год больше конечного" -#: timezone/zic.c:1370 +#: timezone/zic.c:1366 msgid "typed single year" -msgstr " " +msgstr "один типизированный год" -#: timezone/zic.c:1407 +#: timezone/zic.c:1401 msgid "invalid weekday name" -msgstr " " +msgstr "неверное названия дня недели" -#: timezone/zic.c:1521 +#: timezone/zic.c:1579 #, c-format msgid "%s: Can't remove %s: %s\n" -msgstr "%s: %s: %s\n" +msgstr "%s: Невозможно удалить %s: %s\n" -#: timezone/zic.c:1531 +#: timezone/zic.c:1589 #, c-format msgid "%s: Can't create %s: %s\n" -msgstr "%s: %s: %s\n" +msgstr "%s: Невозможно создать %s: %s\n" -#: timezone/zic.c:1598 +#: timezone/zic.c:1739 #, c-format msgid "%s: Error writing %s\n" -msgstr "%s: %s\n" +msgstr "%s: Ошибка записи %s\n" -#: timezone/zic.c:1789 +#: timezone/zic.c:2031 +msgid "no POSIX environment variable for zone" +msgstr "нет переменной окружения POSIX для часового пояса" + +#: timezone/zic.c:2185 msgid "can't determine time zone abbreviation to use just after until time" -msgstr "" +msgstr "не удалось определить аббревиатуру часового пояса для использования сразу после прошедшего времени " -#: timezone/zic.c:1832 +#: timezone/zic.c:2231 msgid "too many transitions?!" -msgstr " ?!" +msgstr "слишком много переходов?!" -#: timezone/zic.c:1851 +#: timezone/zic.c:2250 msgid "internal error - addtype called with bad isdst" -msgstr " -- addtype isdst" +msgstr "внутренняя ошибка -- addtype вызвана с неправильным isdst" -#: timezone/zic.c:1855 +#: timezone/zic.c:2254 msgid "internal error - addtype called with bad ttisstd" -msgstr " -- addtype ttisstd" +msgstr "внутренняя ошибка -- addtype вызвана с неправильным ttisstd" -#: timezone/zic.c:1859 +#: timezone/zic.c:2258 msgid "internal error - addtype called with bad ttisgmt" -msgstr " -- addtype ttisgmt" +msgstr "внутренняя ошибка -- addtype вызвана с неправильным ttisgmt" -#: timezone/zic.c:1878 +#: timezone/zic.c:2277 msgid "too many local time types" -msgstr " " +msgstr "слишком много типов местного времени" -#: timezone/zic.c:1906 +#: timezone/zic.c:2281 +msgid "UTC offset out of range" +msgstr "сдвиг UTC вне диапазона" + +#: timezone/zic.c:2309 msgid "too many leap seconds" -msgstr " " +msgstr "слишком много високосных секунд" -#: timezone/zic.c:1912 +#: timezone/zic.c:2315 msgid "repeated leap second moment" -msgstr " " +msgstr "повторяющийся момент високосной секунды" -#: timezone/zic.c:1964 +#: timezone/zic.c:2367 msgid "Wild result from command execution" -msgstr " " +msgstr "Неадекватный результат выполнения команды" -#: timezone/zic.c:1965 +#: timezone/zic.c:2368 #, c-format msgid "%s: command was '%s', result was %d\n" -msgstr "%s: '%s', %d\n" +msgstr "%s: команда была »%s», результат был %d\n" -#: timezone/zic.c:2062 +#: timezone/zic.c:2466 msgid "Odd number of quotation marks" -msgstr " " +msgstr "Нечетное число кавычек" -#: timezone/zic.c:2083 timezone/zic.c:2102 -msgid "time overflow" -msgstr " " - -#: timezone/zic.c:2149 +#: timezone/zic.c:2555 msgid "use of 2/29 in non leap-year" -msgstr " 29 " +msgstr "использование 29 февраля в не-високосном году" -#: timezone/zic.c:2184 +#: timezone/zic.c:2590 msgid "rule goes past start/end of month--will not work with pre-2004 versions of zic" -msgstr " / -- zic 2004 " +msgstr "правило переходит за начало/конец месяца -- это не будет работать в версиях zic старше 2004 года" -#: timezone/zic.c:2218 +#: timezone/zic.c:2622 msgid "time zone abbreviation lacks alphabetic at start" -msgstr " " +msgstr "сокращение часового пояса не начинается с буквы" -#: timezone/zic.c:2220 +#: timezone/zic.c:2624 msgid "time zone abbreviation has more than 3 alphabetics" -msgstr " " +msgstr "сокращение часового пояса содержит более трех букв" -#: timezone/zic.c:2222 +#: timezone/zic.c:2626 msgid "time zone abbreviation has too many alphabetics" -msgstr " " +msgstr "сокращение часового пояса содержит слишком много букв" -#: timezone/zic.c:2232 +#: timezone/zic.c:2636 msgid "time zone abbreviation differs from POSIX standard" -msgstr " POSIX" +msgstr "сокращение часового пояса отличается от стандарта POSIX" -#: timezone/zic.c:2244 +#: timezone/zic.c:2648 msgid "too many, or too long, time zone abbreviations" -msgstr " " +msgstr "слишком много сокращений часовых поясов или они слишком длинные" -#: timezone/zic.c:2285 +#: timezone/zic.c:2689 #, c-format msgid "%s: Can't create directory %s: %s\n" -msgstr "%s: %s: %s\n" +msgstr "%s: Невозможно создать каталог %s: %s\n" -#: timezone/zic.c:2307 +#: timezone/zic.c:2711 #, c-format msgid "%s: %d did not sign extend correctly\n" -msgstr "%s: %d \n" +msgstr "%s: %d не сохранило знак при расширении\n" + +#~ msgid "Can't remove old temporary cache file %s" +#~ msgstr "Невозможно удалить старый временный кэш-файл %s" + +#~ msgid "Writing of cache data failed." +#~ msgstr "Запись данных кэша неуспешна." + +#~ msgid "empty dynamics string token substitution" +#~ msgstr "пустое вхождение динамического строкового токена" + +#~ msgid "Can't lstat %s" +#~ msgstr "Невозможно выполнить lstat %s" + +#~ msgid "<%s> and <%s> are illegal names for range" +#~ msgstr "<%s> и <%s> -- недопустимые имена для диапазона" + +#~ msgid "upper limit in range is not higher then lower limit" +#~ msgstr "верхняя граница диапазона не больше нижней границы" + +#~ msgid "%s: character `%s' not defined in charmap while needed as default value" +#~ msgstr "%s: знак «%s» не определен в отображении знаков, однако он необходим как значение по умолчанию" + +#~ msgid "character `%s' not defined while needed as default value" +#~ msgstr "знак «%s» не определен, хотя он нужен как значение по умолчанию" + +#~ msgid "%s: value for field `%s' must not be the empty string" +#~ msgstr "%s: значение поля «%s» не должно быть пустой строкой" + +#~ msgid "%s: values of field `%s' must not be larger than %d" +#~ msgstr "%s: значения поля «%s» не должны быть больше %d" + +#~ msgid "Failed to drop capabilities\n" +#~ msgstr "Не удалось сбросить возможности\n" + +#~ msgid "starting year too low to be represented" +#~ msgstr "начальный год слишком мал и его невозможно машинно представить" + +#~ msgid "starting year too high to be represented" +#~ msgstr "начальный год слишком велик и его невозможно машинно представить" + +#~ msgid "ending year too low to be represented" +#~ msgstr "конечный год слишком мал и его невозможно машинно представить" + +#~ msgid "ending year too high to be represented" +#~ msgstr "конечный год слишком велик и его невозможно машинно представить" + +#~ msgid "uninitialized header" +#~ msgstr "неинициализированный заголовок" + +#~ msgid "request not handled due to missing permission" +#~ msgstr "запрос не обработан из-за недостаточного доступа" + +#~ msgid "could not initialize conditional variable" +#~ msgstr "невозможно инициализировать условное выражение" + +#~ msgid "could not start any worker thread; terminating" +#~ msgstr "не удалось запустить ни один рабочий поток; останов" + +#~ msgid "compile-time support for database policy missing" +#~ msgstr "отсутствует поддержка стратегий баз данных при компиляции" + +#~ msgid "out of memory\n" +#~ msgstr "недостаточно памяти\n" diff --git a/posix/Makefile b/posix/Makefile index c0edce4d62..5af49dffd4 100644 --- a/posix/Makefile +++ b/posix/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991-1999, 2000-2006, 2007 Free Software Foundation, Inc. +# Copyright (C) 1991-1999, 2000-2006, 2007, 2009 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -303,6 +303,6 @@ $(inst_libexecdir)/getconf: $(inst_bindir)/getconf \ $(objpfx)getconf.speclist: getconf.speclist.h $(CC) -E $(CFLAGS) $(CPPFLAGS) $< \ - | sed -n -e '/START_OF_STRINGS/,$${/POSIX_V6_/{s/^[^"]*"//;s/".*$$//;p}}' \ + | sed -n -e '/START_OF_STRINGS/,$${/\(POSIX_V[67]\|_XBS5\)_/{s/^[^"]*"//;s/".*$$//;p}}' \ > $@.new mv -f $@.new $@ diff --git a/posix/confstr.c b/posix/confstr.c index 26b0fa875b..9aa4b5aebb 100644 --- a/posix/confstr.c +++ b/posix/confstr.c @@ -1,5 +1,4 @@ -/* Copyright (C) 1991, 1996, 1997, 2000-2002, 2003, 2004 - Free Software Foundation, Inc. +/* Copyright (C) 1991,1996,1997,2000-2004,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -46,6 +45,69 @@ confstr (name, buf, len) } break; + case _CS_V7_WIDTH_RESTRICTED_ENVS: + /* We have to return a newline-separated list of named of + programming environements in which the widths of blksize_t, + cc_t, mode_t, nfds_t, pid_t, ptrdiff_t, size_t, speed_t, + ssize_t, suseconds_t, tcflag_t, useconds_t, wchar_t, and + wint_t types are no greater than the width of type long. + + Currently this means all environment which the system allows. */ + { + char restenvs[4 * sizeof "POSIX_V7_LPBIG_OFFBIG"]; + + string_len = 0; +#ifndef _POSIX_V7_ILP32_OFF32 + if (__sysconf (_SC_V7_ILP32_OFF32) > 0) +#endif +#if !defined _POSIX_V7_ILP32_OFF32 || _POSIX_V7_ILP32_OFF32 > 0 + { + memcpy (restenvs + string_len, "POSIX_V7_ILP32_OFF32", + sizeof "POSIX_V7_ILP32_OFF32" - 1); + string_len += sizeof "POSIX_V7_ILP32_OFF32" - 1; + } +#endif +#ifndef _POSIX_V7_ILP32_OFFBIG + if (__sysconf (_SC_V7_ILP32_OFFBIG) > 0) +#endif +#if !defined _POSIX_V7_ILP32_OFFBIG || _POSIX_V7_ILP32_OFFBIG > 0 + { + if (string_len) + restenvs[string_len++] = '\n'; + memcpy (restenvs + string_len, "POSIX_V7_ILP32_OFFBIG", + sizeof "POSIX_V7_ILP32_OFFBIG" - 1); + string_len += sizeof "POSIX_V7_ILP32_OFFBIG" - 1; + } +#endif +#ifndef _POSIX_V7_LP64_OFF64 + if (__sysconf (_SC_V7_LP64_OFF64) > 0) +#endif +#if !defined _POSIX_V7_LP64_OFF64 || _POSIX_V7_LP64_OFF64 > 0 + { + if (string_len) + restenvs[string_len++] = '\n'; + memcpy (restenvs + string_len, "POSIX_V7_LP64_OFF64", + sizeof "POSIX_V7_LP64_OFF64" - 1); + string_len += sizeof "POSIX_V7_LP64_OFF64" - 1; + } +#endif +#ifndef _POSIX_V7_LPBIG_OFFBIG + if (__sysconf (_SC_V7_LPBIG_OFFBIG) > 0) +#endif +#if !defined _POSIX_V7_LPBIG_OFFBIG || _POSIX_V7_LPBIG_OFFBIG > 0 + { + if (string_len) + restenvs[string_len++] = '\n'; + memcpy (restenvs + string_len, "POSIX_V7_LPBIG_OFFBIG", + sizeof "POSIX_V7_LPBIG_OFFBIG" - 1); + string_len += sizeof "POSIX_V7_LPBIG_OFFBIG" - 1; + } +#endif + restenvs[string_len++] = '\0'; + string = restenvs; + } + break; + case _CS_V6_WIDTH_RESTRICTED_ENVS: /* We have to return a newline-separated list of named of programming environements in which the widths of blksize_t, @@ -109,13 +171,77 @@ confstr (name, buf, len) } break; + case _CS_V5_WIDTH_RESTRICTED_ENVS: + /* We have to return a newline-separated list of named of + programming environements in which the widths of blksize_t, + cc_t, mode_t, nfds_t, pid_t, ptrdiff_t, size_t, speed_t, + ssize_t, suseconds_t, tcflag_t, useconds_t, wchar_t, and + wint_t types are no greater than the width of type long. + + Currently this means all environment which the system allows. */ + { + char restenvs[4 * sizeof "XBS5_LPBIG_OFFBIG"]; + + string_len = 0; +#ifndef _XBS5_ILP32_OFF32 + if (__sysconf (_SC_XBS5_ILP32_OFF32) > 0) +#endif +#if !defined _XBS5_ILP32_OFF32 || _XBS5_ILP32_OFF32 > 0 + { + memcpy (restenvs + string_len, "XBS5_ILP32_OFF32", + sizeof "XBS5_ILP32_OFF32" - 1); + string_len += sizeof "XBS5_ILP32_OFF32" - 1; + } +#endif +#ifndef _XBS5_ILP32_OFFBIG + if (__sysconf (_SC_XBS5_ILP32_OFFBIG) > 0) +#endif +#if !defined _XBS5_ILP32_OFFBIG || _XBS5_ILP32_OFFBIG > 0 + { + if (string_len) + restenvs[string_len++] = '\n'; + memcpy (restenvs + string_len, "XBS5_ILP32_OFFBIG", + sizeof "XBS5_ILP32_OFFBIG" - 1); + string_len += sizeof "XBS5_ILP32_OFFBIG" - 1; + } +#endif +#ifndef _XBS5_LP64_OFF64 + if (__sysconf (_SC_XBS5_LP64_OFF64) > 0) +#endif +#if !defined _XBS5_LP64_OFF64 || _XBS5_LP64_OFF64 > 0 + { + if (string_len) + restenvs[string_len++] = '\n'; + memcpy (restenvs + string_len, "XBS5_LP64_OFF64", + sizeof "XBS5_LP64_OFF64" - 1); + string_len += sizeof "XBS5_LP64_OFF64" - 1; + } +#endif +#ifndef _XBS5_LPBIG_OFFBIG + if (__sysconf (_SC_XBS5_LPBIG_OFFBIG) > 0) +#endif +#if !defined _XBS5_LPBIG_OFFBIG || _XBS5_LPBIG_OFFBIG > 0 + { + if (string_len) + restenvs[string_len++] = '\n'; + memcpy (restenvs + string_len, "XBS5_LPBIG_OFFBIG", + sizeof "XBS5_LPBIG_OFFBIG" - 1); + string_len += sizeof "XBS5_LPBIG_OFFBIG" - 1; + } +#endif + restenvs[string_len++] = '\0'; + string = restenvs; + } + break; + case _CS_XBS5_ILP32_OFF32_CFLAGS: case _CS_POSIX_V6_ILP32_OFF32_CFLAGS: + case _CS_POSIX_V7_ILP32_OFF32_CFLAGS: #ifdef __ILP32_OFF32_CFLAGS -# if _POSIX_V6_ILP32_OFF32 == -1 +# if _POSIX_V7_ILP32_OFF32 == -1 # error "__ILP32_OFF32_CFLAGS should not be defined" -# elif !defined _POSIX_V6_ILP32_OFF32 - if (__sysconf (_SC_V6_ILP32_OFF32) < 0) +# elif !defined _POSIX_V7_ILP32_OFF32 + if (__sysconf (_SC_V7_ILP32_OFF32) < 0) break; # endif string = __ILP32_OFF32_CFLAGS; @@ -125,11 +251,12 @@ confstr (name, buf, len) case _CS_XBS5_ILP32_OFFBIG_CFLAGS: case _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: + case _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS: #ifdef __ILP32_OFFBIG_CFLAGS -# if _POSIX_V6_ILP32_OFFBIG == -1 +# if _POSIX_V7_ILP32_OFFBIG == -1 # error "__ILP32_OFFBIG_CFLAGS should not be defined" -# elif !defined _POSIX_V6_ILP32_OFFBIG - if (__sysconf (_SC_V6_ILP32_OFFBIG) < 0) +# elif !defined _POSIX_V7_ILP32_OFFBIG + if (__sysconf (_SC_V7_ILP32_OFFBIG) < 0) break; # endif string = __ILP32_OFFBIG_CFLAGS; @@ -139,11 +266,12 @@ confstr (name, buf, len) case _CS_XBS5_LP64_OFF64_CFLAGS: case _CS_POSIX_V6_LP64_OFF64_CFLAGS: + case _CS_POSIX_V7_LP64_OFF64_CFLAGS: #ifdef __LP64_OFF64_CFLAGS -# if _POSIX_V6_LP64_OFF64 == -1 +# if _POSIX_V7_LP64_OFF64 == -1 # error "__LP64_OFF64_CFLAGS should not be defined" -# elif !defined _POSIX_V6_LP64_OFF64 - if (__sysconf (_SC_V6_LP64_OFF64) < 0) +# elif !defined _POSIX_V7_LP64_OFF64 + if (__sysconf (_SC_V7_LP64_OFF64) < 0) break; # endif string = __LP64_OFF64_CFLAGS; @@ -153,11 +281,12 @@ confstr (name, buf, len) case _CS_XBS5_ILP32_OFF32_LDFLAGS: case _CS_POSIX_V6_ILP32_OFF32_LDFLAGS: + case _CS_POSIX_V7_ILP32_OFF32_LDFLAGS: #ifdef __ILP32_OFF32_LDFLAGS -# if _POSIX_V6_ILP32_OFF32 == -1 +# if _POSIX_V7_ILP32_OFF32 == -1 # error "__ILP32_OFF32_LDFLAGS should not be defined" -# elif !defined _POSIX_V6_ILP32_OFF32 - if (__sysconf (_SC_V6_ILP32_OFF32) < 0) +# elif !defined _POSIX_V7_ILP32_OFF32 + if (__sysconf (_SC_V7_ILP32_OFF32) < 0) break; # endif string = __ILP32_OFF32_LDFLAGS; @@ -167,11 +296,12 @@ confstr (name, buf, len) case _CS_XBS5_ILP32_OFFBIG_LDFLAGS: case _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: + case _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS: #ifdef __ILP32_OFFBIG_LDFLAGS -# if _POSIX_V6_ILP32_OFFBIG == -1 +# if _POSIX_V7_ILP32_OFFBIG == -1 # error "__ILP32_OFFBIG_LDFLAGS should not be defined" -# elif !defined _POSIX_V6_ILP32_OFFBIG - if (__sysconf (_SC_V6_ILP32_OFFBIG) < 0) +# elif !defined _POSIX_V7_ILP32_OFFBIG + if (__sysconf (_SC_V7_ILP32_OFFBIG) < 0) break; # endif string = __ILP32_OFFBIG_LDFLAGS; @@ -181,11 +311,12 @@ confstr (name, buf, len) case _CS_XBS5_LP64_OFF64_LDFLAGS: case _CS_POSIX_V6_LP64_OFF64_LDFLAGS: + case _CS_POSIX_V7_LP64_OFF64_LDFLAGS: #ifdef __LP64_OFF64_LDFLAGS -# if _POSIX_V6_LP64_OFF64 == -1 +# if _POSIX_V7_LP64_OFF64 == -1 # error "__LP64_OFF64_LDFLAGS should not be defined" -# elif !defined _POSIX_V6_LP64_OFF64 - if (__sysconf (_SC_V6_LP64_OFF64) < 0) +# elif !defined _POSIX_V7_LP64_OFF64 + if (__sysconf (_SC_V7_LP64_OFF64) < 0) break; # endif string = __LP64_OFF64_LDFLAGS; @@ -241,6 +372,17 @@ confstr (name, buf, len) case _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS: case _CS_POSIX_V6_LPBIG_OFFBIG_LIBS: case _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS: + + case _CS_POSIX_V7_ILP32_OFF32_LIBS: + case _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS: + case _CS_POSIX_V7_ILP32_OFFBIG_LIBS: + case _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS: + case _CS_POSIX_V7_LP64_OFF64_LIBS: + case _CS_POSIX_V7_LP64_OFF64_LINTFLAGS: + case _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS: + case _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS: + case _CS_POSIX_V7_LPBIG_OFFBIG_LIBS: + case _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS: /* GNU libc does not require special actions to use LFS functions. */ break; diff --git a/posix/getconf.c b/posix/getconf.c index 8f5def08ad..2b1f6c9871 100644 --- a/posix/getconf.c +++ b/posix/getconf.c @@ -528,6 +528,11 @@ static const struct conf vars[] = #endif /* Programming environments. */ +#ifdef _CS_V5_WIDTH_RESTRICTED_ENVS + { "_XBS5_WIDTH_RESTRICTED_ENVS", _CS_V5_WIDTH_RESTRICTED_ENVS, CONFSTR }, + { "XBS5_WIDTH_RESTRICTED_ENVS", _CS_V5_WIDTH_RESTRICTED_ENVS, CONFSTR }, +#endif + #ifdef _SC_XBS5_ILP32_OFF32 { "_XBS5_ILP32_OFF32", _SC_XBS5_ILP32_OFF32, SYSCONF }, #endif @@ -661,6 +666,75 @@ static const struct conf vars[] = { "POSIX_V6_LPBIG_OFFBIG_LINTFLAGS", _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS, CONFSTR }, #endif +#ifdef _SC_V7_ILP32_OFF32 + { "_POSIX_V7_ILP32_OFF32", _SC_V7_ILP32_OFF32, SYSCONF }, +#endif +#ifdef _CS_POSIX_V7_ILP32_OFF32_CFLAGS + { "POSIX_V7_ILP32_OFF32_CFLAGS", _CS_POSIX_V7_ILP32_OFF32_CFLAGS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_ILP32_OFF32_LDFLAGS + { "POSIX_V7_ILP32_OFF32_LDFLAGS", _CS_POSIX_V7_ILP32_OFF32_LDFLAGS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_ILP32_OFF32_LIBS + { "POSIX_V7_ILP32_OFF32_LIBS", _CS_POSIX_V7_ILP32_OFF32_LIBS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS + { "POSIX_V7_ILP32_OFF32_LINTFLAGS", _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS, CONFSTR }, +#endif + +#ifdef _CS_V7_WIDTH_RESTRICTED_ENVS + { "_POSIX_V7_WIDTH_RESTRICTED_ENVS", _CS_V7_WIDTH_RESTRICTED_ENVS, CONFSTR }, + { "POSIX_V7_WIDTH_RESTRICTED_ENVS", _CS_V7_WIDTH_RESTRICTED_ENVS, CONFSTR }, +#endif + +#ifdef _SC_V7_ILP32_OFFBIG + { "_POSIX_V7_ILP32_OFFBIG", _SC_V7_ILP32_OFFBIG, SYSCONF }, +#endif +#ifdef _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS + { "POSIX_V7_ILP32_OFFBIG_CFLAGS", _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS + { "POSIX_V7_ILP32_OFFBIG_LDFLAGS", _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_ILP32_OFFBIG_LIBS + { "POSIX_V7_ILP32_OFFBIG_LIBS", _CS_POSIX_V7_ILP32_OFFBIG_LIBS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS + { "POSIX_V7_ILP32_OFFBIG_LINTFLAGS", _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS, CONFSTR }, +#endif + +#ifdef _SC_V7_LP64_OFF64 + { "_POSIX_V7_LP64_OFF64", _SC_V7_LP64_OFF64, SYSCONF }, +#endif +#ifdef _CS_POSIX_V7_LP64_OFF64_CFLAGS + { "POSIX_V7_LP64_OFF64_CFLAGS", _CS_POSIX_V7_LP64_OFF64_CFLAGS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_LP64_OFF64_LDFLAGS + { "POSIX_V7_LP64_OFF64_LDFLAGS", _CS_POSIX_V7_LP64_OFF64_LDFLAGS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_LP64_OFF64_LIBS + { "POSIX_V7_LP64_OFF64_LIBS", _CS_POSIX_V7_LP64_OFF64_LIBS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_LP64_OFF64_LINTFLAGS + { "POSIX_V7_LP64_OFF64_LINTFLAGS", _CS_POSIX_V7_LP64_OFF64_LINTFLAGS, CONFSTR }, +#endif + +#ifdef _SC_V7_LPBIG_OFFBIG + { "_POSIX_V7_LPBIG_OFFBIG", _SC_V7_LPBIG_OFFBIG, SYSCONF }, +#endif +#ifdef _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS + { "POSIX_V7_LPBIG_OFFBIG_CFLAGS", _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS + { "POSIX_V7_LPBIG_OFFBIG_LDFLAGS", _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_LPBIG_OFFBIG_LIBS + { "POSIX_V7_LPBIG_OFFBIG_LIBS", _CS_POSIX_V7_LPBIG_OFFBIG_LIBS, CONFSTR }, +#endif +#ifdef _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS + { "POSIX_V7_LPBIG_OFFBIG_LINTFLAGS", _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS, CONFSTR }, +#endif + #ifdef _SC_ADVISORY_INFO { "_POSIX_ADVISORY_INFO", _SC_ADVISORY_INFO, SYSCONF }, #endif @@ -926,12 +1000,20 @@ static const struct conf vars[] = }; -static struct { const char *name; int num; } specs[] = +static const struct { const char *name; int num; } specs[] = { + { "XBS5_ILP32_OFF32", _SC_XBS5_ILP32_OFF32 }, + { "XBS5_ILP32_OFFBIG", _SC_XBS5_ILP32_OFFBIG }, + { "XBS5_LP64_OFF64", _SC_XBS5_LP64_OFF64 }, + { "XBS5_LPBIG_OFFBIG", _SC_XBS5_LPBIG_OFFBIG }, { "POSIX_V6_ILP32_OFF32", _SC_V6_ILP32_OFF32 }, { "POSIX_V6_ILP32_OFFBIG", _SC_V6_ILP32_OFFBIG }, { "POSIX_V6_LP64_OFF64", _SC_V6_LP64_OFF64 }, - { "POSIX_V6_LPBIG_OFFBIG", _SC_V6_LPBIG_OFFBIG } + { "POSIX_V6_LPBIG_OFFBIG", _SC_V6_LPBIG_OFFBIG }, + { "POSIX_V7_ILP32_OFF32", _SC_V7_ILP32_OFF32 }, + { "POSIX_V7_ILP32_OFFBIG", _SC_V7_ILP32_OFFBIG }, + { "POSIX_V7_LP64_OFF64", _SC_V7_LP64_OFF64 }, + { "POSIX_V7_LPBIG_OFFBIG", _SC_V7_LPBIG_OFFBIG }, }; static const int nspecs = sizeof (specs) / sizeof (specs[0]); @@ -949,6 +1031,7 @@ usage (void) exit (2); } + static void print_all (const char *path) { @@ -1008,13 +1091,27 @@ main (int argc, char *argv[]) if (argc > 1 && strcmp (argv[1], "--version") == 0) { - fprintf (stderr, "getconf (GNU %s) %s\n", PACKAGE, VERSION); - fprintf (stderr, gettext ("\ + printf ("getconf (GNU %s) %s\n", PACKAGE, VERSION); + printf (gettext ("\ Copyright (C) %s Free Software Foundation, Inc.\n\ This is free software; see the source for copying conditions. There is NO\n\ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ "), "2009"); - fprintf (stderr, gettext ("Written by %s.\n"), "Roland McGrath"); + printf (gettext ("Written by %s.\n"), "Roland McGrath"); + return 0; + } + + if (argc > 1 && strcmp (argv[1], "--help") == 0) + { + printf (gettext ("\ +Usage: getconf [-v SPEC] VAR\n\ + or: getconf [-v SPEC] PATH_VAR PATH\n\ +\n\ +Get the configuration value for variable VAR, or for variable PATH_VAR\n\ +for path PATH. If SPEC is given, give values for compilation\n\ +environment SPEC.\n\n")); + printf (gettext ("For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); return 0; } @@ -1068,6 +1165,18 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ switch (specs[i].num) { +#ifndef _XBS5_ILP32_OFF32 + case _SC_XBS5_ILP32_OFF32: +#endif +#ifndef _XBS5_ILP32_OFFBIG + case _SC_XBS5_ILP32_OFFBIG: +#endif +#ifndef _XBS5_LP64_OFF64 + case _SC_XBS5_LP64_OFF64: +#endif +#ifndef _XBS5_LPBIG_OFFBIG + case _SC_XBS5_LPBIG_OFFBIG: +#endif #ifndef _POSIX_V6_ILP32_OFF32 case _SC_V6_ILP32_OFF32: #endif @@ -1080,6 +1189,18 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ #ifndef _POSIX_V6_LPBIG_OFFBIG case _SC_V6_LPBIG_OFFBIG: #endif +#ifndef _POSIX_V7_ILP32_OFF32 + case _SC_V7_ILP32_OFF32: +#endif +#ifndef _POSIX_V7_ILP32_OFFBIG + case _SC_V7_ILP32_OFFBIG: +#endif +#ifndef _POSIX_V7_LP64_OFF64 + case _SC_V7_LP64_OFF64: +#endif +#ifndef _POSIX_V7_LPBIG_OFFBIG + case _SC_V7_LPBIG_OFFBIG: +#endif { const char *args[argc + 3]; size_t spec_len = strlen (spec); diff --git a/posix/spawn.h b/posix/spawn.h index ff77fcc8f9..85ac69bf44 100644 --- a/posix/spawn.h +++ b/posix/spawn.h @@ -1,5 +1,5 @@ /* Definitions for POSIX spawn interface. - Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2000, 2003, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -74,8 +74,8 @@ extern int posix_spawn (pid_t *__restrict __pid, __const posix_spawn_file_actions_t *__restrict __file_actions, __const posix_spawnattr_t *__restrict __attrp, - char *__const argv[__restrict_arr], - char *__const envp[__restrict_arr]); + char *__const __argv[__restrict_arr], + char *__const __envp[__restrict_arr]); /* Similar to `posix_spawn' but search for FILE in the PATH. @@ -84,7 +84,7 @@ extern int posix_spawn (pid_t *__restrict __pid, extern int posix_spawnp (pid_t *__pid, __const char *__file, __const posix_spawn_file_actions_t *__file_actions, __const posix_spawnattr_t *__attrp, - char *__const argv[], char *__const envp[]); + char *__const __argv[], char *__const __envp[]); /* Initialize data structure with attributes for `spawn' to default values. */ diff --git a/posix/sysconf.c b/posix/sysconf.c index f22685cb29..971dd8bf77 100644 --- a/posix/sysconf.c +++ b/posix/sysconf.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991,1993,1995-1997,2001,2002,2003 +/* Copyright (C) 1991,1993,1995-1997,2001,2002,2003,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -255,6 +255,16 @@ __sysconf (name) case _SC_XBS5_LP64_OFF64: case _SC_XBS5_LPBIG_OFFBIG: + case _SC_POSIX_V6_ILP32_OFF32: + case _SC_POSIX_V6_ILP32_OFFBIG: + case _SC_POSIX_V6_LP64_OFF64: + case _SC_POSIX_V6_LPBIG_OFFBIG: + + case _SC_POSIX_V7_ILP32_OFF32: + case _SC_POSIX_V7_ILP32_OFFBIG: + case _SC_POSIX_V7_LP64_OFF64: + case _SC_POSIX_V7_LPBIG_OFFBIG: + case _SC_XOPEN_LEGACY: case _SC_XOPEN_REALTIME: case _SC_XOPEN_REALTIME_THREADS: diff --git a/resolv/arpa/nameser.h b/resolv/arpa/nameser.h index 7979b3d4dd..6a2c8376bd 100644 --- a/resolv/arpa/nameser.h +++ b/resolv/arpa/nameser.h @@ -487,7 +487,7 @@ int ns_sprintrrf (const u_char *, size_t, const char *, char *, size_t) __THROW; int ns_format_ttl (u_long, char *, size_t) __THROW; int ns_parse_ttl (const char *, u_long *) __THROW; -u_int32_t ns_datetosecs (const char *cp, int *errp) __THROW; +u_int32_t ns_datetosecs (const char *, int *) __THROW; int ns_name_ntol (const u_char *, u_char *, size_t) __THROW; int ns_name_ntop (const u_char *, char *, size_t) __THROW; int ns_name_pton (const char *, u_char *, size_t) __THROW; diff --git a/resolv/netdb.h b/resolv/netdb.h index a260c487bc..dc1f7cec61 100644 --- a/resolv/netdb.h +++ b/resolv/netdb.h @@ -1,4 +1,4 @@ - /* Copyright (C) 1996-2002, 2003, 2004 Free Software Foundation, Inc. + /* Copyright (C) 1996-2002, 2003, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -421,7 +421,7 @@ extern int getnetgrent (char **__restrict __hostp, or due to the implementation it is a cancellation point and therefore not marked with __THROW. */ extern int innetgr (__const char *__netgroup, __const char *__host, - __const char *__user, __const char *domain); + __const char *__user, __const char *__domain); /* Reentrant version of `getnetgrent' where result is placed in BUFFER. diff --git a/resolv/res_libc.c b/resolv/res_libc.c index 8af57f7a4a..810fbc804d 100644 --- a/resolv/res_libc.c +++ b/resolv/res_libc.c @@ -96,10 +96,9 @@ __res_maybe_init (res_state resp, int preinit) { if (resp->options & RES_INIT) { if (__res_initstamp != resp->_u._ext.initstamp) { - if (resp->nscount > 0) { + if (resp->nscount > 0) __res_iclose (resp, true); - return __res_vinit (resp, 1); - } + return __res_vinit (resp, 1); } return 0; } else if (preinit) { diff --git a/resolv/resolv.h b/resolv/resolv.h index 105631ee7d..a0de320d0f 100644 --- a/resolv/resolv.h +++ b/resolv/resolv.h @@ -71,19 +71,19 @@ typedef enum { res_goahead, res_nextns, res_modified, res_done, res_error } res_sendhookact; -typedef res_sendhookact (*res_send_qhook) (struct sockaddr_in * const *ns, - const u_char **query, - int *querylen, - u_char *ans, - int anssiz, - int *resplen); +typedef res_sendhookact (*res_send_qhook) (struct sockaddr_in * const *__ns, + const u_char **__query, + int *__querylen, + u_char *__ans, + int __anssiz, + int *__resplen); -typedef res_sendhookact (*res_send_rhook) (const struct sockaddr_in *ns, - const u_char *query, - int querylen, - u_char *ans, - int anssiz, - int *resplen); +typedef res_sendhookact (*res_send_rhook) (const struct sockaddr_in *__ns, + const u_char *__query, + int __querylen, + u_char *__ans, + int __anssiz, + int *__resplen); /* * Global defines and variables for resolver stub. @@ -328,8 +328,8 @@ const char * sym_ntos (const struct res_sym *, int, int *) __THROW; const char * sym_ntop (const struct res_sym *, int, int *) __THROW; int b64_ntop (u_char const *, size_t, char *, size_t) __THROW; int b64_pton (char const *, u_char *, size_t) __THROW; -int loc_aton (const char *ascii, u_char *binary) __THROW; -const char * loc_ntoa (const u_char *binary, char *ascii) __THROW; +int loc_aton (const char *__ascii, u_char *__binary) __THROW; +const char * loc_ntoa (const u_char *__binary, char *__ascii) __THROW; int dn_skipname (const u_char *, const u_char *) __THROW; void putlong (u_int32_t, u_char *) __THROW; void putshort (u_int16_t, u_char *) __THROW; @@ -340,10 +340,10 @@ const char * p_rcode (int) __THROW; const u_char * p_cdnname (const u_char *, const u_char *, int, FILE *) __THROW; const u_char * p_cdname (const u_char *, const u_char *, FILE *) __THROW; -const u_char * p_fqnname (const u_char *cp, const u_char *msg, +const u_char * p_fqnname (const u_char *__cp, const u_char *__msg, int, char *, int) __THROW; const u_char * p_fqname (const u_char *, const u_char *, FILE *) __THROW; -const char * p_option (u_long option) __THROW; +const char * p_option (u_long __option) __THROW; char * p_secstodate (u_long) __THROW; int dn_count_labels (const char *) __THROW; int dn_comp (const char *, u_char *, int, u_char **, u_char **) @@ -355,7 +355,7 @@ int res_nameinquery (const char *, int, int, const u_char *, const u_char *) __THROW; int res_queriesmatch (const u_char *, const u_char *, const u_char *, const u_char *) __THROW; -const char * p_section (int section, int opcode) __THROW; +const char * p_section (int __section, int __opcode) __THROW; /* Things involving a resolver context. */ int res_ninit (res_state) __THROW; int res_nisourserver (const res_state, diff --git a/soft-fp/double.h b/soft-fp/double.h index b012d9d51b..1cde3308ba 100644 --- a/soft-fp/double.h +++ b/soft-fp/double.h @@ -1,6 +1,7 @@ /* Software floating-point emulation. Definitions for IEEE Double Precision - Copyright (C) 1997,1998,1999,2006,2007 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2006, 2007, 2008, 2009 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Richard Henderson (rth@cygnus.com), Jakub Jelinek (jj@ultra.linux.cz), @@ -203,13 +204,13 @@ union _FP_UNION_D #define FP_UNPACK_SEMIRAW_D(X,val) \ do { \ - _FP_UNPACK_RAW_2(1,X,val); \ + _FP_UNPACK_RAW_1(D,X,val); \ _FP_UNPACK_SEMIRAW(D,1,X); \ } while (0) #define FP_UNPACK_SEMIRAW_DP(X,val) \ do { \ - _FP_UNPACK_RAW_2_P(1,X,val); \ + _FP_UNPACK_RAW_1_P(D,X,val); \ _FP_UNPACK_SEMIRAW(D,1,X); \ } while (0) diff --git a/stdio-common/psignal.c b/stdio-common/psignal.c index 98049a5871..c8111051b1 100644 --- a/stdio-common/psignal.c +++ b/stdio-common/psignal.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1992, 1995, 1996, 1997, 2001, 2002, 2004, 2005 +/* Copyright (C) 1991, 1992, 1995, 1996, 1997, 2001, 2002, 2004, 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -37,7 +37,7 @@ psignal (int sig, const char *s) { const char *colon, *desc; - if (s == NULL || s == '\0') + if (s == NULL || *s == '\0') s = colon = ""; else colon = ": "; diff --git a/stdlib/monetary.h b/stdlib/monetary.h index d9234ca61b..c8483b27a8 100644 --- a/stdlib/monetary.h +++ b/stdlib/monetary.h @@ -1,5 +1,5 @@ /* Header file for monetary value formatting functions. - Copyright (C) 1996,1997,1998,1999,2000,2002,2006 + Copyright (C) 1996,1997,1998,1999,2000,2002,2006,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -46,7 +46,7 @@ extern ssize_t strfmon (char *__restrict __s, size_t __maxsize, /* Formatting a monetary value according to the current locale. */ extern ssize_t strfmon_l (char *__restrict __s, size_t __maxsize, - __locale_t loc, + __locale_t __loc, __const char *__restrict __format, ...) __THROW __attribute_format_strfmon__ (4, 5); #endif diff --git a/sunrpc/rpc/clnt.h b/sunrpc/rpc/clnt.h index cf271c5c13..265bbe2528 100644 --- a/sunrpc/rpc/clnt.h +++ b/sunrpc/rpc/clnt.h @@ -405,7 +405,7 @@ extern char *clnt_sperrno (enum clnt_stat __num) __THROW; /* string */ * get the port number on the host for the rpc program,version and proto */ extern int getrpcport (__const char * __host, u_long __prognum, - u_long __versnum, u_int proto) __THROW; + u_long __versnum, u_int __proto) __THROW; /* * get the local host's IP address without consulting diff --git a/sunrpc/rpc/pmap_clnt.h b/sunrpc/rpc/pmap_clnt.h index 1b1c452915..997dddb323 100644 --- a/sunrpc/rpc/pmap_clnt.h +++ b/sunrpc/rpc/pmap_clnt.h @@ -45,7 +45,7 @@ __BEGIN_DECLS -typedef bool_t (*resultproc_t) (caddr_t resp, struct sockaddr_in *raddr); +typedef bool_t (*resultproc_t) (caddr_t __resp, struct sockaddr_in *__raddr); /* * Usage: diff --git a/sunrpc/rpc/svc.h b/sunrpc/rpc/svc.h index 171231919a..f29615d5d0 100644 --- a/sunrpc/rpc/svc.h +++ b/sunrpc/rpc/svc.h @@ -82,11 +82,11 @@ struct SVCXPRT { enum xprt_stat (*xp_stat) (SVCXPRT *__xprt); /* get transport status */ bool_t (*xp_getargs) (SVCXPRT *__xprt, xdrproc_t __xdr_args, - caddr_t args_ptr); /* get arguments */ + caddr_t __args_ptr); /* get arguments */ bool_t (*xp_reply) (SVCXPRT *__xprt, struct rpc_msg *__msg); /* send reply */ bool_t (*xp_freeargs) (SVCXPRT *__xprt, xdrproc_t __xdr_args, - caddr_t args_ptr); + caddr_t __args_ptr); /* free mem allocated for args */ void (*xp_destroy) (SVCXPRT *__xprt); /* destroy this struct */ @@ -226,7 +226,7 @@ extern void xprt_unregister (SVCXPRT *__xprt) __THROW; * deadlock the caller and server processes! */ -extern bool_t svc_sendreply (SVCXPRT *xprt, xdrproc_t __xdr_results, +extern bool_t svc_sendreply (SVCXPRT *__xprt, xdrproc_t __xdr_results, caddr_t __xdr_location) __THROW; extern void svcerr_decode (SVCXPRT *__xprt) __THROW; diff --git a/sunrpc/rpc/xdr.h b/sunrpc/rpc/xdr.h index ba9691d1af..75bc302980 100644 --- a/sunrpc/rpc/xdr.h +++ b/sunrpc/rpc/xdr.h @@ -316,7 +316,7 @@ extern bool_t xdr_opaque (XDR *__xdrs, caddr_t __cp, u_int __cnt) __THROW; extern bool_t xdr_string (XDR *__xdrs, char **__cpp, u_int __maxsize) __THROW; extern bool_t xdr_union (XDR *__xdrs, enum_t *__dscmp, char *__unp, __const struct xdr_discrim *__choices, - xdrproc_t dfault) __THROW; + xdrproc_t __dfault) __THROW; extern bool_t xdr_char (XDR *__xdrs, char *__cp) __THROW; extern bool_t xdr_u_char (XDR *__xdrs, u_char *__cp) __THROW; extern bool_t xdr_vector (XDR *__xdrs, char *__basep, u_int __nelem, diff --git a/sunrpc/rpc_common.c b/sunrpc/rpc_common.c index 6b22b3f66b..3fb0bda489 100644 --- a/sunrpc/rpc_common.c +++ b/sunrpc/rpc_common.c @@ -39,7 +39,11 @@ * This file should only contain common data (global data) that is exported * by public interfaces */ -struct opaque_auth _null_auth; +/* We are very tricky here. We want to have _null_auth in a read-only + section but we cannot add const to the type because this isn't how + the variable is declared. So we use the section attribute. */ +struct opaque_auth _null_auth __attribute__ ((nocommon)); +libc_hidden_def (_null_auth) fd_set svc_fdset; struct rpc_createerr rpc_createerr; struct pollfd *svc_pollfd; diff --git a/sunrpc/rpc_main.c b/sunrpc/rpc_main.c index a3d227e524..8a7d3695e2 100644 --- a/sunrpc/rpc_main.c +++ b/sunrpc/rpc_main.c @@ -52,6 +52,9 @@ #include "rpc_scan.h" #include "proto.h" +#include "../version.h" +#define PACKAGE _libc_intl_domainname + #define EXTEND 1 /* alias for TRUE */ #define DONT_EXTEND 0 /* alias for FALSE */ @@ -132,8 +135,9 @@ static void addarg (const char *cp); static void putarg (int whereto, const char *cp); static void checkfiles (const char *infile, const char *outfile); static int parseargs (int argc, const char *argv[], struct commandline *cmd); -static void usage (void) __attribute__ ((noreturn)); -static void options_usage (void) __attribute__ ((noreturn)); +static void usage (FILE *stream, int status) __attribute__ ((noreturn)); +static void options_usage (FILE *stream, int status) __attribute__ ((noreturn)); +static void print_version (void); static void c_initialize (void); static char *generate_guard (const char *pathname); @@ -185,7 +189,7 @@ main (int argc, const char *argv[]) (void) memset ((char *) &cmd, 0, sizeof (struct commandline)); clear_args (); if (!parseargs (argc, argv, &cmd)) - usage (); + usage (stderr, 1); if (cmd.cflag || cmd.hflag || cmd.lflag || cmd.tflag || cmd.sflag || cmd.mflag || cmd.nflag || cmd.Ssflag || cmd.Scflag) @@ -787,7 +791,7 @@ s_output (int argc, const char *argv[], const char *infile, const char *define, { if (outfilename) unlink (outfilename); - usage (); + usage (stderr, 1); } write_rest (); } @@ -1218,6 +1222,10 @@ parseargs (int argc, const char *argv[], struct commandline *cmd) } cmd->infile = argv[i]; } + else if (strcmp (argv[i], "--help") == 0) + usage (stdout, 0); + else if (strcmp (argv[i], "--version") == 0) + print_version (); else { for (j = 1; argv[i][j] != 0; j++) @@ -1442,46 +1450,56 @@ parseargs (int argc, const char *argv[], struct commandline *cmd) } static void -usage (void) +usage (FILE *stream, int status) { - fprintf (stderr, _("usage: %s infile\n"), cmdname); - fprintf (stderr, _("\t%s [-abkCLNTM][-Dname[=value]] [-i size] \ + fprintf (stream, _("usage: %s infile\n"), cmdname); + fprintf (stream, _("\t%s [-abkCLNTM][-Dname[=value]] [-i size] \ [-I [-K seconds]] [-Y path] infile\n"), cmdname); - fprintf (stderr, _("\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] \ + fprintf (stream, _("\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] \ [-o outfile] [infile]\n"), cmdname); - fprintf (stderr, _("\t%s [-s nettype]* [-o outfile] [infile]\n"), cmdname); - fprintf (stderr, _("\t%s [-n netid]* [-o outfile] [infile]\n"), cmdname); - options_usage (); - exit (1); + fprintf (stream, _("\t%s [-s nettype]* [-o outfile] [infile]\n"), cmdname); + fprintf (stream, _("\t%s [-n netid]* [-o outfile] [infile]\n"), cmdname); + options_usage (stream, status); + exit (status); +} + +static void +options_usage (FILE *stream, int status) +{ + f_print (stream, _("options:\n")); + f_print (stream, _("-a\t\tgenerate all files, including samples\n")); + f_print (stream, _("-b\t\tbackward compatibility mode (generates code for SunOS 4.1)\n")); + f_print (stream, _("-c\t\tgenerate XDR routines\n")); + f_print (stream, _("-C\t\tANSI C mode\n")); + f_print (stream, _("-Dname[=value]\tdefine a symbol (same as #define)\n")); + f_print (stream, _("-h\t\tgenerate header file\n")); + f_print (stream, _("-i size\t\tsize at which to start generating inline code\n")); + f_print (stream, _("-I\t\tgenerate code for inetd support in server (for SunOS 4.1)\n")); + f_print (stream, _("-K seconds\tserver exits after K seconds of inactivity\n")); + f_print (stream, _("-l\t\tgenerate client side stubs\n")); + f_print (stream, _("-L\t\tserver errors will be printed to syslog\n")); + f_print (stream, _("-m\t\tgenerate server side stubs\n")); + f_print (stream, _("-M\t\tgenerate MT-safe code\n")); + f_print (stream, _("-n netid\tgenerate server code that supports named netid\n")); + f_print (stream, _("-N\t\tsupports multiple arguments and call-by-value\n")); + f_print (stream, _("-o outfile\tname of the output file\n")); + f_print (stream, _("-s nettype\tgenerate server code that supports named nettype\n")); + f_print (stream, _("-Sc\t\tgenerate sample client code that uses remote procedures\n")); + f_print (stream, _("-Ss\t\tgenerate sample server code that defines remote procedures\n")); + f_print (stream, _("-Sm \t\tgenerate makefile template \n")); + f_print (stream, _("-t\t\tgenerate RPC dispatch table\n")); + f_print (stream, _("-T\t\tgenerate code to support RPC dispatch tables\n")); + f_print (stream, _("-Y path\t\tdirectory name to find C preprocessor (cpp)\n")); + + f_print (stream, "\n%s", _("\ +For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); + exit (status); } static void -options_usage (void) +print_version (void) { - f_print (stderr, "options:\n"); - f_print (stderr, "-a\t\tgenerate all files, including samples\n"); - f_print (stderr, "-b\t\tbackward compatibility mode (generates code for SunOS 4.1)\n"); - f_print (stderr, "-c\t\tgenerate XDR routines\n"); - f_print (stderr, "-C\t\tANSI C mode\n"); - f_print (stderr, "-Dname[=value]\tdefine a symbol (same as #define)\n"); - f_print (stderr, "-h\t\tgenerate header file\n"); - f_print (stderr, "-i size\t\tsize at which to start generating inline code\n"); - f_print (stderr, "-I\t\tgenerate code for inetd support in server (for SunOS 4.1)\n"); - f_print (stderr, "-K seconds\tserver exits after K seconds of inactivity\n"); - f_print (stderr, "-l\t\tgenerate client side stubs\n"); - f_print (stderr, "-L\t\tserver errors will be printed to syslog\n"); - f_print (stderr, "-m\t\tgenerate server side stubs\n"); - f_print (stderr, "-M\t\tgenerate MT-safe code\n"); - f_print (stderr, "-n netid\tgenerate server code that supports named netid\n"); - f_print (stderr, "-N\t\tsupports multiple arguments and call-by-value\n"); - f_print (stderr, "-o outfile\tname of the output file\n"); - f_print (stderr, "-s nettype\tgenerate server code that supports named nettype\n"); - f_print (stderr, "-Sc\t\tgenerate sample client code that uses remote procedures\n"); - f_print (stderr, "-Ss\t\tgenerate sample server code that defines remote procedures\n"); - f_print (stderr, "-Sm \t\tgenerate makefile template \n"); - f_print (stderr, "-t\t\tgenerate RPC dispatch table\n"); - f_print (stderr, "-T\t\tgenerate code to support RPC dispatch tables\n"); - f_print (stderr, "-Y path\t\tdirectory name to find C preprocessor (cpp)\n"); - - exit (1); + printf ("rpcgen (GNU %s) %s\n", PACKAGE, VERSION); + exit (0); } diff --git a/sunrpc/rpcinfo.c b/sunrpc/rpcinfo.c index d9da989660..91f360c2f3 100644 --- a/sunrpc/rpcinfo.c +++ b/sunrpc/rpcinfo.c @@ -58,6 +58,9 @@ static char sccsid[] = "@(#)rpcinfo.c 1.22 87/08/12 SMI"; #include <locale.h> #include <libintl.h> +#include "../version.h" +#define PACKAGE _libc_intl_domainname + #define MAXHOSTLEN 256 #define MIN_VERS ((u_long) 0) @@ -70,7 +73,8 @@ static void pmapdump (int argc, char **argv); static bool_t reply_proc (void *res, struct sockaddr_in *who); static void brdcst (int argc, char **argv) __attribute__ ((noreturn)); static void deletereg (int argc, char **argv); -static void usage (void); +static void usage (FILE *stream); +static void print_version (void); static u_long getprognum (char *arg); static u_long getvers (char *arg); static void get_inet_address (struct sockaddr_in *addr, char *host); @@ -92,6 +96,11 @@ main (int argc, char **argv) int errflg; int function; u_short portnum; + static const struct option long_options[] = { + { "help", no_argument, NULL, 'H' }, + { "version", no_argument, NULL, 'V' }, + { NULL, 0, NULL, 0 } + }; setlocale (LC_ALL, ""); textdomain (_libc_intl_domainname); @@ -99,7 +108,7 @@ main (int argc, char **argv) function = NONE; portnum = 0; errflg = 0; - while ((c = getopt (argc, argv, "ptubdn:")) != -1) + while ((c = getopt_long (argc, argv, "ptubdn:", long_options, NULL)) != -1) { switch (c) { @@ -143,6 +152,14 @@ main (int argc, char **argv) function = DELETES; break; + case 'H': + usage (stdout); + return 0; + + case 'V': + print_version (); + return 0; + case '?': errflg = 1; } @@ -150,7 +167,7 @@ main (int argc, char **argv) if (errflg || function == NONE) { - usage (); + usage (stderr); return 1; } @@ -160,7 +177,7 @@ main (int argc, char **argv) case PMAPDUMP: if (portnum != 0) { - usage (); + usage (stderr); return 1; } pmapdump (argc - optind, argv + optind); @@ -177,7 +194,7 @@ main (int argc, char **argv) case BRDCST: if (portnum != 0) { - usage (); + usage (stderr); return 1; } brdcst (argc - optind, argv + optind); @@ -208,7 +225,7 @@ udpping (portnum, argc, argv) if (argc < 2 || argc > 3) { - usage (); + usage (stderr); exit (1); } prognum = getprognum (argv[1]); @@ -363,7 +380,7 @@ tcpping (portnum, argc, argv) if (argc < 2 || argc > 3) { - usage (); + usage (stderr); exit (1); } prognum = getprognum (argv[1]); @@ -532,7 +549,7 @@ pmapdump (argc, argv) if (argc > 1) { - usage (); + usage (stderr); exit (1); } if (argc == 1) @@ -624,7 +641,7 @@ brdcst (argc, argv) if (argc != 2) { - usage (); + usage (stderr); exit (1); } prognum = getprognum (argv[0]); @@ -650,7 +667,7 @@ deletereg (argc, argv) if (argc != 2) { - usage (); + usage (stderr); exit (1); } if (getuid ()) @@ -669,15 +686,25 @@ deletereg (argc, argv) } static void -usage () +usage (FILE *stream) { fputs (_("Usage: rpcinfo [ -n portnum ] -u host prognum [ versnum ]\n"), - stderr); + stream); fputs (_(" rpcinfo [ -n portnum ] -t host prognum [ versnum ]\n"), - stderr); - fputs (_(" rpcinfo -p [ host ]\n"), stderr); - fputs (_(" rpcinfo -b prognum versnum\n"), stderr); - fputs (_(" rpcinfo -d prognum versnum\n"), stderr); + stream); + fputs (_(" rpcinfo -p [ host ]\n"), stream); + fputs (_(" rpcinfo -b prognum versnum\n"), stream); + fputs (_(" rpcinfo -d prognum versnum\n"), stream); + fputc ('\n', stream); + fprintf (stream, _("\ +For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); +} + +static void +print_version (void) +{ + printf ("rpcinfo (GNU %s) %s\n", PACKAGE, VERSION); } static u_long diff --git a/sysdeps/i386/bits/link.h b/sysdeps/i386/bits/link.h index 985d040413..4df5f795e3 100644 --- a/sysdeps/i386/bits/link.h +++ b/sysdeps/i386/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004, 2005 Free Software Foundation, Inc. +/* Copyright (C) 2004, 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -55,6 +55,6 @@ extern unsigned int la_i86_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, uintptr_t *__defcook, const La_i86_regs *__inregs, La_i86_retval *__outregs, - const char *symname); + const char *__symname); __END_DECLS diff --git a/sysdeps/i386/i486/bits/atomic.h b/sysdeps/i386/i486/bits/atomic.h index 21eea7112c..4ee6fef692 100644 --- a/sysdeps/i386/i486/bits/atomic.h +++ b/sysdeps/i386/i486/bits/atomic.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002, 2003, 2004, 2006, 2007 Free Software Foundation, Inc. +/* Copyright (C) 2002-2004, 2006, 2007, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. @@ -500,24 +500,34 @@ typedef uintmax_t uatomic_max_t; #define atomic_delay() asm ("rep; nop") -#define atomic_and(mem, mask) \ +#define __arch_and_body(lock, mem, mask) \ do { \ if (sizeof (*mem) == 1) \ - __asm __volatile (LOCK_PREFIX "andb %b1, %0" \ + __asm __volatile (lock "andb %b1, %0" \ : "=m" (*mem) \ - : "iq" (mask), "m" (*mem)); \ + : "iq" (mask), "m" (*mem), \ + "i" (offsetof (tcbhead_t, multiple_threads))); \ else if (sizeof (*mem) == 2) \ - __asm __volatile (LOCK_PREFIX "andw %w1, %0" \ + __asm __volatile (lock "andw %w1, %0" \ : "=m" (*mem) \ - : "ir" (mask), "m" (*mem)); \ + : "ir" (mask), "m" (*mem), \ + "i" (offsetof (tcbhead_t, multiple_threads))); \ else if (sizeof (*mem) == 4) \ - __asm __volatile (LOCK_PREFIX "andl %1, %0" \ + __asm __volatile (lock "andl %1, %0" \ : "=m" (*mem) \ - : "ir" (mask), "m" (*mem)); \ + : "ir" (mask), "m" (*mem), \ + "i" (offsetof (tcbhead_t, multiple_threads))); \ else \ abort (); \ } while (0) +#define __arch_cprefix \ + "cmpl $0, %%gs:%P3\n\tje 0f\n\tlock\n0:\t" + +#define atomic_and(mem, mask) __arch_and_body (LOCK_PREFIX, mem, mask) + +#define catomic_and(mem, mask) __arch_and_body (__arch_cprefix, mem, mask) + #define __arch_or_body(lock, mem, mask) \ do { \ @@ -542,7 +552,4 @@ typedef uintmax_t uatomic_max_t; #define atomic_or(mem, mask) __arch_or_body (LOCK_PREFIX, mem, mask) -#define __arch_or_cprefix \ - "cmpl $0, %%gs:%P3\n\tje 0f\n\tlock\n0:\t" - -#define catomic_or(mem, mask) __arch_or_body (__arch_or_cprefix, mem, mask) +#define catomic_or(mem, mask) __arch_or_body (__arch_cprefix, mem, mask) diff --git a/sysdeps/ia64/bits/link.h b/sysdeps/ia64/bits/link.h index f751c23fd1..f522ab340b 100644 --- a/sysdeps/ia64/bits/link.h +++ b/sysdeps/ia64/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005 Free Software Foundation, Inc. +/* Copyright (C) 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -58,6 +58,6 @@ extern unsigned int la_ia64_gnu_pltexit (Elf64_Sym *__sym, unsigned int __ndx, uintptr_t *__defcook, const La_ia64_regs *__inregs, La_ia64_retval *__outregs, - const char *symname); + const char *__symname); __END_DECLS diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c index 0c0d7d1418..f1d1ee4417 100644 --- a/sysdeps/posix/sysconf.c +++ b/sysdeps/posix/sysconf.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991,1993,1995-1997,1999-2003,2004,2006 +/* Copyright (C) 1991,1993,1995-1997,1999-2003,2004,2006,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -38,7 +38,9 @@ (!defined _XBS5_ILP32_OFF32 || !defined _XBS5_ILP32_OFFBIG \ || !defined _XBS5_LP64_OFF64 || !defined _XBS5_LPBIG_OFFBIG \ || !defined _POSIX_V6_ILP32_OFF32 || !defined _POSIX_V6_ILP32_OFFBIG \ - || !defined _POSIX_V6_LP64_OFF64 || !defined _POSIX_V6_LPBIG_OFFBIG) + || !defined _POSIX_V6_LP64_OFF64 || !defined _POSIX_V6_LPBIG_OFFBIG \ + || !defined _POSIX_V7_ILP32_OFF32 || !defined _POSIX_V7_ILP32_OFFBIG \ + || !defined _POSIX_V7_LP64_OFF64 || !defined _POSIX_V7_LPBIG_OFFBIG) #if NEED_CHECK_SPEC static long int __sysconf_check_spec (const char *spec); #endif @@ -840,6 +842,31 @@ __sysconf (name) return __sysconf_check_spec ("LPBIG_OFFBIG"); #endif + case _SC_V7_ILP32_OFF32: +#ifdef _POSIX_V7_ILP32_OFF32 + return _POSIX_V7_ILP32_OFF32; +#else + return __sysconf_check_spec ("ILP32_OFF32"); +#endif + case _SC_V7_ILP32_OFFBIG: +#ifdef _POSIX_V7_ILP32_OFFBIG + return _POSIX_V7_ILP32_OFFBIG; +#else + return __sysconf_check_spec ("ILP32_OFFBIG"); +#endif + case _SC_V7_LP64_OFF64: +#ifdef _POSIX_V7_LP64_OFF64 + return _POSIX_V7_LP64_OFF64; +#else + return __sysconf_check_spec ("LP64_OFF64"); +#endif + case _SC_V7_LPBIG_OFFBIG: +#ifdef _POSIX_V7_LPBIG_OFFBIG + return _POSIX_V7_LPBIG_OFFBIG; +#else + return __sysconf_check_spec ("LPBIG_OFFBIG"); +#endif + case _SC_XOPEN_LEGACY: return _XOPEN_LEGACY; diff --git a/sysdeps/powerpc/bits/link.h b/sysdeps/powerpc/bits/link.h index 6c6f6042a1..24baba09c4 100644 --- a/sysdeps/powerpc/bits/link.h +++ b/sysdeps/powerpc/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific declarations for dynamic linker interface. PowerPC version - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -60,7 +60,7 @@ extern unsigned int la_ppc32_gnu_pltexit (Elf32_Sym *__sym, uintptr_t *__defcook, const La_ppc32_regs *__inregs, La_ppc32_retval *__outregs, - const char *symname); + const char *__symname); __END_DECLS @@ -104,7 +104,7 @@ extern unsigned int la_ppc64_gnu_pltexit (Elf64_Sym *__sym, uintptr_t *__defcook, const La_ppc64_regs *__inregs, La_ppc64_retval *__outregs, - const char *symname); + const char *__symname); __END_DECLS diff --git a/sysdeps/s390/bits/link.h b/sysdeps/s390/bits/link.h index 70f0043820..bb6f54664c 100644 --- a/sysdeps/s390/bits/link.h +++ b/sysdeps/s390/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005 Free Software Foundation, Inc. +/* Copyright (C) 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -104,7 +104,7 @@ extern unsigned int la_s390_64_gnu_pltexit (Elf64_Sym *__sym, uintptr_t *__defcook, const La_s390_64_regs *__inregs, La_s390_64_retval *__outregs, - const char *symname); + const char *__symname); __END_DECLS diff --git a/sysdeps/sh/bits/link.h b/sysdeps/sh/bits/link.h index 2826677336..f650aa302e 100644 --- a/sysdeps/sh/bits/link.h +++ b/sysdeps/sh/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005 Free Software Foundation, Inc. +/* Copyright (C) 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -65,6 +65,6 @@ extern unsigned int la_sh_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, uintptr_t *__defcook, const La_sh_regs *__inregs, La_sh_retval *__outregs, - const char *symname); + const char *__symname); __END_DECLS diff --git a/sysdeps/sh/sh4/__longjmp.S b/sysdeps/sh/sh4/__longjmp.S index 320a7d11f7..2fd137bcba 100644 --- a/sysdeps/sh/sh4/__longjmp.S +++ b/sysdeps/sh/sh4/__longjmp.S @@ -1,5 +1,5 @@ /* longjmp for SH. - Copyright (C) 1999, 2000, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2005, 2006, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -52,6 +52,7 @@ ENTRY (__longjmp) mov.l @r4+, r15 lds.l @r4+, pr #endif +#ifdef __SH_FPU_ANY__ ldc.l @r4+, gbr lds.l @r4+, fpscr fmov.s @r4+, fr12 @@ -59,4 +60,8 @@ ENTRY (__longjmp) fmov.s @r4+, fr14 rts fmov.s @r4+, fr15 +#else + rts + ldc.l @r4+, gbr +#endif /* !__SH_FPU_ANY__ */ END (__longjmp) diff --git a/sysdeps/sh/sh4/dl-trampoline.S b/sysdeps/sh/sh4/dl-trampoline.S index f9529851a1..bd9bb7e5bd 100644 --- a/sysdeps/sh/sh4/dl-trampoline.S +++ b/sysdeps/sh/sh4/dl-trampoline.S @@ -1,2 +1,4 @@ -#define HAVE_FPU +#ifdef __SH_FPU_ANY__ +# define HAVE_FPU +#endif #include <sysdeps/sh/dl-trampoline.S> diff --git a/sysdeps/sh/sh4/setjmp.S b/sysdeps/sh/sh4/setjmp.S index f9a4f0a8ce..03f0b08dcd 100644 --- a/sysdeps/sh/sh4/setjmp.S +++ b/sysdeps/sh/sh4/setjmp.S @@ -1,5 +1,5 @@ /* setjmp for SH4. - Copyright (C) 1999, 2000, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2005, 2006, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -23,11 +23,13 @@ ENTRY (__sigsetjmp) /* Save registers */ add #JB_SIZE, r4 +#ifdef __SH_FPU_ANY__ fmov.s fr15, @-r4 fmov.s fr14, @-r4 fmov.s fr13, @-r4 fmov.s fr12, @-r4 sts.l fpscr, @-r4 +#endif /* __SH_FPU_ANY__ */ stc.l gbr, @-r4 #ifdef PTR_MANGLE sts pr, r2 diff --git a/sysdeps/sparc/bits/link.h b/sysdeps/sparc/bits/link.h index 9b8434f56f..e0550e84ac 100644 --- a/sysdeps/sparc/bits/link.h +++ b/sysdeps/sparc/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific audit interfaces for dynamic linker. SPARC version. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -75,7 +75,7 @@ extern unsigned int la_sparc32_gnu_pltexit (Elf32_Sym *__sym, uintptr_t *__defcook, const La_sparc32_regs *__inregs, La_sparc32_retval *__outregs, - const char *symname); + const char *__symname); #else @@ -93,7 +93,7 @@ extern unsigned int la_sparc64_gnu_pltexit (Elf64_Sym *__sym, uintptr_t *__defcook, const La_sparc64_regs *__inregs, La_sparc64_retval *__outregs, - const char *symname); + const char *__symname); #endif diff --git a/sysdeps/unix/opendir.c b/sysdeps/unix/opendir.c index 92029c6547..fbf14f5eec 100644 --- a/sysdeps/unix/opendir.c +++ b/sysdeps/unix/opendir.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-1996,98,2000-2003,2005,2007 +/* Copyright (C) 1991-1996,98,2000-2003,2005,2007,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -81,6 +81,7 @@ DIR * __opendir (const char *name) { struct stat64 statbuf; + struct stat64 *statp = NULL; if (__builtin_expect (name[0], '\1') == '\0') { @@ -119,16 +120,14 @@ __opendir (const char *name) if (__builtin_expect (fd, 0) < 0) return NULL; - /* Now make sure this really is a directory and nothing changed since - the `stat' call. We do not have to perform the test for the - descriptor being associated with a directory if we know the - O_DIRECTORY flag is honored by the kernel. */ - if (__builtin_expect (__fxstat64 (_STAT_VER, fd, &statbuf), 0) < 0) - goto lose; #ifdef O_DIRECTORY if (o_directory_works <= 0) #endif { + /* Now make sure this really is a directory and nothing changed since + the `stat' call. */ + if (__builtin_expect (__fxstat64 (_STAT_VER, fd, &statbuf), 0) < 0) + goto lose; if (__builtin_expect (! S_ISDIR (statbuf.st_mode), 0)) { __set_errno (ENOTDIR); @@ -136,9 +135,10 @@ __opendir (const char *name) close_not_cancel_no_status (fd); return NULL; } + statp = &statbuf; } - return __alloc_dir (fd, true, &statbuf); + return __alloc_dir (fd, true, statp); } weak_alias (__opendir, opendir) @@ -171,29 +171,23 @@ __alloc_dir (int fd, bool close_fd, const struct stat64 *statp) goto lose; } - const size_t default_allocation = (BUFSIZ < sizeof (struct dirent64) - ? sizeof (struct dirent64) : BUFSIZ); - size_t allocation; + const size_t default_allocation = (4 * BUFSIZ < sizeof (struct dirent64) + ? sizeof (struct dirent64) : 4 * BUFSIZ); + const size_t small_allocation = (BUFSIZ < sizeof (struct dirent64) + ? sizeof (struct dirent64) : BUFSIZ); + size_t allocation = default_allocation; #ifdef _STATBUF_ST_BLKSIZE - if (__builtin_expect ((size_t) statp->st_blksize >= sizeof (struct dirent64), - 1)) + if (statp != NULL && default_allocation < statp->st_blksize) allocation = statp->st_blksize; - else #endif - allocation = default_allocation; DIR *dirp = (DIR *) malloc (sizeof (DIR) + allocation); if (dirp == NULL) { -#ifdef _STATBUF_ST_BLKSIZE - if (allocation == statp->st_blksize - && allocation != default_allocation) - { - allocation = default_allocation; - dirp = (DIR *) malloc (sizeof (DIR) + allocation); - } + allocation = small_allocation; + dirp = (DIR *) malloc (sizeof (DIR) + allocation); + if (dirp == NULL) -#endif lose: { if (close_fd) diff --git a/sysdeps/unix/sysv/linux/getsysstats.c b/sysdeps/unix/sysv/linux/getsysstats.c index 6d4c9c06e8..28f52c0463 100644 --- a/sysdeps/unix/sysv/linux/getsysstats.c +++ b/sysdeps/unix/sysv/linux/getsysstats.c @@ -1,5 +1,5 @@ /* Determine various system internal values, Linux version. - Copyright (C) 1996-2001, 2002, 2003, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 1996-2003, 2006, 2007, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996. @@ -49,10 +49,13 @@ But not all systems have support for the /proc filesystem. If it is not available we simply return 1 since there is no way. */ +#include <not-cancel.h> + + /* Other architectures use different formats for /proc/cpuinfo. This provides a hook for alternative parsers. */ #ifndef GET_NPROCS_PARSER -# define GET_NPROCS_PARSER(FP, BUFFER, RESULT) \ +# define GET_NPROCS_PARSER(FD, BUFFER, CP, RE, BUFFER_END, RESULT) \ do \ { \ (RESULT) = 0; \ @@ -60,45 +63,89 @@ "processor". We don't have to fear extremely long lines since \ the kernel will not generate them. 8192 bytes are really \ enough. */ \ - while (fgets_unlocked (BUFFER, sizeof (BUFFER), FP) != NULL) \ - if (strncmp (BUFFER, "processor", 9) == 0) \ + char *l; \ + while ((l = next_line (FD, BUFFER, &CP, &RE, BUFFER_END)) != NULL) \ + if (strncmp (l, "processor", 9) == 0) \ ++(RESULT); \ } \ while (0) #endif +static char * +next_line (int fd, char *const buffer, char **cp, char **re, + char *const buffer_end) +{ + char *res = *cp; + char *nl = memchr (*cp, '\n', *re - *cp); + if (nl == NULL) + { + if (*cp != buffer) + { + if (*re == buffer_end) + { + memmove (buffer, *cp, *re - *cp); + *re = buffer + (*re - *cp); + *cp = buffer; + + ssize_t n = read_not_cancel (fd, *re, buffer_end - *re); + if (n < 0) + return NULL; + + *re += n; + } + + res = *cp; + nl = memchr (*cp, '\n', *re - *cp); + } + + if (nl == NULL) + nl = *re - 1; + } + + *cp = nl + 1; + assert (*cp <= *re); + + return res == *re ? NULL : res; +} + + int __get_nprocs () { /* XXX Here will come a test for the new system call. */ char buffer[8192]; + char *const buffer_end = buffer + sizeof (buffer); + char *cp = buffer_end; + char *re = buffer_end; int result = 1; +#ifdef O_CLOEXEC + const int flags = O_RDONLY | O_CLOEXEC; +#else + const int flags = O_RDONLY; +#endif /* The /proc/stat format is more uniform, use it by default. */ - FILE *fp = fopen ("/proc/stat", "rc"); - if (fp != NULL) + int fd = open_not_cancel_2 ("/proc/stat", flags); + if (fd != -1) { - /* No threads use this stream. */ - __fsetlocking (fp, FSETLOCKING_BYCALLER); - result = 0; - while (fgets_unlocked (buffer, sizeof (buffer), fp) != NULL) - if (strncmp (buffer, "cpu", 3) == 0 && isdigit (buffer[3])) + + char *l; + while ((l = next_line (fd, buffer, &cp, &re, buffer_end)) != NULL) + if (strncmp (l, "cpu", 3) == 0 && isdigit (l[3])) ++result; - fclose (fp); + close_not_cancel_no_status (fd); } else { - fp = fopen ("/proc/cpuinfo", "rc"); - if (fp != NULL) + fd = open_not_cancel_2 ("/proc/cpuinfo", flags); + if (fd != -1) { - /* No threads use this stream. */ - __fsetlocking (fp, FSETLOCKING_BYCALLER); - GET_NPROCS_PARSER (fp, buffer, result); - fclose (fp); + GET_NPROCS_PARSER (fd, buffer, cp, re, buffer_end, result); + close_not_cancel_no_status (fd); } } @@ -141,7 +188,7 @@ __get_nprocs_conf () #ifdef GET_NPROCS_CONF_PARSER /* If we haven't found an appropriate entry return 1. */ - FILE *fp = fopen ("/proc/cpuinfo", "rc"); + FILE *fp = fopen ("/proc/cpuinfo", "rce"); if (fp != NULL) { char buffer[8192]; diff --git a/sysdeps/unix/sysv/linux/i386/bits/environments.h b/sysdeps/unix/sysv/linux/i386/bits/environments.h index 16f7732aad..785dd7e8fa 100644 --- a/sysdeps/unix/sysv/linux/i386/bits/environments.h +++ b/sysdeps/unix/sysv/linux/i386/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999, 2001, 2004 Free Software Foundation, Inc. +/* Copyright (C) 1999, 2001, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -25,29 +25,35 @@ `-1' means it is never supported. Undefined means it cannot be statically decided. - _POSIX_V6_ILP32_OFF32 32bit int, long, pointers, and off_t type - _POSIX_V6_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type + _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type + _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type - _POSIX_V6_LP64_OFF32 64bit long and pointers and 32bit off_t type - _POSIX_V6_LPBIG_OFFBIG 64bit long and pointers and large off_t type + _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type + _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type - The macros _XBS5_ILP32_OFF32, _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and - _XBS5_LPBIG_OFFBIG were used in previous versions of the Unix standard - and are available only for compatibility. + The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, + _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, + _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were + used in previous versions of the Unix standard and are available + only for compatibility. */ /* By default we have 32-bit wide `int', `long int', pointers and `off_t' and all platforms support LFS. */ +#define _POSIX_V7_ILP32_OFF32 1 +#define _POSIX_V7_ILP32_OFFBIG 1 #define _POSIX_V6_ILP32_OFF32 1 #define _POSIX_V6_ILP32_OFFBIG 1 #define _XBS5_ILP32_OFF32 1 #define _XBS5_ILP32_OFFBIG 1 /* We optionally provide an environment with the above size but an 64-bit - side `off_t'. Therefore we don't define _XBS5_ILP32_OFFBIG. */ + side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ /* Environments with 64-bit wide pointers can be provided, so these macros aren't defined: + # undef _POSIX_V7_LP64_OFF64 + # undef _POSIX_V7_LPBIG_OFFBIG # undef _POSIX_V6_LP64_OFF64 # undef _POSIX_V6_LPBIG_OFFBIG # undef _XBS5_LP64_OFF64 diff --git a/sysdeps/unix/sysv/linux/i386/sys/io.h b/sysdeps/unix/sysv/linux/i386/sys/io.h index 39a7877f7e..128c2caac7 100644 --- a/sysdeps/unix/sysv/linux/i386/sys/io.h +++ b/sysdeps/unix/sysv/linux/i386/sys/io.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996, 2000 Free Software Foundation, Inc. +/* Copyright (C) 1996, 2000, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -41,138 +41,142 @@ extern int iopl (int __level) __THROW; #if defined __GNUC__ && __GNUC__ >= 2 static __inline unsigned char -inb (unsigned short int port) +inb (unsigned short int __port) { unsigned char _v; - __asm__ __volatile__ ("inb %w1,%0":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inb %w1,%0":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned char -inb_p (unsigned short int port) +inb_p (unsigned short int __port) { unsigned char _v; - __asm__ __volatile__ ("inb %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inb %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned short int -inw (unsigned short int port) +inw (unsigned short int __port) { unsigned short _v; - __asm__ __volatile__ ("inw %w1,%0":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inw %w1,%0":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned short int -inw_p (unsigned short int port) +inw_p (unsigned short int __port) { unsigned short int _v; - __asm__ __volatile__ ("inw %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inw %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned int -inl (unsigned short int port) +inl (unsigned short int __port) { unsigned int _v; - __asm__ __volatile__ ("inl %w1,%0":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inl %w1,%0":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned int -inl_p (unsigned short int port) +inl_p (unsigned short int __port) { unsigned int _v; - __asm__ __volatile__ ("inl %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inl %w1,%0\noutb %%al,$0x80":"=a" (_v) + :"Nd" (__port)); return _v; } static __inline void -outb (unsigned char value, unsigned short int port) +outb (unsigned char value, unsigned short int __port) { - __asm__ __volatile__ ("outb %b0,%w1": :"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outb %b0,%w1": :"a" (value), "Nd" (__port)); } static __inline void -outb_p (unsigned char value, unsigned short int port) +outb_p (unsigned char value, unsigned short int __port) { __asm__ __volatile__ ("outb %b0,%w1\noutb %%al,$0x80": :"a" (value), - "Nd" (port)); + "Nd" (__port)); } static __inline void -outw (unsigned short int value, unsigned short int port) +outw (unsigned short int value, unsigned short int __port) { - __asm__ __volatile__ ("outw %w0,%w1": :"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outw %w0,%w1": :"a" (value), "Nd" (__port)); } static __inline void -outw_p (unsigned short int value, unsigned short int port) +outw_p (unsigned short int value, unsigned short int __port) { __asm__ __volatile__ ("outw %w0,%w1\noutb %%al,$0x80": :"a" (value), - "Nd" (port)); + "Nd" (__port)); } static __inline void -outl (unsigned int value, unsigned short int port) +outl (unsigned int value, unsigned short int __port) { - __asm__ __volatile__ ("outl %0,%w1": :"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outl %0,%w1": :"a" (value), "Nd" (__port)); } static __inline void -outl_p (unsigned int value, unsigned short int port) +outl_p (unsigned int value, unsigned short int __port) { __asm__ __volatile__ ("outl %0,%w1\noutb %%al,$0x80": :"a" (value), - "Nd" (port)); + "Nd" (__port)); } static __inline void -insb (unsigned short int port, void *addr, unsigned long int count) +insb (unsigned short int __port, void *__addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; insb":"=D" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; insb":"=D" (__addr), "=c" (__count) + :"d" (__port), "0" (__addr), "1" (__count)); } static __inline void -insw (unsigned short int port, void *addr, unsigned long int count) +insw (unsigned short int __port, void *__addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; insw":"=D" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; insw":"=D" (__addr), "=c" (__count) + :"d" (__port), "0" (__addr), "1" (__count)); } static __inline void -insl (unsigned short int port, void *addr, unsigned long int count) +insl (unsigned short int __port, void *__addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; insl":"=D" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; insl":"=D" (__addr), "=c" (__count) + :"d" (__port), "0" (__addr), "1" (__count)); } static __inline void -outsb (unsigned short int port, const void *addr, unsigned long int count) +outsb (unsigned short int __port, const void *__addr, + unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; outsb":"=S" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; outsb":"=S" (__addr), "=c" (__count) + :"d" (__port), "0" (__addr), "1" (__count)); } static __inline void -outsw (unsigned short int port, const void *addr, unsigned long int count) +outsw (unsigned short int __port, const void *__addr, + unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; outsw":"=S" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; outsw":"=S" (__addr), "=c" (__count) + :"d" (__port), "0" (__addr), "1" (__count)); } static __inline void -outsl (unsigned short int port, const void *addr, unsigned long int count) +outsl (unsigned short int __port, const void *__addr, + unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; outsl":"=S" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; outsl":"=S" (__addr), "=c" (__count) + :"d" (__port), "0" (__addr), "1" (__count)); } #endif /* GNU C */ diff --git a/sysdeps/unix/sysv/linux/lddlibc4.c b/sysdeps/unix/sysv/linux/lddlibc4.c index 7683ec2efd..694d1291cd 100644 --- a/sysdeps/unix/sysv/linux/lddlibc4.c +++ b/sysdeps/unix/sysv/linux/lddlibc4.c @@ -1,5 +1,5 @@ /* Stub for ldd script to print Linux libc4 dependencies. - Copyright (C) 1998, 2005 Free Software Foundation, Inc. + Copyright (C) 1998, 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -56,6 +56,24 @@ main (int argc, char *argv[]) if (argc != 2) return 1; + if (strcmp (argv[1], "--help") == 0) + { + printf (gettext ("Usage: lddlibc4 FILE\n\n")); + printf (gettext ("For bug reporting instructions, please see:\n\ +<http://www.gnu.org/software/libc/bugs.html>.\n")); + return 0; + } + else if (strcmp (argv[1], "--version") == 0) + { + printf ("lddlibc4 (GNU %s) %s\n", PACKAGE, VERSION); + printf (gettext ("\ +Copyright (C) %s Free Software Foundation, Inc.\n\ +This is free software; see the source for copying conditions. There is NO\n\ +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ +"), "2009"); + return 0; + } + filename = argv[1]; /* First see whether this is really an a.out binary. */ diff --git a/sysdeps/unix/sysv/linux/ldsodefs.h b/sysdeps/unix/sysv/linux/ldsodefs.h index 0bdca3c3fd..0965f1496f 100644 --- a/sysdeps/unix/sysv/linux/ldsodefs.h +++ b/sysdeps/unix/sysv/linux/ldsodefs.h @@ -1,5 +1,5 @@ /* Run-time dynamic linker data structures for loaded ELF shared objects. - Copyright (C) 2001, 2002, 2003, 2006 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2006, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -53,4 +53,24 @@ extern void _dl_non_dynamic_init (void) internal_function; # define HAVE_AUX_PAGESIZE #endif +/* Accept binaries which identify the binary as using Linux extensions. */ +#define VALID_ELF_HEADER(hdr,exp,size) (memcmp (hdr, exp, size) == 0 \ + || memcmp (hdr, expected2, size) == 0) +#define VALID_ELF_OSABI(osabi) (osabi == ELFOSABI_SYSV \ + || osabi == ELFOSABI_LINUX) +#define VALID_ELF_ABIVERSION(ver) (ver == 0) +#define MORE_ELF_HEADER_DATA \ + static const unsigned char expected2[EI_PAD] = \ + { \ + [EI_MAG0] = ELFMAG0, \ + [EI_MAG1] = ELFMAG1, \ + [EI_MAG2] = ELFMAG2, \ + [EI_MAG3] = ELFMAG3, \ + [EI_CLASS] = ELFW(CLASS), \ + [EI_DATA] = byteorder, \ + [EI_VERSION] = EV_CURRENT, \ + [EI_OSABI] = ELFOSABI_LINUX, \ + [EI_ABIVERSION] = 0 \ + } + #endif /* ldsodefs.h */ diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/environments.h b/sysdeps/unix/sysv/linux/powerpc/bits/environments.h index a51a564cbb..c675ecc627 100644 --- a/sysdeps/unix/sysv/linux/powerpc/bits/environments.h +++ b/sysdeps/unix/sysv/linux/powerpc/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999, 2001, 2004 Free Software Foundation, Inc. +/* Copyright (C) 1999, 2001, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -27,21 +27,25 @@ `-1' means it is never supported. Undefined means it cannot be statically decided. - _POSIX_V6_ILP32_OFF32 32bit int, long, pointers, and off_t type - _POSIX_V6_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type + _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type + _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type - _POSIX_V6_LP64_OFF32 64bit long and pointers and 32bit off_t type - _POSIX_V6_LPBIG_OFFBIG 64bit long and pointers and large off_t type + _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type + _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type - The macros _XBS5_ILP32_OFF32, _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and - _XBS5_LPBIG_OFFBIG were used in previous versions of the Unix standard - and are available only for compatibility. + The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, + _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, + _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were + used in previous versions of the Unix standard and are available + only for compatibility. */ #if __WORDSIZE == 64 /* Environments with 32-bit wide pointers are optionally provided. Therefore following macros aren't defined: + # undef _POSIX_V7_ILP32_OFF32 + # undef _POSIX_V7_ILP32_OFFBIG # undef _POSIX_V6_ILP32_OFF32 # undef _POSIX_V6_ILP32_OFFBIG # undef _XBS5_ILP32_OFF32 @@ -50,10 +54,12 @@ /* We also have no use (for now) for an environment with bigger pointers and offsets. */ +# define _POSIX_V7_LPBIG_OFFBIG -1 # define _POSIX_V6_LPBIG_OFFBIG -1 # define _XBS5_LPBIG_OFFBIG -1 /* By default we have 64-bit wide `long int', pointers and `off_t'. */ +# define _POSIX_V7_LP64_OFF64 1 # define _POSIX_V6_LP64_OFF64 1 # define _XBS5_LP64_OFF64 1 @@ -61,16 +67,20 @@ /* By default we have 32-bit wide `int', `long int', pointers and `off_t' and all platforms support LFS. */ +# define _POSIX_V7_ILP32_OFF32 1 +# define _POSIX_V7_ILP32_OFFBIG 1 # define _POSIX_V6_ILP32_OFF32 1 # define _POSIX_V6_ILP32_OFFBIG 1 # define _XBS5_ILP32_OFF32 1 # define _XBS5_ILP32_OFFBIG 1 /* We optionally provide an environment with the above size but an 64-bit - side `off_t'. Therefore we don't define _XBS5_ILP32_OFFBIG. */ + side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ /* Environments with 64-bit wide pointers can be provided, so these macros aren't defined: + # undef _POSIX_V7_LP64_OFF64 + # undef _POSIX_V7_LPBIG_OFFBIG # undef _POSIX_V6_LP64_OFF64 # undef _POSIX_V6_LPBIG_OFFBIG # undef _XBS5_LP64_OFF64 diff --git a/sysdeps/unix/sysv/linux/s390/bits/environments.h b/sysdeps/unix/sysv/linux/s390/bits/environments.h index 713d21c9a5..29628b2ed4 100644 --- a/sysdeps/unix/sysv/linux/s390/bits/environments.h +++ b/sysdeps/unix/sysv/linux/s390/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999, 2001, 2004 Free Software Foundation, Inc. +/* Copyright (C) 1999, 2001, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -27,21 +27,25 @@ `-1' means it is never supported. Undefined means it cannot be statically decided. - _POSIX_V6_ILP32_OFF32 32bit int, long, pointers, and off_t type - _POSIX_V6_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type + _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type + _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type - _POSIX_V6_LP64_OFF32 64bit long and pointers and 32bit off_t type - _POSIX_V6_LPBIG_OFFBIG 64bit long and pointers and large off_t type + _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type + _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type - The macros _XBS5_ILP32_OFF32, _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and - _XBS5_LPBIG_OFFBIG were used in previous versions of the Unix standard - and are available only for compatibility. + The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, + _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, + _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were + used in previous versions of the Unix standard and are available + only for compatibility. */ #if __WORDSIZE == 64 /* Environments with 32-bit wide pointers are optionally provided. Therefore following macros aren't defined: + # undef _POSIX_V7_ILP32_OFF32 + # undef _POSIX_V7_ILP32_OFFBIG # undef _POSIX_V6_ILP32_OFF32 # undef _POSIX_V6_ILP32_OFFBIG # undef _XBS5_ILP32_OFF32 @@ -50,10 +54,12 @@ /* We also have no use (for now) for an environment with bigger pointers and offsets. */ +# define _POSIX_V7_LPBIG_OFFBIG -1 # define _POSIX_V6_LPBIG_OFFBIG -1 # define _XBS5_LPBIG_OFFBIG -1 /* By default we have 64-bit wide `long int', pointers and `off_t'. */ +# define _POSIX_V7_LP64_OFF64 1 # define _POSIX_V6_LP64_OFF64 1 # define _XBS5_LP64_OFF64 1 @@ -61,16 +67,20 @@ /* By default we have 32-bit wide `int', `long int', pointers and `off_t' and all platforms support LFS. */ +# define _POSIX_V7_ILP32_OFF32 1 +# define _POSIX_V7_ILP32_OFFBIG 1 # define _POSIX_V6_ILP32_OFF32 1 # define _POSIX_V6_ILP32_OFFBIG 1 # define _XBS5_ILP32_OFF32 1 # define _XBS5_ILP32_OFFBIG 1 /* We optionally provide an environment with the above size but an 64-bit - side `off_t'. Therefore we don't define _XBS5_ILP32_OFFBIG. */ + side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ /* Environments with 64-bit wide pointers can be provided, so these macros aren't defined: + # undef _POSIX_V7_LP64_OFF64 + # undef _POSIX_V7_LPBIG_OFFBIG # undef _POSIX_V6_LP64_OFF64 # undef _POSIX_V6_LPBIG_OFFBIG # undef _XBS5_LP64_OFF64 diff --git a/sysdeps/unix/sysv/linux/sh/sh4/getcontext.S b/sysdeps/unix/sysv/linux/sh/sh4/getcontext.S index 68bc235bcf..3432dca5d1 100644 --- a/sysdeps/unix/sysv/linux/sh/sh4/getcontext.S +++ b/sysdeps/unix/sysv/linux/sh/sh4/getcontext.S @@ -1,5 +1,5 @@ /* Save current context. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -61,6 +61,7 @@ ENTRY(__getcontext) mov.l r9, @-r0 mov.l r8, @-r0 +#ifdef __SH_FPU_ANY__ mov r4, r0 /* We need 2 add instruction because oFPUL+4 > 127. */ add #124,r0 @@ -101,6 +102,7 @@ ENTRY(__getcontext) fmov.s fr2, @-r0 fmov.s fr1, @-r0 fmov.s fr0, @-r0 +#endif /* __SH_FPU_ANY__ */ /* sigprocmask (SIG_BLOCK, NULL, &uc->uc_sigmask). */ mov r4, r6 @@ -117,7 +119,7 @@ ENTRY(__getcontext) not r1, r1 // r1=0 means r0 = -1 to -4095 tst r1, r1 // i.e. error in linux bf .Lgetcontext_end -.Lsyscall_error: +.Lsyscall_error: SYSCALL_ERROR_HANDLER .Lgetcontext_end: /* All done, return 0 for success. */ diff --git a/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h b/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h index d09ad2a373..e3c9c0e639 100644 --- a/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h +++ b/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h @@ -1,5 +1,5 @@ /* Dump registers. - Copyright (C) 1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -31,15 +31,15 @@ MACL: XXXXXXXX MACH: XXXXXXXX PC: XXXXXXXX PR: XXXXXXXX GBR: XXXXXXXX SR: XXXXXXXX - FR0: XXXXXXXX FR1: XXXXXXXX FR2: XXXXXXXX FR3: XXXXXXXX - FR4: XXXXXXXX FR5: XXXXXXXX FR6: XXXXXXXX FR7: XXXXXXXX - FR8: XXXXXXXX FR9: XXXXXXXX FR10: XXXXXXXX FR11: XXXXXXXX -FR12: XXXXXXXX FR13: XXXXXXXX FR14: XXXXXXXX FR15: XXXXXXXX + FR0: XXXXXXXX FR1: XXXXXXXX FR2: XXXXXXXX FR3: XXXXXXXX + FR4: XXXXXXXX FR5: XXXXXXXX FR6: XXXXXXXX FR7: XXXXXXXX + FR8: XXXXXXXX FR9: XXXXXXXX FR10: XXXXXXXX FR11: XXXXXXXX +FR12: XXXXXXXX FR13: XXXXXXXX FR14: XXXXXXXX FR15: XXXXXXXX - XR0: XXXXXXXX XR1: XXXXXXXX XR2: XXXXXXXX XR3: XXXXXXXX - XR4: XXXXXXXX XR5: XXXXXXXX XR6: XXXXXXXX XR7: XXXXXXXX - XR8: XXXXXXXX XR9: XXXXXXXX XR10: XXXXXXXX XR11: XXXXXXXX -XR12: XXXXXXXX XR13: XXXXXXXX XR14: XXXXXXXX XR15: XXXXXXXX + XR0: XXXXXXXX XR1: XXXXXXXX XR2: XXXXXXXX XR3: XXXXXXXX + XR4: XXXXXXXX XR5: XXXXXXXX XR6: XXXXXXXX XR7: XXXXXXXX + XR8: XXXXXXXX XR9: XXXXXXXX XR10: XXXXXXXX XR11: XXXXXXXX +XR12: XXXXXXXX XR13: XXXXXXXX XR14: XXXXXXXX XR15: XXXXXXXX FPSCR: XXXXXXXX FPUL: XXXXXXXX @@ -144,6 +144,7 @@ register_dump (int fd, struct sigcontext *ctx) ADD_STRING ("\n"); +#ifdef __SH_FPU_ANY__ if (ctx->sc_ownedfp != NULL) { hexvalue (ctx->sc_fpregs[0], fpregs[0], 8); @@ -253,6 +254,7 @@ register_dump (int fd, struct sigcontext *ctx) ADD_STRING ("\n"); } +#endif /* __SH_FPU_ANY__ */ /* Write the stuff out. */ writev (fd, iov, nr); diff --git a/sysdeps/unix/sysv/linux/sh/sh4/setcontext.S b/sysdeps/unix/sysv/linux/sh/sh4/setcontext.S index 2bc546d1a1..48f6d4c721 100644 --- a/sysdeps/unix/sysv/linux/sh/sh4/setcontext.S +++ b/sysdeps/unix/sysv/linux/sh/sh4/setcontext.S @@ -1,5 +1,5 @@ /* Install given context. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -43,13 +43,14 @@ ENTRY(__setcontext) not r1, r1 // r1=0 means r0 = -1 to -4095 tst r1, r1 // i.e. error in linux bf .Lsetcontext_restore -.Lsyscall_error: +.Lsyscall_error: SYSCALL_ERROR_HANDLER .Lpseudo_end: rts nop .Lsetcontext_restore: +#ifdef __SH_FPU_ANY__ mov r8, r0 add #(oFR0),r0 fmov.s @r0+, fr0 @@ -88,6 +89,7 @@ ENTRY(__setcontext) frchg lds.l @r0+, fpscr lds.l @r0+, fpul +#endif /* __SH_FPU_ANY__ */ mov r8, r0 add #(oPC), r0 diff --git a/sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S b/sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S index 1aeca1b1a7..1f1b69baee 100644 --- a/sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S +++ b/sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S @@ -1,5 +1,5 @@ /* Save current context and install the given one. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -61,6 +61,7 @@ ENTRY(__swapcontext) mov.l r9, @-r0 mov.l r8, @-r0 +#ifdef __SH_FPU_ANY__ mov r4, r0 /* We need 2 add instruction because oFPUL+4 >= 127. */ add #124,r0 @@ -101,6 +102,7 @@ ENTRY(__swapcontext) fmov.s fr2, @-r0 fmov.s fr1, @-r0 fmov.s fr0, @-r0 +#endif /* __SH_FPU_ANY__ */ mov r5, r8 @@ -119,12 +121,13 @@ ENTRY(__swapcontext) not r1, r1 // r1=0 means r0 = -1 to -4095 tst r1, r1 // i.e. error in linux bf .Lswapcontext_restore -.Lsyscall_error: +.Lsyscall_error: SYSCALL_ERROR_HANDLER .Lpseudo_end: rts nop -.Lswapcontext_restore: +.Lswapcontext_restore: +#ifdef __SH_FPU_ANY__ mov r8, r0 add #(oFR0),r0 fmov.s @r0+, fr0 @@ -163,6 +166,7 @@ ENTRY(__swapcontext) frchg lds.l @r0+, fpscr lds.l @r0+, fpul +#endif /* __SH_FPU_ANY__ */ mov r8, r0 add #(oPC), r0 @@ -208,7 +212,7 @@ ENTRY(__swapcontext) mov.l @r15+, r0 jmp @r0 mov.l @r15+, r0 - + PSEUDO_END(__swapcontext) weak_alias (__swapcontext, swapcontext) diff --git a/sysdeps/unix/sysv/linux/sparc/bits/environments.h b/sysdeps/unix/sysv/linux/sparc/bits/environments.h index a51a564cbb..c675ecc627 100644 --- a/sysdeps/unix/sysv/linux/sparc/bits/environments.h +++ b/sysdeps/unix/sysv/linux/sparc/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999, 2001, 2004 Free Software Foundation, Inc. +/* Copyright (C) 1999, 2001, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -27,21 +27,25 @@ `-1' means it is never supported. Undefined means it cannot be statically decided. - _POSIX_V6_ILP32_OFF32 32bit int, long, pointers, and off_t type - _POSIX_V6_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type + _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type + _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type - _POSIX_V6_LP64_OFF32 64bit long and pointers and 32bit off_t type - _POSIX_V6_LPBIG_OFFBIG 64bit long and pointers and large off_t type + _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type + _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type - The macros _XBS5_ILP32_OFF32, _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and - _XBS5_LPBIG_OFFBIG were used in previous versions of the Unix standard - and are available only for compatibility. + The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, + _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, + _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were + used in previous versions of the Unix standard and are available + only for compatibility. */ #if __WORDSIZE == 64 /* Environments with 32-bit wide pointers are optionally provided. Therefore following macros aren't defined: + # undef _POSIX_V7_ILP32_OFF32 + # undef _POSIX_V7_ILP32_OFFBIG # undef _POSIX_V6_ILP32_OFF32 # undef _POSIX_V6_ILP32_OFFBIG # undef _XBS5_ILP32_OFF32 @@ -50,10 +54,12 @@ /* We also have no use (for now) for an environment with bigger pointers and offsets. */ +# define _POSIX_V7_LPBIG_OFFBIG -1 # define _POSIX_V6_LPBIG_OFFBIG -1 # define _XBS5_LPBIG_OFFBIG -1 /* By default we have 64-bit wide `long int', pointers and `off_t'. */ +# define _POSIX_V7_LP64_OFF64 1 # define _POSIX_V6_LP64_OFF64 1 # define _XBS5_LP64_OFF64 1 @@ -61,16 +67,20 @@ /* By default we have 32-bit wide `int', `long int', pointers and `off_t' and all platforms support LFS. */ +# define _POSIX_V7_ILP32_OFF32 1 +# define _POSIX_V7_ILP32_OFFBIG 1 # define _POSIX_V6_ILP32_OFF32 1 # define _POSIX_V6_ILP32_OFFBIG 1 # define _XBS5_ILP32_OFF32 1 # define _XBS5_ILP32_OFFBIG 1 /* We optionally provide an environment with the above size but an 64-bit - side `off_t'. Therefore we don't define _XBS5_ILP32_OFFBIG. */ + side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ /* Environments with 64-bit wide pointers can be provided, so these macros aren't defined: + # undef _POSIX_V7_LP64_OFF64 + # undef _POSIX_V7_LPBIG_OFFBIG # undef _POSIX_V6_LP64_OFF64 # undef _POSIX_V6_LPBIG_OFFBIG # undef _XBS5_LP64_OFF64 diff --git a/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h b/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h index 7ff1971c2a..c0f98f6072 100644 --- a/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h +++ b/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h @@ -289,6 +289,10 @@ typedef struct sigevent { int _pad[__SIGEV_PAD_SIZE]; + /* When SIGEV_SIGNAL and SIGEV_THREAD_ID set, LWP ID of the + thread to receive the signal. */ + __pid_t _tid; + struct { void (*_function) (sigval_t); /* Function to start. */ diff --git a/sysdeps/unix/sysv/linux/sparc/getsysstats.c b/sysdeps/unix/sysv/linux/sparc/getsysstats.c index f064b372ff..e96a8e5605 100644 --- a/sysdeps/unix/sysv/linux/sparc/getsysstats.c +++ b/sysdeps/unix/sysv/linux/sparc/getsysstats.c @@ -1,5 +1,5 @@ /* Determine various system internal values, Linux/Sparc version. - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Andreas Schwab <schwab@suse.de> and Jakub Jelinek <jj@ultra.linux.cz> @@ -21,7 +21,7 @@ /* We need to define a special parser for /proc/cpuinfo. */ -#define GET_NPROCS_PARSER(FP, BUFFER, RESULT) \ +#define GET_NPROCS_PARSER(FD, BUFFER, CP, RE, BUFFER_END, RESULT) \ do \ { \ (RESULT) = 0; \ @@ -29,8 +29,9 @@ active cpus. We don't have to fear extremely long lines since \ the kernel will not generate them. 8192 bytes are really \ enough. */ \ - while (fgets_unlocked (BUFFER, sizeof (BUFFER), FP) != NULL) \ - if (sscanf (BUFFER, "ncpus active : %d", &(RESULT)) == 1) \ + char *l; \ + while ((l = next_line (FD, BUFFER, &CP, &RE, BUFFER_END)) != NULL) \ + if (sscanf (l, "ncpus active : %d", &(RESULT)) == 1) \ break; \ } \ while (0) diff --git a/sysdeps/unix/sysv/linux/sparc/sys/eventfd.h b/sysdeps/unix/sysv/linux/sparc/sys/eventfd.h index aff4f3592e..c42f2ce59b 100644 --- a/sysdeps/unix/sysv/linux/sparc/sys/eventfd.h +++ b/sysdeps/unix/sysv/linux/sparc/sys/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007, 2008 Free Software Foundation, Inc. +/* Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -45,7 +45,7 @@ extern int eventfd (int __count, int __flags) __THROW; extern int eventfd_read (int __fd, eventfd_t *__value); /* Increment event counter. */ -extern int eventfd_write (int __fd, eventfd_t value); +extern int eventfd_write (int __fd, eventfd_t __value); __END_DECLS diff --git a/sysdeps/unix/sysv/linux/sys/eventfd.h b/sysdeps/unix/sysv/linux/sys/eventfd.h index 205824b669..7c6cf7196d 100644 --- a/sysdeps/unix/sysv/linux/sys/eventfd.h +++ b/sysdeps/unix/sysv/linux/sys/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007, 2008 Free Software Foundation, Inc. +/* Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -45,7 +45,7 @@ extern int eventfd (int __count, int __flags) __THROW; extern int eventfd_read (int __fd, eventfd_t *__value); /* Increment event counter. */ -extern int eventfd_write (int __fd, eventfd_t value); +extern int eventfd_write (int __fd, eventfd_t __value); __END_DECLS diff --git a/sysdeps/unix/sysv/linux/x86_64/bits/environments.h b/sysdeps/unix/sysv/linux/x86_64/bits/environments.h index a51a564cbb..c675ecc627 100644 --- a/sysdeps/unix/sysv/linux/x86_64/bits/environments.h +++ b/sysdeps/unix/sysv/linux/x86_64/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999, 2001, 2004 Free Software Foundation, Inc. +/* Copyright (C) 1999, 2001, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -27,21 +27,25 @@ `-1' means it is never supported. Undefined means it cannot be statically decided. - _POSIX_V6_ILP32_OFF32 32bit int, long, pointers, and off_t type - _POSIX_V6_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type + _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type + _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type - _POSIX_V6_LP64_OFF32 64bit long and pointers and 32bit off_t type - _POSIX_V6_LPBIG_OFFBIG 64bit long and pointers and large off_t type + _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type + _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type - The macros _XBS5_ILP32_OFF32, _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and - _XBS5_LPBIG_OFFBIG were used in previous versions of the Unix standard - and are available only for compatibility. + The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, + _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, + _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were + used in previous versions of the Unix standard and are available + only for compatibility. */ #if __WORDSIZE == 64 /* Environments with 32-bit wide pointers are optionally provided. Therefore following macros aren't defined: + # undef _POSIX_V7_ILP32_OFF32 + # undef _POSIX_V7_ILP32_OFFBIG # undef _POSIX_V6_ILP32_OFF32 # undef _POSIX_V6_ILP32_OFFBIG # undef _XBS5_ILP32_OFF32 @@ -50,10 +54,12 @@ /* We also have no use (for now) for an environment with bigger pointers and offsets. */ +# define _POSIX_V7_LPBIG_OFFBIG -1 # define _POSIX_V6_LPBIG_OFFBIG -1 # define _XBS5_LPBIG_OFFBIG -1 /* By default we have 64-bit wide `long int', pointers and `off_t'. */ +# define _POSIX_V7_LP64_OFF64 1 # define _POSIX_V6_LP64_OFF64 1 # define _XBS5_LP64_OFF64 1 @@ -61,16 +67,20 @@ /* By default we have 32-bit wide `int', `long int', pointers and `off_t' and all platforms support LFS. */ +# define _POSIX_V7_ILP32_OFF32 1 +# define _POSIX_V7_ILP32_OFFBIG 1 # define _POSIX_V6_ILP32_OFF32 1 # define _POSIX_V6_ILP32_OFFBIG 1 # define _XBS5_ILP32_OFF32 1 # define _XBS5_ILP32_OFFBIG 1 /* We optionally provide an environment with the above size but an 64-bit - side `off_t'. Therefore we don't define _XBS5_ILP32_OFFBIG. */ + side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ /* Environments with 64-bit wide pointers can be provided, so these macros aren't defined: + # undef _POSIX_V7_LP64_OFF64 + # undef _POSIX_V7_LPBIG_OFFBIG # undef _POSIX_V6_LP64_OFF64 # undef _POSIX_V6_LPBIG_OFFBIG # undef _XBS5_LP64_OFF64 diff --git a/sysdeps/unix/sysv/linux/x86_64/sys/io.h b/sysdeps/unix/sysv/linux/x86_64/sys/io.h index 802a0dfb42..4f8537f428 100644 --- a/sysdeps/unix/sysv/linux/x86_64/sys/io.h +++ b/sysdeps/unix/sysv/linux/x86_64/sys/io.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996, 2000, 2002 Free Software Foundation, Inc. +/* Copyright (C) 1996, 2000, 2002, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -41,138 +41,138 @@ extern int iopl (int __level) __THROW; #if defined __GNUC__ && __GNUC__ >= 2 static __inline unsigned char -inb (unsigned short int port) +inb (unsigned short int __port) { unsigned char _v; - __asm__ __volatile__ ("inb %w1,%0":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inb %w1,%0":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned char -inb_p (unsigned short int port) +inb_p (unsigned short int __port) { unsigned char _v; - __asm__ __volatile__ ("inb %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inb %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned short int -inw (unsigned short int port) +inw (unsigned short int __port) { unsigned short _v; - __asm__ __volatile__ ("inw %w1,%0":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inw %w1,%0":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned short int -inw_p (unsigned short int port) +inw_p (unsigned short int __port) { unsigned short int _v; - __asm__ __volatile__ ("inw %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inw %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned int -inl (unsigned short int port) +inl (unsigned short int __port) { unsigned int _v; - __asm__ __volatile__ ("inl %w1,%0":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inl %w1,%0":"=a" (_v):"Nd" (__port)); return _v; } static __inline unsigned int -inl_p (unsigned short int port) +inl_p (unsigned short int __port) { unsigned int _v; - __asm__ __volatile__ ("inl %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port)); + __asm__ __volatile__ ("inl %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (__port)); return _v; } static __inline void -outb (unsigned char value, unsigned short int port) +outb (unsigned char __value, unsigned short int __port) { - __asm__ __volatile__ ("outb %b0,%w1": :"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outb %b0,%w1": :"a" (__value), "Nd" (__port)); } static __inline void -outb_p (unsigned char value, unsigned short int port) +outb_p (unsigned char __value, unsigned short int __port) { - __asm__ __volatile__ ("outb %b0,%w1\noutb %%al,$0x80": :"a" (value), - "Nd" (port)); + __asm__ __volatile__ ("outb %b0,%w1\noutb %%al,$0x80": :"a" (__value), + "Nd" (__port)); } static __inline void -outw (unsigned short int value, unsigned short int port) +outw (unsigned short int __value, unsigned short int __port) { - __asm__ __volatile__ ("outw %w0,%w1": :"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outw %w0,%w1": :"a" (__value), "Nd" (__port)); } static __inline void -outw_p (unsigned short int value, unsigned short int port) +outw_p (unsigned short int __value, unsigned short int __port) { - __asm__ __volatile__ ("outw %w0,%w1\noutb %%al,$0x80": :"a" (value), - "Nd" (port)); + __asm__ __volatile__ ("outw %w0,%w1\noutb %%al,$0x80": :"a" (__value), + "Nd" (__port)); } static __inline void -outl (unsigned int value, unsigned short int port) +outl (unsigned int __value, unsigned short int __port) { - __asm__ __volatile__ ("outl %0,%w1": :"a" (value), "Nd" (port)); + __asm__ __volatile__ ("outl %0,%w1": :"a" (__value), "Nd" (__port)); } static __inline void -outl_p (unsigned int value, unsigned short int port) +outl_p (unsigned int __value, unsigned short int __port) { - __asm__ __volatile__ ("outl %0,%w1\noutb %%al,$0x80": :"a" (value), - "Nd" (port)); + __asm__ __volatile__ ("outl %0,%w1\noutb %%al,$0x80": :"a" (__value), + "Nd" (__port)); } static __inline void -insb (unsigned short int port, void *addr, unsigned long int count) +insb (unsigned short int __port, void *addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; insb":"=D" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; insb":"=D" (addr), "=c" (__count) + :"d" (__port), "0" (addr), "1" (__count)); } static __inline void -insw (unsigned short int port, void *addr, unsigned long int count) +insw (unsigned short int __port, void *addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; insw":"=D" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; insw":"=D" (addr), "=c" (__count) + :"d" (__port), "0" (addr), "1" (__count)); } static __inline void -insl (unsigned short int port, void *addr, unsigned long int count) +insl (unsigned short int __port, void *addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; insl":"=D" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; insl":"=D" (addr), "=c" (__count) + :"d" (__port), "0" (addr), "1" (__count)); } static __inline void -outsb (unsigned short int port, const void *addr, unsigned long int count) +outsb (unsigned short int __port, const void *addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; outsb":"=S" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; outsb":"=S" (addr), "=c" (__count) + :"d" (__port), "0" (addr), "1" (__count)); } static __inline void -outsw (unsigned short int port, const void *addr, unsigned long int count) +outsw (unsigned short int __port, const void *addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; outsw":"=S" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; outsw":"=S" (addr), "=c" (__count) + :"d" (__port), "0" (addr), "1" (__count)); } static __inline void -outsl (unsigned short int port, const void *addr, unsigned long int count) +outsl (unsigned short int __port, const void *addr, unsigned long int __count) { - __asm__ __volatile__ ("cld ; rep ; outsl":"=S" (addr), - "=c" (count):"d" (port), "0" (addr), "1" (count)); + __asm__ __volatile__ ("cld ; rep ; outsl":"=S" (addr), "=c" (__count) + :"d" (__port), "0" (addr), "1" (__count)); } #endif /* GNU C */ diff --git a/sysdeps/x86_64/bits/atomic.h b/sysdeps/x86_64/bits/atomic.h index 39c6ecba83..7c138eb2f3 100644 --- a/sysdeps/x86_64/bits/atomic.h +++ b/sysdeps/x86_64/bits/atomic.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002, 2003, 2004, 2006, 2007 Free Software Foundation, Inc. +/* Copyright (C) 2002-2004, 2006, 2007, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. @@ -437,26 +437,37 @@ typedef uintmax_t uatomic_max_t; #define atomic_delay() asm ("rep; nop") -#define atomic_and(mem, mask) \ +#define __arch_and_body(lock, mem, mask) \ do { \ if (sizeof (*mem) == 1) \ - __asm __volatile (LOCK_PREFIX "andb %b1, %0" \ + __asm __volatile (lock "andb %b1, %0" \ : "=m" (*mem) \ - : "iq" (mask), "m" (*mem)); \ + : "iq" (mask), "m" (*mem), \ + "i" (offsetof (tcbhead_t, multiple_threads))); \ else if (sizeof (*mem) == 2) \ - __asm __volatile (LOCK_PREFIX "andw %w1, %0" \ + __asm __volatile (lock "andw %w1, %0" \ : "=m" (*mem) \ - : "ir" (mask), "m" (*mem)); \ + : "ir" (mask), "m" (*mem), \ + "i" (offsetof (tcbhead_t, multiple_threads))); \ else if (sizeof (*mem) == 4) \ - __asm __volatile (LOCK_PREFIX "andl %1, %0" \ + __asm __volatile (lock "andl %1, %0" \ : "=m" (*mem) \ - : "ir" (mask), "m" (*mem)); \ + : "ir" (mask), "m" (*mem), \ + "i" (offsetof (tcbhead_t, multiple_threads))); \ else \ - __asm __volatile (LOCK_PREFIX "andq %q1, %0" \ + __asm __volatile (lock "andq %q1, %0" \ : "=m" (*mem) \ - : "ir" (mask), "m" (*mem)); \ + : "ir" (mask), "m" (*mem), \ + "i" (offsetof (tcbhead_t, multiple_threads))); \ } while (0) +#define __arch_cprefix \ + "cmpl $0, %%fs:%P3\n\tje 0f\n\tlock\n0:\t" + +#define atomic_and(mem, mask) __arch_and_body (LOCK_PREFIX, mem, mask) + +#define catomic_and(mem, mask) __arch_and_body (__arch_cprefix, mem, mask) + #define __arch_or_body(lock, mem, mask) \ do { \ @@ -484,7 +495,4 @@ typedef uintmax_t uatomic_max_t; #define atomic_or(mem, mask) __arch_or_body (LOCK_PREFIX, mem, mask) -#define __arch_or_cprefix \ - "cmpl $0, %%fs:%P3\n\tje 0f\n\tlock\n0:\t" - -#define catomic_or(mem, mask) __arch_or_body (__arch_or_cprefix, mem, mask) +#define catomic_or(mem, mask) __arch_or_body (__arch_cprefix, mem, mask) diff --git a/sysdeps/x86_64/bits/link.h b/sysdeps/x86_64/bits/link.h index 2890c2d88d..5676b78753 100644 --- a/sysdeps/x86_64/bits/link.h +++ b/sysdeps/x86_64/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004, 2005 Free Software Foundation, Inc. +/* Copyright (C) 2004, 2005, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -110,7 +110,7 @@ extern unsigned int la_x86_64_gnu_pltexit (Elf64_Sym *__sym, uintptr_t *__defcook, const La_x86_64_regs *__inregs, La_x86_64_retval *__outregs, - const char *symname); + const char *__symname); __END_DECLS diff --git a/time/tzset.c b/time/tzset.c index a6fed4abc1..45d70518a8 100644 --- a/time/tzset.c +++ b/time/tzset.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2002,2003,2004,2007 Free Software Foundation, Inc. +/* Copyright (C) 1991-2002,2003,2004,2007,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -244,7 +244,7 @@ __tzset_parse_tz (tz) ss = 0; case 3: tz_rules[1].offset *= (min (ss, 59) + (min (mm, 59) * 60) + - (min (hh, 23) * (60 * 60))); + (min (hh, 24) * (60 * 60))); break; } for (l = 0; l < 3; ++l) |