diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-11-04 23:05:18 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-11-04 23:05:18 +0000 |
commit | 62dd519fd322c4c5043e57df03255f77288539d5 (patch) | |
tree | df86c624a9555b62913cb753e7825b01abee790a | |
parent | be1288d30f9ed61f81be05146a8282461a7e61ac (diff) | |
parent | acb4da970179799fd9bd099485c78573322f3210 (diff) | |
download | elfutils-62dd519fd322c4c5043e57df03255f77288539d5.tar.gz |
Snap for 11052692 from acb4da970179799fd9bd099485c78573322f3210 to 24Q1-release
Change-Id: Ie23091bc744a9b4585bffcbf6234142d3c0634fa
153 files changed, 6824 insertions, 4432 deletions
@@ -1,3 +1,24 @@ +2023-03-03 Mark Wielaard <mark@klomp.org> + + * NEWS: Add ELFCOMPRESS_ZSTD support for libelf and elfcompress. + +2023-02-23 Mark Wielaard <mark@klomp.org> + + * NEWS: Add old version code names. + +2023-02-21 Mark Wielaard <mark@klomp.org> + + * configure.ac: Check for -Wuse-after-free=3 + +2023-02-15 Mark Wielaard <mark@klomp.org> + + * configure.ac: Error out when demangler is enabled, but + __cxa_demangle cannot be found. + +2023-01-11 Frank Ch. Eigler <fche@redhat.com> + + * configure.ac: Add some rlimit/affinity checks. + 2022-11-02 Mark Wielaard <mark@klomp.org> * configure.ac (AC_INIT): Set version to 0.188. @@ -12,12 +12,12 @@ third_party { type: GIT value: "git://sourceware.org/git/elfutils.git" } - version: "elfutils-0.188" + version: "elfutils-0.189" license_type: BY_EXCEPTION_ONLY license_note: "Would be RESTRICTED save for doc/COPYING-GFDL" last_upgrade_date { - year: 2022 - month: 6 - day: 17 + year: 2023 + month: 11 + day: 2 } } @@ -1,4 +1,23 @@ -Version 0.188 +Version 0.189 "Don't deflate!" + +configure: eu-nm, eu-addr2line and eu-stack can provide demangled symbols + when linked with libstdc++. Use --disable-demangler to disable. + + A new option --enable-sanitize-memory has been added for msan + sanitizer support. + +libelf: elf_compress now supports ELFCOMPRESS_ZSTD when build against + libzstd + +libdwfl: dwfl_module_return_value_location now returns 0 (no return type) + for DIEs that point to a DW_TAG_unspecified_type. + +elfcompress: -t, --type= now support zstd if libelf has been build with + ELFCOMPRESS_ZSTD support. + +backends: Add support for LoongArch and Synopsys ARCv2 processors. + +Version 0.188 "no section left behind" readelf: Add -D, --use-dynamic option. @@ -11,7 +30,7 @@ libdwfl: Add new function dwfl_get_debuginfod_client. Add new function dwfl_frame_reg. Add new function dwfl_report_offline_memory. -Version 0.187 +Version 0.187 "no zero negatives" debuginfod: Support -C option for connection thread pooling. @@ -30,7 +49,7 @@ libdw, debuginfo-client: Load libcurl lazily only when files need to DEBUGINFOD_URLS is set, libcurl is only loaded when the debuginfod_begin function is called. -Version 0.186 +Version 0.186 "Just In Time" debuginfod-client: Default $DEBUGINFOD_URLS is computed from drop-in files /etc/debuginfod/*.urls rather than hardcoded into the @@ -56,7 +75,7 @@ libdw: Support for the NVIDIA Cuda line map extensions. translations: Update Japanese translation. -Version 0.185 +Version 0.185 "oops, I did it again" debuginfod-client: Simplify curl handle reuse so downloads which return an error are retried. @@ -64,7 +83,7 @@ debuginfod-client: Simplify curl handle reuse so downloads which elfcompress: Always exit with code 0 when the operation succeeds (even when nothing was done). On error the exit code is now always 1. -Version 0.184 +Version 0.184 "negative results" debuginfod: Use libarchive's bsdtar as the .deb-family file unpacker. @@ -83,7 +102,7 @@ libdw: handle DW_FORM_indirect when reading attributes translations: Update Polish translation. -Version 0.183 +Version 0.183 "100+ commits" debuginfod: New thread-busy metric and more detailed error metrics. New --fdcache-mintmp and tracking of filesystem freespace. @@ -100,7 +119,7 @@ config: profile.sh and profile.csh won't export DEBUGINFOD_URLS unless elflint, readelf: Recognize SHF_GNU_RETAIN. Handle SHT_X86_64_UNWIND as valid relocation target. -Version 0.182 +Version 0.182 "October Surprise!" backends: Support for tilegx has been removed. @@ -114,7 +133,7 @@ debuginfod-client: Now supports compressed (kernel) ELF images. libdwfl: Add ZSTD compression support. -Version 0.181 +Version 0.181 "Show me your ARMs" libelf: elf_update now compensates (fixes up) a bad sh_addralign for SHF_COMPRESSED sections. @@ -131,7 +150,7 @@ libdw, readelf: Recognize DW_CFA_AARCH64_negate_ra_state. Allows unwinding on arm64 for code that is compiled for PAC (Pointer Authentication Code) as long as it isn't enabled. -Version 0.180 +Version 0.180 "We got an L, we got an T, can we have a O?" elflint: Allow SHF_EXCLUDE as generic section flag when --gnu is given. @@ -145,7 +164,7 @@ size: Also obey radix printing for bsd format. nm: Explicitly print weak 'V' or 'T' and common 'C' symbols. -Version 0.179 +Version 0.179 "All your packages are belong to us!" debuginfod-client: When DEBUGINFOD_PROGRESS is set and the program doesn't install its own debuginfod_progressfn_t show download @@ -180,7 +199,7 @@ readelf, elflint: Handle PT_GNU_PROPERTY. translations: Updated Ukrainian translation. -Version 0.178 +Version 0.178 "All the build-id you can count!" debuginfod: New server, client tool and library to index and fetch ELF/DWARF files addressed by build-id through HTTP. @@ -202,7 +221,7 @@ libdw: Abbrevs and DIEs can now be read concurrently by multiple libdwfl: Will try to use debuginfod when installed as fallback to retrieve ELF and DWARF debug data files by build-id. -Version 0.177 +Version 0.177 "What is your category, class and taxonomy?" elfclassify: New tool to analyze ELF objects. @@ -218,7 +237,7 @@ libdwelf: Add dwelf_elf_e_machine_string. backends: Add support for C-SKY. -Version 0.176 +Version 0.176 "At your own RISC-V" build: Add new --enable-install-elfh option. Do NOT use this for system installs (it overrides glibc elf.h). @@ -246,7 +265,7 @@ backends: RISCV handles ADD/SUB relocations. Handle SHT_X86_64_UNWIND. Fixes CVE-2018-18310, CVE-2018-18520 and CVE-2018-18521. -Version 0.174 +Version 0.174 "extended shnum" libelf, libdw and all tools now handle extended shnum and shstrndx correctly. @@ -262,7 +281,7 @@ backends: RISCV and M68K now have backend implementations to generate CFI based Fixes CVE-2018-16062, CVE-2018-16402 and CVE-2018-16403. -Version 0.173 +Version 0.173 "crash free" More fixes for crashes and hangs found by afl-fuzz. In particular various functions now detect and break infinite loops caused by bad DIE tree cycles. @@ -280,16 +299,16 @@ backends: Handle BPF simple relocations. The RISCV backends now handles ABI specific CFI and knows about RISCV register types and names. -Version 0.172 +Version 0.172 "DWARF5 bugs split!" -No functional changes compared to 0.171. +No functional changes compared to 0.171 "DWARF5 split!". Various bug fixes in libdw and eu-readelf dealing with bad DWARF5 data. Thanks to running the afl fuzzer on eu-readelf and various testcases. eu-readelf -N is ~15% faster. -Version 0.171 +Version 0.171 "DWARF5 split!" DWARF5 and split dwarf, including GNU DebugFission, are supported now. Data can be read from the new DWARF sections .debug_addr, .debug_line_str, @@ -327,7 +346,7 @@ backends: Add a RISC-V backend. There were various improvements to build on Windows. The sha1 and md5 implementations have been removed, they weren't used. -Version 0.170 +Version 0.170 "DWARF4 1/2" libdw: Added new DWARF5 attribute, tag, character encoding, language code, calling convention, defaulted member function and macro constants @@ -347,7 +366,7 @@ backends: Add support for EM_PPC64 GNU_ATTRIBUTES. translations: Update Polish translation. -Version 0.168 +Version 0.168 "kthxbye" http://elfutils.org/ is now hosted at http://sourceware.org/elfutils/ @@ -357,7 +376,7 @@ libdw: dwarf.h corrected the DW_LANG_PLI constant name (was DW_LANG_PL1). readelf: Add optional --symbols[=SECTION] argument to select section name. -Version 0.167 +Version 0.167 "disassemble this!" libasm: Add eBPF disassembler for EM_BPF files. @@ -369,12 +388,12 @@ dwelf: Add ELF/DWARF string table creation functions. dwelf_strtab_init, dwelf_strtab_add, dwelf_strtab_add_len, dwelf_strtab_finalize, dwelf_strent_off, dwelf_strent_str and dwelf_strtab_free. -Version 0.166 +Version 0.166 "bugs be gone!" config: The default program prefix for the installed tools is now eu-. Use configure --program-prefix="" to not use a program prefix. -Version 0.165 +Version 0.165 "big DWARF & tiny ELF" elfcompress: New utility to compress or decompress ELF sections. @@ -391,7 +410,7 @@ backends: sparc support for core and live backtraces. translations: Updated Polish translation. -Version 0.164 +Version 0.164 "strip, no unstrip!" strip, unstrip: Handle ELF files with merged strtab/shstrtab tables. Handle missing SHF_INFO_LINK section flags. @@ -412,11 +431,11 @@ translations: Updated Ukrainian translation. Provide default-yama-scope subpackage. -Version 0.163 +Version 0.163 "size matters" Bug fixes only, no new features. -Version 0.162 +Version 0.162 "hard hat" libdw: Install new header elfutils/known-dwarf.h. dwarf.h Add preliminary DWARF5 constants DW_TAG_atomic_type, diff --git a/backends/ChangeLog b/backends/ChangeLog index 5b0daffe..81f08314 100644 --- a/backends/ChangeLog +++ b/backends/ChangeLog @@ -1,3 +1,28 @@ +2023-02-07 Mark Wielaard <mark@klomp.org> + + * libebl_CPU.h (dwarf_peeled_die_type): Explicitly handle + DW_TAG_unspecified_type as if there was no DW_AT_type. + +2023-01-19 Mark Wielaard <mark@klomp.org> + + * sparc_reloc.def (NONE): Add EXEC and DYN. + +2022-12-21 Shahab Vahedi <shahab@synopsys.email> + + * Makefile.am (modules): Add arc. + (arc_SRCS): Added. + (libebl_backends_a_SOURCES): Append arc_SRCS. + * arc_init.c: New file. + * arc_reloc.def: New file. + * arc_symbol.c: New file. + +2022-12-02 Hengqi Chen <hengqi.chen@gmail.com> + + * Makefile.am (modules): Add loongarch. + * loongarch_init.c: New file. + * loongarch_reloc.def: New file. + * loongarch_symbol.c: New file. + 2022-08-09 Andreas Schwab <schwab@suse.de> * riscv_init.c (riscv_init): HOOK segment_type_name, diff --git a/backends/Makefile.am b/backends/Makefile.am index 9566377f..f373e5fb 100644 --- a/backends/Makefile.am +++ b/backends/Makefile.am @@ -37,7 +37,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \ noinst_LIBRARIES = libebl_backends.a libebl_backends_pic.a modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \ - m68k bpf riscv csky + m68k bpf riscv csky loongarch arc i386_SRCS = i386_init.c i386_symbol.c i386_corenote.c i386_cfi.c \ i386_retval.c i386_regs.c i386_auxv.c \ @@ -96,11 +96,16 @@ riscv_SRCS = riscv_init.c riscv_symbol.c riscv_cfi.c riscv_regs.c \ csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \ csky_regs.c csky_initreg.c csky_corenote.c +loongarch_SRCS = loongarch_init.c loongarch_symbol.c + +arc_SRCS = arc_init.c arc_symbol.c + libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \ $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \ $(aarch64_SRCS) $(sparc_SRCS) $(ppc_SRCS) \ $(ppc64_SRCS) $(s390_SRCS) \ - $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS) + $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS) \ + $(loongarch_SRCS) $(arc_SRCS) libebl_backends_pic_a_SOURCES = am_libebl_backends_pic_a_OBJECTS = $(libebl_backends_a_SOURCES:.c=.os) diff --git a/backends/aarch64_retval.c b/backends/aarch64_retval.c index 72d4e8a3..8eaebaf1 100644 --- a/backends/aarch64_retval.c +++ b/backends/aarch64_retval.c @@ -303,12 +303,11 @@ aarch64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) } } - if (tag == DW_TAG_base_type - || tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (tag == DW_TAG_base_type || dwarf_is_pointer (tag)) { if (dwarf_bytesize_aux (&typedie, &size) < 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 8; else return -1; diff --git a/backends/alpha_retval.c b/backends/alpha_retval.c index d9bae3bc..9d2dd045 100644 --- a/backends/alpha_retval.c +++ b/backends/alpha_retval.c @@ -89,15 +89,14 @@ alpha_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Attribute attr_mem; Dwarf_Word size; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 8; else return -1; diff --git a/backends/arc_init.c b/backends/arc_init.c new file mode 100644 index 00000000..a7cceceb --- /dev/null +++ b/backends/arc_init.c @@ -0,0 +1,59 @@ +/* Initialization of ARC specific backend library. + Copyright (C) 2022 Synopsys Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of either + + * the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at + your option) any later version + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at + your option) any later version + + or both in parallel, as here. + + elfutils is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received copies of the GNU General Public License and + the GNU Lesser General Public License along with this program. If + not, see <http://www.gnu.org/licenses/>. */ + +/* More details on an ARC elf can be found at: + https://github.com/foss-for-synopsys-dwc-arc-processors/ \ + arc-ABI-manual/blob/master/arcv3-elf.md */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#define BACKEND arc_ +#define RELOC_PREFIX R_ARC_ +#include "libebl_CPU.h" + +/* This defines the common reloc hooks based on arc_reloc.def. */ +#include "common-reloc.c" + +Ebl * +arc_init (Elf *elf __attribute__ ((unused)), + GElf_Half machine __attribute__ ((unused)), + Ebl *eh) +{ + arc_init_reloc (eh); + HOOK (eh, machine_flag_check); + HOOK (eh, reloc_simple_type); + HOOK (eh, section_type_name); + + /* /bld/gcc-stage2/arc-snps-linux-gnu/libgcc/libgcc.map.in + #define __LIBGCC_DWARF_FRAME_REGISTERS__. */ + eh->frame_nregs = 146; + + return eh; +} diff --git a/backends/arc_reloc.def b/backends/arc_reloc.def new file mode 100644 index 00000000..dfa30629 --- /dev/null +++ b/backends/arc_reloc.def @@ -0,0 +1,87 @@ +/* List the relocation types for ARC. -*- C -*- + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of either + + * the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at + your option) any later version + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at + your option) any later version + + or both in parallel, as here. + + elfutils is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received copies of the GNU General Public License and + the GNU Lesser General Public License along with this program. If + not, see <http://www.gnu.org/licenses/>. */ + +/* NAME, REL|EXEC|DYN */ + +RELOC_TYPE (NONE, EXEC|DYN) +RELOC_TYPE (8, REL|EXEC|DYN) +RELOC_TYPE (16, REL|EXEC|DYN) +RELOC_TYPE (24, REL|EXEC|DYN) +RELOC_TYPE (32, REL|EXEC|DYN) +RELOC_TYPE (N8, REL|EXEC|DYN) +RELOC_TYPE (N16, REL|EXEC|DYN) +RELOC_TYPE (N24, REL|EXEC|DYN) +RELOC_TYPE (N32, REL|EXEC|DYN) +RELOC_TYPE (SDA, REL) +RELOC_TYPE (SECTOFF, REL) +RELOC_TYPE (S21H_PCREL, REL) +RELOC_TYPE (S21W_PCREL, REL) +RELOC_TYPE (S25H_PCREL, REL) +RELOC_TYPE (S25W_PCREL, REL) +RELOC_TYPE (SDA32, REL) +RELOC_TYPE (SDA_LDST, REL) +RELOC_TYPE (SDA_LDST1, REL) +RELOC_TYPE (SDA_LDST2, REL) +RELOC_TYPE (SDA16_LD, REL) +RELOC_TYPE (SDA16_LD1, REL) +RELOC_TYPE (SDA16_LD2, REL) +RELOC_TYPE (S13_PCREL, REL) +RELOC_TYPE (W, REL) +RELOC_TYPE (32_ME, REL) +RELOC_TYPE (N32_ME, REL) +RELOC_TYPE (SECTOFF_ME, REL) +RELOC_TYPE (SDA32_ME, REL) +RELOC_TYPE (W_ME, REL) +RELOC_TYPE (SDA_12, REL) +RELOC_TYPE (SDA16_ST2, REL) +RELOC_TYPE (32_PCREL, REL) +RELOC_TYPE (PC32, REL) +RELOC_TYPE (GOTPC32, REL) +RELOC_TYPE (PLT32, REL) +RELOC_TYPE (COPY, EXEC|DYN) +RELOC_TYPE (GLOB_DAT, EXEC|DYN) +RELOC_TYPE (JMP_SLOT, EXEC|DYN) +RELOC_TYPE (RELATIVE, EXEC|DYN) +RELOC_TYPE (GOTOFF, REL) +RELOC_TYPE (GOTPC, REL) +RELOC_TYPE (GOT32, REL) +RELOC_TYPE (S21W_PCREL_PLT, REL) +RELOC_TYPE (S25H_PCREL_PLT, REL) +RELOC_TYPE (JLI_SECTOFF, REL) +RELOC_TYPE (TLS_DTPMOD, REL) +RELOC_TYPE (TLS_DTPOFF, REL) +RELOC_TYPE (TLS_TPOFF, REL) +RELOC_TYPE (TLS_GD_GOT, REL) +RELOC_TYPE (TLS_GD_LD, REL) +RELOC_TYPE (TLS_GD_CALL, REL) +RELOC_TYPE (TLS_IE_GOT, REL) +RELOC_TYPE (TLS_DTPOFF_S9, REL) +RELOC_TYPE (TLS_LE_S9, REL) +RELOC_TYPE (TLS_LE_32, REL) +RELOC_TYPE (S25W_PCREL_PLT, REL) +RELOC_TYPE (S21H_PCREL_PLT, REL) +RELOC_TYPE (NPS_CMEM16, REL) diff --git a/backends/arc_symbol.c b/backends/arc_symbol.c new file mode 100644 index 00000000..be69814e --- /dev/null +++ b/backends/arc_symbol.c @@ -0,0 +1,81 @@ +/* ARC specific symbolic name handling. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of either + + * the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at + your option) any later version + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at + your option) any later version + + or both in parallel, as here. + + elfutils is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received copies of the GNU General Public License and + the GNU Lesser General Public License along with this program. If + not, see <http://www.gnu.org/licenses/>. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include <assert.h> +#include <elf.h> +#include <stddef.h> +#include <string.h> + +#define BACKEND arc_ +#include "libebl_CPU.h" + + +/* Check whether machine flags are valid. */ +bool +arc_machine_flag_check (GElf_Word flags) +{ + return ((flags & ~EF_ARC_ALL_MSK) == 0); +} + +/* Check for the simple reloc types. */ +Elf_Type +arc_reloc_simple_type (Ebl *ebl __attribute__ ((unused)), int type, + int *addsub __attribute ((unused))) +{ + switch (type) + { + case R_ARC_32: + return ELF_T_WORD; + case R_ARC_16: + return ELF_T_HALF; + case R_ARC_8: + return ELF_T_BYTE; + default: + return ELF_T_NUM; + } +} + +/* Return symbolic representation of section type. */ +const char * +arc_section_type_name (int type, + char *buf __attribute__ ((unused)), + size_t len __attribute__ ((unused))) +{ + switch (type) + { + case SHT_ARC_ATTRIBUTES: + return "ARC_ATTRIBUTES"; + default: + break; + } + + return NULL; +} diff --git a/backends/arm_retval.c b/backends/arm_retval.c index 1c28f016..fa6d3914 100644 --- a/backends/arm_retval.c +++ b/backends/arm_retval.c @@ -86,14 +86,13 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 4; else return -1; diff --git a/backends/i386_retval.c b/backends/i386_retval.c index 32fec728..8a9c2a2b 100644 --- a/backends/i386_retval.c +++ b/backends/i386_retval.c @@ -89,15 +89,14 @@ i386_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Word size; Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 4; else return -1; diff --git a/backends/ia64_retval.c b/backends/ia64_retval.c index 03ea4d89..7e12236d 100644 --- a/backends/ia64_retval.c +++ b/backends/ia64_retval.c @@ -264,14 +264,13 @@ ia64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 8; else return -1; diff --git a/backends/libebl_CPU.h b/backends/libebl_CPU.h index 0e507bd3..3b2cc3e4 100644 --- a/backends/libebl_CPU.h +++ b/backends/libebl_CPU.h @@ -1,5 +1,6 @@ /* Common interface for libebl modules. Copyright (C) 2000, 2001, 2002, 2003, 2005, 2013, 2014 Red Hat, Inc. + Copyright (C) 2023 Mark J. Wielaard <mark@klomp.org> This file is part of elfutils. This file is free software; you can redistribute it and/or modify @@ -53,7 +54,9 @@ extern bool (*generic_debugscn_p) (const char *) attribute_hidden; dwarf_tag (_die); }) /* Get a type die corresponding to DIE. Peel CV qualifiers off - it. */ + it. Returns zero if the DIE doesn't have a type, or the type + is DW_TAG_unspecified_type. Returns -1 on error. Otherwise + returns the result tag DW_AT value. */ static inline int dwarf_peeled_die_type (Dwarf_Die *die, Dwarf_Die *result) { @@ -69,7 +72,29 @@ dwarf_peeled_die_type (Dwarf_Die *die, Dwarf_Die *result) if (dwarf_peel_type (result, result) != 0) return -1; - return DWARF_TAG_OR_RETURN (result); + if (result == NULL) + return -1; + + int tag = dwarf_tag (result); + if (tag == DW_TAG_unspecified_type) + return 0; /* Treat an unspecified type as if there was no type. */ + + return tag; } +static inline bool +dwarf_is_pointer (int tag) +{ + return tag == DW_TAG_pointer_type + || tag == DW_TAG_ptr_to_member_type + || tag == DW_TAG_reference_type + || tag == DW_TAG_rvalue_reference_type; +} + +#define CASE_POINTER \ + case DW_TAG_pointer_type: \ + case DW_TAG_ptr_to_member_type: \ + case DW_TAG_reference_type: \ + case DW_TAG_rvalue_reference_type + #endif /* libebl_CPU.h */ diff --git a/backends/linux-core-note.c b/backends/linux-core-note.c index 9faae4c3..238ec16d 100644 --- a/backends/linux-core-note.c +++ b/backends/linux-core-note.c @@ -239,6 +239,7 @@ EBLHOOK(core_note) (const GElf_Nhdr *nhdr, const char *name, return 0; *regs_offset = 0; *nregloc = 0; + *reglocs = NULL; *nitems = 1; *items = vmcoreinfo_items; return 1; diff --git a/backends/loongarch_init.c b/backends/loongarch_init.c new file mode 100644 index 00000000..a8ed9e81 --- /dev/null +++ b/backends/loongarch_init.c @@ -0,0 +1,50 @@ +/* Initialization of LoongArch specific backend library. + Copyright (C) 2022 Hengqi Chen + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of either + + * the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at + your option) any later version + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at + your option) any later version + + or both in parallel, as here. + + elfutils is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received copies of the GNU General Public License and + the GNU Lesser General Public License along with this program. If + not, see <http://www.gnu.org/licenses/>. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#define BACKEND loongarch_ +#define RELOC_PREFIX R_LARCH_ +#include "libebl_CPU.h" + +/* This defines the common reloc hooks based on loongarch_reloc.def. */ +#include "common-reloc.c" + + +Ebl * +loongarch_init (Elf *elf __attribute__ ((unused)), + GElf_Half machine __attribute__ ((unused)), + Ebl *eh) +{ + loongarch_init_reloc (eh); + HOOK (eh, reloc_simple_type); + + return eh; +} diff --git a/backends/loongarch_reloc.def b/backends/loongarch_reloc.def new file mode 100644 index 00000000..dd4a6b6d --- /dev/null +++ b/backends/loongarch_reloc.def @@ -0,0 +1,81 @@ +/* List the relocation types for LoongArch. -*- C -*- + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of either + + * the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at + your option) any later version + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at + your option) any later version + + or both in parallel, as here. + + elfutils is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received copies of the GNU General Public License and + the GNU Lesser General Public License along with this program. If + not, see <http://www.gnu.org/licenses/>. */ + +/* NAME, REL|EXEC|DYN */ + +RELOC_TYPE (NONE, EXEC|DYN) +RELOC_TYPE (32, REL|EXEC|DYN) +RELOC_TYPE (64, REL|EXEC|DYN) +RELOC_TYPE (RELATIVE, EXEC|DYN) +RELOC_TYPE (COPY, EXEC|DYN) +RELOC_TYPE (JUMP_SLOT, EXEC|DYN) +RELOC_TYPE (TLS_DTPMOD32, EXEC|DYN) +RELOC_TYPE (TLS_DTPMOD64, EXEC|DYN) +RELOC_TYPE (TLS_DTPREL32, EXEC|DYN) +RELOC_TYPE (TLS_DTPREL64, EXEC|DYN) +RELOC_TYPE (TLS_TPREL32, EXEC|DYN) +RELOC_TYPE (TLS_TPREL64, EXEC|DYN) +RELOC_TYPE (IRELATIVE, EXEC|DYN) +RELOC_TYPE (MARK_LA, REL) +RELOC_TYPE (MARK_PCREL, REL) +RELOC_TYPE (SOP_PUSH_PCREL, REL) +RELOC_TYPE (SOP_PUSH_ABSOLUTE, REL) +RELOC_TYPE (SOP_PUSH_DUP, REL) +RELOC_TYPE (SOP_PUSH_GPREL, REL) +RELOC_TYPE (SOP_PUSH_TLS_TPREL, REL) +RELOC_TYPE (SOP_PUSH_TLS_GOT, REL) +RELOC_TYPE (SOP_PUSH_TLS_GD, REL) +RELOC_TYPE (SOP_PUSH_PLT_PCREL, REL) +RELOC_TYPE (SOP_ASSERT, REL) +RELOC_TYPE (SOP_NOT, REL) +RELOC_TYPE (SOP_SUB, REL) +RELOC_TYPE (SOP_SL, REL) +RELOC_TYPE (SOP_SR, REL) +RELOC_TYPE (SOP_ADD, REL) +RELOC_TYPE (SOP_AND, REL) +RELOC_TYPE (SOP_IF_ELSE, REL) +RELOC_TYPE (SOP_POP_32_S_10_5, REL) +RELOC_TYPE (SOP_POP_32_U_10_12, REL) +RELOC_TYPE (SOP_POP_32_S_10_12, REL) +RELOC_TYPE (SOP_POP_32_S_10_16, REL) +RELOC_TYPE (SOP_POP_32_S_10_16_S2, REL) +RELOC_TYPE (SOP_POP_32_S_5_20, REL) +RELOC_TYPE (SOP_POP_32_S_0_5_10_16_S2, REL) +RELOC_TYPE (SOP_POP_32_S_0_10_10_16_S2, REL) +RELOC_TYPE (SOP_POP_32_U, REL) +RELOC_TYPE (ADD8, REL) +RELOC_TYPE (ADD16, REL) +RELOC_TYPE (ADD24, REL) +RELOC_TYPE (ADD32, REL) +RELOC_TYPE (ADD64, REL) +RELOC_TYPE (SUB8, REL) +RELOC_TYPE (SUB16, REL) +RELOC_TYPE (SUB24, REL) +RELOC_TYPE (SUB32, REL) +RELOC_TYPE (SUB64, REL) +RELOC_TYPE (GNU_VTINHERIT, REL) +RELOC_TYPE (GNU_VTENTRY, REL) diff --git a/backends/loongarch_symbol.c b/backends/loongarch_symbol.c new file mode 100644 index 00000000..8ba66a09 --- /dev/null +++ b/backends/loongarch_symbol.c @@ -0,0 +1,74 @@ +/* LoongArch specific symbolic name handling. + Copyright (C) 2022 Hengqi Chen + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of either + + * the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at + your option) any later version + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at + your option) any later version + + or both in parallel, as here. + + elfutils is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received copies of the GNU General Public License and + the GNU Lesser General Public License along with this program. If + not, see <http://www.gnu.org/licenses/>. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include <assert.h> +#include <elf.h> +#include <stddef.h> +#include <string.h> + +#define BACKEND loongarch_ +#include "libebl_CPU.h" + + +/* Check for the simple reloc types. */ +Elf_Type +loongarch_reloc_simple_type (Ebl *ebl __attribute__ ((unused)), int type, + int *addsub) +{ + switch (type) + { + case R_LARCH_32: + return ELF_T_WORD; + case R_LARCH_64: + return ELF_T_XWORD; + case R_LARCH_ADD16: + *addsub = 1; + return ELF_T_HALF; + case R_LARCH_ADD32: + *addsub = 1; + return ELF_T_WORD; + case R_LARCH_ADD64: + *addsub = 1; + return ELF_T_XWORD; + case R_LARCH_SUB16: + *addsub = -1; + return ELF_T_HALF; + case R_LARCH_SUB32: + *addsub = -1; + return ELF_T_WORD; + case R_LARCH_SUB64: + *addsub = -1; + return ELF_T_XWORD; + default: + return ELF_T_NUM; + } +} diff --git a/backends/m68k_retval.c b/backends/m68k_retval.c index a653ba3a..bf41f862 100644 --- a/backends/m68k_retval.c +++ b/backends/m68k_retval.c @@ -96,15 +96,14 @@ m68k_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Word size; Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 4; else return -1; diff --git a/backends/ppc64_retval.c b/backends/ppc64_retval.c index eb1c11ec..1c20c890 100644 --- a/backends/ppc64_retval.c +++ b/backends/ppc64_retval.c @@ -100,14 +100,13 @@ ppc64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 8; else return -1; diff --git a/backends/ppc_retval.c b/backends/ppc_retval.c index 39b42da1..5144712b 100644 --- a/backends/ppc_retval.c +++ b/backends/ppc_retval.c @@ -112,14 +112,13 @@ ppc_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 4; else return -1; diff --git a/backends/riscv_retval.c b/backends/riscv_retval.c index 34761486..0a1e02f8 100644 --- a/backends/riscv_retval.c +++ b/backends/riscv_retval.c @@ -170,12 +170,11 @@ riscv_return_value_location_lp64ifd (int fp, Dwarf_Die *functypedie, return pass_in_gpr_lp64 (locp, size); } - if (tag == DW_TAG_base_type - || tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (tag == DW_TAG_base_type || dwarf_is_pointer (tag)) { if (dwarf_bytesize_aux (&typedie, &size) < 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 8; else return -1; diff --git a/backends/s390_retval.c b/backends/s390_retval.c index 2043f985..0a01d27f 100644 --- a/backends/s390_retval.c +++ b/backends/s390_retval.c @@ -91,8 +91,7 @@ s390_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Die cudie; uint8_t asize; @@ -103,7 +102,7 @@ s390_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) if (dwarf_formudata (dwarf_attr (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = asize; else return -1; diff --git a/backends/sh_retval.c b/backends/sh_retval.c index 33d7d964..eac83b70 100644 --- a/backends/sh_retval.c +++ b/backends/sh_retval.c @@ -88,14 +88,13 @@ sh_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag)) size = 4; else return -1; diff --git a/backends/sparc_reloc.def b/backends/sparc_reloc.def index 7cd5ce96..f0eeb5c6 100644 --- a/backends/sparc_reloc.def +++ b/backends/sparc_reloc.def @@ -28,7 +28,7 @@ /* NAME, REL|EXEC|DYN */ -RELOC_TYPE (NONE, REL) +RELOC_TYPE (NONE, REL|EXEC|DYN) RELOC_TYPE (8, REL) RELOC_TYPE (16, REL) RELOC_TYPE (32, REL|DYN) diff --git a/backends/sparc_retval.c b/backends/sparc_retval.c index fb81cdce..8b3fb629 100644 --- a/backends/sparc_retval.c +++ b/backends/sparc_retval.c @@ -95,8 +95,7 @@ sparc_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, @@ -104,7 +103,7 @@ sparc_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) { uint8_t asize; Dwarf_Die cudie; - if ((tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + if (dwarf_is_pointer (tag) && dwarf_diecu (typedie, &cudie, &asize, NULL) != NULL) size = asize; else diff --git a/backends/x86_64_retval.c b/backends/x86_64_retval.c index f9114cb1..c29ee0e1 100644 --- a/backends/x86_64_retval.c +++ b/backends/x86_64_retval.c @@ -104,14 +104,13 @@ x86_64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) case DW_TAG_base_type: case DW_TAG_enumeration_type: - case DW_TAG_pointer_type: - case DW_TAG_ptr_to_member_type: + CASE_POINTER: { Dwarf_Attribute attr_mem; if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size, &attr_mem), &size) != 0) - { - if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type) + { + if (dwarf_is_pointer (tag)) size = 8; else return -1; @@ -73,6 +73,9 @@ /* Defined if __attribute__((gcc_struct)) is supported */ /* #undef HAVE_GCC_STRUCT */ +/* Define to 1 if you have the `getrlimit' function. */ +#define HAVE_GETRLIMIT 1 + /* Define if the GNU gettext() function is already present or preinstalled. */ #define HAVE_GETTEXT 1 @@ -91,6 +94,12 @@ /* Enable pthread_setname_np */ #define HAVE_PTHREAD_SETNAME_NP 1 +/* Define to 1 if you have the `sched_getaffinity' function. */ +#define HAVE_SCHED_GETAFFINITY 1 + +/* Define to 1 if you have the <sched.h> header file. */ +#define HAVE_SCHED_H 1 + /* Define to 1 if `stdatomic.h` is provided by the system, 0 otherwise. */ #define HAVE_STDATOMIC_H 1 @@ -112,6 +121,9 @@ /* Define to 1 if you have the <string.h> header file. */ #define HAVE_STRING_H 1 +/* Define to 1 if you have the <sys/resource.h> header file. */ +#define HAVE_SYS_RESOURCE_H 1 + /* Define to 1 if you have the <sys/stat.h> header file. */ #define HAVE_SYS_STAT_H 1 @@ -137,7 +149,7 @@ #define PACKAGE_NAME "elfutils" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "elfutils 0.188" +#define PACKAGE_STRING "elfutils 0.189" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "elfutils" @@ -146,7 +158,7 @@ #define PACKAGE_URL "http://elfutils.org/" /* Define to the version of this package. */ -#define PACKAGE_VERSION "0.188" +#define PACKAGE_VERSION "0.189" /* The size of `long', as computed by sizeof. */ #define SIZEOF_LONG 8 @@ -179,8 +191,11 @@ /* Support ZSTD (zst) decompression via -lzstd. */ /* #undef USE_ZSTD */ +/* zstd compression support */ +/* #undef USE_ZSTD_COMPRESS */ + /* Version number of package */ -#define VERSION "0.188" +#define VERSION "0.189" /* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a `char[]'. */ diff --git a/config/ChangeLog b/config/ChangeLog index c63caa0c..ce1f74f6 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -1,3 +1,8 @@ +2023-02-21 Mark Wielaard <mark@klomp.org> + + * eu.am (USE_AFTER_FREE3_WARNING): Define. + (AM_CFLAGS): Use USE_AFTER_FREE3_WARNING. + 2022-10-02 Mark Wielaard <mark@klomp.org> * elfutils.spec.in: Update for 0.188. diff --git a/config/elfutils.spec.in b/config/elfutils.spec.in index c444d1f5..c82a40c5 100644 --- a/config/elfutils.spec.in +++ b/config/elfutils.spec.in @@ -341,6 +341,19 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Fri Mar 3 2023 Mark Wielaard <mark@klomp.org> 0.189-1 +- configure: eu-nm, eu-addr2line and eu-stack can provide demangled + symbols when linked with libstdc++. Use --disable-demangler to disable. + A new option --enable-sanitize-memory has been added for msan sanitizer + support. +- libelf: elf_compress now supports ELFCOMPRESS_ZSTD when build + against libzstd +- libdwfl: dwfl_module_return_value_location now returns 0 (no return + type) for DIEs that point to a DW_TAG_unspecified_type. +- elfcompress: -t, --type= now support zstd if libelf has been build + with ELFCOMPRESS_ZSTD support. +- backends: Add support for LoongArch and Synopsys ARCv2 processors. + * Wed Nov 2 2022 Mark Wielaard <mark@klomp.org> 0.188-1 - readelf: Add -D, --use-dynamic option. - debuginfod-client: Add $DEBUGINFOD_HEADERS_FILE setting to supply diff --git a/config/eu.am b/config/eu.am index c3cefe7e..e6c241f9 100644 --- a/config/eu.am +++ b/config/eu.am @@ -1,6 +1,7 @@ ## Common automake fragments for elfutils subdirectory makefiles. ## ## Copyright (C) 2010, 2014, 2016 Red Hat, Inc. +## Copyright (C) 2023, Mark J. Wielaard <mark@klomp.org> ## ## This file is part of elfutils. ## @@ -87,10 +88,17 @@ else NO_PACKED_NOT_ALIGNED_WARNING= endif +if HAVE_USE_AFTER_FREE3_WARNING +USE_AFTER_FREE3_WARNING=-Wuse-after-free=3 +else +USE_AFTER_FREE3_WARNING= +endif + AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -Wold-style-definition -Wstrict-prototypes $(TRAMPOLINES_WARNING) \ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ + $(USE_AFTER_FREE3_WARNING) \ $(if $($(*F)_no_Werror),,-Werror) \ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ diff --git a/config/libelf.pc.in b/config/libelf.pc.in index 48f3f021..0d2ce968 100644 --- a/config/libelf.pc.in +++ b/config/libelf.pc.in @@ -11,4 +11,4 @@ URL: http://elfutils.org/ Libs: -L${libdir} -lelf Cflags: -I${includedir} -Requires.private: zlib +Requires.private: zlib @LIBZSTD@ diff --git a/configure.ac b/configure.ac index 59be27ac..6e881fa0 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script. dnl Configure input file for elfutils. -*-autoconf-*- dnl dnl Copyright (C) 1996-2019 Red Hat, Inc. -dnl Copyright (C) 2022 Mark J. Wielaard <mark@klomp.org> +dnl Copyright (C) 2022, 2023 Mark J. Wielaard <mark@klomp.org> dnl dnl This file is part of elfutils. dnl @@ -18,7 +18,7 @@ dnl GNU General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with this program. If not, see <http://www.gnu.org/licenses/>. -AC_INIT([elfutils],[0.188],[https://sourceware.org/bugzilla],[elfutils],[http://elfutils.org/]) +AC_INIT([elfutils],[0.189],[https://sourceware.org/bugzilla],[elfutils],[http://elfutils.org/]) dnl Workaround for older autoconf < 2.64 m4_ifndef([AC_PACKAGE_URL], @@ -45,7 +45,7 @@ fi AC_CONFIG_AUX_DIR([config]) AC_CONFIG_FILES([config/Makefile]) -AC_COPYRIGHT([Copyright (C) 1996-2022 The elfutils developers.]) +AC_COPYRIGHT([Copyright (C) 1996-2023 The elfutils developers.]) AC_PREREQ(2.63) dnl Minimum Autoconf version required. dnl We use GNU make extensions; automake 1.10 defaults to -Wportability. @@ -155,6 +155,29 @@ AC_SUBST([fpie_CFLAGS]) dso_LDFLAGS="-shared" +NO_UNDEFINED=-Wl,--no-undefined +AC_ARG_ENABLE([sanitize-memory], + AS_HELP_STRING([--enable-sanitize-memory], + [Use clang memory sanitizer]), + [use_msan=$enableval], [use_msan=no]) +if test "$use_msan" = yes; then + old_CFLAGS="$CFLAGS" + old_CXXFLAGS="$CXXFLAGS" + old_LDFLAGS="$LDFLAGS" + # -fsanitize=memory is not compatible with -D_FORTIFY_SOURCE, -Wl,-z,defs and --no-undefined + CFLAGS="$CFLAGS -fsanitize=memory -fsanitize-memory-track-origins -D_FORTIFY_SOURCE=0" + CXXFLAGS="$CXXFLAGS -fsanitize=memory -fsanitize-memory-track-origins -D_FORTIFY_SOURCE=0" + LDFLAGS="-shared" + AC_LINK_IFELSE([AC_LANG_SOURCE([int main (int argc, char **argv) { return 0; }])], use_msan=yes, use_msan=no) + AS_IF([test "x$use_msan" == xyes], + ac_cv_zdefs=no NO_UNDEFINED=, + AC_MSG_WARN([clang memory sanitizer not available]) + CFLAGS="$old_CFLAGS" CXXFLAGS="$old_CXXFLAGS") + LDFLAGS="$old_LDFLAGS" +fi +AC_SUBST(NO_UNDEFINED) +AM_CONDITIONAL(USE_MEMORY_SANITIZER, test "$use_msan" = yes) + ZDEFS_LDFLAGS="-Wl,-z,defs" AC_CACHE_CHECK([whether gcc supports $ZDEFS_LDFLAGS], ac_cv_zdefs, [dnl save_LDFLAGS="$LDFLAGS" @@ -420,10 +443,22 @@ AC_SUBST([LIBLZMA]) eu_ZIPLIB(zstd,ZSTD,zstd,ZSTD_decompress,[ZSTD (zst)]) AS_IF([test "x$with_zstd" = xyes], [LIBZSTD="libzstd"], [LIBLZSTD=""]) AC_SUBST([LIBZSTD]) +zstd_LIBS="$LIBS" +AC_SUBST([zstd_LIBS]) zip_LIBS="$LIBS" LIBS="$save_LIBS" AC_SUBST([zip_LIBS]) +dnl zstd compression support requires libzstd 1.4.0+ +AS_IF([test "x$with_zstd" = xyes], [ + PKG_PROG_PKG_CONFIG + PKG_CHECK_MODULES([ZSTD_COMPRESS],[libzstd >= 1.4.0], + [with_zstd_compress="yes"],[with_zstd_compress="no"])], + [with_zstd_compress="no"]) +AM_CONDITIONAL(USE_ZSTD_COMPRESS, test "x$with_zstd_compress" = "xyes") +AS_IF([test "x$with_zstd_compress" = "xyes"], + [AC_DEFINE([USE_ZSTD_COMPRESS], [1], [zstd compression support])]) + AC_CHECK_DECLS([memrchr, rawmemchr],[],[], [#define _GNU_SOURCE #include <string.h>]) @@ -443,16 +478,29 @@ AS_IF([test "x$ac_cv_func_mremap" = "xno"], AC_CHECK_HEADERS([error.h]) AC_CHECK_HEADERS([err.h]) +dnl for debuginfod concurrency heuristics +AC_CHECK_HEADERS([sched.h]) +AC_CHECK_FUNCS([sched_getaffinity]) +AC_CHECK_HEADERS([sys/resource.h]) +AC_CHECK_FUNCS([getrlimit]) + old_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -D_GNU_SOURCE" AC_FUNC_STRERROR_R() CFLAGS="$old_CFLAGS" +AC_ARG_ENABLE([demangler], +AS_HELP_STRING([--disable-demangler], + [Disable libstdc++ demangle support]), + [], [enable_demangler=yes]) +AS_IF([test "x$enable_demangler" == xyes], AC_CHECK_LIB([stdc++], [__cxa_demangle], [dnl AC_DEFINE([USE_DEMANGLE], [1], [Defined if demangling is enabled])]) AM_CONDITIONAL(DEMANGLE, test "x$ac_cv_lib_stdcpp___cxa_demangle" = "xyes") AS_IF([test "x$ac_cv_lib_stdcpp___cxa_demangle" = "xyes"], - [enable_demangler=yes],[enable_demangler=no]) + [enable_demangler=yes], + [AC_MSG_ERROR([[__cxa_demangle not found in libstdc++, use --disable-demangler to disable demangler support.]])]), +AM_CONDITIONAL(DEMANGLE, false)) AC_ARG_ENABLE([textrelcheck], AS_HELP_STRING([--disable-textrelcheck], @@ -570,6 +618,23 @@ CFLAGS="$old_CFLAGS"]) AM_CONDITIONAL(HAVE_NO_PACKED_NOT_ALIGNED_WARNING, [test "x$ac_cv_no_packed_not_aligned" != "xno"]) +AC_CACHE_CHECK([whether the compiler accepts -Wuse-after-free=3], ac_cv_use_after_free3, [dnl +old_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -Wuse-after-free=3 -Werror" +AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], + ac_cv_use_after_free3=yes, ac_cv_use_after_free3=no) +CFLAGS="$old_CFLAGS"]) +AM_CONDITIONAL(HAVE_USE_AFTER_FREE3_WARNING, + [test "x$ac_cv_use_after_free3" != "xno"]) + +AC_CACHE_CHECK([whether the compiler accepts -fno-addrsig], ac_cv_fno_addrsig, [dnl +old_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -fno-addrsig -Werror" +AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], + ac_cv_fno_addrsig=yes, ac_cv_fno_addrsig=no) +CFLAGS="$old_CFLAGS"]) +AS_IF([test "x$ac_cv_fno_addrsig" = "xyes"], CFLAGS="$CFLAGS -fno-addrsig") + saved_LIBS="$LIBS" AC_SEARCH_LIBS([argp_parse], [argp]) LIBS="$saved_LIBS" @@ -744,6 +809,11 @@ fi AC_CHECK_PROG(HAVE_ZSTD, zstd, yes, no) AM_CONDITIONAL([HAVE_ZSTD],[test "x$HAVE_ZSTD" = "xyes"]) +# For tests that need to use C++11 +AX_CXX_COMPILE_STDCXX(11, noext, optional) +AS_IF([test "x$HAVE_CXX11" = "x1"], [HAVE_CXX11=yes], [HAVE_CXX11=no]) +AM_CONDITIONAL([HAVE_CXX11],[test "x$HAVE_CXX11" = "xyes"]) + # Look for libcurl for libdebuginfod minimum version as per rhel7. AC_ARG_ENABLE([libdebuginfod],AS_HELP_STRING([--enable-libdebuginfod], [Build debuginfod client library (can be =dummy)])) AS_IF([test "x$enable_libdebuginfod" != "xno"], [ @@ -774,8 +844,9 @@ AM_CONDITIONAL([DUMMY_LIBDEBUGINFOD],[test "x$enable_libdebuginfod" = "xdummy"]) # minimum versions as per rhel7. AC_ARG_ENABLE([debuginfod],AS_HELP_STRING([--enable-debuginfod], [Build debuginfod server])) AS_IF([test "x$enable_debuginfod" != "xno"], [ - AC_MSG_NOTICE([checking debuginfod C++11 support, --disable-debuginfod to skip]) - AX_CXX_COMPILE_STDCXX(11, noext, mandatory) + if test "x$HAVE_CXX11" = "xno"; then + AC_MSG_ERROR([the compiler does not support C++11, use --disable-debuginfod to disable.]) + fi AC_MSG_NOTICE([checking debuginfod dependencies, --disable-debuginfod to skip]) if test "x$enable_libdebuginfod" = "xno"; then AC_MSG_ERROR([need libdebuginfod (or dummy), use --disable-debuginfod to disable.]) @@ -829,6 +900,7 @@ AC_MSG_NOTICE([ bzip2 support : ${with_bzlib} lzma/xz support : ${with_lzma} zstd support : ${with_zstd} + zstd compression support : ${with_zstd_compress} libstdc++ demangle support : ${enable_demangler} File textrel check : ${enable_textrelcheck} Symbol versioning : ${enable_symbol_versioning} @@ -848,12 +920,14 @@ AC_MSG_NOTICE([ EXTRA TEST FEATURES (used with make check) have bunzip2 installed (required) : ${HAVE_BUNZIP2} have zstd installed : ${HAVE_ZSTD} + C++11 : ${HAVE_CXX11} debug branch prediction : ${use_debugpred} gprof support : ${use_gprof} gcov support : ${use_gcov} run all tests under valgrind : ${use_valgrind} gcc undefined behaviour sanitizer : ${use_undefined} gcc address sanitizer : ${use_address} + clang memory sanitizer : ${use_msan} use rpath in tests : ${tests_use_rpath} test biarch : ${utrace_cv_cc_biarch} ]) diff --git a/debuginfod/ChangeLog b/debuginfod/ChangeLog index 50668e61..f861eb72 100644 --- a/debuginfod/ChangeLog +++ b/debuginfod/ChangeLog @@ -1,3 +1,56 @@ +2023-02-07 Aaron Merey <amerey@redhat.com> + + * debuginfod-client.c (cache_find_section): Avoid returning -ENOENT + if debuginfo wasn't found. + +2023-02-06 Mark Wielaard <mark@klomp.org> + + * debuginfod.h.in: Guard debuginfod_client typedef with + _ELFUTILS_DEBUGINFOD_CLIENT_TYPEDEF. + +2023-01-10 Mark Wielaard <mark@klomp.org> + + * debuginfod-client.c (debuginfod_query_server): Use + CURL_AT_LEAST_VERSION(7.85.0) for CURLOPT_PROTOCOLS_STR. + +2023-01-11 Frank Ch. Eigler <fche@redhat.com> + + PR29975 & PR29976 + * debuginfod.cxx (default_concurrency): New function to guess a + reasonable default for -c/-C on large but constrained machines. + +2022-12-21 Mark Wielaard <mark@klomp.org> + + * debuginfod-client.c: Define CURL_AT_LEAST_VERSION. + +2022-12-21 Andrew Paprocki <andrew@ishiboo.com> + + * debuginfod-client.c: Make compilable against newer curl. PR29926 + +2022-11-15 Mark Wielaard <mark@klomp.org> + + * debuginfod-client.c (debuginfod_query_server): Initialize + response_data early. + +2022-11-07 Aaron Merey <amerey@redhat.com> + + * debuginfod-client.c (debuginfod_find_section): Don't treat 0 as an + error code. + +2022-11-04 Aaron Merey <amerey@redhat.com> + + * debuginfod-client.c (debuginfod_find_section): Ensure rc + is always updated with the most recent error code. + +2022-11-03 Frank Ch. Eigler <fche@redhat.com> + + * debuginfod.cxx (handle_buildid): Correctly manage lifetime + of debuginfod_client federation callout object. + +2022-11-02 Mark Wielaard <mark@klomp.org> + + * debuginfod-client.c (extract_section): Mark static. + 2022-11-01 Aaron Merey <amerey@redhat.com> * debuginfod-client.c (path_escape): Add early return. diff --git a/debuginfod/Makefile.am b/debuginfod/Makefile.am index f27d6e2e..125be97b 100644 --- a/debuginfod/Makefile.am +++ b/debuginfod/Makefile.am @@ -102,7 +102,8 @@ endif $(LIBDEBUGINFOD_SONAME): $(srcdir)/libdebuginfod.map $(libdebuginfod_so_LIBS) $(AM_V_CCLD)$(LINK) $(dso_LDFLAGS) -o $@ \ -Wl,--soname,$(LIBDEBUGINFOD_SONAME) \ - -Wl,--version-script,$<,--no-undefined \ + -Wl,--version-script,$< \ + $(NO_UNDEFINED) \ -Wl,--whole-archive $(libdebuginfod_so_LIBS) -Wl,--no-whole-archive \ $(libdebuginfod_so_LDLIBS) @$(textrel_check) diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c index 0c4a00cf..ef4d47e3 100644 --- a/debuginfod/debuginfod-client.c +++ b/debuginfod/debuginfod-client.c @@ -105,6 +105,13 @@ void debuginfod_end (debuginfod_client *c) { } #include <fts.h> #endif +/* Older curl.h don't define CURL_AT_LEAST_VERSION. */ +#ifndef CURL_AT_LEAST_VERSION + #define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|(z)) + #define CURL_AT_LEAST_VERSION(x,y,z) \ + (LIBCURL_VERSION_NUM >= CURL_VERSION_BITS(x, y, z)) +#endif + #include <pthread.h> static pthread_once_t init_control = PTHREAD_ONCE_INIT; @@ -309,7 +316,7 @@ debuginfod_clean_cache(debuginfod_client *c, /* Update timestamp representing when the cache was last cleaned. Do it at the start to reduce the number of threads trying to do a - cleanup simultaniously. */ + cleanup simultaneously. */ utime (interval_path, NULL); /* Read max unused age value from config file. */ @@ -621,7 +628,7 @@ path_escape (const char *src, char *dest) section name was not found. -EEXIST indicates that the section was found but had type SHT_NOBITS. */ -int +static int extract_section (int fd, const char *section, char *fd_path, char **usr_path) { elf_version (EV_CURRENT); @@ -778,23 +785,24 @@ out: an ELF/DWARF section with name SCN_NAME. If found, extract the section to a separate file in TARGET_CACHE_DIR and return a file descriptor for the section file. The path for this file will be stored in USR_PATH. - Return a negative errno if unsuccessful. */ + Return a negative errno if unsuccessful. -ENOENT indicates that SCN_NAME + is confirmed to not exist. */ static int cache_find_section (const char *scn_name, const char *target_cache_dir, char **usr_path) { - int fd; + int debug_fd; int rc = -EEXIST; char parent_path[PATH_MAX]; /* Check the debuginfo first. */ snprintf (parent_path, PATH_MAX, "%s/debuginfo", target_cache_dir); - fd = open (parent_path, O_RDONLY); - if (fd >= 0) + debug_fd = open (parent_path, O_RDONLY); + if (debug_fd >= 0) { - rc = extract_section (fd, scn_name, parent_path, usr_path); - close (fd); + rc = extract_section (debug_fd, scn_name, parent_path, usr_path); + close (debug_fd); } /* If the debuginfo file couldn't be found or the section type was @@ -802,12 +810,17 @@ cache_find_section (const char *scn_name, const char *target_cache_dir, if (rc == -EEXIST) { snprintf (parent_path, PATH_MAX, "%s/executable", target_cache_dir); - fd = open (parent_path, O_RDONLY); + int exec_fd = open (parent_path, O_RDONLY); - if (fd >= 0) + if (exec_fd >= 0) { - rc = extract_section (fd, scn_name, parent_path, usr_path); - close (fd); + rc = extract_section (exec_fd, scn_name, parent_path, usr_path); + close (exec_fd); + + /* Don't return -ENOENT if the debuginfo wasn't opened. The + section may exist in the debuginfo but not the executable. */ + if (debug_fd < 0 && rc == -ENOENT) + rc = -EREMOTE; } } @@ -1250,6 +1263,8 @@ debuginfod_query_server (debuginfod_client *c, data[i].handle = NULL; data[i].fd = -1; data[i].errbuf[0] = '\0'; + data[i].response_data = NULL; + data[i].response_data_size = 0; } char *escaped_string = NULL; @@ -1327,8 +1342,13 @@ debuginfod_query_server (debuginfod_client *c, /* Only allow http:// + https:// + file:// so we aren't being redirected to some unsupported protocol. */ +#if CURL_AT_LEAST_VERSION(7, 85, 0) + curl_easy_setopt_ck(data[i].handle, CURLOPT_PROTOCOLS_STR, + "http,https,file"); +#else curl_easy_setopt_ck(data[i].handle, CURLOPT_PROTOCOLS, (CURLPROTO_HTTP | CURLPROTO_HTTPS | CURLPROTO_FILE)); +#endif curl_easy_setopt_ck(data[i].handle, CURLOPT_URL, data[i].url); if (vfd >= 0) curl_easy_setopt_ck(data[i].handle, CURLOPT_ERRORBUFFER, @@ -1346,8 +1366,6 @@ debuginfod_query_server (debuginfod_client *c, curl_easy_setopt_ck (data[i].handle, CURLOPT_LOW_SPEED_LIMIT, 100 * 1024L); } - data[i].response_data = NULL; - data[i].response_data_size = 0; curl_easy_setopt_ck(data[i].handle, CURLOPT_FILETIME, (long) 1); curl_easy_setopt_ck(data[i].handle, CURLOPT_FOLLOWLOCATION, (long) 1); curl_easy_setopt_ck(data[i].handle, CURLOPT_FAILONERROR, (long) 1); @@ -1456,7 +1474,7 @@ debuginfod_query_server (debuginfod_client *c, deflate-compressing proxies, this number is likely to be unavailable, so -1 may show. */ CURLcode curl_res; -#ifdef CURLINFO_CONTENT_LENGTH_DOWNLOAD_T +#if CURL_AT_LEAST_VERSION(7, 55, 0) curl_off_t cl; curl_res = curl_easy_getinfo(target_handle, CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, @@ -1491,7 +1509,7 @@ debuginfod_query_server (debuginfod_client *c, if (target_handle) /* we've committed to a server; report its download progress */ { CURLcode curl_res; -#ifdef CURLINFO_SIZE_DOWNLOAD_T +#if CURL_AT_LEAST_VERSION(7, 55, 0) curl_off_t dl; curl_res = curl_easy_getinfo(target_handle, CURLINFO_SIZE_DOWNLOAD_T, @@ -1936,7 +1954,7 @@ debuginfod_find_section (debuginfod_client *client, } return -ENOENT; } - if (fd > 0) + if (fd >= 0) { rc = extract_section (fd, section, tmp_path, path); close (fd); @@ -1944,14 +1962,18 @@ debuginfod_find_section (debuginfod_client *client, if (rc == -EEXIST) { - /* The section should be found in the executable. */ + /* Either the debuginfo couldn't be found or the section should + be in the executable. */ fd = debuginfod_find_executable (client, build_id, build_id_len, &tmp_path); - if (fd > 0) + if (fd >= 0) { rc = extract_section (fd, section, tmp_path, path); close (fd); } + else + /* Update rc so that we return the most recent error code. */ + rc = fd; } free (tmp_path); diff --git a/debuginfod/debuginfod.cxx b/debuginfod/debuginfod.cxx index f46da6ef..99b1f2b9 100644 --- a/debuginfod/debuginfod.cxx +++ b/debuginfod/debuginfod.cxx @@ -32,6 +32,18 @@ #include "config.h" #endif +// #define _GNU_SOURCE +#ifdef HAVE_SCHED_H +extern "C" { +#include <sched.h> +} +#endif +#ifdef HAVE_SYS_RESOURCE_H +extern "C" { +#include <sys/resource.h> +} +#endif + extern "C" { #include "printversion.h" #include "system.h" @@ -336,7 +348,7 @@ static const char DEBUGINFOD_SQLITE_CLEANUP_DDL[] = /* Name and version of program. */ -/* ARGP_PROGRAM_VERSION_HOOK_DEF = print_version; */ // not this simple for C++ +ARGP_PROGRAM_VERSION_HOOK_DEF = print_version; /* Bug report address. */ ARGP_PROGRAM_BUG_ADDRESS_DEF = PACKAGE_BUGREPORT; @@ -398,6 +410,8 @@ static const char args_doc[] = "[PATH ...]"; /* Prototype for option handler. */ static error_t parse_opt (int key, char *arg, struct argp_state *state); +static unsigned default_concurrency(); + /* Data structure to communicate with argp functions. */ static struct argp argp = { @@ -418,7 +432,7 @@ static unsigned http_port = 8002; static unsigned rescan_s = 300; static unsigned groom_s = 86400; static bool maxigroom = false; -static unsigned concurrency = std::thread::hardware_concurrency() ?: 1; +static unsigned concurrency = default_concurrency(); static int connection_pool = 0; static set<string> source_paths; static bool scan_files = false; @@ -2249,85 +2263,82 @@ handle_buildid (MHD_Connection* conn, int fd = -1; debuginfod_client *client = debuginfod_pool_begin (); - if (client != NULL) - { - debuginfod_set_progressfn (client, & debuginfod_find_progress); + if (client == NULL) + throw libc_exception(errno, "debuginfod client pool alloc"); + defer_dtor<debuginfod_client*,void> client_closer (client, debuginfod_pool_end); + + debuginfod_set_progressfn (client, & debuginfod_find_progress); - if (conn) - { - // Transcribe incoming User-Agent: - string ua = MHD_lookup_connection_value (conn, MHD_HEADER_KIND, "User-Agent") ?: ""; - string ua_complete = string("User-Agent: ") + ua; - debuginfod_add_http_header (client, ua_complete.c_str()); - - // Compute larger XFF:, for avoiding info loss during - // federation, and for future cyclicity detection. - string xff = MHD_lookup_connection_value (conn, MHD_HEADER_KIND, "X-Forwarded-For") ?: ""; - if (xff != "") - xff += string(", "); // comma separated list - - unsigned int xff_count = 0; - for (auto&& i : xff){ - if (i == ',') xff_count++; - } + if (conn) + { + // Transcribe incoming User-Agent: + string ua = MHD_lookup_connection_value (conn, MHD_HEADER_KIND, "User-Agent") ?: ""; + string ua_complete = string("User-Agent: ") + ua; + debuginfod_add_http_header (client, ua_complete.c_str()); + + // Compute larger XFF:, for avoiding info loss during + // federation, and for future cyclicity detection. + string xff = MHD_lookup_connection_value (conn, MHD_HEADER_KIND, "X-Forwarded-For") ?: ""; + if (xff != "") + xff += string(", "); // comma separated list + + unsigned int xff_count = 0; + for (auto&& i : xff){ + if (i == ',') xff_count++; + } - // if X-Forwarded-For: exceeds N hops, - // do not delegate a local lookup miss to upstream debuginfods. - if (xff_count >= forwarded_ttl_limit) - throw reportable_exception(MHD_HTTP_NOT_FOUND, "not found, --forwared-ttl-limit reached \ + // if X-Forwarded-For: exceeds N hops, + // do not delegate a local lookup miss to upstream debuginfods. + if (xff_count >= forwarded_ttl_limit) + throw reportable_exception(MHD_HTTP_NOT_FOUND, "not found, --forwared-ttl-limit reached \ and will not query the upstream servers"); - // Compute the client's numeric IP address only - so can't merge with conninfo() - const union MHD_ConnectionInfo *u = MHD_get_connection_info (conn, - MHD_CONNECTION_INFO_CLIENT_ADDRESS); - struct sockaddr *so = u ? u->client_addr : 0; - char hostname[256] = ""; // RFC1035 - if (so && so->sa_family == AF_INET) { - (void) getnameinfo (so, sizeof (struct sockaddr_in), hostname, sizeof (hostname), NULL, 0, - NI_NUMERICHOST); - } else if (so && so->sa_family == AF_INET6) { - struct sockaddr_in6* addr6 = (struct sockaddr_in6*) so; - if (IN6_IS_ADDR_V4MAPPED(&addr6->sin6_addr)) { - struct sockaddr_in addr4; - memset (&addr4, 0, sizeof(addr4)); - addr4.sin_family = AF_INET; - addr4.sin_port = addr6->sin6_port; - memcpy (&addr4.sin_addr.s_addr, addr6->sin6_addr.s6_addr+12, sizeof(addr4.sin_addr.s_addr)); - (void) getnameinfo ((struct sockaddr*) &addr4, sizeof (addr4), - hostname, sizeof (hostname), NULL, 0, - NI_NUMERICHOST); - } else { - (void) getnameinfo (so, sizeof (struct sockaddr_in6), hostname, sizeof (hostname), NULL, 0, - NI_NUMERICHOST); - } - } - - string xff_complete = string("X-Forwarded-For: ")+xff+string(hostname); - debuginfod_add_http_header (client, xff_complete.c_str()); + // Compute the client's numeric IP address only - so can't merge with conninfo() + const union MHD_ConnectionInfo *u = MHD_get_connection_info (conn, + MHD_CONNECTION_INFO_CLIENT_ADDRESS); + struct sockaddr *so = u ? u->client_addr : 0; + char hostname[256] = ""; // RFC1035 + if (so && so->sa_family == AF_INET) { + (void) getnameinfo (so, sizeof (struct sockaddr_in), hostname, sizeof (hostname), NULL, 0, + NI_NUMERICHOST); + } else if (so && so->sa_family == AF_INET6) { + struct sockaddr_in6* addr6 = (struct sockaddr_in6*) so; + if (IN6_IS_ADDR_V4MAPPED(&addr6->sin6_addr)) { + struct sockaddr_in addr4; + memset (&addr4, 0, sizeof(addr4)); + addr4.sin_family = AF_INET; + addr4.sin_port = addr6->sin6_port; + memcpy (&addr4.sin_addr.s_addr, addr6->sin6_addr.s6_addr+12, sizeof(addr4.sin_addr.s_addr)); + (void) getnameinfo ((struct sockaddr*) &addr4, sizeof (addr4), + hostname, sizeof (hostname), NULL, 0, + NI_NUMERICHOST); + } else { + (void) getnameinfo (so, sizeof (struct sockaddr_in6), hostname, sizeof (hostname), NULL, 0, + NI_NUMERICHOST); } - - if (artifacttype == "debuginfo") - fd = debuginfod_find_debuginfo (client, - (const unsigned char*) buildid.c_str(), - 0, NULL); - else if (artifacttype == "executable") - fd = debuginfod_find_executable (client, - (const unsigned char*) buildid.c_str(), - 0, NULL); - else if (artifacttype == "source") - fd = debuginfod_find_source (client, - (const unsigned char*) buildid.c_str(), - 0, suffix.c_str(), NULL); - else if (artifacttype == "section") - fd = debuginfod_find_section (client, - (const unsigned char*) buildid.c_str(), - 0, section.c_str(), NULL); - + } + + string xff_complete = string("X-Forwarded-For: ")+xff+string(hostname); + debuginfod_add_http_header (client, xff_complete.c_str()); } - else - fd = -errno; /* Set by debuginfod_begin. */ - debuginfod_pool_end (client); - + + if (artifacttype == "debuginfo") + fd = debuginfod_find_debuginfo (client, + (const unsigned char*) buildid.c_str(), + 0, NULL); + else if (artifacttype == "executable") + fd = debuginfod_find_executable (client, + (const unsigned char*) buildid.c_str(), + 0, NULL); + else if (artifacttype == "source") + fd = debuginfod_find_source (client, + (const unsigned char*) buildid.c_str(), + 0, suffix.c_str(), NULL); + else if (artifacttype == "section") + fd = debuginfod_find_section (client, + (const unsigned char*) buildid.c_str(), + 0, section.c_str(), NULL); + if (fd >= 0) { if (conn != 0) @@ -4085,6 +4096,47 @@ static void sqlite3_sharedprefix_fn (sqlite3_context* c, int argc, sqlite3_value } +static unsigned +default_concurrency() // guaranteed >= 1 +{ + // Prior to PR29975 & PR29976, we'd just use this: + unsigned sth = std::thread::hardware_concurrency(); + // ... but on many-CPU boxes, admins or distros may throttle + // resources in such a way that debuginfod would mysteriously fail. + // So we reduce the defaults: + + unsigned aff = 0; +#ifdef HAVE_SCHED_GETAFFINITY + { + int ret; + cpu_set_t mask; + CPU_ZERO(&mask); + ret = sched_getaffinity(0, sizeof(mask), &mask); + if (ret == 0) + aff = CPU_COUNT(&mask); + } +#endif + + unsigned fn = 0; +#ifdef HAVE_GETRLIMIT + { + struct rlimit rlim; + int rc = getrlimit(RLIMIT_NOFILE, &rlim); + if (rc == 0) + fn = max((rlim_t)1, (rlim.rlim_cur - 100) / 4); + // at least 2 fds are used by each listener thread etc. + // plus a bunch to account for shared libraries and such + } +#endif + + unsigned d = min(max(sth, 1U), + min(max(aff, 1U), + max(fn, 1U))); + return d; +} + + + int main (int argc, char *argv[]) { @@ -4119,7 +4171,6 @@ main (int argc, char *argv[]) /* Parse and process arguments. */ int remaining; - argp_program_version_hook = print_version; // this works (void) argp_parse (&argp, argc, argv, ARGP_IN_ORDER, &remaining, NULL); if (remaining != argc) error (EXIT_FAILURE, 0, @@ -4210,7 +4261,7 @@ main (int argc, char *argv[]) /* If '-C' wasn't given or was given with no arg, pick a reasonable default for the number of worker threads. */ if (connection_pool == 0) - connection_pool = std::thread::hardware_concurrency() * 2 ?: 2; + connection_pool = default_concurrency(); /* Note that MHD_USE_EPOLL and MHD_USE_THREAD_PER_CONNECTION don't work together. */ diff --git a/debuginfod/debuginfod.h.in b/debuginfod/debuginfod.h.in index 69c9efd2..4a256ba9 100644 --- a/debuginfod/debuginfod.h.in +++ b/debuginfod/debuginfod.h.in @@ -44,7 +44,10 @@ #define DEBUGINFOD_SONAME "@LIBDEBUGINFOD_SONAME@" /* Handle for debuginfod-client connection. */ +#ifndef _ELFUTILS_DEBUGINFOD_CLIENT_TYPEDEF typedef struct debuginfod_client debuginfod_client; +#define _ELFUTILS_DEBUGINFOD_CLIENT_TYPEDEF 1 +#endif #ifdef __cplusplus extern "C" { diff --git a/doc/ChangeLog b/doc/ChangeLog index 7b18dbef..7f2d6ff4 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,11 @@ +2023-02-14 Mark Wielaard <mark@klomp.org> + + * debuginfod.8: Add .TP before -g. + +2023-01-11 Frank Ch. Eigler <fche@redhat.com> + + * debuginfod.8: Tweak -c/-C documentation for heuristic defaults. + 2022-10-31 Aaron Merey <amerey@redhat.com> * Makefile.am (notrans_dist_man3_MANS): Add debuginfod_find_section.3. diff --git a/doc/debuginfod-find.1 b/doc/debuginfod-find.1 index 957ec7e7..7d577bab 100644 --- a/doc/debuginfod-find.1 +++ b/doc/debuginfod-find.1 @@ -92,6 +92,19 @@ is made up of multiple CUs. Therefore, to disambiguate, debuginfod expects source queries to prefix relative path names with the CU compilation-directory, followed by a mandatory "/". +Note: for software packaged by distributions, the CU +compilation-directory may not be obvious. It can be found by +inspecting AT_comp_dir values in downloaded debuginfo. For example, +the comp_dir of the Fedora 37 version of /bin/ls can be found as +follows: + +.SAMPLE +% debuginfod-find debuginfo /bin/ls +~/.cache/debuginfod_client/03529d48345409576cd5c82a56ad08555088d353/ +% eu-readelf -w ~/.cache/debuginfod_client/03529d48345409576cd5c82a56ad08555088d353/debuginfo | grep comp_dir + comp_dir (line_strp) "/usr/src/debug/coreutils-9.1-6.fc37.x86_64/separate" +.ESAMPLE + Note: the caller may or may not elide \fB../\fP or \fB/./\fP or extraneous \fB///\fP sorts of path components in the directory names. debuginfod accepts both forms. Specifically, debuginfod canonicalizes path names diff --git a/doc/debuginfod.8 b/doc/debuginfod.8 index 93db47e1..07cb01ae 100644 --- a/doc/debuginfod.8 +++ b/doc/debuginfod.8 @@ -174,6 +174,7 @@ interrupting a groom pass (if any). .B "\-r" Apply the -I and -X during groom cycles, so that files excluded by the regexes are removed from the index. These parameters are in addition to what normally qualifies a file for grooming, not a replacement. +.TP .B "\-g SECONDS" "\-\-groom\-time=SECONDS" Set the groom time for the index database. This is the amount of time the grooming thread will wait after finishing a grooming pass before @@ -202,8 +203,9 @@ do maximal-grooming. See also the \fIDATA MANAGEMENT\fP section. Set the concurrency limit for the scanning queue threads, which work together to process archives & files located by the traversal thread. This important for controlling CPU-intensive operations like parsing -an ELF file and especially decompressing archives. The default is the -number of processors on the system; the minimum is 1. +an ELF file and especially decompressing archives. The default is +related to the number of processors on the system and other +constraints; the minimum is 1. .TP .B "\-C" "\-C=NUM" "\-\-connection\-pool" "\-\-connection\-pool=NUM" @@ -216,9 +218,9 @@ no option, \-C use a fixed thread pool sized automatically \-C=NUM use a fixed thread pool sized NUM, minimum 2 .TE -The first mode is a simple and safe configuration based on the number -of processors. The second mode is suitable for tuned load-limiting -configurations facing unruly traffic. +The first mode is a simple and safe configuration related to the +number of processors and other constraints. The second mode is +suitable for tuned load-limiting configurations facing unruly traffic. .TP .B "\-L" @@ -370,7 +372,7 @@ extract the contents of an ELF/DWARF section named SECTION from the debuginfo file matching BUILDID. If the debuginfo file can't be found or the section has type SHT_NOBITS, then the server will attempt to extract the section from the executable matching BUILDID. If the section is -succesfully extracted then this request results in a binary object +successfully extracted then this request results in a binary object of the section's contents. Note that this result is the raw binary contents of the section, not an ELF file. diff --git a/lib/ChangeLog b/lib/ChangeLog index 6bb0d4d0..5ab9477e 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,7 @@ +2022-12-20 Mark Wielaard <mark@klomp.org> + + * Makefile.am (xmalloc_CFLAGS): Remove. + 2022-09-21 Yonggang Luo <luoyonggang@gmail.com> * color.c: Don't include unistd.h. diff --git a/lib/Makefile.am b/lib/Makefile.am index 42ddf5ae..b3bb929f 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -41,7 +41,3 @@ noinst_HEADERS = fixedsizehash.h libeu.h system.h dynamicsizehash.h list.h \ eu-config.h color.h printversion.h bpf.h \ atomics.h stdatomic-fbsd.h dynamicsizehash_concurrent.h EXTRA_DIST = dynamicsizehash.c dynamicsizehash_concurrent.c - -if !GPROF -xmalloc_CFLAGS = -ffunction-sections -endif diff --git a/lib/dynamicsizehash_concurrent.c b/lib/dynamicsizehash_concurrent.c index 7c4fedfc..2ea545e0 100644 --- a/lib/dynamicsizehash_concurrent.c +++ b/lib/dynamicsizehash_concurrent.c @@ -42,7 +42,7 @@ static size_t lookup (NAME *htab, HASHTYPE hval) { - /* First hash function: simply take the modul but prevent zero. Small values + /* First hash function: simply take the modulus but prevent zero. Small values can skip the division, which helps performance when this is common. */ size_t idx = 1 + (hval < htab->size ? hval : hval % htab->size); @@ -77,7 +77,7 @@ lookup (NAME *htab, HASHTYPE hval) static int insert_helper (NAME *htab, HASHTYPE hval, TYPE val) { - /* First hash function: simply take the modul but prevent zero. Small values + /* First hash function: simply take the modulus but prevent zero. Small values can skip the division, which helps performance when this is common. */ size_t idx = 1 + (hval < htab->size ? hval : hval % htab->size); diff --git a/lib/printversion.c b/lib/printversion.c index 7d31fa83..be629b59 100644 --- a/lib/printversion.c +++ b/lib/printversion.c @@ -40,5 +40,5 @@ print_version (FILE *stream, struct argp_state *state) Copyright (C) %s The elfutils developers <%s>.\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\ -"), "2022", PACKAGE_URL); +"), "2023", PACKAGE_URL); } diff --git a/lib/printversion.h b/lib/printversion.h index a9e059ff..4154b328 100644 --- a/lib/printversion.h +++ b/lib/printversion.h @@ -39,10 +39,13 @@ void print_version (FILE *stream, struct argp_state *state); argp_program_bug_address, in all programs. argp.h declares these variables as non-const (which is correct in general). But we can do better, it is not going to change. So we want to move them into - the .rodata section. Define macros to do the trick. */ + the .rodata section. Define macros to do the trick. The default + linkage for consts in C++ is internal, so declare them extern. */ +extern void (*const apvh) (FILE *, struct argp_state *); #define ARGP_PROGRAM_VERSION_HOOK_DEF \ void (*const apvh) (FILE *, struct argp_state *) \ __asm ("argp_program_version_hook") +extern const char *const apba__; #define ARGP_PROGRAM_BUG_ADDRESS_DEF \ const char *const apba__ __asm ("argp_program_bug_address") diff --git a/lib/system.h b/lib/system.h index bbbe06c4..1c914efc 100644 --- a/lib/system.h +++ b/lib/system.h @@ -39,7 +39,7 @@ #include <stdarg.h> #include <stdlib.h> -/* System dependend headers */ +/* System dependent headers */ #include <byteswap.h> #include <endian.h> #include <sys/mman.h> diff --git a/libasm/ChangeLog b/libasm/ChangeLog index ce0f24f4..f23d5914 100644 --- a/libasm/ChangeLog +++ b/libasm/ChangeLog @@ -1,3 +1,13 @@ +2023-02-17 Mark Wielaard <mark@klomp.org> + + * asm_end.c (free_section): free scnp->content last. + +2022-12-20 Mark Wielaard <mark@klomp.org> + + * disasm_begin.c: Include libeblP.h. + * disasm_cb.c: Likewise. + * bpf_disasm.c: Likewise and include common.h. + 2022-10-21 Yonggang Luo <luoyonggang@gmail.com> * asm_abort.c: Don't include unistd.h. diff --git a/libasm/Makefile.am b/libasm/Makefile.am index c2b54811..1e6b63e8 100644 --- a/libasm/Makefile.am +++ b/libasm/Makefile.am @@ -64,7 +64,8 @@ libasm_so_LIBS = libasm_pic.a libasm.so: $(srcdir)/libasm.map $(libasm_so_LIBS) $(libasm_so_DEPS) $(AM_V_CCLD)$(LINK) $(dso_LDFLAGS) -o $@ \ -Wl,--soname,$@.$(VERSION) \ - -Wl,--version-script,$<,--no-undefined \ + -Wl,--version-script,$< \ + $(NO_UNDEFINED) \ -Wl,--whole-archive $(libasm_so_LIBS) -Wl,--no-whole-archive \ $(libasm_so_LDLIBS) @$(textrel_check) diff --git a/libasm/asm_end.c b/libasm/asm_end.c index c06d2366..29165ac4 100644 --- a/libasm/asm_end.c +++ b/libasm/asm_end.c @@ -541,16 +541,18 @@ free_section (AsmScn_t *scnp) if (scnp->subnext != NULL) free_section (scnp->subnext); + /* This is a circular single linked list. */ struct AsmData *data = scnp->content; if (data != NULL) - do - { - oldp = data; - data = data->next; - free (oldp); - } - while (oldp != scnp->content); - + { + while (data != scnp->content) + { + oldp = data; + data = data->next; + free (oldp); + } + free (scnp->content); + } free (scnp); } diff --git a/libasm/asm_newscn.c b/libasm/asm_newscn.c index d258d969..f28c40f9 100644 --- a/libasm/asm_newscn.c +++ b/libasm/asm_newscn.c @@ -41,19 +41,25 @@ /* Memory for the default pattern. The type uses a flexible array - which does work well with a static initializer. So we play some - dirty tricks here. */ -static const struct + which does work well with a static initializer. Work around this by + wrapping it in a union, whose second member is a char array 1 byte larger + than struct FillPattern. According to 6.7.9, this does what we need: + + If an object that has static or thread storage duration is not + initialized explicitly, then ... if it is a union, the first named + member is initialized (recursively) according to these rules, and + any padding is initialized to zero bits. */ + +static const union { struct FillPattern pattern; - char zero; + char zeroes[sizeof(struct FillPattern) + 1]; } xdefault_pattern = { .pattern = { .len = 1 }, - .zero = '\0' }; const struct FillPattern *__libasm_default_pattern = &xdefault_pattern.pattern; diff --git a/libasm/disasm_begin.c b/libasm/disasm_begin.c index cb10f66e..78db90c7 100644 --- a/libasm/disasm_begin.c +++ b/libasm/disasm_begin.c @@ -34,7 +34,7 @@ #include <stdlib.h> #include "libasmP.h" -#include "../libebl/libeblP.h" +#include "libeblP.h" DisasmCtx_t * diff --git a/libasm/disasm_cb.c b/libasm/disasm_cb.c index 80f8b25b..9353e2e5 100644 --- a/libasm/disasm_cb.c +++ b/libasm/disasm_cb.c @@ -33,7 +33,7 @@ #include <string.h> #include "libasmP.h" -#include "../libebl/libeblP.h" +#include "libeblP.h" struct symtoken diff --git a/libcpu/Android.bp b/libcpu/Android.bp index b36ac5f2..13b72553 100644 --- a/libcpu/Android.bp +++ b/libcpu/Android.bp @@ -40,6 +40,9 @@ cc_binary_host { "i386_lex.l", "i386_gendis.c", ], + generated_headers: [ + "i386_mnemonics", + ], yacc: { flags: ["-pi386_",] }, diff --git a/libcpu/ChangeLog b/libcpu/ChangeLog index 06ffe02f..d14cd237 100644 --- a/libcpu/ChangeLog +++ b/libcpu/ChangeLog @@ -1,3 +1,26 @@ +2022-12-18 Yonggang Luo <luoyonggang@gmail.com> + + * i386_mne.h: New file, extracted from i386_disasm.c. + * Makefile.am (noinst_HEADERS): Add i386_mne.h. + (i386_parse_CFLAGS): Removed. + * i386_disasm.c: Include i386_mne.h. + * i386_parse.y: Include i386_mne.h. + (instrtable_out): Use MNE_COUNT instead of NMNES. + +2022-12-18 Yonggang Luo <luoyonggang@gmail.com> + + * i386_disasm.c (i386_disasm): Use __asm instead of asm. + +2022-12-20 Mark Wielaard <mark@klomp.org> + + * bpf_disasm.c: Include common.h and libeblP.h. + * i386_disasm.c: Include libeblP.h. + * riscv_disasm.c: Likewise. + +2022-10-21 Yonggang Luo <luoyonggang@gmail.com> + + * i386_data.h: Define FCT_mod$64r_m as FCT_mod$r_m for i386. + 2022-10-21 Yonggang Luo <luoyonggang@gmail.com> * i386_disasm.c: Don't include endian.h. diff --git a/libcpu/Makefile.am b/libcpu/Makefile.am index 57d0a164..4ba1be56 100644 --- a/libcpu/Makefile.am +++ b/libcpu/Makefile.am @@ -40,7 +40,7 @@ AM_YFLAGS = -p$(<F:parse.y=) noinst_LIBRARIES = libcpu.a libcpu_pic.a -noinst_HEADERS = i386_dis.h x86_64_dis.h +noinst_HEADERS = i386_dis.h i386_mne.h x86_64_dis.h libcpu_a_SOURCES = i386_disasm.c x86_64_disasm.c bpf_disasm.c riscv_disasm.c @@ -92,7 +92,6 @@ libeu = ../lib/libeu.a i386_lex_CFLAGS = -Wno-unused-label -Wno-unused-function -Wno-sign-compare \ -Wno-implicit-fallthrough i386_parse.o: i386_parse.c i386.mnemonics -i386_parse_CFLAGS = -DNMNES="`wc -l < i386.mnemonics`" i386_lex.o: i386_parse.h i386_gendis_LDADD = $(libeu) -lm $(obstack_LIBS) diff --git a/libcpu/bpf_disasm.c b/libcpu/bpf_disasm.c index 62643c81..dabd8a4e 100644 --- a/libcpu/bpf_disasm.c +++ b/libcpu/bpf_disasm.c @@ -37,8 +37,8 @@ #include <inttypes.h> #include "bpf.h" -#include "../libelf/common.h" -#include "../libebl/libeblP.h" +#include "common.h" +#include "libeblP.h" static const char class_string[8][8] = { [BPF_LD] = "ld", diff --git a/libcpu/i386_data.h b/libcpu/i386_data.h index 06356b8a..fe3c4ae1 100644 --- a/libcpu/i386_data.h +++ b/libcpu/i386_data.h @@ -1153,7 +1153,7 @@ FCT_mod$64r_m (struct output_data *d) return general_mod$r_m (d); } #else -static typeof (FCT_mod$r_m) FCT_mod$64r_m __attribute__ ((alias ("FCT_mod$r_m"))); +#define FCT_mod$64r_m FCT_mod$r_m #endif diff --git a/libcpu/i386_disasm.c b/libcpu/i386_disasm.c index 599d1654..dec62bfa 100644 --- a/libcpu/i386_disasm.c +++ b/libcpu/i386_disasm.c @@ -41,15 +41,12 @@ #include <stdlib.h> #include <string.h> -#include "../libebl/libeblP.h" +#include "libeblP.h" #define MACHINE_ENCODING LITTLE_ENDIAN #include "memory-access.h" - -#ifndef MNEFILE -# define MNEFILE "i386.mnemonics" -#endif +#include "i386_mne.h" #define MNESTRFIELD(line) MNESTRFIELD1 (line) #define MNESTRFIELD1(line) str##line @@ -71,15 +68,6 @@ static const union mnestr_t } }; -/* The index can be stored in the instrtab. */ -enum - { -#define MNE(name) MNE_##name, -#include MNEFILE -#undef MNE - MNE_INVALID - }; - static const unsigned short int mneidx[] = { #define MNE(name) \ @@ -480,8 +468,8 @@ i386_disasm (Ebl *ebl __attribute__((unused)), /* gcc is not clever enough to see the following variables are not used uninitialized. */ - asm ("" - : "=mr" (opoff), "=mr" (correct_prefix), "=mr" (codep), + __asm ("" + : "=mr" (opoff), "=mr" (correct_prefix), "=mr" (codep), "=mr" (next_curr), "=mr" (len)); } diff --git a/libcpu/i386_mne.h b/libcpu/i386_mne.h new file mode 100644 index 00000000..d5157515 --- /dev/null +++ b/libcpu/i386_mne.h @@ -0,0 +1,46 @@ +/* Disassembler for x86, MNE enums. + Copyright (C) 2007, 2008, 2009, 2011 Red Hat, Inc. + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of either + + * the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at + your option) any later version + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at + your option) any later version + + or both in parallel, as here. + + elfutils is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received copies of the GNU General Public License and + the GNU Lesser General Public License along with this program. If + not, see <http://www.gnu.org/licenses/>. */ + +#ifndef _I386_MNE_H +#define _I386_MNE_H 1 + +#ifndef MNEFILE +# define MNEFILE "i386.mnemonics" +#endif + +/* The index can be stored in the instrtab. */ +enum + { +#define MNE(name) MNE_##name, +#include MNEFILE +#undef MNE + MNE_INVALID, + MNE_COUNT = MNE_INVALID, + }; + +#endif /* i386_mne.h */ diff --git a/libcpu/i386_parse.y b/libcpu/i386_parse.y index d2236d59..459684c6 100644 --- a/libcpu/i386_parse.y +++ b/libcpu/i386_parse.y @@ -46,6 +46,8 @@ #include <libeu.h> #include <system.h> +#include "i386_mne.h" + #define obstack_chunk_alloc xmalloc #define obstack_chunk_free free @@ -1107,11 +1109,6 @@ print_op_fct (const void *nodep, VISIT value, } } - -#if NMNES < 2 -# error "bogus NMNES value" -#endif - static void instrtable_out (void) { @@ -1123,7 +1120,7 @@ instrtable_out (void) fprintf (outfile, "#define MNEMONIC_BITS %zu\n", best_mnemonic_bits); #else fprintf (outfile, "#define MNEMONIC_BITS %ld\n", - lrint (ceil (log2 (NMNES)))); + lrint (ceil (log2 (MNE_COUNT)))); #endif fprintf (outfile, "#define SUFFIX_BITS %d\n", nbitsuf); for (int i = 0; i < 3; ++i) diff --git a/libcpu/riscv_disasm.c b/libcpu/riscv_disasm.c index 7175c077..823fe9ca 100644 --- a/libcpu/riscv_disasm.c +++ b/libcpu/riscv_disasm.c @@ -39,7 +39,7 @@ #include <stdlib.h> #include <string.h> -#include "../libebl/libeblP.h" +#include "libeblP.h" #define MACHINE_ENCODING LITTLE_ENDIAN #include "memory-access.h" diff --git a/libdw/ChangeLog b/libdw/ChangeLog index 3c595a3d..406310ef 100644 --- a/libdw/ChangeLog +++ b/libdw/ChangeLog @@ -1,3 +1,63 @@ +2023-02-22 Mark Wielaard <mark@klomp.org> + + * dwarf_getscopes.c (origin_match): Don't free a->scopes. + (dwarf_getscopes): Free a->scopes on error. + +2023-02-20 Mark Wielaard <mark@klomp.org> + + * dwarf_begin_elf.c (check_section): Use elf_rawdata. + +2023-02-14 Mark Wielaard <mark@klomp.org> + + * dwarf_getlocation.c (__libdw_intern_expression): Correct check + for deref_type. + +2023-02-10 Mark Wielaard <mark@klomp.org> + + * dwarf_getlocation.c (__libdw_intern_expression): Handle + DW_OP_GNU_uninit. + +2023-02-12 Mark Wielaard <mark@klomp.org> + + * cfi.c (execute_cfi): Add cfi_asser before reading second lib128. + * dwarf_chld.c (__libdw_find_attr): Check readp >= endp before + calling get_uleb128. + * dwarf_frame_register.c (dwarf_frame_register): Likewise for + p >= end. + * dwarf_getabbrev.c (__libdw_getabbrev): Add comment about check. + * dwarf_getlocation.c (__libdw_intern_expression): Update check to + account for both the number and uleb128. + * encoded-value.h (read_encoded_value): Check p >= end for + DW_EH_PE_(u|s)leb128. + * fde.c (intern_fde): Check len can be read as uleb128. + * libdw_form.c (__libdw_form_val_compute_len): Check valp >= endp + before get_uleb128. + +2023-01-22 Mark Wielaard <mark@klomp.org> + + * dwarf_getscopes.c (pc_record): Return nscopes when done. + (dwarf_getscopes): Call __libdw_visit_scopes with + inlined_origin CU. + +2022-12-20 Mark Wielaard <mark@klomp.org> + + * Makefile.am (AM_CPPFLAGS): Add -I$(srcdir)/../libebl. + * cfi.c: Include libebl.h. + * encoded-value.h: Likewise. + * frame-cache.h: Likewise. + +2022-10-21 Yonggang Luo <luoyonggang@gmail.com> + + * memory-access.h (get_uleb128_step): Use __typeof. + (get_sleb128_step): Likewise. + (__libdw_get_sleb128) Likewise. + (__libdw_get_sleb128_unchecked): Likewise. + +2022-11-03 Mark Wielaard <mark@klomp.org> + + * dwarf_next_cfi.c (dwarf_next_cfi): Don't dereference and assign + bytes. + 2022-10-21 Yonggang Luo <luoyonggang@gmail.com> * dwarf_begin_elf.h: Don't include unistd.h and endian.h. diff --git a/libdw/Makefile.am b/libdw/Makefile.am index 4fda33bd..e548f38c 100644 --- a/libdw/Makefile.am +++ b/libdw/Makefile.am @@ -31,7 +31,7 @@ include $(top_srcdir)/config/eu.am if BUILD_STATIC AM_CFLAGS += $(fpic_CFLAGS) endif -AM_CPPFLAGS += -I$(srcdir)/../libelf -I$(srcdir)/../libdwelf -pthread +AM_CPPFLAGS += -I$(srcdir)/../libebl -I$(srcdir)/../libelf -I$(srcdir)/../libdwelf -pthread VERSION = 1 lib_LIBRARIES = libdw.a @@ -114,7 +114,8 @@ libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(fts_LIBS) $(obstack_ libdw.so: $(srcdir)/libdw.map $(libdw_so_LIBS) $(libdw_so_DEPS) $(AM_V_CCLD)$(LINK) $(dso_LDFLAGS) -o $@ \ -Wl,--soname,$@.$(VERSION),--enable-new-dtags \ - -Wl,--version-script,$<,--no-undefined \ + -Wl,--version-script,$< \ + $(NO_UNDEFINED) \ -Wl,--whole-archive $(libdw_so_LIBS) -Wl,--no-whole-archive \ $(libdw_so_LDLIBS) @$(textrel_check) diff --git a/libdw/cfi.c b/libdw/cfi.c index a73fb03f..a7174405 100644 --- a/libdw/cfi.c +++ b/libdw/cfi.c @@ -31,7 +31,7 @@ #endif #include <dwarf.h> -#include "../libebl/libebl.h" +#include "libebl.h" #include "cfi.h" #include "memory-access.h" #include "encoded-value.h" @@ -239,6 +239,7 @@ execute_cfi (Dwarf_CFI *cache, case DW_CFA_offset_extended_sf: get_uleb128 (operand, program, end); + cfi_assert (program < end); get_sleb128 (sf_offset, program, end); offset_extended_sf: offset = sf_offset * cie->data_alignment_factor; @@ -294,6 +295,7 @@ execute_cfi (Dwarf_CFI *cache, get_uleb128 (regno, program, end); /* DW_FORM_block is a ULEB128 length followed by that many bytes. */ offset = program - (const uint8_t *) cache->data->d.d_buf; + cfi_assert (program < end); get_uleb128 (operand, program, end); cfi_assert (operand <= (Dwarf_Word) (end - program)); program += operand; diff --git a/libdw/dwarf_begin_elf.c b/libdw/dwarf_begin_elf.c index 8fcef335..92d76d24 100644 --- a/libdw/dwarf_begin_elf.c +++ b/libdw/dwarf_begin_elf.c @@ -1,5 +1,6 @@ /* Create descriptor from ELF descriptor for processing file. Copyright (C) 2002-2011, 2014, 2015, 2017, 2018 Red Hat, Inc. + Copyright (C) 2023, Mark J. Wielaard <mark@klomp.org> This file is part of elfutils. This file is free software; you can redistribute it and/or modify @@ -70,6 +71,30 @@ static const char dwarf_scnnames[IDX_last][19] = }; #define ndwarf_scnnames (sizeof (dwarf_scnnames) / sizeof (dwarf_scnnames[0])) +/* Map from section index to string section index. + Non-string sections should have STR_SCN_IDX_last. */ +static const enum string_section_index scn_to_string_section_idx[IDX_last] = +{ + [IDX_debug_info] = STR_SCN_IDX_last, + [IDX_debug_types] = STR_SCN_IDX_last, + [IDX_debug_abbrev] = STR_SCN_IDX_last, + [IDX_debug_addr] = STR_SCN_IDX_last, + [IDX_debug_aranges] = STR_SCN_IDX_last, + [IDX_debug_line] = STR_SCN_IDX_last, + [IDX_debug_line_str] = STR_SCN_IDX_debug_line_str, + [IDX_debug_frame] = STR_SCN_IDX_last, + [IDX_debug_loc] = STR_SCN_IDX_last, + [IDX_debug_loclists] = STR_SCN_IDX_last, + [IDX_debug_pubnames] = STR_SCN_IDX_last, + [IDX_debug_str] = STR_SCN_IDX_debug_str, + [IDX_debug_str_offsets] = STR_SCN_IDX_last, + [IDX_debug_macinfo] = STR_SCN_IDX_last, + [IDX_debug_macro] = STR_SCN_IDX_last, + [IDX_debug_ranges] = STR_SCN_IDX_last, + [IDX_debug_rnglists] = STR_SCN_IDX_last, + [IDX_gnu_debugaltlink] = STR_SCN_IDX_last +}; + static enum dwarf_type scn_dwarf_type (Dwarf *result, size_t shstrndx, Elf_Scn *scn) { @@ -218,8 +243,8 @@ check_section (Dwarf *result, size_t shstrndx, Elf_Scn *scn, bool inscngrp) } } - /* Get the section data. */ - Elf_Data *data = elf_getdata (scn, NULL); + /* Get the section data. Should be raw bytes, no conversion needed. */ + Elf_Data *data = elf_rawdata (scn, NULL); if (data == NULL) goto err; @@ -230,6 +255,19 @@ check_section (Dwarf *result, size_t shstrndx, Elf_Scn *scn, bool inscngrp) /* We can now read the section data into results. */ result->sectiondata[cnt] = data; + /* If the section contains string data, we want to know a size of a prefix + where any string will be null-terminated. */ + enum string_section_index string_section_idx = scn_to_string_section_idx[cnt]; + if (string_section_idx < STR_SCN_IDX_last) + { + size_t size = data->d_size; + /* Reduce the size by the number of non-zero bytes at the end of the + section. */ + while (size > 0 && *((const char *) data->d_buf + size - 1) != '\0') + --size; + result->string_section_size[string_section_idx] = size; + } + return result; } diff --git a/libdw/dwarf_child.c b/libdw/dwarf_child.c index c8c8bb61..96a0d608 100644 --- a/libdw/dwarf_child.c +++ b/libdw/dwarf_child.c @@ -73,10 +73,13 @@ __libdw_find_attr (Dwarf_Die *die, unsigned int search_name, if (attr_form == DW_FORM_indirect) { + if (readp >= endp) + goto invalid; get_uleb128 (attr_form, readp, endp); if (attr_form == DW_FORM_indirect || attr_form == DW_FORM_implicit_const) { + invalid: __libdw_seterrno (DWARF_E_INVALID_DWARF); return NULL; } diff --git a/libdw/dwarf_formstring.c b/libdw/dwarf_formstring.c index c3e892a8..0ee42411 100644 --- a/libdw/dwarf_formstring.c +++ b/libdw/dwarf_formstring.c @@ -61,6 +61,9 @@ dwarf_formstring (Dwarf_Attribute *attrp) Elf_Data *data = ((attrp->form == DW_FORM_line_strp) ? dbg_ret->sectiondata[IDX_debug_line_str] : dbg_ret->sectiondata[IDX_debug_str]); + size_t data_size = ((attrp->form == DW_FORM_line_strp) + ? dbg_ret->string_section_size[STR_SCN_IDX_debug_line_str] + : dbg_ret->string_section_size[STR_SCN_IDX_debug_str]); if (data == NULL) { __libdw_seterrno ((attrp->form == DW_FORM_line_strp) @@ -171,7 +174,7 @@ dwarf_formstring (Dwarf_Attribute *attrp) else off = read_8ubyte_unaligned (dbg, datap); - if (off > dbg->sectiondata[IDX_debug_str]->d_size) + if (off >= data_size) goto invalid_offset; } diff --git a/libdw/dwarf_frame_register.c b/libdw/dwarf_frame_register.c index bcf3fa03..a6b7c4c1 100644 --- a/libdw/dwarf_frame_register.c +++ b/libdw/dwarf_frame_register.c @@ -100,6 +100,11 @@ dwarf_frame_register (Dwarf_Frame *fs, int regno, Dwarf_Op ops_mem[3], const uint8_t *p = fs->cache->data->d.d_buf + reg->value; const uint8_t *end = (fs->cache->data->d.d_buf + fs->cache->data->d.d_size); + if (p >= end) + { + __libdw_seterrno (DWARF_E_INVALID_DWARF); + return -1; + } get_uleb128 (block.length, p, end); block.data = (void *) p; diff --git a/libdw/dwarf_getabbrev.c b/libdw/dwarf_getabbrev.c index 13bee493..5b02333f 100644 --- a/libdw/dwarf_getabbrev.c +++ b/libdw/dwarf_getabbrev.c @@ -77,6 +77,7 @@ __libdw_getabbrev (Dwarf *dbg, struct Dwarf_CU *cu, Dwarf_Off offset, + dbg->sectiondata[IDX_debug_abbrev]->d_size); const unsigned char *start_abbrevp = abbrevp; unsigned int code; + // We start off with abbrevp at offset, which is checked above. get_uleb128 (code, abbrevp, end); /* Check whether this code is already in the hash table. */ diff --git a/libdw/dwarf_getlocation.c b/libdw/dwarf_getlocation.c index d0d78163..553fdc98 100644 --- a/libdw/dwarf_getlocation.c +++ b/libdw/dwarf_getlocation.c @@ -396,6 +396,7 @@ __libdw_intern_expression (Dwarf *dbg, bool other_byte_order, case DW_OP_form_tls_address: case DW_OP_GNU_push_tls_address: case DW_OP_stack_value: + case DW_OP_GNU_uninit: /* No operand. */ break; diff --git a/libdw/dwarf_getscopes.c b/libdw/dwarf_getscopes.c index 5662eecf..ce073b13 100644 --- a/libdw/dwarf_getscopes.c +++ b/libdw/dwarf_getscopes.c @@ -1,5 +1,6 @@ /* Return scope DIEs containing PC address. Copyright (C) 2005, 2007, 2015 Red Hat, Inc. + Copyright (C) 2023 Mark J. Wielaard <mark@klomp.org> This file is part of elfutils. This file is free software; you can redistribute it and/or modify @@ -100,7 +101,7 @@ origin_match (unsigned int depth, struct Dwarf_Die_Chain *die, void *arg) Dwarf_Die *scopes = realloc (a->scopes, nscopes * sizeof scopes[0]); if (scopes == NULL) { - free (a->scopes); + /* a->scopes will be freed by dwarf_getscopes on error. */ __libdw_seterrno (DWARF_E_NOMEM); return -1; } @@ -173,12 +174,8 @@ pc_record (unsigned int depth, struct Dwarf_Die_Chain *die, void *arg) /* Not there yet. */ return 0; - /* Now we are in a scope that contains the concrete inlined instance. - Search it for the inline function's abstract definition. - If we don't find it, return to search the containing scope. - If we do find it, the nonzero return value will bail us out - of the postorder traversal. */ - return __libdw_visit_scopes (depth, die, NULL, &origin_match, NULL, a); + /* This is the innermost inline scope, we are done here. */ + return a->nscopes; } @@ -193,11 +190,18 @@ dwarf_getscopes (Dwarf_Die *cudie, Dwarf_Addr pc, Dwarf_Die **scopes) int result = __libdw_visit_scopes (0, &cu, NULL, &pc_match, &pc_record, &a); - if (result == 0 && a.scopes != NULL) - result = __libdw_visit_scopes (0, &cu, NULL, &origin_match, NULL, &a); + if (result >= 0 && a.scopes != NULL && a.inlined > 0) + { + /* We like the find the inline function's abstract definition + scope, but that might be in a different CU. */ + cu.die = CUDIE (a.inlined_origin.cu); + result = __libdw_visit_scopes (0, &cu, NULL, &origin_match, NULL, &a); + } if (result > 0) *scopes = a.scopes; + else if (result < 0) + free (a.scopes); return result; } diff --git a/libdw/dwarf_getsrclines.c b/libdw/dwarf_getsrclines.c index 2c1d7a40..69e10c7b 100644 --- a/libdw/dwarf_getsrclines.c +++ b/libdw/dwarf_getsrclines.c @@ -129,6 +129,12 @@ add_new_line (struct line_state *state, struct linelist *new_line) return true; \ } while (0) + /* Same as above, but don't flag as "invalid" just use truncated + value. Used for discriminator for which llvm might use a value + that won't fit 24 bits. */ +#define SETX(field) \ + new_line->line.field = state->field; \ + SET (addr); SET (op_index); SET (file); @@ -140,7 +146,7 @@ add_new_line (struct line_state *state, struct linelist *new_line) SET (prologue_end); SET (epilogue_begin); SET (isa); - SET (discriminator); + SETX (discriminator); SET (context); SET (function_name); @@ -572,6 +578,8 @@ read_srclines (Dwarf *dbg, goto invalid_data; size_t nfiles; + if ((size_t) (lineendp - linep) < 1) + goto invalid_data; get_uleb128 (nfiles, linep, lineendp); if (nforms == 0 && nfiles != 0) diff --git a/libdw/dwarf_next_cfi.c b/libdw/dwarf_next_cfi.c index 23b16885..be08984f 100644 --- a/libdw/dwarf_next_cfi.c +++ b/libdw/dwarf_next_cfi.c @@ -226,7 +226,7 @@ dwarf_next_cfi (const unsigned char e_ident[], if (sized_augmentation) { /* Skip FDE address encoding byte. */ - encoding = *bytes++; + bytes++; continue; } break; diff --git a/libdw/encoded-value.h b/libdw/encoded-value.h index f0df4cec..4566ef96 100644 --- a/libdw/encoded-value.h +++ b/libdw/encoded-value.h @@ -32,7 +32,7 @@ #include <dwarf.h> #include <stdlib.h> #include "libdwP.h" -#include "../libelf/common.h" +#include "common.h" /* Returns zero if the value is omitted, the encoding is unknown or @@ -196,10 +196,14 @@ read_encoded_value (const Dwarf_CFI *cache, uint8_t encoding, break; case DW_EH_PE_uleb128: + if (*p >= endp) + goto invalid_data; get_uleb128 (value, *p, endp); break; case DW_EH_PE_sleb128: + if (*p >= endp) + goto invalid_data; get_sleb128 (value, *p, endp); break; diff --git a/libdw/fde.c b/libdw/fde.c index f5f6fbe1..73d551b6 100644 --- a/libdw/fde.c +++ b/libdw/fde.c @@ -104,9 +104,12 @@ intern_fde (Dwarf_CFI *cache, const Dwarf_FDE *entry) /* The CIE augmentation says the FDE has a DW_FORM_block before its actual instruction stream. */ Dwarf_Word len; + if (fde->instructions >= fde->instructions_end) + goto invalid; get_uleb128 (len, fde->instructions, fde->instructions_end); if ((Dwarf_Word) (fde->instructions_end - fde->instructions) < len) { + invalid: free (fde); __libdw_seterrno (DWARF_E_INVALID_DWARF); return NULL; diff --git a/libdw/frame-cache.c b/libdw/frame-cache.c index 5b6afb5d..683f7f17 100644 --- a/libdw/frame-cache.c +++ b/libdw/frame-cache.c @@ -30,7 +30,7 @@ # include <config.h> #endif -#include "../libebl/libebl.h" +#include "libebl.h" #include "cfi.h" #include <search.h> #include <stdlib.h> diff --git a/libdw/libdwP.h b/libdw/libdwP.h index 961fa4e7..5cbdc279 100644 --- a/libdw/libdwP.h +++ b/libdw/libdwP.h @@ -86,6 +86,13 @@ enum IDX_last }; +/* Valid indices for the string section's information. */ +enum string_section_index + { + STR_SCN_IDX_debug_line_str, + STR_SCN_IDX_debug_str, + STR_SCN_IDX_last + }; /* Error values. */ enum @@ -169,6 +176,10 @@ struct Dwarf /* The section data. */ Elf_Data *sectiondata[IDX_last]; + /* Size of a prefix of string sections, where any string will be + null-terminated. */ + size_t string_section_size[STR_SCN_IDX_last]; + /* True if the file has a byte order different from the host. */ bool other_byte_order; diff --git a/libdw/libdw_form.c b/libdw/libdw_form.c index c83dfb39..40045440 100644 --- a/libdw/libdw_form.c +++ b/libdw/libdw_form.c @@ -88,6 +88,8 @@ __libdw_form_val_compute_len (struct Dwarf_CU *cu, unsigned int form, case DW_FORM_block: case DW_FORM_exprloc: + if (valp >= endp) + goto invalid; get_uleb128 (u128, valp, endp); result = u128 + (valp - startp); break; @@ -111,6 +113,8 @@ __libdw_form_val_compute_len (struct Dwarf_CU *cu, unsigned int form, case DW_FORM_strx: case DW_FORM_GNU_addr_index: case DW_FORM_GNU_str_index: + if (valp >= endp) + goto invalid; get_uleb128 (u128, valp, endp); result = valp - startp; break; @@ -119,6 +123,8 @@ __libdw_form_val_compute_len (struct Dwarf_CU *cu, unsigned int form, /* The amount of data to skip in the DIE is the size of the actual FORM data (which is __libdw_form_val_len) plus the size of the uleb128 encoding that FORM (which is valp - startp). */ + if (valp >= endp) + goto invalid; get_uleb128 (u128, valp, endp); if (*valp == DW_FORM_indirect || *valp == DW_FORM_implicit_const) return (size_t) -1; diff --git a/libdw/memory-access.h b/libdw/memory-access.h index 16c8c851..6d79343c 100644 --- a/libdw/memory-access.h +++ b/libdw/memory-access.h @@ -64,7 +64,7 @@ __libdw_max_len_sleb128 (const unsigned char *addr, const unsigned char *end) #define get_uleb128_step(var, addr, nth) \ do { \ unsigned char __b = *(addr)++; \ - (var) |= (typeof (var)) (__b & 0x7f) << ((nth) * 7); \ + (var) |= (__typeof (var)) (__b & 0x7f) << ((nth) * 7); \ if (likely ((__b & 0x80) == 0)) \ return (var); \ } while (0) @@ -72,13 +72,16 @@ __libdw_max_len_sleb128 (const unsigned char *addr, const unsigned char *end) static inline uint64_t __libdw_get_uleb128 (const unsigned char **addrp, const unsigned char *end) { + const size_t max = __libdw_max_len_uleb128 (*addrp, end); + if (unlikely (max == 0)) + return UINT64_MAX; + uint64_t acc = 0; /* Unroll the first step to help the compiler optimize for the common single-byte case. */ get_uleb128_step (acc, *addrp, 0); - const size_t max = __libdw_max_len_uleb128 (*addrp - 1, end); for (size_t i = 1; i < max; ++i) get_uleb128_step (acc, *addrp, i); /* Other implementations set VALUE to UINT_MAX in this @@ -112,11 +115,11 @@ __libdw_get_uleb128_unchecked (const unsigned char **addrp) #define get_sleb128_step(var, addr, nth) \ do { \ unsigned char __b = *(addr)++; \ - (var) |= (typeof (var)) (__b & 0x7f) << ((nth) * 7); \ + (var) |= (__typeof (var)) (__b & 0x7f) << ((nth) * 7); \ if (likely ((__b & 0x80) == 0)) \ { \ if ((__b & 0x40) != 0) \ - (var) |= - ((typeof (var)) 1 << (((nth) + 1) * 7)); \ + (var) |= - ((__typeof (var)) 1 << (((nth) + 1) * 7)); \ return (var); \ } \ } while (0) @@ -124,6 +127,10 @@ __libdw_get_uleb128_unchecked (const unsigned char **addrp) static inline int64_t __libdw_get_sleb128 (const unsigned char **addrp, const unsigned char *end) { + const size_t max = __libdw_max_len_sleb128 (*addrp, end); + if (unlikely (max == 0)) + return INT64_MAX; + /* Do the work in an unsigned type, but use implementation-defined behavior to cast to signed on return. This avoids some undefined behavior when shifting. */ @@ -133,7 +140,6 @@ __libdw_get_sleb128 (const unsigned char **addrp, const unsigned char *end) for the common single-byte case. */ get_sleb128_step (acc, *addrp, 0); - const size_t max = __libdw_max_len_sleb128 (*addrp - 1, end); for (size_t i = 1; i < max; ++i) get_sleb128_step (acc, *addrp, i); if (*addrp == end) @@ -146,7 +152,7 @@ __libdw_get_sleb128 (const unsigned char **addrp, const unsigned char *end) { /* We only need the low bit of the final byte, and as it is the sign bit, we don't need to do anything else here. */ - acc |= ((typeof (acc)) b) << 7 * max; + acc |= ((__typeof (acc)) b) << 7 * max; return acc; } @@ -179,7 +185,7 @@ __libdw_get_sleb128_unchecked (const unsigned char **addrp) { /* We only need the low bit of the final byte, and as it is the sign bit, we don't need to do anything else here. */ - acc |= ((typeof (acc)) b) << 7 * max; + acc |= ((__typeof (acc)) b) << 7 * max; return acc; } diff --git a/libdwelf/ChangeLog b/libdwelf/ChangeLog index 5d61aa85..1940629f 100644 --- a/libdwelf/ChangeLog +++ b/libdwelf/ChangeLog @@ -1,3 +1,7 @@ +2022-12-20 Mark Wielaard <mark@klomp.org> + + * libdwelfP.h: Include libdwP.h. + 2022-10-21 Yonggang Luo <luoyonggang@gmail.com> * dwelf_elf_begin.c: Don't include unistd.h. diff --git a/libdwelf/libdwelfP.h b/libdwelf/libdwelfP.h index d83c759a..faaf1a20 100644 --- a/libdwelf/libdwelfP.h +++ b/libdwelf/libdwelfP.h @@ -30,7 +30,7 @@ #define _LIBDWELFP_H 1 #include <libdwelf.h> -#include "../libdw/libdwP.h" /* We need its INTDECLs. */ +#include "libdwP.h" /* We need its INTDECLs. */ #include <assert.h> #include <string.h> diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog index 6dd84a6f..daef2828 100644 --- a/libdwfl/ChangeLog +++ b/libdwfl/ChangeLog @@ -1,3 +1,45 @@ +2023-02-06 Mark Wielaard <mark@klomp.org> + + * libdwfl.h: Guard debuginfod_client typedef with + _ELFUTILS_DEBUGINFOD_CLIENT_TYPEDEF. + +2022-12-21 Mark Wielaard <mark@klomp.org> + + * core-file.c: Don't undef _. + * dwfl_segment_report_module.c: Likewise. + * elf-from-memory.c: Likewise. + * open.c: Likewise. + +2022-12-20 Mark Wielaard <mark@klomp.org> + + * Makefile.am (AM_CPPFLAGS): debuginfod.h is in builddir. + * core-file.c: Include libelfP.h. + * cu.c: Include libdwP.h and memory-access.h. + * debuginfod-client.c: Include debuginfod.h. + * dwfl_dwarf_line.c: Include libdwP.h. + * dwfl_lineinfo.c: Include libdwP.h. + * dwfl_module.c: Include cfi.h. + * dwfl_module_dwarf_cfi.c: Include cfi.h. + * dwfl_module_eh_cfi.c: Include cfi.h. + * dwfl_module_getdwarf.c: Include libdwP.h and libelfP.h. + * dwfl_module_getsrc.c: Include libdwP.h. + * dwfl_module_getsrc_file.c: Include libdwP.h. + * dwfl_segment_report_module.c: Include libelfP.h. + * elf-from-memory.c: Include libelfP.h. + * frame_unwind.c: Include dwarf.h. + * libdwflP.h: Include libdwP.h and libdwelfP.h. Don't include + debuginfod.h. + * lines.c: Include libdwP.h. + * link_map.c: Include memory-access.h. + * linux-core-attach.c: Include memory-access.h. + * open.c: Include libelfP.h. + +2022-11-28 Gavin Li <gavin@matician.com> + Mark Wielaard <mark@klomp.org> + + * dwfl_segment_report_module.c (dwfl_segment_report_module): Remove + data size check after read_portion memory_callback. + 2022-10-21 Yonggang Luo <luoyonggang@gmail.com> * argp-std.c: Don't include unistd.h. diff --git a/libdwfl/Makefile.am b/libdwfl/Makefile.am index 3278358d..6b26cd51 100644 --- a/libdwfl/Makefile.am +++ b/libdwfl/Makefile.am @@ -31,7 +31,7 @@ ## include $(top_srcdir)/config/eu.am AM_CPPFLAGS += -I$(srcdir) -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ - -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf -I$(srcdir)/../debuginfod + -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf -I$(builddir)/../debuginfod VERSION = 1 noinst_LIBRARIES = libdwfl.a diff --git a/libdwfl/core-file.c b/libdwfl/core-file.c index cd9b4f38..87c940cb 100644 --- a/libdwfl/core-file.c +++ b/libdwfl/core-file.c @@ -28,8 +28,7 @@ not, see <http://www.gnu.org/licenses/>. */ #include <config.h> -#include "../libelf/libelfP.h" /* For NOTE_ALIGN. */ -#undef _ +#include "libelfP.h" /* For NOTE_ALIGN. */ #include "libdwflP.h" #include <gelf.h> diff --git a/libdwfl/cu.c b/libdwfl/cu.c index 4de66248..b1afb19a 100644 --- a/libdwfl/cu.c +++ b/libdwfl/cu.c @@ -31,8 +31,8 @@ #endif #include "libdwflP.h" -#include "../libdw/libdwP.h" -#include "../libdw/memory-access.h" +#include "libdwP.h" +#include "memory-access.h" #include <search.h> diff --git a/libdwfl/debuginfod-client.c b/libdwfl/debuginfod-client.c index d581daab..882a5eff 100644 --- a/libdwfl/debuginfod-client.c +++ b/libdwfl/debuginfod-client.c @@ -35,6 +35,8 @@ #ifdef ENABLE_LIBDEBUGINFOD +#include "debuginfod.h" + #include <pthread.h> #include <dlfcn.h> diff --git a/libdwfl/dwfl_dwarf_line.c b/libdwfl/dwfl_dwarf_line.c index e22e984c..5084c659 100644 --- a/libdwfl/dwfl_dwarf_line.c +++ b/libdwfl/dwfl_dwarf_line.c @@ -31,7 +31,7 @@ #endif #include "libdwflP.h" -#include "../libdw/libdwP.h" +#include "libdwP.h" Dwarf_Line * dwfl_dwarf_line (Dwfl_Line *line, Dwarf_Addr *bias) diff --git a/libdwfl/dwfl_lineinfo.c b/libdwfl/dwfl_lineinfo.c index 96187128..85c4b314 100644 --- a/libdwfl/dwfl_lineinfo.c +++ b/libdwfl/dwfl_lineinfo.c @@ -31,7 +31,7 @@ #endif #include "libdwflP.h" -#include "../libdw/libdwP.h" +#include "libdwP.h" const char * dwfl_lineinfo (Dwfl_Line *line, Dwarf_Addr *addr, int *linep, int *colp, diff --git a/libdwfl/dwfl_module.c b/libdwfl/dwfl_module.c index 4fbff33e..221d726d 100644 --- a/libdwfl/dwfl_module.c +++ b/libdwfl/dwfl_module.c @@ -31,7 +31,7 @@ #endif #include "libdwflP.h" -#include "../libdw/cfi.h" +#include "cfi.h" #include <search.h> static void diff --git a/libdwfl/dwfl_module_dwarf_cfi.c b/libdwfl/dwfl_module_dwarf_cfi.c index 0e5b4356..05a14f7c 100644 --- a/libdwfl/dwfl_module_dwarf_cfi.c +++ b/libdwfl/dwfl_module_dwarf_cfi.c @@ -31,7 +31,7 @@ #endif #include "libdwflP.h" -#include "../libdw/cfi.h" +#include "cfi.h" Dwarf_CFI * internal_function diff --git a/libdwfl/dwfl_module_eh_cfi.c b/libdwfl/dwfl_module_eh_cfi.c index c296e399..aac6657d 100644 --- a/libdwfl/dwfl_module_eh_cfi.c +++ b/libdwfl/dwfl_module_eh_cfi.c @@ -31,7 +31,7 @@ #endif #include "libdwflP.h" -#include "../libdw/cfi.h" +#include "cfi.h" Dwarf_CFI * dwfl_module_eh_cfi (Dwfl_Module *mod, Dwarf_Addr *bias) diff --git a/libdwfl/dwfl_module_getdwarf.c b/libdwfl/dwfl_module_getdwarf.c index 498c7cd2..9ba499bb 100644 --- a/libdwfl/dwfl_module_getdwarf.c +++ b/libdwfl/dwfl_module_getdwarf.c @@ -34,8 +34,8 @@ #include <inttypes.h> #include <fcntl.h> #include <string.h> -#include "../libdw/libdwP.h" /* DWARF_E_* values are here. */ -#include "../libelf/libelfP.h" +#include "libdwP.h" /* DWARF_E_* values are here. */ +#include "libelfP.h" #include "system.h" static inline Dwfl_Error diff --git a/libdwfl/dwfl_module_getsrc.c b/libdwfl/dwfl_module_getsrc.c index fc99b163..73dbf435 100644 --- a/libdwfl/dwfl_module_getsrc.c +++ b/libdwfl/dwfl_module_getsrc.c @@ -31,7 +31,7 @@ #endif #include "libdwflP.h" -#include "../libdw/libdwP.h" +#include "libdwP.h" Dwfl_Line * dwfl_module_getsrc (Dwfl_Module *mod, Dwarf_Addr addr) diff --git a/libdwfl/dwfl_module_getsrc_file.c b/libdwfl/dwfl_module_getsrc_file.c index cea2ba41..513af6b8 100644 --- a/libdwfl/dwfl_module_getsrc_file.c +++ b/libdwfl/dwfl_module_getsrc_file.c @@ -31,7 +31,7 @@ #endif #include "libdwflP.h" -#include "../libdw/libdwP.h" +#include "libdwP.h" static inline const char * diff --git a/libdwfl/dwfl_segment_report_module.c b/libdwfl/dwfl_segment_report_module.c index 287fc002..3ef62a7d 100644 --- a/libdwfl/dwfl_segment_report_module.c +++ b/libdwfl/dwfl_segment_report_module.c @@ -28,8 +28,7 @@ not, see <http://www.gnu.org/licenses/>. */ #include <config.h> -#include "../libelf/libelfP.h" /* For NOTE_ALIGN4 and NOTE_ALIGN8. */ -#undef _ +#include "libelfP.h" /* For NOTE_ALIGN4 and NOTE_ALIGN8. */ #include "libdwflP.h" #include "common.h" @@ -441,17 +440,6 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name, start + phoff, xlatefrom.d_size)) goto out; - /* ph_buffer_size will be zero if we got everything from the initial - buffer, otherwise it will be the size of the new buffer that - could be read. */ - if (ph_buffer_size != 0) - { - phnum = ph_buffer_size / phentsize; - if (phnum == 0) - goto out; - xlatefrom.d_size = ph_buffer_size; - } - xlatefrom.d_buf = ph_buffer; bool class32 = ei_class == ELFCLASS32; @@ -533,18 +521,12 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name, /* We calculate from the p_offset of the note segment, because we don't yet know the bias for its p_vaddr. */ const GElf_Addr note_vaddr = start + offset; - void *data; - size_t data_size; + void *data = NULL; + size_t data_size = 0; if (read_portion (&read_state, &data, &data_size, start, segment, note_vaddr, filesz)) continue; /* Next header */ - /* data_size will be zero if we got everything from the initial - buffer, otherwise it will be the size of the new buffer that - could be read. */ - if (data_size != 0) - filesz = data_size; - if (filesz > SIZE_MAX / sizeof (Elf32_Nhdr)) continue; @@ -821,12 +803,6 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name, && ! read_portion (&read_state, &dyn_data, &dyn_data_size, start, segment, dyn_vaddr, dyn_filesz)) { - /* dyn_data_size will be zero if we got everything from the initial - buffer, otherwise it will be the size of the new buffer that - could be read. */ - if (dyn_data_size != 0) - dyn_filesz = dyn_data_size; - if ((dyn_filesz / dyn_entsize) == 0 || dyn_filesz > (SIZE_MAX / dyn_entsize)) goto out; diff --git a/libdwfl/elf-from-memory.c b/libdwfl/elf-from-memory.c index a0ef0014..e9b330fd 100644 --- a/libdwfl/elf-from-memory.c +++ b/libdwfl/elf-from-memory.c @@ -27,8 +27,7 @@ not, see <http://www.gnu.org/licenses/>. */ #include <config.h> -#include "../libelf/libelfP.h" -#undef _ +#include "libelfP.h" #include "libdwflP.h" diff --git a/libdwfl/frame_unwind.c b/libdwfl/frame_unwind.c index 8185d84b..1e2f0255 100644 --- a/libdwfl/frame_unwind.c +++ b/libdwfl/frame_unwind.c @@ -33,7 +33,7 @@ #include "cfi.h" #include <stdlib.h> #include "libdwflP.h" -#include "../libdw/dwarf.h" +#include "dwarf.h" #include <system.h> /* Maximum number of DWARF expression stack slots before returning an error. */ diff --git a/libdwfl/libdwfl.h b/libdwfl/libdwfl.h index 9114f7f0..49ad6664 100644 --- a/libdwfl/libdwfl.h +++ b/libdwfl/libdwfl.h @@ -50,7 +50,10 @@ typedef struct Dwfl_Thread Dwfl_Thread; typedef struct Dwfl_Frame Dwfl_Frame; /* Handle for debuginfod-client connection. */ +#ifndef _ELFUTILS_DEBUGINFOD_CLIENT_TYPEDEF typedef struct debuginfod_client debuginfod_client; +#define _ELFUTILS_DEBUGINFOD_CLIENT_TYPEDEF 1 +#endif /* Callbacks. */ typedef struct diff --git a/libdwfl/libdwflP.h b/libdwfl/libdwflP.h index 011b5de9..cdc528d0 100644 --- a/libdwfl/libdwflP.h +++ b/libdwfl/libdwflP.h @@ -38,12 +38,8 @@ #include <stdlib.h> #include <string.h> -#include "../libdw/libdwP.h" /* We need its INTDECLs. */ -#include "../libdwelf/libdwelfP.h" - -#ifdef ENABLE_LIBDEBUGINFOD -#include "../debuginfod/debuginfod.h" -#endif +#include "libdwP.h" /* We need its INTDECLs. */ +#include "libdwelfP.h" typedef struct Dwfl_Process Dwfl_Process; diff --git a/libdwfl/lines.c b/libdwfl/lines.c index 128c0c97..a7f3004a 100644 --- a/libdwfl/lines.c +++ b/libdwfl/lines.c @@ -31,7 +31,7 @@ #endif #include "libdwflP.h" -#include "../libdw/libdwP.h" +#include "libdwP.h" Dwfl_Error internal_function diff --git a/libdwfl/link_map.c b/libdwfl/link_map.c index 7ec7eca1..06d85eb6 100644 --- a/libdwfl/link_map.c +++ b/libdwfl/link_map.c @@ -29,7 +29,7 @@ #include <config.h> #include "libdwflP.h" -#include "../libdw/memory-access.h" +#include "memory-access.h" #include "system.h" #include <fcntl.h> diff --git a/libdwfl/linux-core-attach.c b/libdwfl/linux-core-attach.c index ee7afa40..d6f9e971 100644 --- a/libdwfl/linux-core-attach.c +++ b/libdwfl/linux-core-attach.c @@ -34,7 +34,7 @@ #include <fcntl.h> #include "system.h" -#include "../libdw/memory-access.h" +#include "memory-access.h" struct core_arg { diff --git a/libdwfl/open.c b/libdwfl/open.c index 68b755cd..d0f357ed 100644 --- a/libdwfl/open.c +++ b/libdwfl/open.c @@ -31,8 +31,7 @@ # include <config.h> #endif -#include "../libelf/libelfP.h" -#undef _ +#include "libelfP.h" #include "libdwflP.h" #if !USE_BZLIB @@ -206,12 +205,16 @@ __libdw_open_elf_memory (char *data, size_t size, Elf **elfp, bool archive_ok) { /* It is ok to use `fd == -1` here, because libelf uses it as a value for "no file opened" and code supports working with this value, and also - `never_close_fd == false` is passed to prevent closing non-existant file. + `never_close_fd == false` is passed to prevent closing non-existent file. The only caveat is in `decompress` method, which doesn't support decompressing from memory, so reading compressed zImage using this method won't work. */ int fd = -1; *elfp = elf_memory (data, size); + if (unlikely(*elfp == NULL)) + { + return DWFL_E_LIBELF; + } /* Allow using this ELF as reference for subsequent elf_begin calls. */ (*elfp)->cmd = ELF_C_READ_MMAP_PRIVATE; return libdw_open_elf (&fd, elfp, false, archive_ok, true, false, true); diff --git a/libebl/ChangeLog b/libebl/ChangeLog index 6f55a5e7..519087dc 100644 --- a/libebl/ChangeLog +++ b/libebl/ChangeLog @@ -1,3 +1,12 @@ +2022-12-21 Shahab Vahedi <shahab@synopsys.email> + + * eblopenbackend.c (arc_init): New function declaration. + (machines): Add entry for arc. + +2022-12-02 Hengqi Chen <hengqi.chen@gmail.com> + + * eblopenbackend.c (machines): Add entries for LoongArch. + 2022-10-21 Yonggang Luo <luoyonggang@gmail.com> * eblclosebackend.c: Remove dlfcn.h include. diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c index 02f80653..084a1544 100644 --- a/libebl/eblopenbackend.c +++ b/libebl/eblopenbackend.c @@ -55,6 +55,8 @@ Ebl *m68k_init (Elf *, GElf_Half, Ebl *); Ebl *bpf_init (Elf *, GElf_Half, Ebl *); Ebl *riscv_init (Elf *, GElf_Half, Ebl *); Ebl *csky_init (Elf *, GElf_Half, Ebl *); +Ebl *loongarch_init (Elf *, GElf_Half, Ebl *); +Ebl *arc_init (Elf *, GElf_Half, Ebl *); /* This table should contain the complete list of architectures as far as the ELF specification is concerned. */ @@ -150,6 +152,8 @@ static const struct { riscv_init, "elf_riscv", "riscv", 5, EM_RISCV, ELFCLASS64, ELFDATA2LSB }, { riscv_init, "elf_riscv", "riscv", 5, EM_RISCV, ELFCLASS32, ELFDATA2LSB }, { csky_init, "elf_csky", "csky", 4, EM_CSKY, ELFCLASS32, ELFDATA2LSB }, + { loongarch_init, "elf_loongarch", "loongarch", 9, EM_LOONGARCH, ELFCLASS64, ELFDATA2LSB }, + { arc_init, "elf_arc", "arc", 3, EM_ARCV2, ELFCLASS32, ELFDATA2LSB }, }; #define nmachines (sizeof (machines) / sizeof (machines[0])) diff --git a/libelf/ChangeLog b/libelf/ChangeLog index 8107c71e..8cc3c53c 100644 --- a/libelf/ChangeLog +++ b/libelf/ChangeLog @@ -1,3 +1,16 @@ +2023-03-03 Mark Wielaard <mark@klomp.org> + + * libelf.h: Define ELFCOMPRESS_ZSTD if undefined. + (elf_compress): Document ELFCOMPRESS_ZSTD compression type. + +2023-02-20 Mark Wielaard <mark@klomp.org> + + * gnuhash_xlate.h (elf_cvt_gnuhash): memmove any left over bytes. + +2022-11-30 Mark Wielaard <mark@klomp.org> + + * elf.h: Update from glibc. + 2022-10-28 Mark Wielaard <mark@klomp.org> * elf.h: Update from glibc. diff --git a/libelf/Makefile.am b/libelf/Makefile.am index 560ed45f..aabce43e 100644 --- a/libelf/Makefile.am +++ b/libelf/Makefile.am @@ -106,7 +106,7 @@ libelf_pic_a_SOURCES = am_libelf_pic_a_OBJECTS = $(libelf_a_SOURCES:.c=.os) libelf_so_DEPS = ../lib/libeu.a -libelf_so_LDLIBS = $(libelf_so_DEPS) -lz +libelf_so_LDLIBS = $(libelf_so_DEPS) -lz $(zstd_LIBS) if USE_LOCKS libelf_so_LDLIBS += -lpthread endif @@ -115,7 +115,8 @@ libelf_so_LIBS = libelf_pic.a libelf.so: $(srcdir)/libelf.map $(libelf_so_LIBS) $(libelf_so_DEPS) $(AM_V_CCLD)$(LINK) $(dso_LDFLAGS) -o $@ \ -Wl,--soname,$@.$(VERSION) \ - -Wl,--version-script,$<,--no-undefined \ + -Wl,--version-script,$< \ + $(NO_UNDEFINED) \ -Wl,--whole-archive $(libelf_so_LIBS) -Wl,--no-whole-archive \ $(libelf_so_LDLIBS) @$(textrel_check) diff --git a/libelf/elf.h b/libelf/elf.h index f51300bc..da41bad3 100644 --- a/libelf/elf.h +++ b/libelf/elf.h @@ -4093,8 +4093,11 @@ enum #define R_NDS32_TLS_DESC 119 /* LoongArch ELF Flags */ -#define EF_LARCH_ABI 0x07 -#define EF_LARCH_ABI_LP64D 0x03 +#define EF_LARCH_ABI_MODIFIER_MASK 0x07 +#define EF_LARCH_ABI_SOFT_FLOAT 0x01 +#define EF_LARCH_ABI_SINGLE_FLOAT 0x02 +#define EF_LARCH_ABI_DOUBLE_FLOAT 0x03 +#define EF_LARCH_OBJABI_V1 0x40 /* LoongArch specific dynamic relocations */ #define R_LARCH_NONE 0 @@ -4156,6 +4159,15 @@ enum #define R_LARCH_GNU_VTINHERIT 57 #define R_LARCH_GNU_VTENTRY 58 +/* ARC specific declarations. */ + +/* Processor specific flags for the Ehdr e_flags field. */ +#define EF_ARC_MACH_MSK 0x000000ff +#define EF_ARC_OSABI_MSK 0x00000f00 +#define EF_ARC_ALL_MSK (EF_ARC_MACH_MSK | EF_ARC_OSABI_MSK) + +/* Processor specific values for the Shdr sh_type field. */ +#define SHT_ARC_ATTRIBUTES (SHT_LOPROC + 1) /* ARC attributes section. */ /* ARCompact/ARCv2 specific relocs. */ #define R_ARC_NONE 0x0 @@ -4163,7 +4175,7 @@ enum #define R_ARC_16 0x2 #define R_ARC_24 0x3 #define R_ARC_32 0x4 -#define R_ARC_B26 0x5 + #define R_ARC_B22_PCREL 0x6 #define R_ARC_H30 0x7 #define R_ARC_N8 0x8 @@ -4203,16 +4215,23 @@ enum #define R_ARC_SECTOFF_ME_2 0x2A #define R_ARC_SECTOFF_1 0x2B #define R_ARC_SECTOFF_2 0x2C +#define R_ARC_SDA_12 0x2D +#define R_ARC_SDA16_ST2 0x30 +#define R_ARC_32_PCREL 0x31 #define R_ARC_PC32 0x32 #define R_ARC_GOTPC32 0x33 #define R_ARC_PLT32 0x34 #define R_ARC_COPY 0x35 #define R_ARC_GLOB_DAT 0x36 -#define R_ARC_JUMP_SLOT 0x37 +#define R_ARC_JMP_SLOT 0x37 #define R_ARC_RELATIVE 0x38 #define R_ARC_GOTOFF 0x39 #define R_ARC_GOTPC 0x3A #define R_ARC_GOT32 0x3B +#define R_ARC_S21W_PCREL_PLT 0x3C +#define R_ARC_S25H_PCREL_PLT 0x3D + +#define R_ARC_JLI_SECTOFF 0x3F #define R_ARC_TLS_DTPMOD 0x42 #define R_ARC_TLS_DTPOFF 0x43 @@ -4221,9 +4240,12 @@ enum #define R_ARC_TLS_GD_LD 0x46 #define R_ARC_TLS_GD_CALL 0x47 #define R_ARC_TLS_IE_GOT 0x48 -#define R_ARC_TLS_DTPOFF_S9 0x4a -#define R_ARC_TLS_LE_S9 0x4a -#define R_ARC_TLS_LE_32 0x4b +#define R_ARC_TLS_DTPOFF_S9 0x49 +#define R_ARC_TLS_LE_S9 0x4A +#define R_ARC_TLS_LE_32 0x4B +#define R_ARC_S25W_PCREL_PLT 0x4C +#define R_ARC_S21H_PCREL_PLT 0x4D +#define R_ARC_NPS_CMEM16 0x4E /* OpenRISC 1000 specific relocs. */ #define R_OR1K_NONE 0 diff --git a/libelf/elf_compress.c b/libelf/elf_compress.c index d7f53af2..f13b41ba 100644 --- a/libelf/elf_compress.c +++ b/libelf/elf_compress.c @@ -39,6 +39,10 @@ #include <string.h> #include <zlib.h> +#ifdef USE_ZSTD +#include <zstd.h> +#endif + /* Cleanup and return result. Don't leak memory. */ static void * do_deflate_cleanup (void *result, z_stream *z, void *out_buf, @@ -54,53 +58,14 @@ do_deflate_cleanup (void *result, z_stream *z, void *out_buf, #define deflate_cleanup(result, cdata) \ do_deflate_cleanup(result, &z, out_buf, cdata) -/* Given a section, uses the (in-memory) Elf_Data to extract the - original data size (including the given header size) and data - alignment. Returns a buffer that has at least hsize bytes (for the - caller to fill in with a header) plus zlib compressed date. Also - returns the new buffer size in new_size (hsize + compressed data - size). Returns (void *) -1 when FORCE is false and the compressed - data would be bigger than the original data. */ +static void * -internal_function -__libelf_compress (Elf_Scn *scn, size_t hsize, int ei_data, - size_t *orig_size, size_t *orig_addralign, - size_t *new_size, bool force) +__libelf_compress_zlib (Elf_Scn *scn, size_t hsize, int ei_data, + size_t *orig_size, size_t *orig_addralign, + size_t *new_size, bool force, + Elf_Data *data, Elf_Data *next_data, + void *out_buf, size_t out_size, size_t block) { - /* The compressed data is the on-disk data. We simplify the - implementation a bit by asking for the (converted) in-memory - data (which might be all there is if the user created it with - elf_newdata) and then convert back to raw if needed before - compressing. Should be made a bit more clever to directly - use raw if that is directly available. */ - Elf_Data *data = elf_getdata (scn, NULL); - if (data == NULL) - return NULL; - - /* When not forced and we immediately know we would use more data by - compressing, because of the header plus zlib overhead (five bytes - per 16 KB block, plus a one-time overhead of six bytes for the - entire stream), don't do anything. */ - Elf_Data *next_data = elf_getdata (scn, data); - if (next_data == NULL && !force - && data->d_size <= hsize + 5 + 6) - return (void *) -1; - - *orig_addralign = data->d_align; - *orig_size = data->d_size; - - /* Guess an output block size. 1/8th of the original Elf_Data plus - hsize. Make the first chunk twice that size (25%), then increase - by a block (12.5%) when necessary. */ - size_t block = (data->d_size / 8) + hsize; - size_t out_size = 2 * block; - void *out_buf = malloc (out_size); - if (out_buf == NULL) - { - __libelf_seterrno (ELF_E_NOMEM); - return NULL; - } - /* Caller gets to fill in the header at the start. Just skip it here. */ size_t used = hsize; @@ -205,9 +170,189 @@ __libelf_compress (Elf_Scn *scn, size_t hsize, int ei_data, return out_buf; } +#ifdef USE_ZSTD_COMPRESS +/* Cleanup and return result. Don't leak memory. */ +static void * +do_zstd_cleanup (void *result, ZSTD_CCtx * const cctx, void *out_buf, + Elf_Data *cdatap) +{ + ZSTD_freeCCtx (cctx); + free (out_buf); + if (cdatap != NULL) + free (cdatap->d_buf); + return result; +} + +#define zstd_cleanup(result, cdata) \ + do_zstd_cleanup(result, cctx, out_buf, cdata) + +static +void * +__libelf_compress_zstd (Elf_Scn *scn, size_t hsize, int ei_data, + size_t *orig_size, size_t *orig_addralign, + size_t *new_size, bool force, + Elf_Data *data, Elf_Data *next_data, + void *out_buf, size_t out_size, size_t block) +{ + /* Caller gets to fill in the header at the start. Just skip it here. */ + size_t used = hsize; + + ZSTD_CCtx* const cctx = ZSTD_createCCtx(); + Elf_Data cdata; + cdata.d_buf = NULL; + + /* Loop over data buffers. */ + ZSTD_EndDirective mode = ZSTD_e_continue; + + do + { + /* Convert to raw if different endianness. */ + cdata = *data; + bool convert = ei_data != MY_ELFDATA && data->d_size > 0; + if (convert) + { + /* Don't do this conversion in place, we might want to keep + the original data around, caller decides. */ + cdata.d_buf = malloc (data->d_size); + if (cdata.d_buf == NULL) + { + __libelf_seterrno (ELF_E_NOMEM); + return zstd_cleanup (NULL, NULL); + } + if (gelf_xlatetof (scn->elf, &cdata, data, ei_data) == NULL) + return zstd_cleanup (NULL, &cdata); + } + + ZSTD_inBuffer ib = { cdata.d_buf, cdata.d_size, 0 }; + + /* Get next buffer to see if this is the last one. */ + data = next_data; + if (data != NULL) + { + *orig_addralign = MAX (*orig_addralign, data->d_align); + *orig_size += data->d_size; + next_data = elf_getdata (scn, data); + } + else + mode = ZSTD_e_end; + + /* Flush one data buffer. */ + for (;;) + { + ZSTD_outBuffer ob = { out_buf + used, out_size - used, 0 }; + size_t ret = ZSTD_compressStream2 (cctx, &ob, &ib, mode); + if (ZSTD_isError (ret)) + { + __libelf_seterrno (ELF_E_COMPRESS_ERROR); + return zstd_cleanup (NULL, convert ? &cdata : NULL); + } + used += ob.pos; + + /* Bail out if we are sure the user doesn't want the + compression forced and we are using more compressed data + than original data. */ + if (!force && mode == ZSTD_e_end && used >= *orig_size) + return zstd_cleanup ((void *) -1, convert ? &cdata : NULL); + + if (ret > 0) + { + void *bigger = realloc (out_buf, out_size + block); + if (bigger == NULL) + { + __libelf_seterrno (ELF_E_NOMEM); + return zstd_cleanup (NULL, convert ? &cdata : NULL); + } + out_buf = bigger; + out_size += block; + } + else + break; + } + + if (convert) + { + free (cdata.d_buf); + cdata.d_buf = NULL; + } + } + while (mode != ZSTD_e_end); /* More data blocks. */ + + ZSTD_freeCCtx (cctx); + *new_size = used; + return out_buf; +} +#endif + +/* Given a section, uses the (in-memory) Elf_Data to extract the + original data size (including the given header size) and data + alignment. Returns a buffer that has at least hsize bytes (for the + caller to fill in with a header) plus zlib compressed date. Also + returns the new buffer size in new_size (hsize + compressed data + size). Returns (void *) -1 when FORCE is false and the compressed + data would be bigger than the original data. */ void * internal_function -__libelf_decompress (void *buf_in, size_t size_in, size_t size_out) +__libelf_compress (Elf_Scn *scn, size_t hsize, int ei_data, + size_t *orig_size, size_t *orig_addralign, + size_t *new_size, bool force, bool use_zstd) +{ + /* The compressed data is the on-disk data. We simplify the + implementation a bit by asking for the (converted) in-memory + data (which might be all there is if the user created it with + elf_newdata) and then convert back to raw if needed before + compressing. Should be made a bit more clever to directly + use raw if that is directly available. */ + Elf_Data *data = elf_getdata (scn, NULL); + if (data == NULL) + return NULL; + + /* When not forced and we immediately know we would use more data by + compressing, because of the header plus zlib overhead (five bytes + per 16 KB block, plus a one-time overhead of six bytes for the + entire stream), don't do anything. + Size estimation for ZSTD compression would be similar. */ + Elf_Data *next_data = elf_getdata (scn, data); + if (next_data == NULL && !force + && data->d_size <= hsize + 5 + 6) + return (void *) -1; + + *orig_addralign = data->d_align; + *orig_size = data->d_size; + + /* Guess an output block size. 1/8th of the original Elf_Data plus + hsize. Make the first chunk twice that size (25%), then increase + by a block (12.5%) when necessary. */ + size_t block = (data->d_size / 8) + hsize; + size_t out_size = 2 * block; + void *out_buf = malloc (out_size); + if (out_buf == NULL) + { + __libelf_seterrno (ELF_E_NOMEM); + return NULL; + } + + if (use_zstd) + { +#ifdef USE_ZSTD_COMPRESS + return __libelf_compress_zstd (scn, hsize, ei_data, orig_size, + orig_addralign, new_size, force, + data, next_data, out_buf, out_size, + block); +#else + __libelf_seterrno (ELF_E_UNKNOWN_COMPRESSION_TYPE); + return NULL; +#endif + } + else + return __libelf_compress_zlib (scn, hsize, ei_data, orig_size, + orig_addralign, new_size, force, + data, next_data, out_buf, out_size, + block); +} + +void * +internal_function +__libelf_decompress_zlib (void *buf_in, size_t size_in, size_t size_out) { /* Catch highly unlikely compression ratios so we don't allocate some giant amount of memory for nothing. The max compression @@ -218,7 +363,7 @@ __libelf_decompress (void *buf_in, size_t size_in, size_t size_out) return NULL; } - /* Malloc might return NULL when requestion zero size. This is highly + /* Malloc might return NULL when requesting zero size. This is highly unlikely, it would only happen when the compression was forced. But we do need a non-NULL buffer to return and set as result. Just make sure to always allocate at least 1 byte. */ @@ -260,6 +405,50 @@ __libelf_decompress (void *buf_in, size_t size_in, size_t size_out) return buf_out; } +#ifdef USE_ZSTD +static void * +__libelf_decompress_zstd (void *buf_in, size_t size_in, size_t size_out) +{ + /* Malloc might return NULL when requesting zero size. This is highly + unlikely, it would only happen when the compression was forced. + But we do need a non-NULL buffer to return and set as result. + Just make sure to always allocate at least 1 byte. */ + void *buf_out = malloc (size_out ?: 1); + if (unlikely (buf_out == NULL)) + { + __libelf_seterrno (ELF_E_NOMEM); + return NULL; + } + + size_t ret = ZSTD_decompress (buf_out, size_out, buf_in, size_in); + if (ZSTD_isError (ret)) + { + free (buf_out); + __libelf_seterrno (ELF_E_DECOMPRESS_ERROR); + return NULL; + } + else + return buf_out; +} +#endif + +void * +internal_function +__libelf_decompress (int chtype, void *buf_in, size_t size_in, size_t size_out) +{ + if (chtype == ELFCOMPRESS_ZLIB) + return __libelf_decompress_zlib (buf_in, size_in, size_out); + else + { +#ifdef USE_ZSTD + return __libelf_decompress_zstd (buf_in, size_in, size_out); +#else + __libelf_seterrno (ELF_E_UNKNOWN_COMPRESSION_TYPE); + return NULL; +#endif + } +} + void * internal_function __libelf_decompress_elf (Elf_Scn *scn, size_t *size_out, size_t *addralign) @@ -268,8 +457,20 @@ __libelf_decompress_elf (Elf_Scn *scn, size_t *size_out, size_t *addralign) if (gelf_getchdr (scn, &chdr) == NULL) return NULL; + bool unknown_compression = false; if (chdr.ch_type != ELFCOMPRESS_ZLIB) { + if (chdr.ch_type != ELFCOMPRESS_ZSTD) + unknown_compression = true; + +#ifndef USE_ZSTD + if (chdr.ch_type == ELFCOMPRESS_ZSTD) + unknown_compression = true; +#endif + } + + if (unknown_compression) + { __libelf_seterrno (ELF_E_UNKNOWN_COMPRESSION_TYPE); return NULL; } @@ -295,7 +496,9 @@ __libelf_decompress_elf (Elf_Scn *scn, size_t *size_out, size_t *addralign) ? sizeof (Elf32_Chdr) : sizeof (Elf64_Chdr)); size_t size_in = data->d_size - hsize; void *buf_in = data->d_buf + hsize; - void *buf_out = __libelf_decompress (buf_in, size_in, chdr.ch_size); + void *buf_out + = __libelf_decompress (chdr.ch_type, buf_in, size_in, chdr.ch_size); + *size_out = chdr.ch_size; *addralign = chdr.ch_addralign; return buf_out; @@ -394,7 +597,7 @@ elf_compress (Elf_Scn *scn, int type, unsigned int flags) } int compressed = (sh_flags & SHF_COMPRESSED); - if (type == ELFCOMPRESS_ZLIB) + if (type == ELFCOMPRESS_ZLIB || type == ELFCOMPRESS_ZSTD) { /* Compress/Deflate. */ if (compressed == 1) @@ -408,7 +611,8 @@ elf_compress (Elf_Scn *scn, int type, unsigned int flags) size_t orig_size, orig_addralign, new_size; void *out_buf = __libelf_compress (scn, hsize, elfdata, &orig_size, &orig_addralign, - &new_size, force); + &new_size, force, + type == ELFCOMPRESS_ZSTD); /* Compression would make section larger, don't change anything. */ if (out_buf == (void *) -1) @@ -422,7 +626,7 @@ elf_compress (Elf_Scn *scn, int type, unsigned int flags) if (elfclass == ELFCLASS32) { Elf32_Chdr chdr; - chdr.ch_type = ELFCOMPRESS_ZLIB; + chdr.ch_type = type; chdr.ch_size = orig_size; chdr.ch_addralign = orig_addralign; if (elfdata != MY_ELFDATA) @@ -436,7 +640,7 @@ elf_compress (Elf_Scn *scn, int type, unsigned int flags) else { Elf64_Chdr chdr; - chdr.ch_type = ELFCOMPRESS_ZLIB; + chdr.ch_type = type; chdr.ch_reserved = 0; chdr.ch_size = orig_size; chdr.ch_addralign = sh_addralign; diff --git a/libelf/elf_compress_gnu.c b/libelf/elf_compress_gnu.c index 3d2977e7..8e20b30e 100644 --- a/libelf/elf_compress_gnu.c +++ b/libelf/elf_compress_gnu.c @@ -103,7 +103,8 @@ elf_compress_gnu (Elf_Scn *scn, int inflate, unsigned int flags) size_t orig_size, new_size, orig_addralign; void *out_buf = __libelf_compress (scn, hsize, elfdata, &orig_size, &orig_addralign, - &new_size, force); + &new_size, force, + /* use_zstd */ false); /* Compression would make section larger, don't change anything. */ if (out_buf == (void *) -1) @@ -178,7 +179,7 @@ elf_compress_gnu (Elf_Scn *scn, int inflate, unsigned int flags) size_t size = gsize; size_t size_in = data->d_size - hsize; void *buf_in = data->d_buf + hsize; - void *buf_out = __libelf_decompress (buf_in, size_in, size); + void *buf_out = __libelf_decompress (ELFCOMPRESS_ZLIB, buf_in, size_in, size); if (buf_out == NULL) return -1; diff --git a/libelf/gnuhash_xlate.h b/libelf/gnuhash_xlate.h index 6faf1136..3a00ae0a 100644 --- a/libelf/gnuhash_xlate.h +++ b/libelf/gnuhash_xlate.h @@ -1,5 +1,6 @@ /* Conversion functions for versioning information. Copyright (C) 2006, 2007 Red Hat, Inc. + Copyright (C) 2023, Mark J. Wielaard <mark@klomp.org> This file is part of elfutils. Written by Ulrich Drepper <drepper@redhat.com>, 2006. @@ -36,6 +37,7 @@ static void elf_cvt_gnuhash (void *dest, const void *src, size_t len, int encode) { + size_t size = len; /* The GNU hash table format on 64 bit machines mixes 32 bit and 64 bit words. We must detangle them here. */ Elf32_Word *dest32 = dest; @@ -45,7 +47,7 @@ elf_cvt_gnuhash (void *dest, const void *src, size_t len, int encode) for (unsigned int cnt = 0; cnt < 4; ++cnt) { if (len < 4) - return; + goto done; dest32[cnt] = bswap_32 (src32[cnt]); len -= 4; } @@ -58,7 +60,7 @@ elf_cvt_gnuhash (void *dest, const void *src, size_t len, int encode) for (unsigned int cnt = 0; cnt < bitmask_words; ++cnt) { if (len < 8) - return; + goto done; dest64[cnt] = bswap_64 (src64[cnt]); len -= 8; } @@ -71,4 +73,10 @@ elf_cvt_gnuhash (void *dest, const void *src, size_t len, int encode) *dest32++ = bswap_32 (*src32++); len -= 4; } + + done: + /* If there are any bytes left, we weren't able to convert the + partial structures, just copy them over. */ + if (len > 0) + memmove (dest + size - len, src + size - len, len); } diff --git a/libelf/libelf.h b/libelf/libelf.h index a139e733..2374a48a 100644 --- a/libelf/libelf.h +++ b/libelf/libelf.h @@ -64,6 +64,11 @@ #define ELFCOMPRESS_HIPROC 0x7fffffff /* End of processor-specific. */ #endif +#ifndef ELFCOMPRESS_ZSTD + /* So ZSTD compression can be used even with an old system elf.h. */ + #define ELFCOMPRESS_ZSTD 2 /* Zstandard algorithm. */ +#endif + #if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) # define __nonnull_attribute__(...) __attribute__ ((__nonnull__ (__VA_ARGS__))) # define __deprecated_attribute__ __attribute__ ((__deprecated__)) @@ -348,10 +353,10 @@ extern Elf64_Chdr *elf64_getchdr (Elf_Scn *__scn); elf_compress takes a compression type that should be either zero to decompress or an ELFCOMPRESS algorithm to use for compression. - Currently only ELFCOMPRESS_ZLIB is supported. elf_compress_gnu - will compress in the traditional GNU compression format when - compress is one and decompress the section data when compress is - zero. + Currently ELFCOMPRESS_ZLIB and ELFCOMPRESS_ZSTD are supported. + elf_compress_gnu will compress in the traditional GNU compression + format when compress is one and decompress the section data when + compress is zero. The FLAGS argument can be zero or ELF_CHF_FORCE. If FLAGS contains ELF_CHF_FORCE then it will always compress the section, even if diff --git a/libelf/libelfP.h b/libelf/libelfP.h index d88a613c..6624f38a 100644 --- a/libelf/libelfP.h +++ b/libelf/libelfP.h @@ -574,10 +574,10 @@ extern uint32_t __libelf_crc32 (uint32_t crc, unsigned char *buf, size_t len) extern void * __libelf_compress (Elf_Scn *scn, size_t hsize, int ei_data, size_t *orig_size, size_t *orig_addralign, - size_t *size, bool force) + size_t *size, bool force, bool use_zstd) internal_function; -extern void * __libelf_decompress (void *buf_in, size_t size_in, +extern void * __libelf_decompress (int chtype, void *buf_in, size_t size_in, size_t size_out) internal_function; extern void * __libelf_decompress_elf (Elf_Scn *scn, size_t *size_out, size_t *addralign) diff --git a/m4/ax_check_compile_flag.m4 b/m4/ax_check_compile_flag.m4 index ca363971..bd753b34 100644 --- a/m4/ax_check_compile_flag.m4 +++ b/m4/ax_check_compile_flag.m4 @@ -1,5 +1,5 @@ # =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html +# https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html # =========================================================================== # # SYNOPSIS @@ -29,33 +29,12 @@ # Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de> # Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> # -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see <http://www.gnu.org/licenses/>. -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. -#serial 4 +#serial 6 AC_DEFUN([AX_CHECK_COMPILE_FLAG], [AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF diff --git a/m4/ax_cxx_compile_stdcxx.m4 b/m4/ax_cxx_compile_stdcxx.m4 index 8adc7656..8edf5152 100644 --- a/m4/ax_cxx_compile_stdcxx.m4 +++ b/m4/ax_cxx_compile_stdcxx.m4 @@ -1,5 +1,5 @@ # =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html +# https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html # =========================================================================== # # SYNOPSIS @@ -9,14 +9,14 @@ # DESCRIPTION # # Check for baseline language coverage in the compiler for the specified -# version of the C++ standard. If necessary, add switches to CXX to -# enable support. VERSION may be '11' (for the C++11 standard) or '14' -# (for the C++14 standard). +# version of the C++ standard. If necessary, add switches to CXX and +# CXXCPP to enable support. VERSION may be '11', '14', '17', or '20' for +# the respective C++ standard version. # # The second argument, if specified, indicates whether you insist on an # extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g. # -std=c++11). If neither is specified, you get whatever works, with -# preference for an extended mode. +# preference for no added switch, and then for an extended mode. # # The third argument, if specified 'mandatory' or if left unspecified, # indicates that baseline support for the specified C++ standard is @@ -33,21 +33,26 @@ # Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com> # Copyright (c) 2015 Paul Norman <penorman@mac.com> # Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu> +# Copyright (c) 2016, 2018 Krzesimir Nowak <qdlacz@gmail.com> +# Copyright (c) 2019 Enji Cooper <yaneurabeya@gmail.com> +# Copyright (c) 2020 Jason Merrill <jason@redhat.com> +# Copyright (c) 2021 Jörn Heusipp <osmanx@problemloesungsmaschine.de> # # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty provided the copyright notice # and this notice are preserved. This file is offered as-is, without any # warranty. -#serial 3 +#serial 18 dnl This macro is based on the code from the AX_CXX_COMPILE_STDCXX_11 macro dnl (serial version number 13). AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl - m4_if([$1], [11], [], - [$1], [14], [], - [$1], [17], [m4_fatal([support for C++17 not yet implemented in AX_CXX_COMPILE_STDCXX])], + m4_if([$1], [11], [ax_cxx_compile_alternatives="11 0x"], + [$1], [14], [ax_cxx_compile_alternatives="14 1y"], + [$1], [17], [ax_cxx_compile_alternatives="17 1z"], + [$1], [20], [ax_cxx_compile_alternatives="20"], [m4_fatal([invalid first argument `$1' to AX_CXX_COMPILE_STDCXX])])dnl m4_if([$2], [], [], [$2], [ext], [], @@ -59,18 +64,21 @@ AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl [m4_fatal([invalid third argument `$3' to AX_CXX_COMPILE_STDCXX])]) AC_LANG_PUSH([C++])dnl ac_success=no - AC_CACHE_CHECK(whether $CXX supports C++$1 features by default, - ax_cv_cxx_compile_cxx$1, - [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], - [ax_cv_cxx_compile_cxx$1=yes], - [ax_cv_cxx_compile_cxx$1=no])]) - if test x$ax_cv_cxx_compile_cxx$1 = xyes; then - ac_success=yes - fi + + m4_if([$2], [], [dnl + AC_CACHE_CHECK(whether $CXX supports C++$1 features by default, + ax_cv_cxx_compile_cxx$1, + [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], + [ax_cv_cxx_compile_cxx$1=yes], + [ax_cv_cxx_compile_cxx$1=no])]) + if test x$ax_cv_cxx_compile_cxx$1 = xyes; then + ac_success=yes + fi]) m4_if([$2], [noext], [], [dnl if test x$ac_success = xno; then - for switch in -std=gnu++$1 -std=gnu++0x; do + for alternative in ${ax_cxx_compile_alternatives}; do + switch="-std=gnu++${alternative}" cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch]) AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch, $cachevar, @@ -82,6 +90,9 @@ AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl CXX="$ac_save_CXX"]) if eval test x\$$cachevar = xyes; then CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi ac_success=yes break fi @@ -93,19 +104,36 @@ AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl dnl HP's aCC needs +std=c++11 according to: dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf dnl Cray's crayCC needs "-h std=c++11" - for switch in -std=c++$1 -std=c++0x +std=c++$1 "-h std=c++$1"; do - cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch]) - AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch, - $cachevar, - [ac_save_CXX="$CXX" - CXX="$CXX $switch" - AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], - [eval $cachevar=yes], - [eval $cachevar=no]) - CXX="$ac_save_CXX"]) - if eval test x\$$cachevar = xyes; then - CXX="$CXX $switch" - ac_success=yes + dnl MSVC needs -std:c++NN for C++17 and later (default is C++14) + for alternative in ${ax_cxx_compile_alternatives}; do + for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}" MSVC; do + if test x"$switch" = xMSVC; then + dnl AS_TR_SH maps both `:` and `=` to `_` so -std:c++17 would collide + dnl with -std=c++17. We suffix the cache variable name with _MSVC to + dnl avoid this. + switch=-std:c++${alternative} + cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_${switch}_MSVC]) + else + cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch]) + fi + AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch, + $cachevar, + [ac_save_CXX="$CXX" + CXX="$CXX $switch" + AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], + [eval $cachevar=yes], + [eval $cachevar=no]) + CXX="$ac_save_CXX"]) + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + if test x$ac_success = xyes; then break fi done @@ -134,7 +162,6 @@ m4_define([_AX_CXX_COMPILE_STDCXX_testbody_11], _AX_CXX_COMPILE_STDCXX_testbody_new_in_11 ) - dnl Test body for checking C++14 support m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14], @@ -142,6 +169,23 @@ m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14], _AX_CXX_COMPILE_STDCXX_testbody_new_in_14 ) +dnl Test body for checking C++17 support + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_17], + _AX_CXX_COMPILE_STDCXX_testbody_new_in_11 + _AX_CXX_COMPILE_STDCXX_testbody_new_in_14 + _AX_CXX_COMPILE_STDCXX_testbody_new_in_17 +) + +dnl Test body for checking C++20 support + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_20], + _AX_CXX_COMPILE_STDCXX_testbody_new_in_11 + _AX_CXX_COMPILE_STDCXX_testbody_new_in_14 + _AX_CXX_COMPILE_STDCXX_testbody_new_in_17 + _AX_CXX_COMPILE_STDCXX_testbody_new_in_20 +) + dnl Tests for new features in C++11 @@ -154,7 +198,11 @@ m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_11], [[ #error "This is not a C++ compiler" -#elif __cplusplus < 201103L +// MSVC always sets __cplusplus to 199711L in older versions; newer versions +// only set it correctly if /Zc:__cplusplus is specified as well as a +// /std:c++NN switch: +// https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/ +#elif __cplusplus < 201103L && !defined _MSC_VER #error "This is not a C++11 compiler" @@ -179,11 +227,13 @@ namespace cxx11 struct Base { + virtual ~Base() {} virtual void f() {} }; struct Derived : public Base { + virtual ~Derived() override {} virtual void f() override {} }; @@ -443,7 +493,7 @@ m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_14], [[ #error "This is not a C++ compiler" -#elif __cplusplus < 201402L +#elif __cplusplus < 201402L && !defined _MSC_VER #error "This is not a C++14 compiler" @@ -512,7 +562,7 @@ namespace cxx14 } - namespace test_digit_seperators + namespace test_digit_separators { constexpr auto ten_million = 100'000'000; @@ -554,3 +604,415 @@ namespace cxx14 #endif // __cplusplus >= 201402L ]]) + + +dnl Tests for new features in C++17 + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_17], [[ + +// If the compiler admits that it is not ready for C++17, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201703L && !defined _MSC_VER + +#error "This is not a C++17 compiler" + +#else + +#include <initializer_list> +#include <utility> +#include <type_traits> + +namespace cxx17 +{ + + namespace test_constexpr_lambdas + { + + constexpr int foo = [](){return 42;}(); + + } + + namespace test::nested_namespace::definitions + { + + } + + namespace test_fold_expression + { + + template<typename... Args> + int multiply(Args... args) + { + return (args * ... * 1); + } + + template<typename... Args> + bool all(Args... args) + { + return (args && ...); + } + + } + + namespace test_extended_static_assert + { + + static_assert (true); + + } + + namespace test_auto_brace_init_list + { + + auto foo = {5}; + auto bar {5}; + + static_assert(std::is_same<std::initializer_list<int>, decltype(foo)>::value); + static_assert(std::is_same<int, decltype(bar)>::value); + } + + namespace test_typename_in_template_template_parameter + { + + template<template<typename> typename X> struct D; + + } + + namespace test_fallthrough_nodiscard_maybe_unused_attributes + { + + int f1() + { + return 42; + } + + [[nodiscard]] int f2() + { + [[maybe_unused]] auto unused = f1(); + + switch (f1()) + { + case 17: + f1(); + [[fallthrough]]; + case 42: + f1(); + } + return f1(); + } + + } + + namespace test_extended_aggregate_initialization + { + + struct base1 + { + int b1, b2 = 42; + }; + + struct base2 + { + base2() { + b3 = 42; + } + int b3; + }; + + struct derived : base1, base2 + { + int d; + }; + + derived d1 {{1, 2}, {}, 4}; // full initialization + derived d2 {{}, {}, 4}; // value-initialized bases + + } + + namespace test_general_range_based_for_loop + { + + struct iter + { + int i; + + int& operator* () + { + return i; + } + + const int& operator* () const + { + return i; + } + + iter& operator++() + { + ++i; + return *this; + } + }; + + struct sentinel + { + int i; + }; + + bool operator== (const iter& i, const sentinel& s) + { + return i.i == s.i; + } + + bool operator!= (const iter& i, const sentinel& s) + { + return !(i == s); + } + + struct range + { + iter begin() const + { + return {0}; + } + + sentinel end() const + { + return {5}; + } + }; + + void f() + { + range r {}; + + for (auto i : r) + { + [[maybe_unused]] auto v = i; + } + } + + } + + namespace test_lambda_capture_asterisk_this_by_value + { + + struct t + { + int i; + int foo() + { + return [*this]() + { + return i; + }(); + } + }; + + } + + namespace test_enum_class_construction + { + + enum class byte : unsigned char + {}; + + byte foo {42}; + + } + + namespace test_constexpr_if + { + + template <bool cond> + int f () + { + if constexpr(cond) + { + return 13; + } + else + { + return 42; + } + } + + } + + namespace test_selection_statement_with_initializer + { + + int f() + { + return 13; + } + + int f2() + { + if (auto i = f(); i > 0) + { + return 3; + } + + switch (auto i = f(); i + 4) + { + case 17: + return 2; + + default: + return 1; + } + } + + } + + namespace test_template_argument_deduction_for_class_templates + { + + template <typename T1, typename T2> + struct pair + { + pair (T1 p1, T2 p2) + : m1 {p1}, + m2 {p2} + {} + + T1 m1; + T2 m2; + }; + + void f() + { + [[maybe_unused]] auto p = pair{13, 42u}; + } + + } + + namespace test_non_type_auto_template_parameters + { + + template <auto n> + struct B + {}; + + B<5> b1; + B<'a'> b2; + + } + + namespace test_structured_bindings + { + + int arr[2] = { 1, 2 }; + std::pair<int, int> pr = { 1, 2 }; + + auto f1() -> int(&)[2] + { + return arr; + } + + auto f2() -> std::pair<int, int>& + { + return pr; + } + + struct S + { + int x1 : 2; + volatile double y1; + }; + + S f3() + { + return {}; + } + + auto [ x1, y1 ] = f1(); + auto& [ xr1, yr1 ] = f1(); + auto [ x2, y2 ] = f2(); + auto& [ xr2, yr2 ] = f2(); + const auto [ x3, y3 ] = f3(); + + } + + namespace test_exception_spec_type_system + { + + struct Good {}; + struct Bad {}; + + void g1() noexcept; + void g2(); + + template<typename T> + Bad + f(T*, T*); + + template<typename T1, typename T2> + Good + f(T1*, T2*); + + static_assert (std::is_same_v<Good, decltype(f(g1, g2))>); + + } + + namespace test_inline_variables + { + + template<class T> void f(T) + {} + + template<class T> inline T g(T) + { + return T{}; + } + + template<> inline void f<>(int) + {} + + template<> int g<>(int) + { + return 5; + } + + } + +} // namespace cxx17 + +#endif // __cplusplus < 201703L && !defined _MSC_VER + +]]) + + +dnl Tests for new features in C++20 + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_20], [[ + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 202002L && !defined _MSC_VER + +#error "This is not a C++20 compiler" + +#else + +#include <version> + +namespace cxx20 +{ + +// As C++20 supports feature test macros in the standard, there is no +// immediate need to actually test for feature availability on the +// Autoconf side. + +} // namespace cxx20 + +#endif // __cplusplus < 202002L && !defined _MSC_VER + +]]) diff --git a/patches/config.h.patch b/patches/config.h.patch index 175e6000..901b8f01 100644 --- a/patches/config.h.patch +++ b/patches/config.h.patch @@ -1,16 +1,7 @@ -diff --git b/config.h a/config.h -index f929481176ba..ea86194416c7 100644 ---- b/config.h -+++ a/config.h -@@ -29,7 +29,7 @@ - /* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ - - /* define if the compiler supports basic C++11 syntax */ --/* #undef HAVE_CXX11 */ -+#define HAVE_CXX11 1 - - /* Define if the GNU dcgettext() function is already present or preinstalled. - */ +diff --git a/config.h b/config.h +index af199565..873627e0 100644 +--- a/config.h ++++ b/config.h @@ -60,7 +60,9 @@ #define HAVE_DECL_STRERROR_R 1 @@ -28,9 +19,9 @@ index f929481176ba..ea86194416c7 100644 -#define HAVE_GCC_STRUCT 1 +/* #undef HAVE_GCC_STRUCT */ - /* Define if the GNU gettext() function is already present or preinstalled. */ - #define HAVE_GETTEXT 1 -@@ -152,7 +154,9 @@ + /* Define to 1 if you have the `getrlimit' function. */ + #define HAVE_GETRLIMIT 1 +@@ -167,7 +169,9 @@ #define STDC_HEADERS 1 /* Define to 1 if strerror_r returns char *. */ diff --git a/patches/libdw-ignore-really-large-discriminator.patch b/patches/libdw-ignore-really-large-discriminator.patch new file mode 100644 index 00000000..d18b7e98 --- /dev/null +++ b/patches/libdw-ignore-really-large-discriminator.patch @@ -0,0 +1,47 @@ +From 6583a5497fb60496ae7f9df9907be1248a339360 Mon Sep 17 00:00:00 2001 +From: Mark Wielaard <mark@klomp.org> +Date: Thu, 26 Oct 2023 16:49:08 +0200 +Subject: [PATCH] libdw: ignore really large discriminator + +llvm can create really large discriminator values. We used to flag those +as invalid when the value wouldn't fit in 24 bits. Just truncate the value. + + * libdw/dwarf_getsrclines.c (add_new_line): Define SETX. + Use SETX to set discriminator. + +https://sourceware.org/bugzilla/show_bug.cgi?id=30967 + +Signed-off-by: Mark Wielaard <mark@klomp.org> +--- + libdw/dwarf_getsrclines.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/libdw/dwarf_getsrclines.c b/libdw/dwarf_getsrclines.c +index df003c5f..69e10c7b 100644 +--- a/libdw/dwarf_getsrclines.c ++++ b/libdw/dwarf_getsrclines.c +@@ -129,6 +129,12 @@ add_new_line (struct line_state *state, struct linelist *new_line) + return true; \ + } while (0) + ++ /* Same as above, but don't flag as "invalid" just use truncated ++ value. Used for discriminator for which llvm might use a value ++ that won't fit 24 bits. */ ++#define SETX(field) \ ++ new_line->line.field = state->field; \ ++ + SET (addr); + SET (op_index); + SET (file); +@@ -140,7 +146,7 @@ add_new_line (struct line_state *state, struct linelist *new_line) + SET (prologue_end); + SET (epilogue_begin); + SET (isa); +- SET (discriminator); ++ SETX (discriminator); + SET (context); + SET (function_name); + +-- +2.42.0.869.gea05f2083d-goog + @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: elfutils\n" "Report-Msgid-Bugs-To: https://sourceware.org/bugzilla/\n" -"POT-Creation-Date: 2022-11-02 13:30+0100\n" +"POT-Creation-Date: 2023-03-03 16:09+0100\n" "PO-Revision-Date: 2009-06-29 15:15+0200\n" "Last-Translator: Michael Münch <micm@fedoraproject.org>\n" "Language-Team: German\n" @@ -49,18 +49,18 @@ msgstr "" "GARANTIE,\n" "auch nicht für Marktgängigkeit oder Eignung für einen Bestimmten Zweck.\n" -#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11754 +#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11793 #: src/unstrip.c:311 #, c-format msgid "memory exhausted" msgstr "Kein Speicher mehr verfügbar" -#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:51 +#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:47 #: libelf/elf_error.c:59 msgid "no error" msgstr "kein Fehler" -#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:53 +#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:49 #: libelf/elf_error.c:90 msgid "out of memory" msgstr "nicht genügend Speicher" @@ -97,7 +97,7 @@ msgstr "Fehler bei Datenausgabe" msgid "no backend support available" msgstr "keine Backend-Unterstützung verfügbar" -#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:52 +#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:48 #: libelf/elf_error.c:62 msgid "unknown error" msgstr "unbekannter Fehler" @@ -112,7 +112,7 @@ msgstr "" msgid "invalid character '\\%o' at line %d; ignored" msgstr "" -#: libcpu/i386_parse.y:553 +#: libcpu/i386_parse.y:555 #, c-format msgid "while reading i386 CPU description: %s at line %d" msgstr "" @@ -228,7 +228,7 @@ msgstr "Ungültige DWARF Version" msgid "invalid directory index" msgstr "ungültiger Verzeichnisindex" -#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:73 +#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:69 msgid "address out of range" msgstr "Außerhalb des Adressbereiches" @@ -259,7 +259,7 @@ msgstr "Ungültiger Zeilenindex" msgid "invalid address range index" msgstr "Ungültiger Adressbereichs Index" -#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:74 +#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:70 msgid "no matching address range" msgstr "Kein passender Adressbereich" @@ -373,175 +373,175 @@ msgstr "nicht genügend Speicher" msgid "No modules recognized in core file" msgstr "Keine Module in der Kerndatei gefunden" -#: libdwfl/libdwflP.h:54 +#: libdwfl/libdwflP.h:50 msgid "See errno" msgstr "" -#: libdwfl/libdwflP.h:55 +#: libdwfl/libdwflP.h:51 msgid "See elf_errno" msgstr "" -#: libdwfl/libdwflP.h:56 +#: libdwfl/libdwflP.h:52 msgid "See dwarf_errno" msgstr "" -#: libdwfl/libdwflP.h:57 +#: libdwfl/libdwflP.h:53 msgid "See ebl_errno (XXX missing)" msgstr "" -#: libdwfl/libdwflP.h:58 +#: libdwfl/libdwflP.h:54 msgid "gzip decompression failed" msgstr "" -#: libdwfl/libdwflP.h:59 +#: libdwfl/libdwflP.h:55 msgid "bzip2 decompression failed" msgstr "" -#: libdwfl/libdwflP.h:60 +#: libdwfl/libdwflP.h:56 msgid "LZMA decompression failed" msgstr "" -#: libdwfl/libdwflP.h:61 +#: libdwfl/libdwflP.h:57 msgid "zstd decompression failed" msgstr "" -#: libdwfl/libdwflP.h:62 +#: libdwfl/libdwflP.h:58 msgid "no support library found for machine" msgstr "" -#: libdwfl/libdwflP.h:63 +#: libdwfl/libdwflP.h:59 msgid "Callbacks missing for ET_REL file" msgstr "" -#: libdwfl/libdwflP.h:64 +#: libdwfl/libdwflP.h:60 msgid "Unsupported relocation type" msgstr "" -#: libdwfl/libdwflP.h:65 +#: libdwfl/libdwflP.h:61 msgid "r_offset is bogus" msgstr "" -#: libdwfl/libdwflP.h:66 libelf/elf_error.c:114 libelf/elf_error.c:174 +#: libdwfl/libdwflP.h:62 libelf/elf_error.c:114 libelf/elf_error.c:174 msgid "offset out of range" msgstr "Offset ausserhalb des Bereichs" -#: libdwfl/libdwflP.h:67 +#: libdwfl/libdwflP.h:63 #, fuzzy msgid "relocation refers to undefined symbol" msgstr "Zeige Grösse der definierten Symbole" -#: libdwfl/libdwflP.h:68 +#: libdwfl/libdwflP.h:64 msgid "Callback returned failure" msgstr "" -#: libdwfl/libdwflP.h:69 +#: libdwfl/libdwflP.h:65 #, fuzzy msgid "No DWARF information found" msgstr "keine DWARF Information" -#: libdwfl/libdwflP.h:70 +#: libdwfl/libdwflP.h:66 msgid "No symbol table found" msgstr "" -#: libdwfl/libdwflP.h:71 +#: libdwfl/libdwflP.h:67 #, fuzzy msgid "No ELF program headers" msgstr "Programm-Köpfe anzeigen" -#: libdwfl/libdwflP.h:72 +#: libdwfl/libdwflP.h:68 msgid "address range overlaps an existing module" msgstr "" -#: libdwfl/libdwflP.h:75 +#: libdwfl/libdwflP.h:71 msgid "image truncated" msgstr "" -#: libdwfl/libdwflP.h:76 +#: libdwfl/libdwflP.h:72 #, fuzzy msgid "ELF file opened" msgstr "keine ELF Datei" -#: libdwfl/libdwflP.h:77 +#: libdwfl/libdwflP.h:73 #, fuzzy msgid "not a valid ELF file" msgstr "Ungültige ELF Datei" -#: libdwfl/libdwflP.h:78 +#: libdwfl/libdwflP.h:74 #, fuzzy msgid "cannot handle DWARF type description" msgstr "konnte Elf-Deskriptor nicht erzeugen: %s" -#: libdwfl/libdwflP.h:79 +#: libdwfl/libdwflP.h:75 msgid "ELF file does not match build ID" msgstr "" -#: libdwfl/libdwflP.h:80 +#: libdwfl/libdwflP.h:76 #, fuzzy msgid "corrupt .gnu.prelink_undo section data" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: libdwfl/libdwflP.h:81 +#: libdwfl/libdwflP.h:77 msgid "Internal error due to ebl" msgstr "" -#: libdwfl/libdwflP.h:82 +#: libdwfl/libdwflP.h:78 msgid "Missing data in core file" msgstr "" -#: libdwfl/libdwflP.h:83 +#: libdwfl/libdwflP.h:79 #, fuzzy msgid "Invalid register" msgstr "ungültiger Parameter" -#: libdwfl/libdwflP.h:84 +#: libdwfl/libdwflP.h:80 #, fuzzy #| msgid "no reference value" msgid "Unknown register value" msgstr "Kein Referenz-Wert" -#: libdwfl/libdwflP.h:85 +#: libdwfl/libdwflP.h:81 msgid "Error reading process memory" msgstr "" -#: libdwfl/libdwflP.h:86 +#: libdwfl/libdwflP.h:82 msgid "Couldn't find architecture of any ELF" msgstr "" -#: libdwfl/libdwflP.h:87 +#: libdwfl/libdwflP.h:83 msgid "Error parsing /proc filesystem" msgstr "" -#: libdwfl/libdwflP.h:88 +#: libdwfl/libdwflP.h:84 #, fuzzy msgid "Invalid DWARF" msgstr "DWARF ungültig" -#: libdwfl/libdwflP.h:89 +#: libdwfl/libdwflP.h:85 msgid "Unsupported DWARF" msgstr "" -#: libdwfl/libdwflP.h:90 +#: libdwfl/libdwflP.h:86 msgid "Unable to find more threads" msgstr "" -#: libdwfl/libdwflP.h:91 +#: libdwfl/libdwflP.h:87 msgid "Dwfl already has attached state" msgstr "" -#: libdwfl/libdwflP.h:92 +#: libdwfl/libdwflP.h:88 msgid "Dwfl has no attached state" msgstr "" -#: libdwfl/libdwflP.h:93 +#: libdwfl/libdwflP.h:89 msgid "Unwinding not supported for this architecture" msgstr "" -#: libdwfl/libdwflP.h:94 +#: libdwfl/libdwflP.h:90 #, fuzzy msgid "Invalid argument" msgstr "ungültiger Parameter" -#: libdwfl/libdwflP.h:95 +#: libdwfl/libdwflP.h:91 #, fuzzy msgid "Not an ET_CORE ELF file" msgstr "Ungültige ELF Datei" @@ -647,7 +647,7 @@ msgstr "ungültige Grösse des Quell-Operanden" msgid "invalid size of destination operand" msgstr "ungültige Grösse des Ziel-Operanden" -#: libelf/elf_error.c:86 src/readelf.c:6378 +#: libelf/elf_error.c:86 src/readelf.c:6415 #, c-format msgid "invalid encoding" msgstr "ungültige Kodierung" @@ -735,8 +735,8 @@ msgstr "data/scn Unterschied" msgid "invalid section header" msgstr "ungültiger Abschnitts-Header" -#: libelf/elf_error.c:190 src/readelf.c:10266 src/readelf.c:10866 -#: src/readelf.c:10967 src/readelf.c:11149 +#: libelf/elf_error.c:190 src/readelf.c:10294 src/readelf.c:10899 +#: src/readelf.c:11000 src/readelf.c:11188 #, c-format msgid "invalid data" msgstr "Ungültige Daten" @@ -863,46 +863,52 @@ msgstr "" msgid "Show demangled symbols (ARG is always ignored)" msgstr "" -#: src/addr2line.c:77 +#: src/addr2line.c:76 +#, fuzzy +#| msgid "Display only defined symbols" +msgid "Show demangled symbols" +msgstr "Zeige nur definierte Symbole" + +#: src/addr2line.c:78 msgid "Print all information on one line, and indent inlines" msgstr "" -#: src/addr2line.c:79 +#: src/addr2line.c:80 msgid "Show relative file names without compilation directory" msgstr "" -#: src/addr2line.c:81 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 +#: src/addr2line.c:82 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 #: src/strings.c:77 msgid "Miscellaneous:" msgstr "Verschiedenes:" #. Short description of program. -#: src/addr2line.c:89 +#: src/addr2line.c:90 msgid "" "Locate source files and line information for ADDRs (in a.out by default)." msgstr "" #. Strings for arguments in help texts. -#: src/addr2line.c:93 +#: src/addr2line.c:94 msgid "[ADDR...]" msgstr "" -#: src/addr2line.c:526 +#: src/addr2line.c:530 #, fuzzy msgid "Section syntax requires exactly one module" msgstr "Abschnitt syntax benötigt genau ein Modul" -#: src/addr2line.c:548 +#: src/addr2line.c:552 #, c-format msgid "offset %#<PRIxMAX> lies outside section '%s'" msgstr "" -#: src/addr2line.c:658 +#: src/addr2line.c:662 #, c-format msgid "cannot find symbol '%s'" msgstr "Konnte Symbol '%s' nicht finden" -#: src/addr2line.c:663 +#: src/addr2line.c:667 #, c-format msgid "offset %#<PRIxMAX> lies outside contents of '%s'" msgstr "" @@ -1386,7 +1392,7 @@ msgid "Suppress some error output (counterpart to --verbose)" msgstr "" #. Strings for arguments in help texts. -#: src/elfclassify.c:979 src/elfcompress.c:1358 src/elflint.c:76 +#: src/elfclassify.c:979 src/elfcompress.c:1433 src/elflint.c:76 #: src/readelf.c:160 msgid "FILE..." msgstr "DATEI..." @@ -1653,69 +1659,75 @@ msgstr "" msgid "cannot get relocation: %s" msgstr "" -#: src/elfcompress.c:117 src/strip.c:305 src/unstrip.c:116 +#: src/elfcompress.c:128 src/strip.c:305 src/unstrip.c:116 #, c-format msgid "-o option specified twice" msgstr "" -#: src/elfcompress.c:124 +#: src/elfcompress.c:135 #, fuzzy, c-format msgid "-t option specified twice" msgstr "Option -d zweimal angegeben" -#: src/elfcompress.c:133 +#: src/elfcompress.c:147 +#, c-format +msgid "ZSTD support is not enabled" +msgstr "" + +#: src/elfcompress.c:150 #, fuzzy, c-format msgid "unknown compression type '%s'" msgstr "unbekannter Typ" #. We need at least one input file. -#: src/elfcompress.c:145 src/elfcompress.c:1369 +#: src/elfcompress.c:162 src/elfcompress.c:1444 #, fuzzy, c-format msgid "No input file given" msgstr "Eingabedatei '%s' ignoriert" -#: src/elfcompress.c:151 src/elfcompress.c:1373 +#: src/elfcompress.c:168 src/elfcompress.c:1448 #, c-format msgid "Only one input file allowed together with '-o'" msgstr "" -#: src/elfcompress.c:1331 +#: src/elfcompress.c:1405 msgid "Place (de)compressed output into FILE" msgstr "" -#: src/elfcompress.c:1334 +#: src/elfcompress.c:1408 msgid "" "What type of compression to apply. TYPE can be 'none' (decompress), " -"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias) or 'zlib-" -"gnu' (.zdebug GNU style compression, 'gnu' is an alias)" +"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias), 'zlib-" +"gnu' (.zdebug GNU style compression, 'gnu' is an alias) or 'zstd' (ELF ZSTD " +"compression)" msgstr "" -#: src/elfcompress.c:1337 +#: src/elfcompress.c:1412 msgid "" "SECTION name to (de)compress, SECTION is an extended wildcard pattern " "(defaults to '.?(z)debug*')" msgstr "" -#: src/elfcompress.c:1340 +#: src/elfcompress.c:1415 msgid "Print a message for each section being (de)compressed" msgstr "" -#: src/elfcompress.c:1343 +#: src/elfcompress.c:1418 msgid "" "Force compression of section even if it would become larger or update/" "rewrite the file even if no section would be (de)compressed" msgstr "" -#: src/elfcompress.c:1346 src/strip.c:92 +#: src/elfcompress.c:1421 src/strip.c:92 msgid "Relax a few rules to handle slightly broken ELF files" msgstr "" -#: src/elfcompress.c:1349 +#: src/elfcompress.c:1424 #, fuzzy msgid "Be silent when a section cannot be compressed" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elfcompress.c:1359 +#: src/elfcompress.c:1434 msgid "Compress or decompress sections in an ELF file." msgstr "" @@ -1776,211 +1788,211 @@ msgstr "" msgid "Not an ELF file - it has the wrong magic bytes at the start\n" msgstr "Keine ELF-Datei - sie hat die falschen Magic Bytes am Anfang\n" -#: src/elflint.c:356 +#: src/elflint.c:357 #, c-format msgid "e_ident[%d] == %d is no known class\n" msgstr "" -#: src/elflint.c:361 +#: src/elflint.c:362 #, c-format msgid "e_ident[%d] == %d is no known data encoding\n" msgstr "" -#: src/elflint.c:365 +#: src/elflint.c:366 #, c-format msgid "unknown ELF header version number e_ident[%d] == %d\n" msgstr "" -#: src/elflint.c:373 +#: src/elflint.c:374 #, c-format msgid "unsupported OS ABI e_ident[%d] == '%s'\n" msgstr "" -#: src/elflint.c:379 +#: src/elflint.c:380 #, c-format msgid "unsupported ABI version e_ident[%d] == %d\n" msgstr "" -#: src/elflint.c:384 +#: src/elflint.c:385 #, c-format msgid "e_ident[%zu] is not zero\n" msgstr "e_ident[%zu] ist nicht null\n" -#: src/elflint.c:389 +#: src/elflint.c:390 #, c-format msgid "unknown object file type %d\n" msgstr "" -#: src/elflint.c:396 +#: src/elflint.c:397 #, c-format msgid "unknown machine type %d\n" msgstr "" -#: src/elflint.c:400 +#: src/elflint.c:401 #, c-format msgid "unknown object file version\n" msgstr "" -#: src/elflint.c:406 +#: src/elflint.c:407 #, c-format msgid "invalid program header offset\n" msgstr "" -#: src/elflint.c:408 +#: src/elflint.c:409 #, c-format msgid "executables and DSOs cannot have zero program header offset\n" msgstr "" -#: src/elflint.c:412 +#: src/elflint.c:413 #, c-format msgid "invalid number of program header entries\n" msgstr "" -#: src/elflint.c:420 +#: src/elflint.c:421 #, c-format msgid "invalid section header table offset\n" msgstr "" -#: src/elflint.c:423 +#: src/elflint.c:424 #, c-format msgid "section header table must be present\n" msgstr "" -#: src/elflint.c:437 +#: src/elflint.c:438 #, c-format msgid "invalid number of section header table entries\n" msgstr "" -#: src/elflint.c:454 +#: src/elflint.c:455 #, c-format msgid "invalid section header index\n" msgstr "" -#: src/elflint.c:472 +#: src/elflint.c:473 #, c-format msgid "Can only check %u headers, shnum was %u\n" msgstr "" -#: src/elflint.c:486 +#: src/elflint.c:487 #, fuzzy, c-format msgid "invalid number of program header table entries\n" msgstr "Ungültige Anzahl von Parametern.\n" -#: src/elflint.c:503 +#: src/elflint.c:504 #, c-format msgid "Can only check %u headers, phnum was %u\n" msgstr "" -#: src/elflint.c:508 +#: src/elflint.c:509 #, c-format msgid "invalid machine flags: %s\n" msgstr "" -#: src/elflint.c:515 src/elflint.c:532 +#: src/elflint.c:516 src/elflint.c:533 #, c-format msgid "invalid ELF header size: %hd\n" msgstr "" -#: src/elflint.c:518 src/elflint.c:535 +#: src/elflint.c:519 src/elflint.c:536 #, c-format msgid "invalid program header size: %hd\n" msgstr "" -#: src/elflint.c:521 src/elflint.c:538 +#: src/elflint.c:522 src/elflint.c:539 #, c-format msgid "invalid program header position or size\n" msgstr "" -#: src/elflint.c:524 src/elflint.c:541 +#: src/elflint.c:525 src/elflint.c:542 #, c-format msgid "invalid section header size: %hd\n" msgstr "" -#: src/elflint.c:527 src/elflint.c:544 +#: src/elflint.c:528 src/elflint.c:545 #, c-format msgid "invalid section header position or size\n" msgstr "" -#: src/elflint.c:589 +#: src/elflint.c:590 #, c-format msgid "" "section [%2d] '%s': section with SHF_GROUP flag set not part of a section " "group\n" msgstr "" -#: src/elflint.c:593 +#: src/elflint.c:594 #, c-format msgid "" "section [%2d] '%s': section group [%2zu] '%s' does not precede group member\n" msgstr "" -#: src/elflint.c:609 src/elflint.c:1497 src/elflint.c:1548 src/elflint.c:1654 -#: src/elflint.c:1990 src/elflint.c:2316 src/elflint.c:2942 src/elflint.c:3105 -#: src/elflint.c:3253 src/elflint.c:3455 src/elflint.c:4464 +#: src/elflint.c:610 src/elflint.c:1498 src/elflint.c:1549 src/elflint.c:1655 +#: src/elflint.c:1991 src/elflint.c:2317 src/elflint.c:2943 src/elflint.c:3106 +#: src/elflint.c:3254 src/elflint.c:3456 src/elflint.c:4468 #, c-format msgid "section [%2d] '%s': cannot get section data\n" msgstr "" -#: src/elflint.c:622 src/elflint.c:1661 +#: src/elflint.c:623 src/elflint.c:1662 #, c-format msgid "" "section [%2d] '%s': referenced as string table for section [%2d] '%s' but " "type is not SHT_STRTAB\n" msgstr "" -#: src/elflint.c:645 +#: src/elflint.c:646 #, c-format msgid "" "section [%2d] '%s': symbol table cannot have more than one extended index " "section\n" msgstr "" -#: src/elflint.c:657 +#: src/elflint.c:658 #, c-format msgid "section [%2u] '%s': entry size is does not match ElfXX_Sym\n" msgstr "" -#: src/elflint.c:661 +#: src/elflint.c:662 #, c-format msgid "" "section [%2u] '%s': number of local entries in 'st_info' larger than table " "size\n" msgstr "" -#: src/elflint.c:670 +#: src/elflint.c:671 #, c-format msgid "section [%2d] '%s': cannot get symbol %d: %s\n" msgstr "" -#: src/elflint.c:675 src/elflint.c:678 src/elflint.c:681 src/elflint.c:684 -#: src/elflint.c:687 src/elflint.c:690 +#: src/elflint.c:676 src/elflint.c:679 src/elflint.c:682 src/elflint.c:685 +#: src/elflint.c:688 src/elflint.c:691 #, c-format msgid "section [%2d] '%s': '%s' in zeroth entry not zero\n" msgstr "" -#: src/elflint.c:693 +#: src/elflint.c:694 #, c-format msgid "section [%2d] '%s': XINDEX for zeroth entry not zero\n" msgstr "" -#: src/elflint.c:703 +#: src/elflint.c:704 #, c-format msgid "section [%2d] '%s': cannot get symbol %zu: %s\n" msgstr "" -#: src/elflint.c:712 +#: src/elflint.c:713 #, c-format msgid "section [%2d] '%s': symbol %zu: invalid name value\n" msgstr "" -#: src/elflint.c:727 +#: src/elflint.c:728 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): too large section index but no extended " "section index section\n" msgstr "" -#: src/elflint.c:733 +#: src/elflint.c:734 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): XINDEX used for index which would fit " @@ -1988,119 +2000,119 @@ msgid "" msgstr "" #. || sym->st_shndx > SHN_HIRESERVE always false -#: src/elflint.c:745 +#: src/elflint.c:746 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): invalid section index\n" msgstr "ungültiger Abschnittsindex" -#: src/elflint.c:753 +#: src/elflint.c:754 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown type\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:759 +#: src/elflint.c:760 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown symbol binding\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:764 +#: src/elflint.c:765 #, c-format msgid "section [%2d] '%s': symbol %zu (%s): unique symbol not of object type\n" msgstr "" -#: src/elflint.c:772 +#: src/elflint.c:773 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): COMMON only allowed in relocatable " "files\n" msgstr "" -#: src/elflint.c:776 +#: src/elflint.c:777 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local COMMON symbols are nonsense\n" msgstr "" -#: src/elflint.c:780 +#: src/elflint.c:781 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): function in COMMON section is nonsense\n" msgstr "" -#: src/elflint.c:831 +#: src/elflint.c:832 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): st_value out of bounds\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:837 src/elflint.c:862 src/elflint.c:911 +#: src/elflint.c:838 src/elflint.c:863 src/elflint.c:912 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s) does not fit completely in referenced " "section [%2d] '%s'\n" msgstr "" -#: src/elflint.c:846 +#: src/elflint.c:847 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): referenced section [%2d] '%s' does not " "have SHF_TLS flag set\n" msgstr "" -#: src/elflint.c:856 src/elflint.c:904 +#: src/elflint.c:857 src/elflint.c:905 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value out of bounds of referenced " "section [%2d] '%s'\n" msgstr "" -#: src/elflint.c:883 +#: src/elflint.c:884 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but no TLS program header " "entry\n" msgstr "" -#: src/elflint.c:889 +#: src/elflint.c:890 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but couldn't get TLS program " "header entry\n" msgstr "" -#: src/elflint.c:897 +#: src/elflint.c:898 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value short of referenced section " "[%2d] '%s'\n" msgstr "" -#: src/elflint.c:924 +#: src/elflint.c:925 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local symbol outside range described in " "sh_info\n" msgstr "" -#: src/elflint.c:931 +#: src/elflint.c:932 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): non-local symbol outside range " "described in sh_info\n" msgstr "" -#: src/elflint.c:938 +#: src/elflint.c:939 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): non-local section symbol\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:988 +#: src/elflint.c:989 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to bad section " "[%2d]\n" msgstr "" -#: src/elflint.c:995 +#: src/elflint.c:996 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to section [%2d] " @@ -2110,1372 +2122,1372 @@ msgstr "" #. This test is more strict than the psABIs which #. usually allow the symbol to be in the middle of #. the .got section, allowing negative offsets. -#: src/elflint.c:1011 +#: src/elflint.c:1012 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol value %#<PRIx64> does not " "match %s section address %#<PRIx64>\n" msgstr "" -#: src/elflint.c:1018 +#: src/elflint.c:1019 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol size %<PRIu64> does not " "match %s section size %<PRIu64>\n" msgstr "" -#: src/elflint.c:1026 +#: src/elflint.c:1027 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol present, but no .got " "section\n" msgstr "" -#: src/elflint.c:1042 +#: src/elflint.c:1043 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC_ symbol value %#<PRIx64> does not match dynamic " "segment address %#<PRIx64>\n" msgstr "" -#: src/elflint.c:1049 +#: src/elflint.c:1050 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC symbol size %<PRIu64> does not match dynamic " "segment size %<PRIu64>\n" msgstr "" -#: src/elflint.c:1062 +#: src/elflint.c:1063 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): symbol in dynamic symbol table with non-" "default visibility\n" msgstr "" -#: src/elflint.c:1066 +#: src/elflint.c:1067 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown bit set in st_other\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:1104 +#: src/elflint.c:1105 #, fuzzy, c-format msgid "section [%2d] '%s': cannot get section data.\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:1120 +#: src/elflint.c:1121 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT used for this RELA section\n" msgstr "" -#: src/elflint.c:1131 src/elflint.c:1184 +#: src/elflint.c:1132 src/elflint.c:1185 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT value %d too high for this section\n" msgstr "" -#: src/elflint.c:1156 src/elflint.c:1209 +#: src/elflint.c:1157 src/elflint.c:1210 #, c-format msgid "" "section [%2d] '%s': relative relocations after index %d as specified by " "DT_RELCOUNT\n" msgstr "" -#: src/elflint.c:1162 src/elflint.c:1215 +#: src/elflint.c:1163 src/elflint.c:1216 #, c-format msgid "" "section [%2d] '%s': non-relative relocation at index %zu; DT_RELCOUNT " "specified %d relative relocations\n" msgstr "" -#: src/elflint.c:1174 +#: src/elflint.c:1175 #, c-format msgid "section [%2d] '%s': DT_RELACOUNT used for this REL section\n" msgstr "" -#: src/elflint.c:1257 +#: src/elflint.c:1258 #, c-format msgid "section [%2d] '%s': invalid destination section index\n" msgstr "" -#: src/elflint.c:1269 +#: src/elflint.c:1270 #, c-format msgid "section [%2d] '%s': invalid destination section type\n" msgstr "" -#: src/elflint.c:1277 +#: src/elflint.c:1278 #, c-format msgid "section [%2d] '%s': sh_info should be zero\n" msgstr "" -#: src/elflint.c:1285 +#: src/elflint.c:1286 #, fuzzy, c-format msgid "" "section [%2d] '%s': no relocations for merge-able string sections possible\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:1293 +#: src/elflint.c:1294 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Rela\n" msgstr "" -#: src/elflint.c:1353 +#: src/elflint.c:1354 #, c-format msgid "text relocation flag set but there is no read-only segment\n" msgstr "" -#: src/elflint.c:1380 +#: src/elflint.c:1381 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid type\n" msgstr "" -#: src/elflint.c:1388 +#: src/elflint.c:1389 #, c-format msgid "" "section [%2d] '%s': relocation %zu: relocation type invalid for the file " "type\n" msgstr "" -#: src/elflint.c:1396 +#: src/elflint.c:1397 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid symbol index\n" msgstr "" -#: src/elflint.c:1414 +#: src/elflint.c:1415 #, c-format msgid "" "section [%2d] '%s': relocation %zu: only symbol '_GLOBAL_OFFSET_TABLE_' can " "be used with %s\n" msgstr "" -#: src/elflint.c:1431 +#: src/elflint.c:1432 #, c-format msgid "section [%2d] '%s': relocation %zu: offset out of bounds\n" msgstr "" -#: src/elflint.c:1446 +#: src/elflint.c:1447 #, c-format msgid "" "section [%2d] '%s': relocation %zu: copy relocation against symbol of type " "%s\n" msgstr "" -#: src/elflint.c:1467 +#: src/elflint.c:1468 #, c-format msgid "" "section [%2d] '%s': relocation %zu: read-only section modified but text " "relocation flag not set\n" msgstr "" -#: src/elflint.c:1482 +#: src/elflint.c:1483 #, c-format msgid "section [%2d] '%s': relocations are against loaded and unloaded data\n" msgstr "" -#: src/elflint.c:1522 src/elflint.c:1573 +#: src/elflint.c:1523 src/elflint.c:1574 #, c-format msgid "section [%2d] '%s': cannot get relocation %zu: %s\n" msgstr "" -#: src/elflint.c:1649 +#: src/elflint.c:1650 #, c-format msgid "more than one dynamic section present\n" msgstr "" -#: src/elflint.c:1667 +#: src/elflint.c:1668 #, c-format msgid "" "section [%2d]: referenced as string table for section [%2d] '%s' but section " "link value is invalid\n" msgstr "" -#: src/elflint.c:1675 +#: src/elflint.c:1676 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Dyn\n" msgstr "" -#: src/elflint.c:1680 src/elflint.c:1969 +#: src/elflint.c:1681 src/elflint.c:1970 #, c-format msgid "section [%2d] '%s': sh_info not zero\n" msgstr "" -#: src/elflint.c:1690 +#: src/elflint.c:1691 #, c-format msgid "section [%2d] '%s': cannot get dynamic section entry %zu: %s\n" msgstr "" -#: src/elflint.c:1698 +#: src/elflint.c:1699 #, c-format msgid "section [%2d] '%s': non-DT_NULL entries follow DT_NULL entry\n" msgstr "" -#: src/elflint.c:1705 +#: src/elflint.c:1706 #, c-format msgid "section [%2d] '%s': entry %zu: unknown tag\n" msgstr "" -#: src/elflint.c:1716 +#: src/elflint.c:1717 #, c-format msgid "section [%2d] '%s': entry %zu: more than one entry with tag %s\n" msgstr "" -#: src/elflint.c:1726 +#: src/elflint.c:1727 #, c-format msgid "section [%2d] '%s': entry %zu: level 2 tag %s used\n" msgstr "" -#: src/elflint.c:1744 +#: src/elflint.c:1745 #, c-format msgid "" "section [%2d] '%s': entry %zu: DT_PLTREL value must be DT_REL or DT_RELA\n" msgstr "" -#: src/elflint.c:1757 +#: src/elflint.c:1758 #, c-format msgid "" "section [%2d] '%s': entry %zu: pointer does not match address of section " "[%2d] '%s' referenced by sh_link\n" msgstr "" -#: src/elflint.c:1800 +#: src/elflint.c:1801 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must point into loaded segment\n" msgstr "" -#: src/elflint.c:1815 +#: src/elflint.c:1816 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must be valid offset in section " "[%2d] '%s'\n" msgstr "" -#: src/elflint.c:1835 src/elflint.c:1863 +#: src/elflint.c:1836 src/elflint.c:1864 #, c-format msgid "section [%2d] '%s': contains %s entry but not %s\n" msgstr "" -#: src/elflint.c:1847 +#: src/elflint.c:1848 #, c-format msgid "section [%2d] '%s': mandatory tag %s not present\n" msgstr "" -#: src/elflint.c:1856 +#: src/elflint.c:1857 #, c-format msgid "section [%2d] '%s': no hash section present\n" msgstr "" -#: src/elflint.c:1871 src/elflint.c:1878 +#: src/elflint.c:1872 src/elflint.c:1879 #, c-format msgid "section [%2d] '%s': not all of %s, %s, and %s are present\n" msgstr "" -#: src/elflint.c:1888 src/elflint.c:1892 +#: src/elflint.c:1889 src/elflint.c:1893 #, c-format msgid "section [%2d] '%s': %s tag missing in DSO marked during prelinking\n" msgstr "" -#: src/elflint.c:1898 +#: src/elflint.c:1899 #, c-format msgid "section [%2d] '%s': non-DSO file marked as dependency during prelink\n" msgstr "" -#: src/elflint.c:1909 src/elflint.c:1913 src/elflint.c:1917 src/elflint.c:1921 +#: src/elflint.c:1910 src/elflint.c:1914 src/elflint.c:1918 src/elflint.c:1922 #, c-format msgid "section [%2d] '%s': %s tag missing in prelinked executable\n" msgstr "" -#: src/elflint.c:1933 +#: src/elflint.c:1934 #, c-format msgid "" "section [%2d] '%s': only relocatable files can have extended section index\n" msgstr "" -#: src/elflint.c:1943 +#: src/elflint.c:1944 #, c-format msgid "" "section [%2d] '%s': extended section index section not for symbol table\n" msgstr "" -#: src/elflint.c:1947 +#: src/elflint.c:1948 #, c-format msgid "section [%2d] '%s': sh_link extended section index [%2d] is invalid\n" msgstr "" -#: src/elflint.c:1952 +#: src/elflint.c:1953 #, c-format msgid "cannot get data for symbol section\n" msgstr "" -#: src/elflint.c:1955 +#: src/elflint.c:1956 #, c-format msgid "section [%2d] '%s': entry size does not match Elf32_Word\n" msgstr "" -#: src/elflint.c:1964 +#: src/elflint.c:1965 #, c-format msgid "section [%2d] '%s': extended index table too small for symbol table\n" msgstr "" -#: src/elflint.c:1979 +#: src/elflint.c:1980 #, c-format msgid "" "section [%2d] '%s': extended section index in section [%2zu] '%s' refers to " "same symbol table\n" msgstr "" -#: src/elflint.c:1997 +#: src/elflint.c:1998 #, c-format msgid "symbol 0 should have zero extended section index\n" msgstr "" -#: src/elflint.c:2009 +#: src/elflint.c:2010 #, c-format msgid "cannot get data for symbol %zu\n" msgstr "" -#: src/elflint.c:2014 +#: src/elflint.c:2015 #, c-format msgid "extended section index is %<PRIu32> but symbol index is not XINDEX\n" msgstr "" -#: src/elflint.c:2031 src/elflint.c:2088 +#: src/elflint.c:2032 src/elflint.c:2089 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected %ld)\n" msgstr "" -#: src/elflint.c:2045 src/elflint.c:2102 +#: src/elflint.c:2046 src/elflint.c:2103 #, c-format msgid "section [%2d] '%s': chain array too large\n" msgstr "" -#: src/elflint.c:2059 src/elflint.c:2116 +#: src/elflint.c:2060 src/elflint.c:2117 #, c-format msgid "section [%2d] '%s': hash bucket reference %zu out of bounds\n" msgstr "" -#: src/elflint.c:2069 +#: src/elflint.c:2070 #, c-format msgid "section [%2d] '%s': hash chain reference %zu out of bounds\n" msgstr "" -#: src/elflint.c:2126 +#: src/elflint.c:2127 #, c-format msgid "section [%2d] '%s': hash chain reference %<PRIu64> out of bounds\n" msgstr "" -#: src/elflint.c:2139 +#: src/elflint.c:2140 #, c-format msgid "section [%2d] '%s': not enough data\n" msgstr "" -#: src/elflint.c:2151 +#: src/elflint.c:2152 #, c-format msgid "section [%2d] '%s': bitmask size zero or not power of 2: %u\n" msgstr "" -#: src/elflint.c:2167 +#: src/elflint.c:2168 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected at " "least %ld)\n" msgstr "" -#: src/elflint.c:2176 +#: src/elflint.c:2177 #, c-format msgid "section [%2d] '%s': 2nd hash function shift too big: %u\n" msgstr "" -#: src/elflint.c:2210 +#: src/elflint.c:2211 #, c-format msgid "" "section [%2d] '%s': hash chain for bucket %zu lower than symbol index bias\n" msgstr "" -#: src/elflint.c:2231 +#: src/elflint.c:2232 #, c-format msgid "" "section [%2d] '%s': symbol %u referenced in chain for bucket %zu is " "undefined\n" msgstr "" -#: src/elflint.c:2244 +#: src/elflint.c:2245 #, c-format msgid "" "section [%2d] '%s': hash value for symbol %u in chain for bucket %zu wrong\n" msgstr "" -#: src/elflint.c:2253 +#: src/elflint.c:2254 #, c-format msgid "" "section [%2d] '%s': mask index for symbol %u in chain for bucket %zu wrong\n" msgstr "" -#: src/elflint.c:2283 +#: src/elflint.c:2284 #, c-format msgid "section [%2d] '%s': hash chain for bucket %zu out of bounds\n" msgstr "" -#: src/elflint.c:2288 +#: src/elflint.c:2289 #, c-format msgid "" "section [%2d] '%s': symbol reference in chain for bucket %zu out of bounds\n" msgstr "" -#: src/elflint.c:2294 +#: src/elflint.c:2295 #, c-format msgid "section [%2d] '%s': bitmask does not match names in the hash table\n" msgstr "" -#: src/elflint.c:2307 +#: src/elflint.c:2308 #, c-format msgid "section [%2d] '%s': relocatable files cannot have hash tables\n" msgstr "" -#: src/elflint.c:2325 +#: src/elflint.c:2326 #, c-format msgid "section [%2d] '%s': hash table not for dynamic symbol table\n" msgstr "" -#: src/elflint.c:2329 +#: src/elflint.c:2330 #, c-format msgid "section [%2d] '%s': invalid sh_link symbol table section index [%2d]\n" msgstr "" -#: src/elflint.c:2339 +#: src/elflint.c:2340 #, c-format msgid "section [%2d] '%s': hash table entry size incorrect\n" msgstr "" -#: src/elflint.c:2344 +#: src/elflint.c:2345 #, c-format msgid "section [%2d] '%s': not marked to be allocated\n" msgstr "" -#: src/elflint.c:2349 +#: src/elflint.c:2350 #, c-format msgid "" "section [%2d] '%s': hash table has not even room for initial administrative " "entries\n" msgstr "" -#: src/elflint.c:2398 +#: src/elflint.c:2399 #, c-format msgid "sh_link in hash sections [%2zu] '%s' and [%2zu] '%s' not identical\n" msgstr "" -#: src/elflint.c:2422 src/elflint.c:2487 src/elflint.c:2522 +#: src/elflint.c:2423 src/elflint.c:2488 src/elflint.c:2523 #, c-format msgid "hash section [%2zu] '%s' does not contain enough data\n" msgstr "" -#: src/elflint.c:2443 +#: src/elflint.c:2444 #, c-format msgid "hash section [%2zu] '%s' has zero bit mask words\n" msgstr "" -#: src/elflint.c:2454 src/elflint.c:2498 src/elflint.c:2535 +#: src/elflint.c:2455 src/elflint.c:2499 src/elflint.c:2536 #, c-format msgid "hash section [%2zu] '%s' uses too much data\n" msgstr "" -#: src/elflint.c:2469 +#: src/elflint.c:2470 #, c-format msgid "" "hash section [%2zu] '%s' invalid symbol index %<PRIu32> (max_nsyms: " "%<PRIu32>, nentries: %<PRIu32>\n" msgstr "" -#: src/elflint.c:2556 +#: src/elflint.c:2557 #, c-format msgid "hash section [%2zu] '%s' invalid sh_entsize\n" msgstr "" -#: src/elflint.c:2566 src/elflint.c:2570 +#: src/elflint.c:2567 src/elflint.c:2571 #, c-format msgid "section [%2zu] '%s': reference to symbol index 0\n" msgstr "" -#: src/elflint.c:2577 +#: src/elflint.c:2578 #, c-format msgid "" "symbol %d referenced in new hash table in [%2zu] '%s' but not in old hash " "table in [%2zu] '%s'\n" msgstr "" -#: src/elflint.c:2589 +#: src/elflint.c:2590 #, c-format msgid "" "symbol %d referenced in old hash table in [%2zu] '%s' but not in new hash " "table in [%2zu] '%s'\n" msgstr "" -#: src/elflint.c:2605 +#: src/elflint.c:2606 #, c-format msgid "section [%2d] '%s': nonzero sh_%s for NULL section\n" msgstr "" -#: src/elflint.c:2625 +#: src/elflint.c:2626 #, c-format msgid "" "section [%2d] '%s': section groups only allowed in relocatable object files\n" msgstr "" -#: src/elflint.c:2636 +#: src/elflint.c:2637 #, c-format msgid "section [%2d] '%s': cannot get symbol table: %s\n" msgstr "" -#: src/elflint.c:2641 +#: src/elflint.c:2642 #, c-format msgid "section [%2d] '%s': section reference in sh_link is no symbol table\n" msgstr "" -#: src/elflint.c:2647 +#: src/elflint.c:2648 #, c-format msgid "section [%2d] '%s': invalid symbol index in sh_info\n" msgstr "" -#: src/elflint.c:2652 +#: src/elflint.c:2653 #, c-format msgid "section [%2d] '%s': sh_flags not zero\n" msgstr "" -#: src/elflint.c:2659 +#: src/elflint.c:2660 #, c-format msgid "section [%2d] '%s': cannot get symbol for signature\n" msgstr "" -#: src/elflint.c:2663 +#: src/elflint.c:2664 #, c-format msgid "section [%2d] '%s': cannot get symbol name for signature\n" msgstr "" -#: src/elflint.c:2668 +#: src/elflint.c:2669 #, c-format msgid "section [%2d] '%s': signature symbol cannot be empty string\n" msgstr "" -#: src/elflint.c:2674 +#: src/elflint.c:2675 #, c-format msgid "section [%2d] '%s': sh_flags not set correctly\n" msgstr "" -#: src/elflint.c:2680 +#: src/elflint.c:2681 #, c-format msgid "section [%2d] '%s': cannot get data: %s\n" msgstr "" -#: src/elflint.c:2689 +#: src/elflint.c:2690 #, c-format msgid "section [%2d] '%s': section size not multiple of sizeof(Elf32_Word)\n" msgstr "" -#: src/elflint.c:2695 +#: src/elflint.c:2696 #, c-format msgid "section [%2d] '%s': section group without flags word\n" msgstr "" -#: src/elflint.c:2703 +#: src/elflint.c:2704 #, c-format msgid "section [%2d] '%s': section group without member\n" msgstr "" -#: src/elflint.c:2707 +#: src/elflint.c:2708 #, c-format msgid "section [%2d] '%s': section group with only one member\n" msgstr "" -#: src/elflint.c:2718 +#: src/elflint.c:2719 #, c-format msgid "section [%2d] '%s': unknown section group flags\n" msgstr "" -#: src/elflint.c:2730 +#: src/elflint.c:2731 #, fuzzy, c-format msgid "section [%2d] '%s': section index %zu out of range\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:2739 +#: src/elflint.c:2740 #, c-format msgid "section [%2d] '%s': cannot get section header for element %zu: %s\n" msgstr "" -#: src/elflint.c:2746 +#: src/elflint.c:2747 #, c-format msgid "section [%2d] '%s': section group contains another group [%2d] '%s'\n" msgstr "" -#: src/elflint.c:2752 +#: src/elflint.c:2753 #, c-format msgid "" "section [%2d] '%s': element %zu references section [%2d] '%s' without " "SHF_GROUP flag set\n" msgstr "" -#: src/elflint.c:2759 +#: src/elflint.c:2760 #, c-format msgid "section [%2d] '%s' is contained in more than one section group\n" msgstr "" -#: src/elflint.c:2956 +#: src/elflint.c:2957 #, c-format msgid "" "section [%2d] '%s' refers in sh_link to section [%2d] '%s' which is no " "dynamic symbol table\n" msgstr "" -#: src/elflint.c:2968 +#: src/elflint.c:2969 #, c-format msgid "" "section [%2d] '%s' has different number of entries than symbol table [%2d] " "'%s'\n" msgstr "" -#: src/elflint.c:2984 +#: src/elflint.c:2985 #, c-format msgid "section [%2d] '%s': symbol %d: cannot read version data\n" msgstr "" -#: src/elflint.c:3000 +#: src/elflint.c:3001 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with global scope\n" msgstr "" -#: src/elflint.c:3008 +#: src/elflint.c:3009 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with version\n" msgstr "" -#: src/elflint.c:3022 +#: src/elflint.c:3023 #, c-format msgid "section [%2d] '%s': symbol %d: invalid version index %d\n" msgstr "" -#: src/elflint.c:3027 +#: src/elflint.c:3028 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for defined version\n" msgstr "" -#: src/elflint.c:3037 +#: src/elflint.c:3038 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for requested version\n" msgstr "" -#: src/elflint.c:3090 +#: src/elflint.c:3091 #, c-format msgid "more than one version reference section present\n" msgstr "" -#: src/elflint.c:3098 src/elflint.c:3245 +#: src/elflint.c:3099 src/elflint.c:3246 #, c-format msgid "section [%2d] '%s': sh_link does not link to string table\n" msgstr "" -#: src/elflint.c:3123 src/elflint.c:3299 +#: src/elflint.c:3124 src/elflint.c:3300 #, c-format msgid "section [%2d] '%s': entry %d has wrong version %d\n" msgstr "" -#: src/elflint.c:3130 src/elflint.c:3306 +#: src/elflint.c:3131 src/elflint.c:3307 #, c-format msgid "section [%2d] '%s': entry %d has wrong offset of auxiliary data\n" msgstr "" -#: src/elflint.c:3140 +#: src/elflint.c:3141 #, c-format msgid "section [%2d] '%s': entry %d has invalid file reference\n" msgstr "" -#: src/elflint.c:3148 +#: src/elflint.c:3149 #, c-format msgid "section [%2d] '%s': entry %d references unknown dependency\n" msgstr "" -#: src/elflint.c:3160 +#: src/elflint.c:3161 #, c-format msgid "section [%2d] '%s': auxiliary entry %d of entry %d has unknown flag\n" msgstr "" -#: src/elflint.c:3168 +#: src/elflint.c:3169 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has invalid name " "reference\n" msgstr "" -#: src/elflint.c:3177 +#: src/elflint.c:3178 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong hash value: " "%#x, expected %#x\n" msgstr "" -#: src/elflint.c:3186 +#: src/elflint.c:3187 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has duplicate version " "name '%s'\n" msgstr "" -#: src/elflint.c:3197 +#: src/elflint.c:3198 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong next field\n" msgstr "" -#: src/elflint.c:3214 src/elflint.c:3390 +#: src/elflint.c:3215 src/elflint.c:3391 #, c-format msgid "section [%2d] '%s': entry %d has invalid offset to next entry\n" msgstr "" -#: src/elflint.c:3222 src/elflint.c:3398 +#: src/elflint.c:3223 src/elflint.c:3399 #, c-format msgid "" "section [%2d] '%s': entry %d has zero offset to next entry, but sh_info says " "there are more entries\n" msgstr "" -#: src/elflint.c:3237 +#: src/elflint.c:3238 #, c-format msgid "more than one version definition section present\n" msgstr "" -#: src/elflint.c:3284 +#: src/elflint.c:3285 #, c-format msgid "section [%2d] '%s': more than one BASE definition\n" msgstr "" -#: src/elflint.c:3288 +#: src/elflint.c:3289 #, c-format msgid "section [%2d] '%s': BASE definition must have index VER_NDX_GLOBAL\n" msgstr "" -#: src/elflint.c:3294 +#: src/elflint.c:3295 #, c-format msgid "section [%2d] '%s': entry %d has unknown flag\n" msgstr "" -#: src/elflint.c:3321 +#: src/elflint.c:3322 #, c-format msgid "section [%2d] '%s': entry %d has invalid name reference\n" msgstr "" -#: src/elflint.c:3328 +#: src/elflint.c:3329 #, c-format msgid "section [%2d] '%s': entry %d has wrong hash value: %#x, expected %#x\n" msgstr "" -#: src/elflint.c:3336 +#: src/elflint.c:3337 #, c-format msgid "section [%2d] '%s': entry %d has duplicate version name '%s'\n" msgstr "" -#: src/elflint.c:3356 +#: src/elflint.c:3357 #, c-format msgid "" "section [%2d] '%s': entry %d has invalid name reference in auxiliary data\n" msgstr "" -#: src/elflint.c:3373 +#: src/elflint.c:3374 #, c-format msgid "section [%2d] '%s': entry %d has wrong next field in auxiliary data\n" msgstr "" -#: src/elflint.c:3406 +#: src/elflint.c:3407 #, c-format msgid "section [%2d] '%s': no BASE definition\n" msgstr "" -#: src/elflint.c:3422 +#: src/elflint.c:3423 #, c-format msgid "section [%2d] '%s': unknown parent version '%s'\n" msgstr "" -#: src/elflint.c:3447 +#: src/elflint.c:3448 #, c-format msgid "section [%2d] '%s': empty object attributes section\n" msgstr "" -#: src/elflint.c:3463 +#: src/elflint.c:3464 #, c-format msgid "section [%2d] '%s': unrecognized attribute format\n" msgstr "" -#: src/elflint.c:3474 +#: src/elflint.c:3475 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute section\n" msgstr "" -#: src/elflint.c:3483 +#: src/elflint.c:3484 #, c-format msgid "section [%2d] '%s': offset %zu: invalid length in attribute section\n" msgstr "" -#: src/elflint.c:3495 +#: src/elflint.c:3496 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated vendor name string\n" msgstr "" -#: src/elflint.c:3512 +#: src/elflint.c:3513 #, c-format msgid "" "section [%2d] '%s': offset %zu: endless ULEB128 in attribute subsection tag\n" msgstr "" -#: src/elflint.c:3521 +#: src/elflint.c:3522 #, c-format msgid "section [%2d] '%s': offset %zu: truncated attribute section\n" msgstr "" -#: src/elflint.c:3530 +#: src/elflint.c:3531 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute subsection\n" msgstr "" -#: src/elflint.c:3545 +#: src/elflint.c:3546 #, c-format msgid "" "section [%2d] '%s': offset %zu: invalid length in attribute subsection\n" msgstr "" #. Tag_File -#: src/elflint.c:3556 +#: src/elflint.c:3557 #, c-format msgid "" "section [%2d] '%s': offset %zu: attribute subsection has unexpected tag %u\n" msgstr "" -#: src/elflint.c:3574 +#: src/elflint.c:3578 #, c-format msgid "section [%2d] '%s': offset %zu: endless ULEB128 in attribute tag\n" msgstr "" -#: src/elflint.c:3585 +#: src/elflint.c:3589 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated string in attribute\n" msgstr "" -#: src/elflint.c:3598 +#: src/elflint.c:3602 #, c-format msgid "section [%2d] '%s': offset %zu: unrecognized attribute tag %u\n" msgstr "" -#: src/elflint.c:3602 +#: src/elflint.c:3606 #, c-format msgid "" "section [%2d] '%s': offset %zu: unrecognized %s attribute value %<PRIu64>\n" msgstr "" -#: src/elflint.c:3612 +#: src/elflint.c:3616 #, c-format msgid "section [%2d] '%s': offset %zu: vendor '%s' unknown\n" msgstr "" -#: src/elflint.c:3618 +#: src/elflint.c:3622 #, c-format msgid "" "section [%2d] '%s': offset %zu: extra bytes after last attribute section\n" msgstr "" -#: src/elflint.c:3715 +#: src/elflint.c:3719 #, c-format msgid "cannot get section header of zeroth section\n" msgstr "" -#: src/elflint.c:3719 +#: src/elflint.c:3723 #, c-format msgid "zeroth section has nonzero name\n" msgstr "" -#: src/elflint.c:3721 +#: src/elflint.c:3725 #, c-format msgid "zeroth section has nonzero type\n" msgstr "" -#: src/elflint.c:3723 +#: src/elflint.c:3727 #, c-format msgid "zeroth section has nonzero flags\n" msgstr "" -#: src/elflint.c:3725 +#: src/elflint.c:3729 #, c-format msgid "zeroth section has nonzero address\n" msgstr "" -#: src/elflint.c:3727 +#: src/elflint.c:3731 #, c-format msgid "zeroth section has nonzero offset\n" msgstr "" -#: src/elflint.c:3729 +#: src/elflint.c:3733 #, c-format msgid "zeroth section has nonzero align value\n" msgstr "" -#: src/elflint.c:3731 +#: src/elflint.c:3735 #, c-format msgid "zeroth section has nonzero entry size value\n" msgstr "" -#: src/elflint.c:3734 +#: src/elflint.c:3738 #, c-format msgid "" "zeroth section has nonzero size value while ELF header has nonzero shnum " "value\n" msgstr "" -#: src/elflint.c:3738 +#: src/elflint.c:3742 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " "overflow in shstrndx\n" msgstr "" -#: src/elflint.c:3742 +#: src/elflint.c:3746 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " "overflow in phnum\n" msgstr "" -#: src/elflint.c:3760 +#: src/elflint.c:3764 #, c-format msgid "cannot get section header for section [%2zu] '%s': %s\n" msgstr "" -#: src/elflint.c:3769 +#: src/elflint.c:3773 #, c-format msgid "section [%2zu]: invalid name\n" msgstr "" -#: src/elflint.c:3796 +#: src/elflint.c:3800 #, c-format msgid "section [%2d] '%s' has wrong type: expected %s, is %s\n" msgstr "" -#: src/elflint.c:3813 +#: src/elflint.c:3817 #, c-format msgid "section [%2zu] '%s' has wrong flags: expected %s, is %s\n" msgstr "" -#: src/elflint.c:3831 +#: src/elflint.c:3835 #, c-format msgid "" "section [%2zu] '%s' has wrong flags: expected %s and possibly %s, is %s\n" msgstr "" -#: src/elflint.c:3848 +#: src/elflint.c:3852 #, c-format msgid "section [%2zu] '%s' present in object file\n" msgstr "" -#: src/elflint.c:3854 src/elflint.c:3886 +#: src/elflint.c:3858 src/elflint.c:3890 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag set but there is no loadable segment\n" msgstr "" -#: src/elflint.c:3859 src/elflint.c:3891 +#: src/elflint.c:3863 src/elflint.c:3895 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag not set but there are loadable " "segments\n" msgstr "" -#: src/elflint.c:3867 +#: src/elflint.c:3871 #, c-format msgid "" "section [%2zu] '%s' is extension section index table in non-object file\n" msgstr "" -#: src/elflint.c:3910 +#: src/elflint.c:3914 #, c-format msgid "section [%2zu] '%s': size not multiple of entry size\n" msgstr "" -#: src/elflint.c:3915 +#: src/elflint.c:3919 #, c-format msgid "cannot get section header\n" msgstr "" -#: src/elflint.c:3925 +#: src/elflint.c:3929 #, c-format msgid "section [%2zu] '%s' has unsupported type %d\n" msgstr "" -#: src/elflint.c:3945 +#: src/elflint.c:3949 #, c-format msgid "" "section [%2zu] '%s' contains invalid processor-specific flag(s) %#<PRIx64>\n" msgstr "" -#: src/elflint.c:3955 +#: src/elflint.c:3959 #, c-format msgid "section [%2zu] '%s' contains unknown flag(s) %#<PRIx64>\n" msgstr "" -#: src/elflint.c:3963 +#: src/elflint.c:3967 #, c-format msgid "section [%2zu] '%s': thread-local data sections address not zero\n" msgstr "" -#: src/elflint.c:3973 +#: src/elflint.c:3977 #, fuzzy, c-format msgid "section [%2zu] '%s': allocated section cannot be compressed\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:3978 +#: src/elflint.c:3982 #, fuzzy, c-format msgid "section [%2zu] '%s': nobits section cannot be compressed\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/elflint.c:3984 +#: src/elflint.c:3988 #, c-format msgid "" "section [%2zu] '%s': compressed section with no compression header: %s\n" msgstr "" -#: src/elflint.c:3990 +#: src/elflint.c:3994 #, c-format msgid "section [%2zu] '%s': invalid section reference in link value\n" msgstr "" -#: src/elflint.c:3995 +#: src/elflint.c:3999 #, c-format msgid "section [%2zu] '%s': invalid section reference in info value\n" msgstr "" -#: src/elflint.c:4002 +#: src/elflint.c:4006 #, c-format msgid "section [%2zu] '%s': strings flag set without merge flag\n" msgstr "" -#: src/elflint.c:4007 +#: src/elflint.c:4011 #, c-format msgid "section [%2zu] '%s': merge flag set but entry size is zero\n" msgstr "" -#: src/elflint.c:4026 +#: src/elflint.c:4030 #, c-format msgid "section [%2zu] '%s' has unexpected type %d for an executable section\n" msgstr "" -#: src/elflint.c:4035 +#: src/elflint.c:4039 #, c-format msgid "section [%2zu] '%s' must be of type NOBITS in debuginfo files\n" msgstr "" -#: src/elflint.c:4042 +#: src/elflint.c:4046 #, c-format msgid "section [%2zu] '%s' is both executable and writable\n" msgstr "" -#: src/elflint.c:4073 +#: src/elflint.c:4077 #, c-format msgid "" "section [%2zu] '%s' not fully contained in segment of program header entry " "%d\n" msgstr "" -#: src/elflint.c:4083 +#: src/elflint.c:4087 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " "program header entry %d\n" msgstr "" -#: src/elflint.c:4109 +#: src/elflint.c:4113 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " "program header entry %d and file contents is non-zero\n" msgstr "" -#: src/elflint.c:4120 +#: src/elflint.c:4124 #, c-format msgid "" "section [%2zu] '%s' has not type NOBITS but is not read from the file in " "segment of program header entry %d\n" msgstr "" -#: src/elflint.c:4131 +#: src/elflint.c:4135 #, c-format msgid "section [%2zu] '%s' is executable in nonexecutable segment %d\n" msgstr "" -#: src/elflint.c:4141 +#: src/elflint.c:4145 #, c-format msgid "section [%2zu] '%s' is writable in unwritable segment %d\n" msgstr "" -#: src/elflint.c:4151 +#: src/elflint.c:4155 #, c-format msgid "" "section [%2zu] '%s': alloc flag set but section not in any loaded segment\n" msgstr "" -#: src/elflint.c:4157 +#: src/elflint.c:4161 #, c-format msgid "" "section [%2zu] '%s': ELF header says this is the section header string table " "but type is not SHT_TYPE\n" msgstr "" -#: src/elflint.c:4165 +#: src/elflint.c:4169 #, c-format msgid "" "section [%2zu] '%s': relocatable files cannot have dynamic symbol tables\n" msgstr "" -#: src/elflint.c:4216 +#: src/elflint.c:4220 #, c-format msgid "more than one version symbol table present\n" msgstr "" -#: src/elflint.c:4239 +#: src/elflint.c:4243 #, c-format msgid "INTERP program header entry but no .interp section\n" msgstr "" -#: src/elflint.c:4250 +#: src/elflint.c:4254 #, c-format msgid "" "loadable segment [%u] is executable but contains no executable sections\n" msgstr "" -#: src/elflint.c:4256 +#: src/elflint.c:4260 #, c-format msgid "loadable segment [%u] is writable but contains no writable sections\n" msgstr "" -#: src/elflint.c:4267 +#: src/elflint.c:4271 #, c-format msgid "" "no .gnu.versym section present but .gnu.versym_d or .gnu.versym_r section " "exist\n" msgstr "" -#: src/elflint.c:4280 +#: src/elflint.c:4284 #, c-format msgid "duplicate version index %d\n" msgstr "" -#: src/elflint.c:4294 +#: src/elflint.c:4298 #, c-format msgid ".gnu.versym section present without .gnu.versym_d or .gnu.versym_r\n" msgstr "" -#: src/elflint.c:4343 +#: src/elflint.c:4347 #, c-format msgid "phdr[%d]: unknown core file note type %<PRIu32> at offset %<PRIu64>\n" msgstr "" -#: src/elflint.c:4347 +#: src/elflint.c:4351 #, c-format msgid "" "section [%2d] '%s': unknown core file note type %<PRIu32> at offset %zu\n" msgstr "" -#: src/elflint.c:4403 +#: src/elflint.c:4407 #, c-format msgid "" "phdr[%d]: unknown object file note type %<PRIu32> with owner name '%s' at " "offset %zu\n" msgstr "" -#: src/elflint.c:4408 +#: src/elflint.c:4412 #, c-format msgid "" "section [%2d] '%s': unknown object file note type %<PRIu32> with owner name " "'%s' at offset %zu\n" msgstr "" -#: src/elflint.c:4427 +#: src/elflint.c:4431 #, c-format msgid "phdr[%d]: no note entries defined for the type of file\n" msgstr "" -#: src/elflint.c:4447 +#: src/elflint.c:4451 #, c-format msgid "phdr[%d]: cannot get content of note section: %s\n" msgstr "" -#: src/elflint.c:4450 +#: src/elflint.c:4454 #, c-format msgid "phdr[%d]: extra %<PRIu64> bytes after last note\n" msgstr "" -#: src/elflint.c:4471 +#: src/elflint.c:4475 #, c-format msgid "section [%2d] '%s': no note entries defined for the type of file\n" msgstr "" -#: src/elflint.c:4478 +#: src/elflint.c:4482 #, c-format msgid "section [%2d] '%s': cannot get content of note section\n" msgstr "" -#: src/elflint.c:4481 +#: src/elflint.c:4485 #, c-format msgid "section [%2d] '%s': extra %<PRIu64> bytes after last note\n" msgstr "" -#: src/elflint.c:4499 +#: src/elflint.c:4503 #, c-format msgid "" "only executables, shared objects, and core files can have program headers\n" msgstr "" -#: src/elflint.c:4514 +#: src/elflint.c:4518 #, c-format msgid "cannot get program header entry %d: %s\n" msgstr "" -#: src/elflint.c:4524 +#: src/elflint.c:4528 #, c-format msgid "program header entry %d: unknown program header entry type %#<PRIx64>\n" msgstr "" -#: src/elflint.c:4535 +#: src/elflint.c:4539 #, c-format msgid "more than one INTERP entry in program header\n" msgstr "" -#: src/elflint.c:4543 +#: src/elflint.c:4547 #, c-format msgid "more than one TLS entry in program header\n" msgstr "" -#: src/elflint.c:4550 +#: src/elflint.c:4554 #, c-format msgid "static executable cannot have dynamic sections\n" msgstr "" -#: src/elflint.c:4564 +#: src/elflint.c:4568 #, c-format msgid "dynamic section reference in program header has wrong offset\n" msgstr "" -#: src/elflint.c:4567 +#: src/elflint.c:4571 #, c-format msgid "dynamic section size mismatch in program and section header\n" msgstr "" -#: src/elflint.c:4577 +#: src/elflint.c:4581 #, c-format msgid "more than one GNU_RELRO entry in program header\n" msgstr "" -#: src/elflint.c:4598 +#: src/elflint.c:4602 #, c-format msgid "loadable segment GNU_RELRO applies to is not writable\n" msgstr "" -#: src/elflint.c:4609 +#: src/elflint.c:4613 #, c-format msgid "loadable segment [%u] flags do not match GNU_RELRO [%u] flags\n" msgstr "" -#: src/elflint.c:4616 +#: src/elflint.c:4620 #, c-format msgid "" "GNU_RELRO [%u] flags are not a subset of the loadable segment [%u] flags\n" msgstr "" -#: src/elflint.c:4625 src/elflint.c:4648 +#: src/elflint.c:4629 src/elflint.c:4652 #, c-format msgid "%s segment not contained in a loaded segment\n" msgstr "" -#: src/elflint.c:4654 +#: src/elflint.c:4658 #, c-format msgid "program header offset in ELF header and PHDR entry do not match" msgstr "" -#: src/elflint.c:4681 +#: src/elflint.c:4685 #, c-format msgid "call frame search table reference in program header has wrong offset\n" msgstr "" -#: src/elflint.c:4684 +#: src/elflint.c:4688 #, c-format msgid "call frame search table size mismatch in program and section header\n" msgstr "" -#: src/elflint.c:4697 +#: src/elflint.c:4701 #, c-format msgid "PT_GNU_EH_FRAME present but no .eh_frame_hdr section\n" msgstr "" -#: src/elflint.c:4705 +#: src/elflint.c:4709 #, c-format msgid "call frame search table must be allocated\n" msgstr "" -#: src/elflint.c:4708 +#: src/elflint.c:4712 #, c-format msgid "section [%2zu] '%s' must be allocated\n" msgstr "" -#: src/elflint.c:4712 +#: src/elflint.c:4716 #, c-format msgid "call frame search table must not be writable\n" msgstr "" -#: src/elflint.c:4715 +#: src/elflint.c:4719 #, c-format msgid "section [%2zu] '%s' must not be writable\n" msgstr "" -#: src/elflint.c:4720 +#: src/elflint.c:4724 #, c-format msgid "call frame search table must not be executable\n" msgstr "" -#: src/elflint.c:4723 +#: src/elflint.c:4727 #, c-format msgid "section [%2zu] '%s' must not be executable\n" msgstr "" -#: src/elflint.c:4737 +#: src/elflint.c:4741 #, c-format msgid "program header entry %d: file size greater than memory size\n" msgstr "" -#: src/elflint.c:4744 +#: src/elflint.c:4748 #, c-format msgid "program header entry %d: alignment not a power of 2\n" msgstr "" -#: src/elflint.c:4747 +#: src/elflint.c:4751 #, c-format msgid "" "program header entry %d: file offset and virtual address not module of " "alignment\n" msgstr "" -#: src/elflint.c:4760 +#: src/elflint.c:4764 #, c-format msgid "" "executable/DSO with .eh_frame_hdr section does not have a PT_GNU_EH_FRAME " "program header entry" msgstr "" -#: src/elflint.c:4794 +#: src/elflint.c:4798 #, c-format msgid "cannot read ELF header: %s\n" msgstr "" -#: src/elflint.c:4806 +#: src/elflint.c:4810 #, fuzzy, c-format msgid "cannot create backend for ELF file\n" msgstr "neue Datei konnte nicht angelegt werden" -#: src/elflint.c:4827 +#: src/elflint.c:4831 #, c-format msgid "text relocation flag set but not needed\n" msgstr "" @@ -3732,11 +3744,11 @@ msgid "cannot create search tree" msgstr "Kann Suchbaum nicht erstellen" #: src/nm.c:742 src/nm.c:1234 src/objdump.c:778 src/readelf.c:663 -#: src/readelf.c:1471 src/readelf.c:1620 src/readelf.c:1847 src/readelf.c:2084 -#: src/readelf.c:2273 src/readelf.c:2451 src/readelf.c:2526 src/readelf.c:2791 -#: src/readelf.c:2866 src/readelf.c:2952 src/readelf.c:3547 src/readelf.c:3595 -#: src/readelf.c:3664 src/readelf.c:11581 src/readelf.c:12771 -#: src/readelf.c:12981 src/readelf.c:13049 src/size.c:396 src/size.c:467 +#: src/readelf.c:1484 src/readelf.c:1633 src/readelf.c:1860 src/readelf.c:2097 +#: src/readelf.c:2286 src/readelf.c:2466 src/readelf.c:2544 src/readelf.c:2809 +#: src/readelf.c:2884 src/readelf.c:2970 src/readelf.c:3565 src/readelf.c:3613 +#: src/readelf.c:3682 src/readelf.c:11620 src/readelf.c:12803 +#: src/readelf.c:13013 src/readelf.c:13081 src/size.c:396 src/size.c:467 #: src/strip.c:1093 #, c-format msgid "cannot get section header string table index" @@ -3852,11 +3864,11 @@ msgstr "Keine Operation angegeben.\n" msgid "while close `%s'" msgstr "" -#: src/objdump.c:362 src/readelf.c:2179 src/readelf.c:2370 +#: src/objdump.c:362 src/readelf.c:2192 src/readelf.c:2383 msgid "INVALID SYMBOL" msgstr "" -#: src/objdump.c:377 src/readelf.c:2213 src/readelf.c:2406 +#: src/objdump.c:377 src/readelf.c:2226 src/readelf.c:2419 msgid "INVALID SECTION" msgstr "" @@ -4074,12 +4086,12 @@ msgstr "konnte Elf-Deskriptor nicht erzeugen: %s" msgid "cannot determine number of sections: %s" msgstr "" -#: src/readelf.c:672 src/readelf.c:1287 src/readelf.c:1495 +#: src/readelf.c:672 src/readelf.c:1300 src/readelf.c:1508 #, c-format msgid "cannot get section: %s" msgstr "" -#: src/readelf.c:681 src/readelf.c:1294 src/readelf.c:1502 src/readelf.c:13001 +#: src/readelf.c:681 src/readelf.c:1307 src/readelf.c:1515 src/readelf.c:13033 #: src/unstrip.c:396 src/unstrip.c:427 src/unstrip.c:490 src/unstrip.c:610 #: src/unstrip.c:631 src/unstrip.c:671 src/unstrip.c:887 src/unstrip.c:1222 #: src/unstrip.c:1349 src/unstrip.c:1373 src/unstrip.c:1429 src/unstrip.c:1470 @@ -4093,8 +4105,8 @@ msgstr "" msgid "cannot get section name" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/readelf.c:698 src/readelf.c:6797 src/readelf.c:10854 src/readelf.c:10956 -#: src/readelf.c:11134 +#: src/readelf.c:698 src/readelf.c:6833 src/readelf.c:10887 src/readelf.c:10989 +#: src/readelf.c:11173 #, c-format msgid "cannot get %s content: %s" msgstr "" @@ -4164,264 +4176,269 @@ msgstr "konnte Programm-Kopf nicht erstellen: %s" msgid "cannot read ELF: %s" msgstr "Konnte %s: %s nicht lesen" -#: src/readelf.c:1078 +#: src/readelf.c:1050 +#, fuzzy +msgid "cannot find section" +msgstr "konnte Abschnittsdaten nicht holen: %s" + +#: src/readelf.c:1087 msgid "NONE (None)" msgstr "" -#: src/readelf.c:1079 +#: src/readelf.c:1088 msgid "REL (Relocatable file)" msgstr "" -#: src/readelf.c:1080 +#: src/readelf.c:1089 msgid "EXEC (Executable file)" msgstr "" -#: src/readelf.c:1081 +#: src/readelf.c:1090 msgid "DYN (Shared object file)" msgstr "" -#: src/readelf.c:1082 +#: src/readelf.c:1091 msgid "CORE (Core file)" msgstr "" -#: src/readelf.c:1087 +#: src/readelf.c:1096 #, c-format msgid "OS Specific: (%x)\n" msgstr "" #. && e_type <= ET_HIPROC always true -#: src/readelf.c:1089 +#: src/readelf.c:1098 #, c-format msgid "Processor Specific: (%x)\n" msgstr "" -#: src/readelf.c:1099 +#: src/readelf.c:1108 msgid "" "ELF Header:\n" " Magic: " msgstr "" -#: src/readelf.c:1103 +#: src/readelf.c:1112 #, c-format msgid "" "\n" " Class: %s\n" msgstr "" -#: src/readelf.c:1108 +#: src/readelf.c:1117 #, fuzzy, c-format msgid " Data: %s\n" msgstr " Daten: %s\n" -#: src/readelf.c:1114 +#: src/readelf.c:1123 #, c-format msgid " Ident Version: %hhd %s\n" msgstr "" -#: src/readelf.c:1116 src/readelf.c:1138 +#: src/readelf.c:1125 src/readelf.c:1147 msgid "(current)" msgstr "(aktuell)" -#: src/readelf.c:1120 +#: src/readelf.c:1129 #, c-format msgid " OS/ABI: %s\n" msgstr "" -#: src/readelf.c:1123 +#: src/readelf.c:1132 #, c-format msgid " ABI Version: %hhd\n" msgstr "" -#: src/readelf.c:1126 +#: src/readelf.c:1135 msgid " Type: " msgstr " Typ: " -#: src/readelf.c:1131 +#: src/readelf.c:1140 #, c-format msgid " Machine: %s\n" msgstr "" -#: src/readelf.c:1133 +#: src/readelf.c:1142 #, fuzzy, c-format msgid " Machine: <unknown>: 0x%x\n" msgstr " Daten: %s\n" -#: src/readelf.c:1136 +#: src/readelf.c:1145 #, c-format msgid " Version: %d %s\n" msgstr "" -#: src/readelf.c:1140 +#: src/readelf.c:1149 #, c-format msgid " Entry point address: %#<PRIx64>\n" msgstr "" -#: src/readelf.c:1143 +#: src/readelf.c:1152 #, c-format msgid " Start of program headers: %<PRId64> %s\n" msgstr "" -#: src/readelf.c:1144 src/readelf.c:1147 +#: src/readelf.c:1153 src/readelf.c:1156 msgid "(bytes into file)" msgstr "" -#: src/readelf.c:1146 +#: src/readelf.c:1155 #, c-format msgid " Start of section headers: %<PRId64> %s\n" msgstr "" -#: src/readelf.c:1149 +#: src/readelf.c:1158 #, c-format msgid " Flags: %s\n" msgstr "" -#: src/readelf.c:1152 +#: src/readelf.c:1161 #, c-format msgid " Size of this header: %<PRId16> %s\n" msgstr "" -#: src/readelf.c:1153 src/readelf.c:1156 src/readelf.c:1173 +#: src/readelf.c:1162 src/readelf.c:1165 src/readelf.c:1182 msgid "(bytes)" msgstr "(Bytes)" -#: src/readelf.c:1155 +#: src/readelf.c:1164 #, c-format msgid " Size of program header entries: %<PRId16> %s\n" msgstr "" -#: src/readelf.c:1158 +#: src/readelf.c:1167 #, c-format msgid " Number of program headers entries: %<PRId16>" msgstr "" -#: src/readelf.c:1165 +#: src/readelf.c:1174 #, c-format msgid " (%<PRIu32> in [0].sh_info)" msgstr "" -#: src/readelf.c:1168 src/readelf.c:1185 src/readelf.c:1199 +#: src/readelf.c:1177 src/readelf.c:1194 src/readelf.c:1208 msgid " ([0] not available)" msgstr "" -#: src/readelf.c:1172 +#: src/readelf.c:1181 #, c-format msgid " Size of section header entries: %<PRId16> %s\n" msgstr "" -#: src/readelf.c:1175 +#: src/readelf.c:1184 #, c-format msgid " Number of section headers entries: %<PRId16>" msgstr "" -#: src/readelf.c:1182 +#: src/readelf.c:1191 #, c-format msgid " (%<PRIu32> in [0].sh_size)" msgstr "" #. We managed to get the zeroth section. -#: src/readelf.c:1195 +#: src/readelf.c:1204 #, c-format msgid " (%<PRIu32> in [0].sh_link)" msgstr "" -#: src/readelf.c:1203 +#: src/readelf.c:1212 #, c-format msgid "" " Section header string table index: XINDEX%s\n" "\n" msgstr "" -#: src/readelf.c:1207 +#: src/readelf.c:1216 #, c-format msgid "" " Section header string table index: %<PRId16>\n" "\n" msgstr "" -#: src/readelf.c:1253 src/readelf.c:1461 +#: src/readelf.c:1266 src/readelf.c:1474 #, fuzzy, c-format msgid "cannot get number of sections: %s" msgstr "konnte Programm-Kopf nicht erstellen: %s" -#: src/readelf.c:1256 +#: src/readelf.c:1269 #, fuzzy, c-format msgid "" "There are %zd section headers, starting at offset %#<PRIx64>:\n" "\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:1264 +#: src/readelf.c:1277 #, fuzzy, c-format msgid "cannot get section header string table index: %s" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/readelf.c:1267 +#: src/readelf.c:1280 msgid "Section Headers:" msgstr "" -#: src/readelf.c:1270 +#: src/readelf.c:1283 msgid "" "[Nr] Name Type Addr Off Size ES Flags Lk " "Inf Al" msgstr "" -#: src/readelf.c:1272 +#: src/readelf.c:1285 msgid "" "[Nr] Name Type Addr Off Size ES " "Flags Lk Inf Al" msgstr "" -#: src/readelf.c:1277 +#: src/readelf.c:1290 msgid " [Compression Size Al]" msgstr "" -#: src/readelf.c:1279 +#: src/readelf.c:1292 msgid " [Compression Size Al]" msgstr "" -#: src/readelf.c:1357 +#: src/readelf.c:1370 #, c-format msgid "bad compression header for section %zd: %s" msgstr "" -#: src/readelf.c:1368 +#: src/readelf.c:1381 #, c-format msgid "bad gnu compressed size for section %zd: %s" msgstr "" -#: src/readelf.c:1386 +#: src/readelf.c:1399 msgid "Program Headers:" msgstr "Programm-Köpfe:" -#: src/readelf.c:1388 +#: src/readelf.c:1401 msgid "" " Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align" msgstr "" -#: src/readelf.c:1391 +#: src/readelf.c:1404 msgid "" " Type Offset VirtAddr PhysAddr FileSiz " "MemSiz Flg Align" msgstr "" -#: src/readelf.c:1448 +#: src/readelf.c:1461 #, c-format msgid "\t[Requesting program interpreter: %s]\n" msgstr "" -#: src/readelf.c:1473 +#: src/readelf.c:1486 msgid "" "\n" " Section to Segment mapping:\n" " Segment Sections..." msgstr "" -#: src/readelf.c:1484 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 +#: src/readelf.c:1497 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 #, c-format msgid "cannot get program header: %s" msgstr "" -#: src/readelf.c:1628 +#: src/readelf.c:1641 #, c-format msgid "" "\n" @@ -4432,7 +4449,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:1633 +#: src/readelf.c:1646 #, c-format msgid "" "\n" @@ -4443,31 +4460,32 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:1641 +#: src/readelf.c:1654 msgid "<INVALID SYMBOL>" msgstr "" -#: src/readelf.c:1655 +#: src/readelf.c:1668 msgid "<INVALID SECTION>" msgstr "" -#: src/readelf.c:1678 src/readelf.c:2461 src/readelf.c:3563 src/readelf.c:12873 -#: src/readelf.c:12880 src/readelf.c:12924 src/readelf.c:12931 +#: src/readelf.c:1691 src/readelf.c:2476 src/readelf.c:3581 src/readelf.c:3881 +#: src/readelf.c:12905 src/readelf.c:12912 src/readelf.c:12956 +#: src/readelf.c:12963 msgid "Couldn't uncompress section" msgstr "" -#: src/readelf.c:1682 src/readelf.c:2466 src/readelf.c:3567 +#: src/readelf.c:1695 src/readelf.c:2481 src/readelf.c:3585 #, fuzzy, c-format msgid "cannot get section [%zd] header: %s" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/readelf.c:1851 src/readelf.c:2532 src/readelf.c:2797 src/readelf.c:2872 -#: src/readelf.c:3175 src/readelf.c:3249 src/readelf.c:5570 +#: src/readelf.c:1864 src/readelf.c:2550 src/readelf.c:2815 src/readelf.c:2890 +#: src/readelf.c:3193 src/readelf.c:3267 src/readelf.c:5619 #, fuzzy, c-format msgid "invalid sh_link value in section %zu" msgstr "ungültige .debug_line Sektion" -#: src/readelf.c:1854 +#: src/readelf.c:1867 #, c-format msgid "" "\n" @@ -4480,7 +4498,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:1867 +#: src/readelf.c:1880 #, c-format msgid "" "\n" @@ -4493,48 +4511,48 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:1877 +#: src/readelf.c:1890 msgid " Type Value\n" msgstr "" -#: src/readelf.c:1886 +#: src/readelf.c:1899 #, fuzzy msgid "cannot get string table by using dynamic segment" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/readelf.c:1925 +#: src/readelf.c:1938 #, c-format msgid "Shared library: [%s]\n" msgstr "" -#: src/readelf.c:1929 +#: src/readelf.c:1942 #, c-format msgid "Library soname: [%s]\n" msgstr "" -#: src/readelf.c:1933 +#: src/readelf.c:1946 #, c-format msgid "Library rpath: [%s]\n" msgstr "" -#: src/readelf.c:1937 +#: src/readelf.c:1950 #, c-format msgid "Library runpath: [%s]\n" msgstr "" -#: src/readelf.c:1956 +#: src/readelf.c:1969 #, c-format msgid "%<PRId64> (bytes)\n" msgstr "" -#: src/readelf.c:2070 src/readelf.c:2259 +#: src/readelf.c:2083 src/readelf.c:2272 #, c-format msgid "" "\n" "Invalid symbol table at offset %#0<PRIx64>\n" msgstr "" -#: src/readelf.c:2087 src/readelf.c:2276 +#: src/readelf.c:2100 src/readelf.c:2289 #, c-format msgid "" "\n" @@ -4553,7 +4571,7 @@ msgstr[1] "" #. The .rela.dyn section does not refer to a specific section but #. instead of section index zero. Do not try to print a section #. name. -#: src/readelf.c:2102 src/readelf.c:2291 +#: src/readelf.c:2115 src/readelf.c:2304 #, c-format msgid "" "\n" @@ -4564,29 +4582,29 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:2112 +#: src/readelf.c:2125 msgid " Offset Type Value Name\n" msgstr "" -#: src/readelf.c:2114 +#: src/readelf.c:2127 msgid " Offset Type Value Name\n" msgstr "" -#: src/readelf.c:2167 src/readelf.c:2178 src/readelf.c:2191 src/readelf.c:2212 -#: src/readelf.c:2224 src/readelf.c:2357 src/readelf.c:2369 src/readelf.c:2383 -#: src/readelf.c:2405 src/readelf.c:2418 +#: src/readelf.c:2180 src/readelf.c:2191 src/readelf.c:2204 src/readelf.c:2225 +#: src/readelf.c:2237 src/readelf.c:2370 src/readelf.c:2382 src/readelf.c:2396 +#: src/readelf.c:2418 src/readelf.c:2431 msgid "<INVALID RELOC>" msgstr "" -#: src/readelf.c:2301 +#: src/readelf.c:2314 msgid " Offset Type Value Addend Name\n" msgstr "" -#: src/readelf.c:2303 +#: src/readelf.c:2316 msgid " Offset Type Value Addend Name\n" msgstr "" -#: src/readelf.c:2540 +#: src/readelf.c:2558 #, c-format msgid "" "\n" @@ -4597,40 +4615,40 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:2545 +#: src/readelf.c:2563 #, c-format msgid " %lu local symbol String table: [%2u] '%s'\n" msgid_plural " %lu local symbols String table: [%2u] '%s'\n" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:2553 +#: src/readelf.c:2571 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr "" -#: src/readelf.c:2555 +#: src/readelf.c:2573 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr "" -#: src/readelf.c:2575 +#: src/readelf.c:2593 #, c-format msgid "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" msgstr "" -#: src/readelf.c:2668 +#: src/readelf.c:2686 #, c-format msgid "bad dynamic symbol" msgstr "" -#: src/readelf.c:2753 +#: src/readelf.c:2771 msgid "none" msgstr "keine" -#: src/readelf.c:2770 +#: src/readelf.c:2788 msgid "| <unknown>" msgstr "| <unbekannt>" -#: src/readelf.c:2800 +#: src/readelf.c:2818 #, c-format msgid "" "\n" @@ -4643,17 +4661,17 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:2821 +#: src/readelf.c:2839 #, fuzzy, c-format msgid " %#06x: Version: %hu File: %s Cnt: %hu\n" msgstr " %#06x: Version: %hu Datei: %s Cnt: %hu\n" -#: src/readelf.c:2834 +#: src/readelf.c:2852 #, c-format msgid " %#06x: Name: %s Flags: %s Version: %hu\n" msgstr " %#06x: Name: %s Flags: %s Version: %hu\n" -#: src/readelf.c:2876 +#: src/readelf.c:2894 #, c-format msgid "" "\n" @@ -4666,18 +4684,18 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:2904 +#: src/readelf.c:2922 #, c-format msgid " %#06x: Version: %hd Flags: %s Index: %hd Cnt: %hd Name: %s\n" msgstr "" -#: src/readelf.c:2919 +#: src/readelf.c:2937 #, c-format msgid " %#06x: Parent %d: %s\n" msgstr "" #. Print the header. -#: src/readelf.c:3179 +#: src/readelf.c:3197 #, c-format msgid "" "\n" @@ -4690,15 +4708,15 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:3207 +#: src/readelf.c:3225 msgid " 0 *local* " msgstr " 0 *lokal* " -#: src/readelf.c:3212 +#: src/readelf.c:3230 msgid " 1 *global* " msgstr " 1 *global* " -#: src/readelf.c:3254 +#: src/readelf.c:3272 #, c-format msgid "" "\n" @@ -4713,66 +4731,66 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:3276 +#: src/readelf.c:3294 #, no-c-format msgid " Length Number % of total Coverage\n" msgstr "" -#: src/readelf.c:3278 +#: src/readelf.c:3296 #, c-format msgid " 0 %6<PRIu32> %5.1f%%\n" msgstr " 0 %6<PRIu32> %5.1f%%\n" -#: src/readelf.c:3285 +#: src/readelf.c:3303 #, c-format msgid "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" msgstr "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" -#: src/readelf.c:3298 +#: src/readelf.c:3316 #, c-format msgid "" " Average number of tests: successful lookup: %f\n" "\t\t\t unsuccessful lookup: %f\n" msgstr "" -#: src/readelf.c:3316 src/readelf.c:3380 src/readelf.c:3446 +#: src/readelf.c:3334 src/readelf.c:3398 src/readelf.c:3464 #, c-format msgid "cannot get data for section %d: %s" msgstr "" -#: src/readelf.c:3324 +#: src/readelf.c:3342 #, fuzzy, c-format msgid "invalid data in sysv.hash section %d" msgstr "ungültige .debug_line Sektion" -#: src/readelf.c:3353 +#: src/readelf.c:3371 #, fuzzy, c-format msgid "invalid chain in sysv.hash section %d" msgstr "ungültige .debug_line Sektion" -#: src/readelf.c:3388 +#: src/readelf.c:3406 #, fuzzy, c-format msgid "invalid data in sysv.hash64 section %d" msgstr "ungültige .debug_line Sektion" -#: src/readelf.c:3419 +#: src/readelf.c:3437 #, fuzzy, c-format msgid "invalid chain in sysv.hash64 section %d" msgstr "ungültige .debug_line Sektion" -#: src/readelf.c:3455 +#: src/readelf.c:3473 #, fuzzy, c-format msgid "invalid data in gnu.hash section %d" msgstr "ungültige .debug_line Sektion" -#: src/readelf.c:3521 +#: src/readelf.c:3539 #, c-format msgid "" " Symbol Bias: %u\n" " Bitmask Size: %zu bytes %<PRIuFAST32>%% bits set 2nd hash shift: %u\n" msgstr "" -#: src/readelf.c:3606 +#: src/readelf.c:3624 #, c-format msgid "" "\n" @@ -4783,13 +4801,13 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:3620 +#: src/readelf.c:3638 msgid "" " Library Time Stamp Checksum Version " "Flags" msgstr "" -#: src/readelf.c:3680 +#: src/readelf.c:3698 #, c-format msgid "" "\n" @@ -4797,102 +4815,107 @@ msgid "" "%#0<PRIx64>:\n" msgstr "" -#: src/readelf.c:3697 +#: src/readelf.c:3715 msgid " Owner Size\n" msgstr "" -#: src/readelf.c:3721 +#: src/readelf.c:3739 #, c-format msgid " %-13s %4<PRIu32>\n" msgstr " %-13s %4<PRIu32>\n" #. Unknown subsection, print and skip. -#: src/readelf.c:3760 +#: src/readelf.c:3778 #, c-format msgid " %-4u %12<PRIu32>\n" msgstr " %-4u %12<PRIu32>\n" #. Tag_File -#: src/readelf.c:3765 +#: src/readelf.c:3783 #, c-format msgid " File: %11<PRIu32>\n" msgstr " File: %11<PRIu32>\n" -#: src/readelf.c:3814 +#: src/readelf.c:3833 #, c-format msgid " %s: %<PRId64>, %s\n" msgstr " %s: %<PRId64>, %s\n" -#: src/readelf.c:3817 +#: src/readelf.c:3836 #, c-format msgid " %s: %<PRId64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:3820 +#: src/readelf.c:3839 #, c-format msgid " %s: %s\n" msgstr " %s: %s\n" -#: src/readelf.c:3830 +#: src/readelf.c:3849 #, c-format msgid " %u: %<PRId64>\n" msgstr " %u: %<PRId64>\n" -#: src/readelf.c:3833 +#: src/readelf.c:3852 #, c-format msgid " %u: %s\n" msgstr " %u: %s\n" -#: src/readelf.c:3903 +#: src/readelf.c:3890 +#, fuzzy +msgid "Couldn't get data from section" +msgstr "konnte Versionierungsabschnitt nicht erstellen: %s" + +#: src/readelf.c:3955 #, fuzzy msgid "sprintf failure" msgstr "mprotect fehlgeschlagen" -#: src/readelf.c:4387 +#: src/readelf.c:4439 msgid "empty block" msgstr "" -#: src/readelf.c:4390 +#: src/readelf.c:4442 #, c-format msgid "%zu byte block:" msgstr "" -#: src/readelf.c:4868 +#: src/readelf.c:4920 #, c-format msgid "%*s[%2<PRIuMAX>] %s <TRUNCATED>\n" msgstr "" -#: src/readelf.c:5028 +#: src/readelf.c:5080 #, c-format msgid "%s %#<PRIx64> used with different address sizes" msgstr "" -#: src/readelf.c:5035 +#: src/readelf.c:5087 #, c-format msgid "%s %#<PRIx64> used with different offset sizes" msgstr "" -#: src/readelf.c:5042 +#: src/readelf.c:5094 #, c-format msgid "%s %#<PRIx64> used with different base addresses" msgstr "" -#: src/readelf.c:5049 +#: src/readelf.c:5101 #, c-format msgid "%s %#<PRIx64> used with different attribute %s and %s" msgstr "" -#: src/readelf.c:5149 +#: src/readelf.c:5201 #, c-format msgid " [%6tx] <UNUSED GARBAGE IN REST OF SECTION>\n" msgstr "" -#: src/readelf.c:5157 +#: src/readelf.c:5209 #, c-format msgid " [%6tx] <UNUSED GARBAGE> ... %<PRIu64> bytes ...\n" msgstr "" -#: src/readelf.c:5260 +#: src/readelf.c:5315 #, c-format msgid "" "\n" @@ -4900,79 +4923,74 @@ msgid "" " [ Code]\n" msgstr "" -#: src/readelf.c:5268 +#: src/readelf.c:5323 #, c-format msgid "" "\n" "Abbreviation section at offset %<PRIu64>:\n" msgstr "" -#: src/readelf.c:5281 +#: src/readelf.c:5336 #, c-format msgid " *** error while reading abbreviation: %s\n" msgstr "" -#: src/readelf.c:5297 +#: src/readelf.c:5352 #, c-format msgid " [%5u] offset: %<PRId64>, children: %s, tag: %s\n" msgstr "" -#: src/readelf.c:5330 src/readelf.c:5639 src/readelf.c:5806 src/readelf.c:6191 -#: src/readelf.c:6807 src/readelf.c:8562 src/readelf.c:9308 src/readelf.c:9791 -#: src/readelf.c:10042 src/readelf.c:10208 src/readelf.c:10595 -#: src/readelf.c:10655 +#: src/readelf.c:5389 src/readelf.c:5682 src/readelf.c:5853 src/readelf.c:6224 +#: src/readelf.c:6850 src/readelf.c:8619 src/readelf.c:9361 src/readelf.c:9829 +#: src/readelf.c:10084 src/readelf.c:10246 src/readelf.c:10627 +#: src/readelf.c:10698 #, c-format msgid "" "\n" "DWARF section [%2zu] '%s' at offset %#<PRIx64>:\n" msgstr "" -#: src/readelf.c:5343 -#, fuzzy, c-format -msgid "cannot get .debug_addr section data: %s" -msgstr "konnte Abschnittsdaten nicht holen: %s" - -#: src/readelf.c:5443 src/readelf.c:5467 src/readelf.c:5851 src/readelf.c:9353 +#: src/readelf.c:5492 src/readelf.c:5516 src/readelf.c:5889 src/readelf.c:9397 #, fuzzy, c-format msgid " Length: %8<PRIu64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5445 src/readelf.c:5482 src/readelf.c:5864 src/readelf.c:9366 +#: src/readelf.c:5494 src/readelf.c:5531 src/readelf.c:5902 src/readelf.c:9410 #, fuzzy, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5446 src/readelf.c:5491 src/readelf.c:5873 src/readelf.c:9375 +#: src/readelf.c:5495 src/readelf.c:5540 src/readelf.c:5911 src/readelf.c:9419 #, fuzzy, c-format msgid " Address size: %8<PRIu64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5448 src/readelf.c:5501 src/readelf.c:5883 src/readelf.c:9385 +#: src/readelf.c:5497 src/readelf.c:5550 src/readelf.c:5921 src/readelf.c:9429 #, fuzzy, c-format msgid " Segment size: %8<PRIu64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5486 src/readelf.c:5868 src/readelf.c:9370 src/readelf.c:10787 +#: src/readelf.c:5535 src/readelf.c:5906 src/readelf.c:9414 src/readelf.c:10820 #, fuzzy, c-format msgid "Unknown version" msgstr "unbekannte Version" -#: src/readelf.c:5496 src/readelf.c:5709 src/readelf.c:5878 src/readelf.c:9380 +#: src/readelf.c:5545 src/readelf.c:5752 src/readelf.c:5916 src/readelf.c:9424 #, fuzzy, c-format msgid "unsupported address size" msgstr "Kein Adress-Wert" -#: src/readelf.c:5507 src/readelf.c:5720 src/readelf.c:5888 src/readelf.c:9390 +#: src/readelf.c:5556 src/readelf.c:5763 src/readelf.c:5926 src/readelf.c:9434 #, c-format msgid "unsupported segment size" msgstr "" -#: src/readelf.c:5560 src/readelf.c:5634 +#: src/readelf.c:5609 #, c-format msgid "cannot get .debug_aranges content: %s" msgstr "" -#: src/readelf.c:5575 +#: src/readelf.c:5624 #, c-format msgid "" "\n" @@ -4983,239 +5001,229 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:5606 +#: src/readelf.c:5655 #, c-format msgid " [%*zu] ???\n" msgstr " [%*zu] ???\n" -#: src/readelf.c:5608 +#: src/readelf.c:5657 #, c-format msgid "" " [%*zu] start: %0#*<PRIx64>, length: %5<PRIu64>, CU DIE offset: %6<PRId64>\n" msgstr "" -#: src/readelf.c:5652 src/readelf.c:8589 +#: src/readelf.c:5695 src/readelf.c:8638 #, c-format msgid "" "\n" "Table at offset %zu:\n" msgstr "" -#: src/readelf.c:5656 src/readelf.c:5832 src/readelf.c:6831 src/readelf.c:8600 -#: src/readelf.c:9334 +#: src/readelf.c:5699 src/readelf.c:5870 src/readelf.c:6874 src/readelf.c:8649 +#: src/readelf.c:9378 #, c-format msgid "invalid data in section [%zu] '%s'" msgstr "" -#: src/readelf.c:5672 +#: src/readelf.c:5715 #, fuzzy, c-format msgid "" "\n" " Length: %6<PRIu64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5684 +#: src/readelf.c:5727 #, fuzzy, c-format msgid " DWARF version: %6<PRIuFAST16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5688 +#: src/readelf.c:5731 #, c-format msgid "unsupported aranges version" msgstr "" -#: src/readelf.c:5699 +#: src/readelf.c:5742 #, fuzzy, c-format msgid " CU offset: %6<PRIx64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5705 +#: src/readelf.c:5748 #, c-format msgid " Address size: %6<PRIu64>\n" msgstr "" -#: src/readelf.c:5716 +#: src/readelf.c:5759 #, c-format msgid "" " Segment size: %6<PRIu64>\n" "\n" msgstr "" -#: src/readelf.c:5771 +#: src/readelf.c:5814 #, c-format msgid " %zu padding bytes\n" msgstr "" -#: src/readelf.c:5815 -#, fuzzy, c-format -msgid "cannot get .debug_rnglists content: %s" -msgstr "konnte Programm-Kopf nicht erstellen: %s" - -#: src/readelf.c:5838 src/readelf.c:9340 +#: src/readelf.c:5876 src/readelf.c:9384 #, fuzzy, c-format msgid "" "Table at Offset 0x%<PRIx64>:\n" "\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5893 src/readelf.c:9395 +#: src/readelf.c:5931 src/readelf.c:9439 #, fuzzy, c-format msgid " Offset entries: %8<PRIu64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5909 src/readelf.c:9411 +#: src/readelf.c:5947 src/readelf.c:9455 #, c-format msgid " Unknown CU base: " msgstr "" -#: src/readelf.c:5911 src/readelf.c:9413 +#: src/readelf.c:5949 src/readelf.c:9457 #, c-format msgid " CU [%6<PRIx64>] base: " msgstr "" -#: src/readelf.c:5917 src/readelf.c:9419 +#: src/readelf.c:5955 src/readelf.c:9463 #, c-format msgid " Not associated with a CU.\n" msgstr "" -#: src/readelf.c:5928 src/readelf.c:9430 +#: src/readelf.c:5966 src/readelf.c:9474 #, c-format msgid "too many offset entries for unit length" msgstr "" -#: src/readelf.c:5932 src/readelf.c:9434 +#: src/readelf.c:5970 src/readelf.c:9478 #, fuzzy, c-format msgid " Offsets starting at 0x%<PRIx64>:\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5984 +#: src/readelf.c:6022 #, fuzzy, c-format msgid "invalid range list data" msgstr "Ungültige Daten" -#: src/readelf.c:6169 src/readelf.c:9769 +#: src/readelf.c:6207 src/readelf.c:9813 #, c-format msgid "" " %zu padding bytes\n" "\n" msgstr "" -#: src/readelf.c:6186 -#, c-format -msgid "cannot get .debug_ranges content: %s" -msgstr "" - -#: src/readelf.c:6222 src/readelf.c:9824 +#: src/readelf.c:6255 src/readelf.c:9862 #, c-format msgid "" "\n" " Unknown CU base: " msgstr "" -#: src/readelf.c:6224 src/readelf.c:9826 +#: src/readelf.c:6257 src/readelf.c:9864 #, c-format msgid "" "\n" " CU [%6<PRIx64>] base: " msgstr "" -#: src/readelf.c:6233 src/readelf.c:9852 src/readelf.c:9878 +#: src/readelf.c:6266 src/readelf.c:9890 src/readelf.c:9916 #, c-format msgid " [%6tx] <INVALID DATA>\n" msgstr "" -#: src/readelf.c:6258 src/readelf.c:9962 +#: src/readelf.c:6291 src/readelf.c:10000 #, fuzzy msgid "base address" msgstr "Außerhalb des Adressbereiches" -#: src/readelf.c:6268 src/readelf.c:9972 +#: src/readelf.c:6301 src/readelf.c:10010 #, fuzzy, c-format msgid " [%6tx] empty list\n" msgstr " [%6tx] %s..%s\n" -#: src/readelf.c:6528 +#: src/readelf.c:6565 msgid " <INVALID DATA>\n" msgstr "" -#: src/readelf.c:6785 +#: src/readelf.c:6822 #, fuzzy, c-format msgid "cannot get ELF: %s" msgstr "ELF Kopf konnte nicht ausgelesen werden" -#: src/readelf.c:6803 +#: src/readelf.c:6846 #, c-format msgid "" "\n" "Call frame information section [%2zu] '%s' at offset %#<PRIx64>:\n" msgstr "" -#: src/readelf.c:6853 +#: src/readelf.c:6896 #, c-format msgid "" "\n" " [%6tx] Zero terminator\n" msgstr "" -#: src/readelf.c:6954 src/readelf.c:7108 +#: src/readelf.c:7000 src/readelf.c:7154 #, fuzzy, c-format msgid "invalid augmentation length" msgstr "ungültige Abschnittsausrichtung" -#: src/readelf.c:6969 +#: src/readelf.c:7015 msgid "FDE address encoding: " msgstr "" -#: src/readelf.c:6975 +#: src/readelf.c:7021 msgid "LSDA pointer encoding: " msgstr "" -#: src/readelf.c:7085 +#: src/readelf.c:7131 #, c-format msgid " (offset: %#<PRIx64>)" msgstr "" -#: src/readelf.c:7092 +#: src/readelf.c:7138 #, c-format msgid " (end offset: %#<PRIx64>)" msgstr "" -#: src/readelf.c:7129 +#: src/readelf.c:7175 #, c-format msgid " %-26sLSDA pointer: %#<PRIx64>\n" msgstr "" -#: src/readelf.c:7214 +#: src/readelf.c:7260 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute code: %s" msgstr "" -#: src/readelf.c:7224 +#: src/readelf.c:7270 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute form: %s" msgstr "" -#: src/readelf.c:7246 +#: src/readelf.c:7292 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute '%s' (%s) value: %s" msgstr "" -#: src/readelf.c:7576 +#: src/readelf.c:7622 #, fuzzy, c-format msgid "invalid file (%<PRId64>): %s" msgstr "Ungültige Datei" -#: src/readelf.c:7580 +#: src/readelf.c:7626 #, fuzzy, c-format msgid "no srcfiles for CU [%<PRIx64>]" msgstr "unbekannte Form %<PRIx64>" -#: src/readelf.c:7584 +#: src/readelf.c:7630 #, fuzzy, c-format msgid "couldn't get DWARF CU: %s" msgstr "ELF Kopf konnte nicht ausgelesen werden" -#: src/readelf.c:7899 +#: src/readelf.c:7952 #, c-format msgid "" "\n" @@ -5223,12 +5231,12 @@ msgid "" " [Offset]\n" msgstr "" -#: src/readelf.c:7949 +#: src/readelf.c:8002 #, fuzzy, c-format msgid "cannot get next unit: %s" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/readelf.c:7969 +#: src/readelf.c:8022 #, c-format msgid "" " Type unit at offset %<PRIu64>:\n" @@ -5237,7 +5245,7 @@ msgid "" " Type signature: %#<PRIx64>, Type offset: %#<PRIx64> [%<PRIx64>]\n" msgstr "" -#: src/readelf.c:7981 +#: src/readelf.c:8034 #, c-format msgid "" " Compilation unit at offset %<PRIu64>:\n" @@ -5245,37 +5253,37 @@ msgid "" "%<PRIu8>, Offset size: %<PRIu8>\n" msgstr "" -#: src/readelf.c:7991 src/readelf.c:8152 +#: src/readelf.c:8044 src/readelf.c:8205 #, c-format msgid " Unit type: %s (%<PRIu8>)" msgstr "" -#: src/readelf.c:8018 +#: src/readelf.c:8071 #, c-format msgid "unknown version (%d) or unit type (%d)" msgstr "" -#: src/readelf.c:8047 +#: src/readelf.c:8100 #, c-format msgid "cannot get DIE offset: %s" msgstr "" -#: src/readelf.c:8056 +#: src/readelf.c:8109 #, fuzzy, c-format msgid "cannot get tag of DIE at offset [%<PRIx64>] in section '%s': %s" msgstr "konnte Programm-Kopf nicht erstellen: %s" -#: src/readelf.c:8092 +#: src/readelf.c:8145 #, c-format msgid "cannot get next DIE: %s\n" msgstr "" -#: src/readelf.c:8100 +#: src/readelf.c:8153 #, c-format msgid "cannot get next DIE: %s" msgstr "" -#: src/readelf.c:8144 +#: src/readelf.c:8197 #, c-format msgid "" " Split compilation unit at offset %<PRIu64>:\n" @@ -5283,7 +5291,7 @@ msgid "" "%<PRIu8>, Offset size: %<PRIu8>\n" msgstr "" -#: src/readelf.c:8196 +#: src/readelf.c:8249 #, c-format msgid "" "\n" @@ -5291,18 +5299,13 @@ msgid "" "\n" msgstr "" -#: src/readelf.c:8528 +#: src/readelf.c:8581 #, fuzzy, c-format msgid "unknown form: %s" msgstr "unbekannte Form %<PRIx64>" -#: src/readelf.c:8576 -#, c-format -msgid "cannot get line data section data: %s" -msgstr "" - #. Print what we got so far. -#: src/readelf.c:8680 +#: src/readelf.c:8729 #, c-format msgid "" "\n" @@ -5321,187 +5324,187 @@ msgid "" "Opcodes:\n" msgstr "" -#: src/readelf.c:8702 +#: src/readelf.c:8751 #, fuzzy, c-format msgid "cannot handle .debug_line version: %u\n" msgstr "ungültige .debug_line Sektion" -#: src/readelf.c:8710 +#: src/readelf.c:8759 #, fuzzy, c-format msgid "cannot handle address size: %u\n" msgstr "Kein Adress-Wert" -#: src/readelf.c:8718 +#: src/readelf.c:8767 #, c-format msgid "cannot handle segment selector size: %u\n" msgstr "" -#: src/readelf.c:8728 +#: src/readelf.c:8777 #, c-format msgid "invalid data at offset %tu in section [%zu] '%s'" msgstr "" -#: src/readelf.c:8743 +#: src/readelf.c:8792 #, c-format msgid " [%*<PRIuFAST8>] %hhu argument\n" msgid_plural " [%*<PRIuFAST8>] %hhu arguments\n" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:8754 +#: src/readelf.c:8803 msgid "" "\n" "Directory table:" msgstr "" -#: src/readelf.c:8760 src/readelf.c:8837 +#: src/readelf.c:8809 src/readelf.c:8886 #, fuzzy, c-format msgid " [" msgstr " %s: %s\n" -#: src/readelf.c:8831 +#: src/readelf.c:8880 msgid "" "\n" "File name table:" msgstr "" -#: src/readelf.c:8892 +#: src/readelf.c:8941 msgid " Entry Dir Time Size Name" msgstr "" -#: src/readelf.c:8938 +#: src/readelf.c:8987 msgid "" "\n" "No line number statements." msgstr "" -#: src/readelf.c:8942 +#: src/readelf.c:8991 msgid "" "\n" "Line number statements:" msgstr "" -#: src/readelf.c:8957 +#: src/readelf.c:9006 #, c-format msgid "invalid maximum operations per instruction is zero" msgstr "" -#: src/readelf.c:8991 +#: src/readelf.c:9040 #, c-format msgid " special opcode %u: address+%u = " msgstr "" -#: src/readelf.c:8995 +#: src/readelf.c:9044 #, c-format msgid ", op_index = %u, line%+d = %zu\n" msgstr "" -#: src/readelf.c:8998 +#: src/readelf.c:9047 #, c-format msgid ", line%+d = %zu\n" msgstr "" -#: src/readelf.c:9016 +#: src/readelf.c:9065 #, c-format msgid " extended opcode %u: " msgstr "" -#: src/readelf.c:9021 +#: src/readelf.c:9070 msgid " end of sequence" msgstr "" -#: src/readelf.c:9039 +#: src/readelf.c:9088 #, fuzzy, c-format msgid " set address to " msgstr "Außerhalb des Adressbereiches" -#: src/readelf.c:9067 +#: src/readelf.c:9116 #, c-format msgid " define new file: dir=%u, mtime=%<PRIu64>, length=%<PRIu64>, name=%s\n" msgstr "" -#: src/readelf.c:9081 +#: src/readelf.c:9130 #, c-format msgid " set discriminator to %u\n" msgstr "" -#: src/readelf.c:9108 +#: src/readelf.c:9157 #, c-format msgid " set inlined context %u, function name %s (0x%x)\n" msgstr "" -#: src/readelf.c:9132 +#: src/readelf.c:9181 #, c-format msgid " set function name %s (0x%x)\n" msgstr "" #. Unknown, ignore it. -#: src/readelf.c:9139 +#: src/readelf.c:9188 #, fuzzy msgid " unknown opcode" msgstr "unbekannter Typ" #. Takes no argument. -#: src/readelf.c:9151 +#: src/readelf.c:9200 msgid " copy" msgstr "" -#: src/readelf.c:9162 +#: src/readelf.c:9211 #, c-format msgid " advance address by %u to " msgstr "" -#: src/readelf.c:9166 src/readelf.c:9227 +#: src/readelf.c:9215 src/readelf.c:9276 #, c-format msgid ", op_index to %u" msgstr "" -#: src/readelf.c:9178 +#: src/readelf.c:9227 #, c-format msgid " advance line by constant %d to %<PRId64>\n" msgstr "" -#: src/readelf.c:9188 +#: src/readelf.c:9237 #, c-format msgid " set file to %<PRIu64>\n" msgstr "" -#: src/readelf.c:9199 +#: src/readelf.c:9248 #, c-format msgid " set column to %<PRIu64>\n" msgstr "" -#: src/readelf.c:9206 +#: src/readelf.c:9255 #, c-format msgid " set '%s' to %<PRIuFAST8>\n" msgstr "" #. Takes no argument. -#: src/readelf.c:9212 +#: src/readelf.c:9261 msgid " set basic block flag" msgstr "" -#: src/readelf.c:9223 +#: src/readelf.c:9272 #, c-format msgid " advance address by constant %u to " msgstr "" -#: src/readelf.c:9243 +#: src/readelf.c:9292 #, c-format msgid " advance address by fixed value %u to \n" msgstr "" #. Takes no argument. -#: src/readelf.c:9253 +#: src/readelf.c:9302 msgid " set prologue end flag" msgstr "" #. Takes no argument. -#: src/readelf.c:9258 +#: src/readelf.c:9307 msgid " set epilogue begin flag" msgstr "" -#: src/readelf.c:9268 +#: src/readelf.c:9317 #, c-format msgid " set isa to %u\n" msgstr "" @@ -5509,108 +5512,93 @@ msgstr "" #. This is a new opcode the generator but not we know about. #. Read the parameters associated with it but then discard #. everything. Read all the parameters for this opcode. -#: src/readelf.c:9277 +#: src/readelf.c:9326 #, c-format msgid " unknown opcode with %<PRIu8> parameter:" msgid_plural " unknown opcode with %<PRIu8> parameters:" msgstr[0] "" msgstr[1] "" -#: src/readelf.c:9317 -#, fuzzy, c-format -msgid "cannot get .debug_loclists content: %s" -msgstr "konnte Eintrag aus der Symboltabelle nicht holen: %s" - -#: src/readelf.c:9483 +#: src/readelf.c:9527 #, c-format msgid " <INVALID DATA>\n" msgstr "" -#: src/readelf.c:9523 +#: src/readelf.c:9567 #, fuzzy, c-format msgid "invalid loclists data" msgstr "Ungültige Daten" -#: src/readelf.c:9786 -#, c-format -msgid "cannot get .debug_loc content: %s" -msgstr "" - -#: src/readelf.c:9999 src/readelf.c:11043 +#: src/readelf.c:10037 src/readelf.c:11082 msgid " <INVALID DATA>\n" msgstr "" -#: src/readelf.c:10054 src/readelf.c:10217 -#, c-format -msgid "cannot get macro information section data: %s" -msgstr "" - -#: src/readelf.c:10134 +#: src/readelf.c:10168 #, c-format msgid "%*s*** non-terminated string at end of section" msgstr "" -#: src/readelf.c:10157 +#: src/readelf.c:10191 #, c-format msgid "%*s*** missing DW_MACINFO_start_file argument at end of section" msgstr "" -#: src/readelf.c:10258 +#: src/readelf.c:10286 #, fuzzy, c-format msgid " Offset: 0x%<PRIx64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10270 +#: src/readelf.c:10298 #, fuzzy, c-format msgid " Version: %<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10276 src/readelf.c:11163 +#: src/readelf.c:10304 src/readelf.c:11202 #, c-format msgid " unknown version, cannot parse section\n" msgstr "" -#: src/readelf.c:10283 +#: src/readelf.c:10311 #, fuzzy, c-format msgid " Flag: 0x%<PRIx8>" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10312 +#: src/readelf.c:10340 #, c-format msgid " Offset length: %<PRIu8>\n" msgstr "" -#: src/readelf.c:10320 +#: src/readelf.c:10348 #, c-format msgid " .debug_line offset: 0x%<PRIx64>\n" msgstr "" -#: src/readelf.c:10345 +#: src/readelf.c:10373 #, c-format msgid " extension opcode table, %<PRIu8> items:\n" msgstr "" -#: src/readelf.c:10352 +#: src/readelf.c:10380 #, c-format msgid " [%<PRIx8>]" msgstr "" -#: src/readelf.c:10364 +#: src/readelf.c:10392 #, c-format msgid " %<PRIu8> arguments:" msgstr "" -#: src/readelf.c:10379 +#: src/readelf.c:10407 #, c-format msgid " no arguments." msgstr "" -#: src/readelf.c:10580 +#: src/readelf.c:10608 #, c-format msgid " [%5d] DIE offset: %6<PRId64>, CU DIE offset: %6<PRId64>, name: %s\n" msgstr "" -#: src/readelf.c:10624 +#: src/readelf.c:10663 #, c-format msgid "" "\n" @@ -5619,77 +5607,72 @@ msgid "" msgstr "" #. TRANS: the debugstr| prefix makes the string unique. -#: src/readelf.c:10629 +#: src/readelf.c:10668 msgctxt "debugstr" msgid "Offset" msgstr "" -#: src/readelf.c:10639 +#: src/readelf.c:10678 #, c-format msgid " *** error, missing string terminator\n" msgstr "" -#: src/readelf.c:10668 -#, fuzzy, c-format -msgid "cannot get .debug_str_offsets section data: %s" -msgstr "konnte Abschnittsdaten nicht holen: %s" - -#: src/readelf.c:10767 +#: src/readelf.c:10800 #, fuzzy, c-format msgid " Length: %8<PRIu64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10769 +#: src/readelf.c:10802 #, fuzzy, c-format msgid " Offset size: %8<PRIu8>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10783 +#: src/readelf.c:10816 #, fuzzy, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10792 +#: src/readelf.c:10825 #, fuzzy, c-format msgid " Padding: %8<PRIx16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10846 +#: src/readelf.c:10879 #, c-format msgid "" "\n" "Call frame search table section [%2zu] '.eh_frame_hdr':\n" msgstr "" -#: src/readelf.c:10948 +#: src/readelf.c:10981 #, c-format msgid "" "\n" "Exception handling table section [%2zu] '.gcc_except_table':\n" msgstr "" -#: src/readelf.c:10971 +#: src/readelf.c:11004 #, c-format msgid " LPStart encoding: %#x " msgstr "" -#: src/readelf.c:10983 +#: src/readelf.c:11016 #, c-format msgid " TType encoding: %#x " msgstr "" -#: src/readelf.c:10998 +#: src/readelf.c:11033 #, c-format msgid " Call site encoding: %#x " msgstr "" -#: src/readelf.c:11011 +#: src/readelf.c:11048 msgid "" "\n" " Call site table:" msgstr "" -#: src/readelf.c:11025 +#: src/readelf.c:11064 #, c-format msgid "" " [%4u] Call site start: %#<PRIx64>\n" @@ -5698,142 +5681,142 @@ msgid "" " Action: %u\n" msgstr "" -#: src/readelf.c:11098 +#: src/readelf.c:11137 #, c-format msgid "invalid TType encoding" msgstr "" -#: src/readelf.c:11125 +#: src/readelf.c:11164 #, c-format msgid "" "\n" "GDB section [%2zu] '%s' at offset %#<PRIx64> contains %<PRId64> bytes :\n" msgstr "" -#: src/readelf.c:11154 +#: src/readelf.c:11193 #, fuzzy, c-format msgid " Version: %<PRId32>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:11172 +#: src/readelf.c:11211 #, c-format msgid " CU offset: %#<PRIx32>\n" msgstr "" -#: src/readelf.c:11179 +#: src/readelf.c:11218 #, c-format msgid " TU offset: %#<PRIx32>\n" msgstr "" -#: src/readelf.c:11186 +#: src/readelf.c:11225 #, c-format msgid " address offset: %#<PRIx32>\n" msgstr "" -#: src/readelf.c:11193 +#: src/readelf.c:11232 #, c-format msgid " symbol offset: %#<PRIx32>\n" msgstr "" -#: src/readelf.c:11200 +#: src/readelf.c:11239 #, c-format msgid " constant offset: %#<PRIx32>\n" msgstr "" -#: src/readelf.c:11214 +#: src/readelf.c:11253 #, c-format msgid "" "\n" " CU list at offset %#<PRIx32> contains %zu entries:\n" msgstr "" -#: src/readelf.c:11239 +#: src/readelf.c:11278 #, c-format msgid "" "\n" " TU list at offset %#<PRIx32> contains %zu entries:\n" msgstr "" -#: src/readelf.c:11268 +#: src/readelf.c:11307 #, c-format msgid "" "\n" " Address list at offset %#<PRIx32> contains %zu entries:\n" msgstr "" -#: src/readelf.c:11300 +#: src/readelf.c:11339 #, c-format msgid "" "\n" " Symbol table at offset %#<PRIx32> contains %zu slots:\n" msgstr "" -#: src/readelf.c:11438 +#: src/readelf.c:11477 #, c-format msgid "cannot get debug context descriptor: %s" msgstr "" -#: src/readelf.c:11804 src/readelf.c:12431 src/readelf.c:12541 -#: src/readelf.c:12598 +#: src/readelf.c:11843 src/readelf.c:12463 src/readelf.c:12573 +#: src/readelf.c:12630 #, c-format msgid "cannot convert core note data: %s" msgstr "" -#: src/readelf.c:12168 +#: src/readelf.c:12207 #, c-format msgid "" "\n" "%*s... <repeats %u more times> ..." msgstr "" -#: src/readelf.c:12677 +#: src/readelf.c:12709 msgid " Owner Data size Type\n" msgstr "" -#: src/readelf.c:12705 +#: src/readelf.c:12737 #, c-format msgid " %-13.*s %9<PRId32> %s\n" msgstr "" -#: src/readelf.c:12757 +#: src/readelf.c:12789 #, fuzzy, c-format msgid "cannot get content of note: %s" msgstr "Konnte Inhalt von %s: %s nicht lesen" -#: src/readelf.c:12790 +#: src/readelf.c:12822 #, c-format msgid "" "\n" "Note section [%2zu] '%s' of %<PRIu64> bytes at offset %#0<PRIx64>:\n" msgstr "" -#: src/readelf.c:12813 +#: src/readelf.c:12845 #, c-format msgid "" "\n" "Note segment of %<PRIu64> bytes at offset %#0<PRIx64>:\n" msgstr "" -#: src/readelf.c:12860 +#: src/readelf.c:12892 #, fuzzy, c-format msgid "" "\n" "Section [%zu] '%s' has no data to dump.\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/readelf.c:12887 src/readelf.c:12938 +#: src/readelf.c:12919 src/readelf.c:12970 #, fuzzy, c-format msgid "cannot get data for section [%zu] '%s': %s" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/readelf.c:12892 +#: src/readelf.c:12924 #, c-format msgid "" "\n" "Hex dump of section [%zu] '%s', %<PRIu64> bytes at offset %#0<PRIx64>:\n" msgstr "" -#: src/readelf.c:12897 +#: src/readelf.c:12929 #, c-format msgid "" "\n" @@ -5841,21 +5824,21 @@ msgid "" "%#0<PRIx64>:\n" msgstr "" -#: src/readelf.c:12911 +#: src/readelf.c:12943 #, fuzzy, c-format msgid "" "\n" "Section [%zu] '%s' has no strings to dump.\n" msgstr "konnte Abschnittsdaten nicht holen: %s" -#: src/readelf.c:12943 +#: src/readelf.c:12975 #, c-format msgid "" "\n" "String section [%zu] '%s' contains %<PRIu64> bytes at offset %#0<PRIx64>:\n" msgstr "" -#: src/readelf.c:12948 +#: src/readelf.c:12980 #, c-format msgid "" "\n" @@ -5863,45 +5846,45 @@ msgid "" "offset %#0<PRIx64>:\n" msgstr "" -#: src/readelf.c:12996 +#: src/readelf.c:13028 #, c-format msgid "" "\n" "section [%lu] does not exist" msgstr "" -#: src/readelf.c:13026 +#: src/readelf.c:13058 #, c-format msgid "" "\n" "section '%s' does not exist" msgstr "" -#: src/readelf.c:13081 +#: src/readelf.c:13113 #, c-format msgid "cannot get symbol index of archive '%s': %s" msgstr "" -#: src/readelf.c:13084 +#: src/readelf.c:13116 #, c-format msgid "" "\n" "Archive '%s' has no symbol index\n" msgstr "" -#: src/readelf.c:13088 +#: src/readelf.c:13120 #, c-format msgid "" "\n" "Index of archive '%s' has %zu entries:\n" msgstr "" -#: src/readelf.c:13106 +#: src/readelf.c:13138 #, fuzzy, c-format msgid "cannot extract member at offset %zu in '%s': %s" msgstr "konnte Programm-Kopf nicht erstellen: %s" -#: src/readelf.c:13111 +#: src/readelf.c:13143 #, c-format msgid "Archive member '%s' contains:\n" msgstr "" @@ -6907,6 +6890,22 @@ msgid "Show instances of inlined functions" msgstr "" #, fuzzy, c-format +#~ msgid "cannot get .debug_addr section data: %s" +#~ msgstr "konnte Abschnittsdaten nicht holen: %s" + +#, fuzzy, c-format +#~ msgid "cannot get .debug_rnglists content: %s" +#~ msgstr "konnte Programm-Kopf nicht erstellen: %s" + +#, fuzzy, c-format +#~ msgid "cannot get .debug_loclists content: %s" +#~ msgstr "konnte Eintrag aus der Symboltabelle nicht holen: %s" + +#, fuzzy, c-format +#~ msgid "cannot get .debug_str_offsets section data: %s" +#~ msgstr "konnte Abschnittsdaten nicht holen: %s" + +#, fuzzy, c-format #~ msgid "cannot allocate memory" #~ msgstr "konnte Verzeichnis nicht erstellen: %s" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: elfutils\n" "Report-Msgid-Bugs-To: https://sourceware.org/bugzilla/\n" -"POT-Creation-Date: 2022-11-02 13:30+0100\n" +"POT-Creation-Date: 2023-03-03 16:09+0100\n" "PO-Revision-Date: 2011-01-10 15:17-0300\n" "Last-Translator: Claudio Rodrigo Pereyra Diaz <claudiorodrigo@pereyradiaz." "com.ar>\n" @@ -52,18 +52,18 @@ msgstr "" "garantÃa, ni siquiera para SU COMERCIALIZACIÓN o PARA SER USADO CON UN FIN " "DETERMINADO.\n" -#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11754 +#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11793 #: src/unstrip.c:311 #, c-format msgid "memory exhausted" msgstr "memoria agotada" -#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:51 +#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:47 #: libelf/elf_error.c:59 msgid "no error" msgstr "ningún error" -#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:53 +#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:49 #: libelf/elf_error.c:90 msgid "out of memory" msgstr "memoria agotada" @@ -100,7 +100,7 @@ msgstr "error durante salida de datos" msgid "no backend support available" msgstr "No hay soporte de segundo plano" -#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:52 +#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:48 #: libelf/elf_error.c:62 msgid "unknown error" msgstr "error desconocido" @@ -117,7 +117,7 @@ msgstr "Valor de tamaño de página'%s': ignorado" msgid "invalid character '\\%o' at line %d; ignored" msgstr "Valor de tamaño de página'%s': ignorado" -#: libcpu/i386_parse.y:553 +#: libcpu/i386_parse.y:555 #, fuzzy, c-format #| msgid "while reading linker script '%s': %s at line %d" msgid "while reading i386 CPU description: %s at line %d" @@ -234,7 +234,7 @@ msgstr "versión DWARF inválida" msgid "invalid directory index" msgstr "Ãndice de directorio inválido" -#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:73 +#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:69 msgid "address out of range" msgstr "dirección fuera de rango" @@ -265,7 +265,7 @@ msgstr "Ãndice de lÃnea inválido" msgid "invalid address range index" msgstr "Ãndice de dirección de rango inválido" -#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:74 +#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:70 msgid "no matching address range" msgstr "dirección de rango no coincidente" @@ -380,170 +380,170 @@ msgstr "memoria agotada" msgid "No modules recognized in core file" msgstr "No hay módulos reconocidos en el archivo core" -#: libdwfl/libdwflP.h:54 +#: libdwfl/libdwflP.h:50 msgid "See errno" msgstr "Ve errno" -#: libdwfl/libdwflP.h:55 +#: libdwfl/libdwflP.h:51 msgid "See elf_errno" msgstr "Ver elf_errno" -#: libdwfl/libdwflP.h:56 +#: libdwfl/libdwflP.h:52 msgid "See dwarf_errno" msgstr "Ver dwarf_errno" -#: libdwfl/libdwflP.h:57 +#: libdwfl/libdwflP.h:53 msgid "See ebl_errno (XXX missing)" msgstr "Ver ebl_errno (no se encuentra XXX)" -#: libdwfl/libdwflP.h:58 +#: libdwfl/libdwflP.h:54 msgid "gzip decompression failed" msgstr "falló la descompresión gzip" -#: libdwfl/libdwflP.h:59 +#: libdwfl/libdwflP.h:55 msgid "bzip2 decompression failed" msgstr "falló la descompresión bzip2" -#: libdwfl/libdwflP.h:60 +#: libdwfl/libdwflP.h:56 msgid "LZMA decompression failed" msgstr "falló la descompresión LZMA" -#: libdwfl/libdwflP.h:61 +#: libdwfl/libdwflP.h:57 #, fuzzy msgid "zstd decompression failed" msgstr "falló la descompresión gzip" -#: libdwfl/libdwflP.h:62 +#: libdwfl/libdwflP.h:58 msgid "no support library found for machine" msgstr "no se ha encontrado una biblioteca de soporte para la máquina" -#: libdwfl/libdwflP.h:63 +#: libdwfl/libdwflP.h:59 msgid "Callbacks missing for ET_REL file" msgstr "No se encuentran rellamadas para el archivo ET_REL" -#: libdwfl/libdwflP.h:64 +#: libdwfl/libdwflP.h:60 msgid "Unsupported relocation type" msgstr "Tipo de reubicación no soportada" -#: libdwfl/libdwflP.h:65 +#: libdwfl/libdwflP.h:61 msgid "r_offset is bogus" msgstr "r_offset se encuentra inutilizable" -#: libdwfl/libdwflP.h:66 libelf/elf_error.c:114 libelf/elf_error.c:174 +#: libdwfl/libdwflP.h:62 libelf/elf_error.c:114 libelf/elf_error.c:174 msgid "offset out of range" msgstr "desplazamiento fuera de rango" -#: libdwfl/libdwflP.h:67 +#: libdwfl/libdwflP.h:63 msgid "relocation refers to undefined symbol" msgstr "la reubicación hace referencia a un sÃmbolo no definido" -#: libdwfl/libdwflP.h:68 +#: libdwfl/libdwflP.h:64 msgid "Callback returned failure" msgstr "La rellamada devolvió un fallo" -#: libdwfl/libdwflP.h:69 +#: libdwfl/libdwflP.h:65 msgid "No DWARF information found" msgstr "No se ha encontrado una información DWARF" -#: libdwfl/libdwflP.h:70 +#: libdwfl/libdwflP.h:66 msgid "No symbol table found" msgstr "No se ha encontrado una tabla simbólica" -#: libdwfl/libdwflP.h:71 +#: libdwfl/libdwflP.h:67 msgid "No ELF program headers" msgstr "No existen encabezados de programa ELF" -#: libdwfl/libdwflP.h:72 +#: libdwfl/libdwflP.h:68 msgid "address range overlaps an existing module" msgstr "el rango de dirección se superpone con un módulo existente" -#: libdwfl/libdwflP.h:75 +#: libdwfl/libdwflP.h:71 msgid "image truncated" msgstr "imagen truncada" -#: libdwfl/libdwflP.h:76 +#: libdwfl/libdwflP.h:72 msgid "ELF file opened" msgstr "Archivo ELF abierto" -#: libdwfl/libdwflP.h:77 +#: libdwfl/libdwflP.h:73 msgid "not a valid ELF file" msgstr "no es un archivo ELF válido" -#: libdwfl/libdwflP.h:78 +#: libdwfl/libdwflP.h:74 msgid "cannot handle DWARF type description" msgstr "no es posible manipular tipo de descripción DWARF" -#: libdwfl/libdwflP.h:79 +#: libdwfl/libdwflP.h:75 msgid "ELF file does not match build ID" msgstr "El archivo ELF no coincide con el ID construido" -#: libdwfl/libdwflP.h:80 +#: libdwfl/libdwflP.h:76 #, fuzzy msgid "corrupt .gnu.prelink_undo section data" msgstr "no se puede leer sección '.gnu.prelink_undo': %s" -#: libdwfl/libdwflP.h:81 +#: libdwfl/libdwflP.h:77 msgid "Internal error due to ebl" msgstr "" -#: libdwfl/libdwflP.h:82 +#: libdwfl/libdwflP.h:78 msgid "Missing data in core file" msgstr "" -#: libdwfl/libdwflP.h:83 +#: libdwfl/libdwflP.h:79 #, fuzzy msgid "Invalid register" msgstr "Parámetro inválido" -#: libdwfl/libdwflP.h:84 +#: libdwfl/libdwflP.h:80 #, fuzzy #| msgid "no reference value" msgid "Unknown register value" msgstr "no hay valor de referencia" -#: libdwfl/libdwflP.h:85 +#: libdwfl/libdwflP.h:81 msgid "Error reading process memory" msgstr "" -#: libdwfl/libdwflP.h:86 +#: libdwfl/libdwflP.h:82 msgid "Couldn't find architecture of any ELF" msgstr "" -#: libdwfl/libdwflP.h:87 +#: libdwfl/libdwflP.h:83 msgid "Error parsing /proc filesystem" msgstr "" -#: libdwfl/libdwflP.h:88 +#: libdwfl/libdwflP.h:84 #, fuzzy msgid "Invalid DWARF" msgstr "DWARF inválido" -#: libdwfl/libdwflP.h:89 +#: libdwfl/libdwflP.h:85 msgid "Unsupported DWARF" msgstr "" -#: libdwfl/libdwflP.h:90 +#: libdwfl/libdwflP.h:86 msgid "Unable to find more threads" msgstr "" -#: libdwfl/libdwflP.h:91 +#: libdwfl/libdwflP.h:87 msgid "Dwfl already has attached state" msgstr "" -#: libdwfl/libdwflP.h:92 +#: libdwfl/libdwflP.h:88 msgid "Dwfl has no attached state" msgstr "" -#: libdwfl/libdwflP.h:93 +#: libdwfl/libdwflP.h:89 msgid "Unwinding not supported for this architecture" msgstr "" -#: libdwfl/libdwflP.h:94 +#: libdwfl/libdwflP.h:90 #, fuzzy msgid "Invalid argument" msgstr "Parámetro inválido" -#: libdwfl/libdwflP.h:95 +#: libdwfl/libdwflP.h:91 #, fuzzy msgid "Not an ET_CORE ELF file" msgstr "no es un archivo ELF válido" @@ -649,7 +649,7 @@ msgstr "tamaño inválido del operando fuente" msgid "invalid size of destination operand" msgstr "tamaño inválido del operando destino" -#: libelf/elf_error.c:86 src/readelf.c:6378 +#: libelf/elf_error.c:86 src/readelf.c:6415 #, c-format msgid "invalid encoding" msgstr "codificación inválida" @@ -735,8 +735,8 @@ msgstr "no coinciden los datos/scn" msgid "invalid section header" msgstr "encabezamiento de sección inválida" -#: libelf/elf_error.c:190 src/readelf.c:10266 src/readelf.c:10866 -#: src/readelf.c:10967 src/readelf.c:11149 +#: libelf/elf_error.c:190 src/readelf.c:10294 src/readelf.c:10899 +#: src/readelf.c:11000 src/readelf.c:11188 #, c-format msgid "invalid data" msgstr "datos inválidos" @@ -871,24 +871,30 @@ msgstr "" msgid "Show demangled symbols (ARG is always ignored)" msgstr "" -#: src/addr2line.c:77 +#: src/addr2line.c:76 +#, fuzzy +#| msgid "Strip debugging symbols." +msgid "Show demangled symbols" +msgstr "Descartar los sÃmbolos de depuración." + +#: src/addr2line.c:78 msgid "Print all information on one line, and indent inlines" msgstr "" -#: src/addr2line.c:79 +#: src/addr2line.c:80 #, fuzzy #| msgid "Show absolute file names using compilation directory" msgid "Show relative file names without compilation directory" msgstr "" "Mostrar nombres de fichero absolutos mediante directorio de compilación" -#: src/addr2line.c:81 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 +#: src/addr2line.c:82 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 #: src/strings.c:77 msgid "Miscellaneous:" msgstr "Misceláneos:" #. Short description of program. -#: src/addr2line.c:89 +#: src/addr2line.c:90 msgid "" "Locate source files and line information for ADDRs (in a.out by default)." msgstr "" @@ -896,25 +902,25 @@ msgstr "" "por defecto)." #. Strings for arguments in help texts. -#: src/addr2line.c:93 +#: src/addr2line.c:94 msgid "[ADDR...]" msgstr "[DIREC...]" -#: src/addr2line.c:526 +#: src/addr2line.c:530 msgid "Section syntax requires exactly one module" msgstr "Sintaxis de sección requiere exactamente un módulo" -#: src/addr2line.c:548 +#: src/addr2line.c:552 #, c-format msgid "offset %#<PRIxMAX> lies outside section '%s'" msgstr "Compensación %#<PRIxMAX> se encuentra fuera de sección '%s'" -#: src/addr2line.c:658 +#: src/addr2line.c:662 #, c-format msgid "cannot find symbol '%s'" msgstr "no se puede encontrar sÃmbolo '%s'" -#: src/addr2line.c:663 +#: src/addr2line.c:667 #, c-format msgid "offset %#<PRIxMAX> lies outside contents of '%s'" msgstr "compensación %#<PRIxMAX> se encuentra fuera de contenido de '%s'" @@ -1398,7 +1404,7 @@ msgid "Suppress some error output (counterpart to --verbose)" msgstr "" #. Strings for arguments in help texts. -#: src/elfclassify.c:979 src/elfcompress.c:1358 src/elflint.c:76 +#: src/elfclassify.c:979 src/elfcompress.c:1433 src/elflint.c:76 #: src/readelf.c:160 msgid "FILE..." msgstr "FICHERO..." @@ -1669,71 +1675,77 @@ msgstr "No se puede obtener contenido de sección %zu: %s" msgid "cannot get relocation: %s" msgstr "No se puede obtener reubicación: %s" -#: src/elfcompress.c:117 src/strip.c:305 src/unstrip.c:116 +#: src/elfcompress.c:128 src/strip.c:305 src/unstrip.c:116 #, c-format msgid "-o option specified twice" msgstr "opción -o especificada dos veces" -#: src/elfcompress.c:124 +#: src/elfcompress.c:135 #, fuzzy, c-format msgid "-t option specified twice" msgstr "opción -f especificada dos veces" -#: src/elfcompress.c:133 +#: src/elfcompress.c:147 +#, c-format +msgid "ZSTD support is not enabled" +msgstr "" + +#: src/elfcompress.c:150 #, fuzzy, c-format msgid "unknown compression type '%s'" msgstr "tipo desconocido" #. We need at least one input file. -#: src/elfcompress.c:145 src/elfcompress.c:1369 +#: src/elfcompress.c:162 src/elfcompress.c:1444 #, fuzzy, c-format msgid "No input file given" msgstr "archivo de entrada vacÃo" -#: src/elfcompress.c:151 src/elfcompress.c:1373 +#: src/elfcompress.c:168 src/elfcompress.c:1448 #, fuzzy, c-format msgid "Only one input file allowed together with '-o'" msgstr "Sólo se permite ingresar un archivo junto con '-o' y '-f'" -#: src/elfcompress.c:1331 +#: src/elfcompress.c:1405 #, fuzzy msgid "Place (de)compressed output into FILE" msgstr "Colocar la salida obtenida en FICHERO" -#: src/elfcompress.c:1334 +#: src/elfcompress.c:1408 msgid "" "What type of compression to apply. TYPE can be 'none' (decompress), " -"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias) or 'zlib-" -"gnu' (.zdebug GNU style compression, 'gnu' is an alias)" +"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias), 'zlib-" +"gnu' (.zdebug GNU style compression, 'gnu' is an alias) or 'zstd' (ELF ZSTD " +"compression)" msgstr "" -#: src/elfcompress.c:1337 +#: src/elfcompress.c:1412 msgid "" "SECTION name to (de)compress, SECTION is an extended wildcard pattern " "(defaults to '.?(z)debug*')" msgstr "" -#: src/elfcompress.c:1340 +#: src/elfcompress.c:1415 msgid "Print a message for each section being (de)compressed" msgstr "" -#: src/elfcompress.c:1343 +#: src/elfcompress.c:1418 msgid "" "Force compression of section even if it would become larger or update/" "rewrite the file even if no section would be (de)compressed" msgstr "" -#: src/elfcompress.c:1346 src/strip.c:92 +#: src/elfcompress.c:1421 src/strip.c:92 msgid "Relax a few rules to handle slightly broken ELF files" msgstr "Relaja algunas reglas para manejar ficheros ELF rotos" -#: src/elfcompress.c:1349 +#: src/elfcompress.c:1424 #, fuzzy msgid "Be silent when a section cannot be compressed" msgstr "" "Sección [%2zu] '%s': dirección de secciones de datos de hilo-local no cero\n" -#: src/elfcompress.c:1359 +#: src/elfcompress.c:1434 msgid "Compress or decompress sections in an ELF file." msgstr "" @@ -1796,136 +1808,136 @@ msgstr " error al liberar descriptor sub-ELF: %s\n" msgid "Not an ELF file - it has the wrong magic bytes at the start\n" msgstr "No es un fichero ELF - tiene los bytes mágicos errados en el inicio\n" -#: src/elflint.c:356 +#: src/elflint.c:357 #, c-format msgid "e_ident[%d] == %d is no known class\n" msgstr "e_ident[%d] == %d es una clase desconocida\n" -#: src/elflint.c:361 +#: src/elflint.c:362 #, c-format msgid "e_ident[%d] == %d is no known data encoding\n" msgstr "e_ident[%d] == %d es una codificación de datos desconocida\n" -#: src/elflint.c:365 +#: src/elflint.c:366 #, c-format msgid "unknown ELF header version number e_ident[%d] == %d\n" msgstr "" "número de versión de encabezamiento ELF desconocido e_ident[%d] == %d\n" -#: src/elflint.c:373 +#: src/elflint.c:374 #, c-format msgid "unsupported OS ABI e_ident[%d] == '%s'\n" msgstr "Sistema operativo OS ABI e_ident[%d] == '%s' incompatible\n" -#: src/elflint.c:379 +#: src/elflint.c:380 #, fuzzy, c-format msgid "unsupported ABI version e_ident[%d] == %d\n" msgstr "Versión incompatible ABI e_ident[%d] == %d\n" -#: src/elflint.c:384 +#: src/elflint.c:385 #, c-format msgid "e_ident[%zu] is not zero\n" msgstr "e_ident[%zu] no es cero\n" -#: src/elflint.c:389 +#: src/elflint.c:390 #, c-format msgid "unknown object file type %d\n" msgstr "tipo de fichero objeto desconocido %d\n" -#: src/elflint.c:396 +#: src/elflint.c:397 #, c-format msgid "unknown machine type %d\n" msgstr "tipo de máquina desconocido %d\n" -#: src/elflint.c:400 +#: src/elflint.c:401 #, c-format msgid "unknown object file version\n" msgstr "versión de fichero objeto desconocido\n" -#: src/elflint.c:406 +#: src/elflint.c:407 #, c-format msgid "invalid program header offset\n" msgstr "Compensación de encabezamiento de programa inválida\n" -#: src/elflint.c:408 +#: src/elflint.c:409 #, c-format msgid "executables and DSOs cannot have zero program header offset\n" msgstr "" "tanto los ejecutables como los DSO no pueden tener compensación de " "encabezamiento de programa cero\n" -#: src/elflint.c:412 +#: src/elflint.c:413 #, c-format msgid "invalid number of program header entries\n" msgstr "cantidad no válida de entradas del encabezamiento del programa\n" -#: src/elflint.c:420 +#: src/elflint.c:421 #, c-format msgid "invalid section header table offset\n" msgstr "compensación de sección de tabla de encabezamiento inválida\n" -#: src/elflint.c:423 +#: src/elflint.c:424 #, c-format msgid "section header table must be present\n" msgstr "tabla de encabezamiento de sección debe estar presente\n" -#: src/elflint.c:437 +#: src/elflint.c:438 #, c-format msgid "invalid number of section header table entries\n" msgstr "" "cantidad no válida de entradas en la tabla del encabezamiento de sección\n" -#: src/elflint.c:454 +#: src/elflint.c:455 #, c-format msgid "invalid section header index\n" msgstr "Ãndice de sección de encabezamiento inválido\n" -#: src/elflint.c:472 +#: src/elflint.c:473 #, c-format msgid "Can only check %u headers, shnum was %u\n" msgstr "" -#: src/elflint.c:486 +#: src/elflint.c:487 #, c-format msgid "invalid number of program header table entries\n" msgstr "cantidad no válida de entradas de tabla de encabezado del programa\n" -#: src/elflint.c:503 +#: src/elflint.c:504 #, c-format msgid "Can only check %u headers, phnum was %u\n" msgstr "" -#: src/elflint.c:508 +#: src/elflint.c:509 #, c-format msgid "invalid machine flags: %s\n" msgstr "Indicadores de máquina inválidos: %s\n" -#: src/elflint.c:515 src/elflint.c:532 +#: src/elflint.c:516 src/elflint.c:533 #, c-format msgid "invalid ELF header size: %hd\n" msgstr "tamaño inválido del encabezamiento ELF: %hd\n" -#: src/elflint.c:518 src/elflint.c:535 +#: src/elflint.c:519 src/elflint.c:536 #, c-format msgid "invalid program header size: %hd\n" msgstr "tamaño inválido del encabezamiento del programa: %hd\n" -#: src/elflint.c:521 src/elflint.c:538 +#: src/elflint.c:522 src/elflint.c:539 #, c-format msgid "invalid program header position or size\n" msgstr "tamaño o posición inválidos del encabezamiento del programa\n" -#: src/elflint.c:524 src/elflint.c:541 +#: src/elflint.c:525 src/elflint.c:542 #, c-format msgid "invalid section header size: %hd\n" msgstr "tamaño inválido del encabezamiento de sección: %hd\n" -#: src/elflint.c:527 src/elflint.c:544 +#: src/elflint.c:528 src/elflint.c:545 #, c-format msgid "invalid section header position or size\n" msgstr "tamaño o posición no válidos del encabezamiento de sección\n" -#: src/elflint.c:589 +#: src/elflint.c:590 #, c-format msgid "" "section [%2d] '%s': section with SHF_GROUP flag set not part of a section " @@ -1934,7 +1946,7 @@ msgstr "" "sección [%2d] '%s': sección con la bandera SHF_GROUP no es parte de una " "sección de grupo\n" -#: src/elflint.c:593 +#: src/elflint.c:594 #, c-format msgid "" "section [%2d] '%s': section group [%2zu] '%s' does not precede group member\n" @@ -1942,14 +1954,14 @@ msgstr "" "sección [%2d] '%s': el grupo de sección [%2zu] '%s' no precede al miembro de " "grupo\n" -#: src/elflint.c:609 src/elflint.c:1497 src/elflint.c:1548 src/elflint.c:1654 -#: src/elflint.c:1990 src/elflint.c:2316 src/elflint.c:2942 src/elflint.c:3105 -#: src/elflint.c:3253 src/elflint.c:3455 src/elflint.c:4464 +#: src/elflint.c:610 src/elflint.c:1498 src/elflint.c:1549 src/elflint.c:1655 +#: src/elflint.c:1991 src/elflint.c:2317 src/elflint.c:2943 src/elflint.c:3106 +#: src/elflint.c:3254 src/elflint.c:3456 src/elflint.c:4468 #, c-format msgid "section [%2d] '%s': cannot get section data\n" msgstr "Sección [%2d] '%s': No se pueden obtener datos de sección\n" -#: src/elflint.c:622 src/elflint.c:1661 +#: src/elflint.c:623 src/elflint.c:1662 #, c-format msgid "" "section [%2d] '%s': referenced as string table for section [%2d] '%s' but " @@ -1958,7 +1970,7 @@ msgstr "" "sección [%2d] '%s': nombrado como una tabla de cadena para la sección [%2d] " "'%s' pero el tipo no es SHT_STRTAB\n" -#: src/elflint.c:645 +#: src/elflint.c:646 #, c-format msgid "" "section [%2d] '%s': symbol table cannot have more than one extended index " @@ -1967,13 +1979,13 @@ msgstr "" "sección [%2d] '%s': la tabla de sÃmbolo no puede tener más de una sección de " "Ãndice extendido\n" -#: src/elflint.c:657 +#: src/elflint.c:658 #, c-format msgid "section [%2u] '%s': entry size is does not match ElfXX_Sym\n" msgstr "" "sección [%2u] '%s': el tamaño de la entrada no coincide con ElfXX_Sym\n" -#: src/elflint.c:661 +#: src/elflint.c:662 #, fuzzy, c-format msgid "" "section [%2u] '%s': number of local entries in 'st_info' larger than table " @@ -1982,33 +1994,33 @@ msgstr "" "Sección [%2d] '%s': no hay entradas de nota definidas para el tipo de " "archivo\n" -#: src/elflint.c:670 +#: src/elflint.c:671 #, c-format msgid "section [%2d] '%s': cannot get symbol %d: %s\n" msgstr "Sección [%2d] '%s': no se puede obtener sÃmbolo %d: %s\n" -#: src/elflint.c:675 src/elflint.c:678 src/elflint.c:681 src/elflint.c:684 -#: src/elflint.c:687 src/elflint.c:690 +#: src/elflint.c:676 src/elflint.c:679 src/elflint.c:682 src/elflint.c:685 +#: src/elflint.c:688 src/elflint.c:691 #, c-format msgid "section [%2d] '%s': '%s' in zeroth entry not zero\n" msgstr "Sección [%2d] '%s': '%s' en la entrada zeroth no es cero\n" -#: src/elflint.c:693 +#: src/elflint.c:694 #, c-format msgid "section [%2d] '%s': XINDEX for zeroth entry not zero\n" msgstr "sección [%2d] '%s': XINDEX en la entrada zeroth no es cero\n" -#: src/elflint.c:703 +#: src/elflint.c:704 #, c-format msgid "section [%2d] '%s': cannot get symbol %zu: %s\n" msgstr "sección [%2d] '%s': no es posible obtener el sÃmbolo %zu: %s\n" -#: src/elflint.c:712 +#: src/elflint.c:713 #, c-format msgid "section [%2d] '%s': symbol %zu: invalid name value\n" msgstr "sección [%2d] '%s': sÃmbolo %zu: valor de nombre inválido\n" -#: src/elflint.c:727 +#: src/elflint.c:728 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): too large section index but no extended " @@ -2017,7 +2029,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: el Ãndice de sección es demasiado extenso, " "pero no la sección extendida de la sección de Ãndice\n" -#: src/elflint.c:733 +#: src/elflint.c:734 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): XINDEX used for index which would fit " @@ -2027,27 +2039,27 @@ msgstr "" "caber en st_shndx (%<PRIu32>)\n" #. || sym->st_shndx > SHN_HIRESERVE always false -#: src/elflint.c:745 +#: src/elflint.c:746 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): invalid section index\n" msgstr "sección [%2d] '%s': sÃmbolo %zu: Ãndice de sección inválido\n" -#: src/elflint.c:753 +#: src/elflint.c:754 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown type\n" msgstr "sección [%2d] '%s': sÃmbolo %zu: tipo desconocido\n" -#: src/elflint.c:759 +#: src/elflint.c:760 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown symbol binding\n" msgstr "sección [%2d] '%s': sÃmbolo %zu: asociación de sÃmbolo desconocida\n" -#: src/elflint.c:764 +#: src/elflint.c:765 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unique symbol not of object type\n" msgstr "Sección [%2d] '%s': sÃmbolo %zu: sÃmbolo único no de tipo de objeto\n" -#: src/elflint.c:772 +#: src/elflint.c:773 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): COMMON only allowed in relocatable " @@ -2056,26 +2068,26 @@ msgstr "" "sección [%2d] '%s': sÃmbolo %zu: COMMON solo es permitido en archivos " "realojables\n" -#: src/elflint.c:776 +#: src/elflint.c:777 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local COMMON symbols are nonsense\n" msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: sÃmbolos locales COMMON no tienen sentido\n" -#: src/elflint.c:780 +#: src/elflint.c:781 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): function in COMMON section is nonsense\n" msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: función en sección COMMON no tiene sentido\n" -#: src/elflint.c:831 +#: src/elflint.c:832 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): st_value out of bounds\n" msgstr "sección [%2d] '%s': sÃmbolo %zu: st_value fuera de lÃmites\n" -#: src/elflint.c:837 src/elflint.c:862 src/elflint.c:911 +#: src/elflint.c:838 src/elflint.c:863 src/elflint.c:912 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s) does not fit completely in referenced " @@ -2084,7 +2096,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu no se ajusta totalmente en la sección [%2d] " "'%s'\n" -#: src/elflint.c:846 +#: src/elflint.c:847 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): referenced section [%2d] '%s' does not " @@ -2093,7 +2105,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: sección de referencia [%2d] '%s' no tiene " "establecida bandera SHF_TLS\n" -#: src/elflint.c:856 src/elflint.c:904 +#: src/elflint.c:857 src/elflint.c:905 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value out of bounds of referenced " @@ -2102,7 +2114,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: st_value fuera de lÃmites de sección de " "referencia [%2d] '%s'\n" -#: src/elflint.c:883 +#: src/elflint.c:884 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but no TLS program header " @@ -2111,7 +2123,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: sÃmbolo TLS, pero no hay entrada de " "programa TLS\n" -#: src/elflint.c:889 +#: src/elflint.c:890 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but couldn't get TLS program " @@ -2120,7 +2132,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: sÃmbolo TLS, pero no hay entrada de " "programa TLS\n" -#: src/elflint.c:897 +#: src/elflint.c:898 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value short of referenced section " @@ -2129,7 +2141,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: st_value falta sección de referencia [%2d] " "'%s'\n" -#: src/elflint.c:924 +#: src/elflint.c:925 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local symbol outside range described in " @@ -2138,7 +2150,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: sÃmbolo local fuera del rango descrito en " "sh_info\n" -#: src/elflint.c:931 +#: src/elflint.c:932 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): non-local symbol outside range " @@ -2147,12 +2159,12 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: sÃmbolo non-local fuera del rango descrito " "en sh_info\n" -#: src/elflint.c:938 +#: src/elflint.c:939 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): non-local section symbol\n" msgstr "Sección [%2d] '%s': sÃmbolo %zu: sÃmbolo de sección non-local\n" -#: src/elflint.c:988 +#: src/elflint.c:989 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to bad section " @@ -2161,7 +2173,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo _GLOBAL_OFFSET_TABLE_ se refiere a sección " "errada [%2d]\n" -#: src/elflint.c:995 +#: src/elflint.c:996 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to section [%2d] " @@ -2173,7 +2185,7 @@ msgstr "" #. This test is more strict than the psABIs which #. usually allow the symbol to be in the middle of #. the .got section, allowing negative offsets. -#: src/elflint.c:1011 +#: src/elflint.c:1012 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol value %#<PRIx64> does not " @@ -2182,7 +2194,7 @@ msgstr "" "Sección [%2d] '%s': valor del sÃmbolo _GLOBAL_OFFSET_TABLE_ %#<PRIx64> no " "coincide con dirección de sección %s %#<PRIx64>\n" -#: src/elflint.c:1018 +#: src/elflint.c:1019 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol size %<PRIu64> does not " @@ -2191,7 +2203,7 @@ msgstr "" "Sección [%2d] '%s': tamaño de sÃmbolo _GLOBAL_OFFSET_TABLE_ %<PRIu64> no " "coincide con tamaño de sección %s %<PRIu64>\n" -#: src/elflint.c:1026 +#: src/elflint.c:1027 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol present, but no .got " @@ -2200,7 +2212,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo _GLOBAL_OFFSET_TABLE_ presente, pero no. sección " "got\n" -#: src/elflint.c:1042 +#: src/elflint.c:1043 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC_ symbol value %#<PRIx64> does not match dynamic " @@ -2209,7 +2221,7 @@ msgstr "" "sección [%2d] '%s': Valor de sÃmbolo _DYNAMIC_ %#<PRIx64> no coincide con la " "dirección de segmento%#<PRIx64>\n" -#: src/elflint.c:1049 +#: src/elflint.c:1050 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC symbol size %<PRIu64> does not match dynamic " @@ -2218,7 +2230,7 @@ msgstr "" "Sección [%2d] '%s': tamaño de sÃmbolo _DYNAMIC %<PRIu64> no coincide con " "tamaño de segmento %<PRIu64>\n" -#: src/elflint.c:1062 +#: src/elflint.c:1063 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): symbol in dynamic symbol table with non-" @@ -2227,29 +2239,29 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: sÃmbolo en tabla de sÃmbolos dinámicos sin " "visibilidad predeterminada\n" -#: src/elflint.c:1066 +#: src/elflint.c:1067 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown bit set in st_other\n" msgstr "" "Sección [%2d] '%s': sÃmbolo %zu: bit desconocido establecido en st_other\n" -#: src/elflint.c:1104 +#: src/elflint.c:1105 #, fuzzy, c-format msgid "section [%2d] '%s': cannot get section data.\n" msgstr "Sección [%2d] '%s': No se pueden obtener datos de sección\n" -#: src/elflint.c:1120 +#: src/elflint.c:1121 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT used for this RELA section\n" msgstr "Sección [%2d] '%s': DT_RELCOUNT utilizada para esta sección RELA\n" -#: src/elflint.c:1131 src/elflint.c:1184 +#: src/elflint.c:1132 src/elflint.c:1185 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT value %d too high for this section\n" msgstr "" "Sección [%2d] '%s': valor DT_RELCOUNT %d demasiado alto para esta sección\n" -#: src/elflint.c:1156 src/elflint.c:1209 +#: src/elflint.c:1157 src/elflint.c:1210 #, c-format msgid "" "section [%2d] '%s': relative relocations after index %d as specified by " @@ -2258,7 +2270,7 @@ msgstr "" "Sección [%2d] '%s': reubicaciones relativas después de que el %d de Ãndice " "haya sido especificado por DT_RELCOUNT\n" -#: src/elflint.c:1162 src/elflint.c:1215 +#: src/elflint.c:1163 src/elflint.c:1216 #, c-format msgid "" "section [%2d] '%s': non-relative relocation at index %zu; DT_RELCOUNT " @@ -2267,50 +2279,50 @@ msgstr "" "Sección [%2d] '%s': reubicación no-relativa en %zu de Ãndice; DT_RELCOUNT " "especificado %d reubicaciones relativas\n" -#: src/elflint.c:1174 +#: src/elflint.c:1175 #, c-format msgid "section [%2d] '%s': DT_RELACOUNT used for this REL section\n" msgstr "sección [%2d] '%s': DT_RELACOUNT utilizado para esta sección REL\n" -#: src/elflint.c:1257 +#: src/elflint.c:1258 #, c-format msgid "section [%2d] '%s': invalid destination section index\n" msgstr "Sección [%2d] '%s': Ãndice de sección de destino inválido\n" -#: src/elflint.c:1269 +#: src/elflint.c:1270 #, c-format msgid "section [%2d] '%s': invalid destination section type\n" msgstr "Sección [%2d] '%s': tipo de sección de destino inválido\n" -#: src/elflint.c:1277 +#: src/elflint.c:1278 #, c-format msgid "section [%2d] '%s': sh_info should be zero\n" msgstr "Sección [%2d] '%s': sh_info debe ser cero\n" -#: src/elflint.c:1285 +#: src/elflint.c:1286 #, fuzzy, c-format msgid "" "section [%2d] '%s': no relocations for merge-able string sections possible\n" msgstr "" "Sección [%2d] '%s': no reubicaciones para secciones de fusión posibles\n" -#: src/elflint.c:1293 +#: src/elflint.c:1294 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Rela\n" msgstr "" "Sección [%2d] '%s': tamaño de entrada de sección no coincide con ElfXX_Rela\n" -#: src/elflint.c:1353 +#: src/elflint.c:1354 #, c-format msgid "text relocation flag set but there is no read-only segment\n" msgstr "Reubicación de bandera pero no hay segmento de sólo lectura\n" -#: src/elflint.c:1380 +#: src/elflint.c:1381 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid type\n" msgstr "Sección [%2d] '%s': reubicación %zu: tipo inválido\n" -#: src/elflint.c:1388 +#: src/elflint.c:1389 #, c-format msgid "" "section [%2d] '%s': relocation %zu: relocation type invalid for the file " @@ -2319,12 +2331,12 @@ msgstr "" "Sección [%2d] '%s': reubicación %zu: tipo de reubicación inválido para el " "tipo de archivo\n" -#: src/elflint.c:1396 +#: src/elflint.c:1397 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid symbol index\n" msgstr "Sección [%2d] '%s': reubicación %zu: Ãndice de sÃmbolo inválido\n" -#: src/elflint.c:1414 +#: src/elflint.c:1415 #, c-format msgid "" "section [%2d] '%s': relocation %zu: only symbol '_GLOBAL_OFFSET_TABLE_' can " @@ -2333,12 +2345,12 @@ msgstr "" "Sección [%2d] '%s': reubicación %zu: sólo el sÃmbolo '_GLOBAL_OFFSET_TABLE_' " "puede utilizarse con %s\n" -#: src/elflint.c:1431 +#: src/elflint.c:1432 #, c-format msgid "section [%2d] '%s': relocation %zu: offset out of bounds\n" msgstr "Sección [%2d] '%s': reubicación %zu: compensación fuera de lÃmites\n" -#: src/elflint.c:1446 +#: src/elflint.c:1447 #, c-format msgid "" "section [%2d] '%s': relocation %zu: copy relocation against symbol of type " @@ -2347,7 +2359,7 @@ msgstr "" "Sección [%2d] '%s': reubicación %zu: reubicación de copia con sÃmbolo de " "tipo %s\n" -#: src/elflint.c:1467 +#: src/elflint.c:1468 #, c-format msgid "" "section [%2d] '%s': relocation %zu: read-only section modified but text " @@ -2356,24 +2368,24 @@ msgstr "" "Sección [%2d] '%s': reubicación %zu: sección de sólo-lectura modificada, " "pero no se estableció bandera de reubicación\n" -#: src/elflint.c:1482 +#: src/elflint.c:1483 #, c-format msgid "section [%2d] '%s': relocations are against loaded and unloaded data\n" msgstr "" "Sección [%2d] '%s': las reubicaciones se hacen con datos cargados y " "descargados\n" -#: src/elflint.c:1522 src/elflint.c:1573 +#: src/elflint.c:1523 src/elflint.c:1574 #, c-format msgid "section [%2d] '%s': cannot get relocation %zu: %s\n" msgstr "Sección [%2d] '%s': no puede obtener reubicación %zu: %s\n" -#: src/elflint.c:1649 +#: src/elflint.c:1650 #, c-format msgid "more than one dynamic section present\n" msgstr "más de una sección dinámica presente\n" -#: src/elflint.c:1667 +#: src/elflint.c:1668 #, fuzzy, c-format msgid "" "section [%2d]: referenced as string table for section [%2d] '%s' but section " @@ -2382,44 +2394,44 @@ msgstr "" "sección [%2d] '%s': nombrado como una tabla de cadena para la sección [%2d] " "'%s' pero el tipo no es SHT_STRTAB\n" -#: src/elflint.c:1675 +#: src/elflint.c:1676 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Dyn\n" msgstr "" "Sección [%2d] '%s': tamaño de entrada de sección no coincide con ElfXX_Dyn\n" -#: src/elflint.c:1680 src/elflint.c:1969 +#: src/elflint.c:1681 src/elflint.c:1970 #, c-format msgid "section [%2d] '%s': sh_info not zero\n" msgstr "Sección [%2d] '%s': sh_info no es cero\n" -#: src/elflint.c:1690 +#: src/elflint.c:1691 #, c-format msgid "section [%2d] '%s': cannot get dynamic section entry %zu: %s\n" msgstr "" "Sección [%2d] '%s': no puede obtener entrada de sección dinámica %zu: %s\n" -#: src/elflint.c:1698 +#: src/elflint.c:1699 #, c-format msgid "section [%2d] '%s': non-DT_NULL entries follow DT_NULL entry\n" msgstr "Sección [%2d] '%s': entradas non-DT_NULL siguen a la entrada DT_NULL\n" -#: src/elflint.c:1705 +#: src/elflint.c:1706 #, c-format msgid "section [%2d] '%s': entry %zu: unknown tag\n" msgstr "Sección [%2d] '%s': entrada %zu: etiqueta desconocida\n" -#: src/elflint.c:1716 +#: src/elflint.c:1717 #, c-format msgid "section [%2d] '%s': entry %zu: more than one entry with tag %s\n" msgstr "Sección [%2d] '%s': entrada %zu: más de una entrada con etiqueta %s\n" -#: src/elflint.c:1726 +#: src/elflint.c:1727 #, c-format msgid "section [%2d] '%s': entry %zu: level 2 tag %s used\n" msgstr "Sección [%2d] '%s': entrada %zu: nivel 2 etiqueta %s utilizada\n" -#: src/elflint.c:1744 +#: src/elflint.c:1745 #, c-format msgid "" "section [%2d] '%s': entry %zu: DT_PLTREL value must be DT_REL or DT_RELA\n" @@ -2427,7 +2439,7 @@ msgstr "" "Sección [%2d] '%s': entrada %zu: el valor DT_PLTREL debe ser DT_REL or " "DT_RELA\n" -#: src/elflint.c:1757 +#: src/elflint.c:1758 #, c-format msgid "" "section [%2d] '%s': entry %zu: pointer does not match address of section " @@ -2436,14 +2448,14 @@ msgstr "" "Sección [%2d] '%s': entrada %zu: puntero no coincide con dirección de " "sección [%2d] '%s' al que hace referencia sh_link\n" -#: src/elflint.c:1800 +#: src/elflint.c:1801 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must point into loaded segment\n" msgstr "" "Sección [%2d] '%s': entrada %zu: valor %s debe apuntar en segmento cargado\n" -#: src/elflint.c:1815 +#: src/elflint.c:1816 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must be valid offset in section " @@ -2452,46 +2464,46 @@ msgstr "" "sección [%2d] '%s': entrada %zu: valor %s debe ser compensación válida en " "sección [%2d] '%s'\n" -#: src/elflint.c:1835 src/elflint.c:1863 +#: src/elflint.c:1836 src/elflint.c:1864 #, c-format msgid "section [%2d] '%s': contains %s entry but not %s\n" msgstr "Sección [%2d] '%s': contiene entrada %s pero no %s\n" -#: src/elflint.c:1847 +#: src/elflint.c:1848 #, c-format msgid "section [%2d] '%s': mandatory tag %s not present\n" msgstr "Sección [%2d] '%s': etiqueta obligatoria %s no está presente\n" -#: src/elflint.c:1856 +#: src/elflint.c:1857 #, c-format msgid "section [%2d] '%s': no hash section present\n" msgstr "Sección [%2d] '%s': no hay sección de dispersión presente\n" -#: src/elflint.c:1871 src/elflint.c:1878 +#: src/elflint.c:1872 src/elflint.c:1879 #, c-format msgid "section [%2d] '%s': not all of %s, %s, and %s are present\n" msgstr "Sección [%2d] '%s': no todas las %s, %s, y %s están presentes\n" -#: src/elflint.c:1888 src/elflint.c:1892 +#: src/elflint.c:1889 src/elflint.c:1893 #, c-format msgid "section [%2d] '%s': %s tag missing in DSO marked during prelinking\n" msgstr "" "Sección [%2d] '%s': etiqueta %s faltante en DSO marcada durante el pre-" "enlace\n" -#: src/elflint.c:1898 +#: src/elflint.c:1899 #, c-format msgid "section [%2d] '%s': non-DSO file marked as dependency during prelink\n" msgstr "" "Sección [%2d] '%s': archivo no-DSO marcado como dependencia durante el pre-" "enlace\n" -#: src/elflint.c:1909 src/elflint.c:1913 src/elflint.c:1917 src/elflint.c:1921 +#: src/elflint.c:1910 src/elflint.c:1914 src/elflint.c:1918 src/elflint.c:1922 #, c-format msgid "section [%2d] '%s': %s tag missing in prelinked executable\n" msgstr "Sección [%2d] '%s': etiqueta %s faltante en pre-enlace ejecutable\n" -#: src/elflint.c:1933 +#: src/elflint.c:1934 #, c-format msgid "" "section [%2d] '%s': only relocatable files can have extended section index\n" @@ -2499,37 +2511,37 @@ msgstr "" "Sección [%2d] '%s': sólo los archivos reubicables pueden tener Ãndice de " "sección extendido\n" -#: src/elflint.c:1943 +#: src/elflint.c:1944 #, c-format msgid "" "section [%2d] '%s': extended section index section not for symbol table\n" msgstr "" "Sección [%2d] '%s': Ãndice de sección extendido no para tabla de sÃmbolos\n" -#: src/elflint.c:1947 +#: src/elflint.c:1948 #, fuzzy, c-format msgid "section [%2d] '%s': sh_link extended section index [%2d] is invalid\n" msgstr "" "Sección [%2d] '%s': Ãndice de sección extendido no para tabla de sÃmbolos\n" -#: src/elflint.c:1952 +#: src/elflint.c:1953 #, c-format msgid "cannot get data for symbol section\n" msgstr "no se puede obtener sección para sÃmbolos\n" -#: src/elflint.c:1955 +#: src/elflint.c:1956 #, c-format msgid "section [%2d] '%s': entry size does not match Elf32_Word\n" msgstr "Sección [%2d] '%s': tamaño de entrada no coincide con Elf32_Word\n" -#: src/elflint.c:1964 +#: src/elflint.c:1965 #, c-format msgid "section [%2d] '%s': extended index table too small for symbol table\n" msgstr "" "Sección [%2d] '%s': tabla de Ãndice extendida demasiado pequeña para tabla " "de sÃmbolos\n" -#: src/elflint.c:1979 +#: src/elflint.c:1980 #, c-format msgid "" "section [%2d] '%s': extended section index in section [%2zu] '%s' refers to " @@ -2538,24 +2550,24 @@ msgstr "" "Sección [%2d] '%s': Ãndice de sección extendida en sección [%2zu] '%s' se " "refiere a la misma tabla de sÃmbolos\n" -#: src/elflint.c:1997 +#: src/elflint.c:1998 #, c-format msgid "symbol 0 should have zero extended section index\n" msgstr "sÃmbolo 0 debe tener Ãndice de sección extendida cero\n" -#: src/elflint.c:2009 +#: src/elflint.c:2010 #, c-format msgid "cannot get data for symbol %zu\n" msgstr "no puede obtener datos para sÃmbolo %zu\n" -#: src/elflint.c:2014 +#: src/elflint.c:2015 #, c-format msgid "extended section index is %<PRIu32> but symbol index is not XINDEX\n" msgstr "" "Ãndice de sección extendida es %<PRIu32> pero Ãndice de sÃmbolo no es " "XINDEX\n" -#: src/elflint.c:2031 src/elflint.c:2088 +#: src/elflint.c:2032 src/elflint.c:2089 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected %ld)\n" @@ -2563,42 +2575,42 @@ msgstr "" "Sección [%2d] '%s': sección de tabla de dispersión es demasiado pequeña (es " "%ld, se espera %ld)\n" -#: src/elflint.c:2045 src/elflint.c:2102 +#: src/elflint.c:2046 src/elflint.c:2103 #, c-format msgid "section [%2d] '%s': chain array too large\n" msgstr "Sección [%2d] '%s': Ãndice de la cadena es demasiado grande\n" -#: src/elflint.c:2059 src/elflint.c:2116 +#: src/elflint.c:2060 src/elflint.c:2117 #, c-format msgid "section [%2d] '%s': hash bucket reference %zu out of bounds\n" msgstr "" "Sección [%2d] '%s': referencia de cubetas de dispersión %zu fuera de " "lÃmites\n" -#: src/elflint.c:2069 +#: src/elflint.c:2070 #, c-format msgid "section [%2d] '%s': hash chain reference %zu out of bounds\n" msgstr "" "Sección [%2d] '%s': referencia de cadena de dispersión %zu fuera de lÃmites\n" -#: src/elflint.c:2126 +#: src/elflint.c:2127 #, c-format msgid "section [%2d] '%s': hash chain reference %<PRIu64> out of bounds\n" msgstr "" "Sección [%2d] '%s': referencia de cadena de dispersión %<PRIu64> fuera de " "lÃmites\n" -#: src/elflint.c:2139 +#: src/elflint.c:2140 #, fuzzy, c-format msgid "section [%2d] '%s': not enough data\n" msgstr "Sección [%2d] '%s': no puede obtener datos: %s\n" -#: src/elflint.c:2151 +#: src/elflint.c:2152 #, fuzzy, c-format msgid "section [%2d] '%s': bitmask size zero or not power of 2: %u\n" msgstr "Sección [%2d] '%s': tamaño de bitmask no es potencia de 2: %u\n" -#: src/elflint.c:2167 +#: src/elflint.c:2168 #, fuzzy, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected at " @@ -2607,14 +2619,14 @@ msgstr "" "Sección [%2d] '%s': sección de tabla de dispersión es demasiado pequeña (es " "%ld, se espera al menos least%ld)\n" -#: src/elflint.c:2176 +#: src/elflint.c:2177 #, c-format msgid "section [%2d] '%s': 2nd hash function shift too big: %u\n" msgstr "" "Sección [%2d] '%s': segundo cambio de función de dispersión demasiado " "grande: %u\n" -#: src/elflint.c:2210 +#: src/elflint.c:2211 #, c-format msgid "" "section [%2d] '%s': hash chain for bucket %zu lower than symbol index bias\n" @@ -2622,7 +2634,7 @@ msgstr "" "Sección [%2d] '%s': cadena de dispersión para cubetas %zu inferior a " "polarización de Ãndice de sÃmbolo\n" -#: src/elflint.c:2231 +#: src/elflint.c:2232 #, c-format msgid "" "section [%2d] '%s': symbol %u referenced in chain for bucket %zu is " @@ -2631,7 +2643,7 @@ msgstr "" "Sección [%2d] '%s': el sÃmbolo %u al que se hace referencia en cadena para " "cubeta %zu es indefinido\n" -#: src/elflint.c:2244 +#: src/elflint.c:2245 #, c-format msgid "" "section [%2d] '%s': hash value for symbol %u in chain for bucket %zu wrong\n" @@ -2639,7 +2651,7 @@ msgstr "" "Sección [%2d] '%s': valor de dispersión para sÃmbolo %u en cadena para " "cubeta %zu está errado\n" -#: src/elflint.c:2253 +#: src/elflint.c:2254 #, fuzzy, c-format msgid "" "section [%2d] '%s': mask index for symbol %u in chain for bucket %zu wrong\n" @@ -2647,13 +2659,13 @@ msgstr "" "Sección [%2d] '%s': valor de dispersión para sÃmbolo %u en cadena para " "cubeta %zu está errado\n" -#: src/elflint.c:2283 +#: src/elflint.c:2284 #, c-format msgid "section [%2d] '%s': hash chain for bucket %zu out of bounds\n" msgstr "" "Sección [%2d] '%s': cadena de dispersión para cubeta %zu fuera de limites\n" -#: src/elflint.c:2288 +#: src/elflint.c:2289 #, c-format msgid "" "section [%2d] '%s': symbol reference in chain for bucket %zu out of bounds\n" @@ -2661,43 +2673,43 @@ msgstr "" "Sección [%2d] '%s': referencia de sÃmbolo en cadena para cubeta %zu fuera de " "lÃmites\n" -#: src/elflint.c:2294 +#: src/elflint.c:2295 #, c-format msgid "section [%2d] '%s': bitmask does not match names in the hash table\n" msgstr "" "Sección [%2d] '%s': bitmask no coincide con nombres en la tabla de " "dispersión\n" -#: src/elflint.c:2307 +#: src/elflint.c:2308 #, c-format msgid "section [%2d] '%s': relocatable files cannot have hash tables\n" msgstr "" "Sección [%2d] '%s': archivos reubicables no pueden tener tablas de " "dispersión\n" -#: src/elflint.c:2325 +#: src/elflint.c:2326 #, c-format msgid "section [%2d] '%s': hash table not for dynamic symbol table\n" msgstr "" "Sección [%2d] '%s': tabla de dispersión no para tabla de sÃmbolos dinámicos\n" -#: src/elflint.c:2329 +#: src/elflint.c:2330 #, fuzzy, c-format msgid "section [%2d] '%s': invalid sh_link symbol table section index [%2d]\n" msgstr "Sección [%2d] '%s': Ãndice de sección de destino inválido\n" -#: src/elflint.c:2339 +#: src/elflint.c:2340 #, c-format msgid "section [%2d] '%s': hash table entry size incorrect\n" msgstr "" "Sección [%2d] '%s': tamaño incorrecto de entrada de tabla de dispersión\n" -#: src/elflint.c:2344 +#: src/elflint.c:2345 #, c-format msgid "section [%2d] '%s': not marked to be allocated\n" msgstr "Sección [%2d] '%s': no marcada para ser asignada\n" -#: src/elflint.c:2349 +#: src/elflint.c:2350 #, c-format msgid "" "section [%2d] '%s': hash table has not even room for initial administrative " @@ -2706,46 +2718,46 @@ msgstr "" "Sección [%2d] '%s': tabla de dispersión no tiene ni siquiera espacio para " "entradas administrativas iniciales\n" -#: src/elflint.c:2398 +#: src/elflint.c:2399 #, c-format msgid "sh_link in hash sections [%2zu] '%s' and [%2zu] '%s' not identical\n" msgstr "" "sh_link en secciones de dispersión [%2zu] '%s' y [%2zu] '%s' no son " "idénticas\n" -#: src/elflint.c:2422 src/elflint.c:2487 src/elflint.c:2522 +#: src/elflint.c:2423 src/elflint.c:2488 src/elflint.c:2523 #, fuzzy, c-format msgid "hash section [%2zu] '%s' does not contain enough data\n" msgstr "sección [%2zu] '%s' no debe ser ejecutable\n" -#: src/elflint.c:2443 +#: src/elflint.c:2444 #, fuzzy, c-format msgid "hash section [%2zu] '%s' has zero bit mask words\n" msgstr "Sección [%2d] '%s': grupo de sección sin palabra de banderas\n" -#: src/elflint.c:2454 src/elflint.c:2498 src/elflint.c:2535 +#: src/elflint.c:2455 src/elflint.c:2499 src/elflint.c:2536 #, fuzzy, c-format msgid "hash section [%2zu] '%s' uses too much data\n" msgstr "sección [%2zu] '%s' debe ser asignada\n" -#: src/elflint.c:2469 +#: src/elflint.c:2470 #, c-format msgid "" "hash section [%2zu] '%s' invalid symbol index %<PRIu32> (max_nsyms: " "%<PRIu32>, nentries: %<PRIu32>\n" msgstr "" -#: src/elflint.c:2556 +#: src/elflint.c:2557 #, fuzzy, c-format msgid "hash section [%2zu] '%s' invalid sh_entsize\n" msgstr "Sección [%2zu]: nombre inválido\n" -#: src/elflint.c:2566 src/elflint.c:2570 +#: src/elflint.c:2567 src/elflint.c:2571 #, c-format msgid "section [%2zu] '%s': reference to symbol index 0\n" msgstr "Sección [%2zu] '%s': referencia al Ãndice de sÃmbolo 0\n" -#: src/elflint.c:2577 +#: src/elflint.c:2578 #, c-format msgid "" "symbol %d referenced in new hash table in [%2zu] '%s' but not in old hash " @@ -2754,7 +2766,7 @@ msgstr "" "SÃmbolo %d nombrado en nueva tabla de dispersión en [%2zu] '%s' pero no en " "la tabla de dispersión anterior en [%2zu] '%s'\n" -#: src/elflint.c:2589 +#: src/elflint.c:2590 #, c-format msgid "" "symbol %d referenced in old hash table in [%2zu] '%s' but not in new hash " @@ -2763,12 +2775,12 @@ msgstr "" "SÃmbolo %d nombrado en la tabla de dispersión anterior en [%2zu] '%s' pero " "no en la nueva tabla de dispersión en [%2zu] '%s'\n" -#: src/elflint.c:2605 +#: src/elflint.c:2606 #, c-format msgid "section [%2d] '%s': nonzero sh_%s for NULL section\n" msgstr "Sección [%2d] '%s': nonzero sh_%s para sección NULL\n" -#: src/elflint.c:2625 +#: src/elflint.c:2626 #, c-format msgid "" "section [%2d] '%s': section groups only allowed in relocatable object files\n" @@ -2776,99 +2788,99 @@ msgstr "" "Sección [%2d] '%s': grupos de sección sólo permitidos en archivos de objeto " "reubicables\n" -#: src/elflint.c:2636 +#: src/elflint.c:2637 #, c-format msgid "section [%2d] '%s': cannot get symbol table: %s\n" msgstr "Sección [%2d] '%s': no puede obtener tabla de sÃmbolos: %s\n" -#: src/elflint.c:2641 +#: src/elflint.c:2642 #, c-format msgid "section [%2d] '%s': section reference in sh_link is no symbol table\n" msgstr "" "Sección [%2d] '%s': referencia de sección en sh_link no es una tabla de " "sÃmbolos\n" -#: src/elflint.c:2647 +#: src/elflint.c:2648 #, c-format msgid "section [%2d] '%s': invalid symbol index in sh_info\n" msgstr "Sección [%2d] '%s': Ãndice de sÃmbolo inválido en sh_info\n" -#: src/elflint.c:2652 +#: src/elflint.c:2653 #, c-format msgid "section [%2d] '%s': sh_flags not zero\n" msgstr "Sección [%2d] '%s': sh_flags no cero\n" -#: src/elflint.c:2659 +#: src/elflint.c:2660 #, c-format msgid "section [%2d] '%s': cannot get symbol for signature\n" msgstr "Sección [%2d] '%s': no puede obtener sÃmbolo para firma\n" -#: src/elflint.c:2663 +#: src/elflint.c:2664 #, fuzzy, c-format msgid "section [%2d] '%s': cannot get symbol name for signature\n" msgstr "Sección [%2d] '%s': no puede obtener sÃmbolo para firma\n" -#: src/elflint.c:2668 +#: src/elflint.c:2669 #, c-format msgid "section [%2d] '%s': signature symbol cannot be empty string\n" msgstr "" "sección [%2d] '%s': el sÃmbolo de firma no puede ser una cadena vacÃa\n" -#: src/elflint.c:2674 +#: src/elflint.c:2675 #, c-format msgid "section [%2d] '%s': sh_flags not set correctly\n" msgstr "Sección [%2d] '%s': sh_flags no establecida correctamente\n" -#: src/elflint.c:2680 +#: src/elflint.c:2681 #, c-format msgid "section [%2d] '%s': cannot get data: %s\n" msgstr "Sección [%2d] '%s': no puede obtener datos: %s\n" -#: src/elflint.c:2689 +#: src/elflint.c:2690 #, c-format msgid "section [%2d] '%s': section size not multiple of sizeof(Elf32_Word)\n" msgstr "" "Sección [%2d] '%s': tamaño de sección no es múltiplo de tamaño de " "(Elf32_Word)\n" -#: src/elflint.c:2695 +#: src/elflint.c:2696 #, c-format msgid "section [%2d] '%s': section group without flags word\n" msgstr "Sección [%2d] '%s': grupo de sección sin palabra de banderas\n" -#: src/elflint.c:2703 +#: src/elflint.c:2704 #, c-format msgid "section [%2d] '%s': section group without member\n" msgstr "Sección [%2d] '%s': grupo de sección sin miembro\n" -#: src/elflint.c:2707 +#: src/elflint.c:2708 #, c-format msgid "section [%2d] '%s': section group with only one member\n" msgstr "Sección [%2d] '%s': grupo de sección con sólo un miembro\n" -#: src/elflint.c:2718 +#: src/elflint.c:2719 #, c-format msgid "section [%2d] '%s': unknown section group flags\n" msgstr "Sección [%2d] '%s': banderas de grupo de sección desconocido\n" -#: src/elflint.c:2730 +#: src/elflint.c:2731 #, fuzzy, c-format msgid "section [%2d] '%s': section index %zu out of range\n" msgstr "Sección [%2d] '%s': Ãndice de sección %Zu fuera de rango\n" -#: src/elflint.c:2739 +#: src/elflint.c:2740 #, c-format msgid "section [%2d] '%s': cannot get section header for element %zu: %s\n" msgstr "" "Sección [%2d] '%s': no se puede obtener encabezamiento de sección para " "elemento %zu: %s\n" -#: src/elflint.c:2746 +#: src/elflint.c:2747 #, c-format msgid "section [%2d] '%s': section group contains another group [%2d] '%s'\n" msgstr "Sección [%2d] '%s': grupo de sección contiene otro grupo [%2d] '%s'\n" -#: src/elflint.c:2752 +#: src/elflint.c:2753 #, fuzzy, c-format msgid "" "section [%2d] '%s': element %zu references section [%2d] '%s' without " @@ -2877,12 +2889,12 @@ msgstr "" "Sección [%2d] '%s': elemento %Zu hace referencia a sección [%2d] '%s' sin " "establecer bandera SHF_GROUP\n" -#: src/elflint.c:2759 +#: src/elflint.c:2760 #, c-format msgid "section [%2d] '%s' is contained in more than one section group\n" msgstr "Sección [%2d] '%s' está contenida en más de un grupo de sección\n" -#: src/elflint.c:2956 +#: src/elflint.c:2957 #, c-format msgid "" "section [%2d] '%s' refers in sh_link to section [%2d] '%s' which is no " @@ -2891,7 +2903,7 @@ msgstr "" "Sección [%2d] '%s' se refiere en sh_link a la sección [%2d] '%s' la cual no " "es una tabla de sÃmbolos dinámicos\n" -#: src/elflint.c:2968 +#: src/elflint.c:2969 #, c-format msgid "" "section [%2d] '%s' has different number of entries than symbol table [%2d] " @@ -2900,29 +2912,29 @@ msgstr "" "Sección [%2d] '%s' tiene un número diferente de entradas a la de la tabla de " "sÃmbolos [%2d] '%s'\n" -#: src/elflint.c:2984 +#: src/elflint.c:2985 #, c-format msgid "section [%2d] '%s': symbol %d: cannot read version data\n" msgstr "" "Sección [%2d] '%s': el sÃmbolo %d: no se pueden leer datos de versión\n" -#: src/elflint.c:3000 +#: src/elflint.c:3001 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with global scope\n" msgstr "" "Sección [%2d] '%s': el sÃmbolo %d: el sÃmbolo local con alcance mundial\n" -#: src/elflint.c:3008 +#: src/elflint.c:3009 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with version\n" msgstr "Sección [%2d] '%s': sÃmbolo %d: sÃmbolo local con versión\n" -#: src/elflint.c:3022 +#: src/elflint.c:3023 #, c-format msgid "section [%2d] '%s': symbol %d: invalid version index %d\n" msgstr "Sección [%2d] '%s': sÃmbolo %d: Ãndice de versión inválida %d\n" -#: src/elflint.c:3027 +#: src/elflint.c:3028 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for defined version\n" @@ -2930,7 +2942,7 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %d: Ãndice de versión %d es para versión " "definida\n" -#: src/elflint.c:3037 +#: src/elflint.c:3038 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for requested version\n" @@ -2938,46 +2950,46 @@ msgstr "" "Sección [%2d] '%s': sÃmbolo %d: Ãndice de versión %d es para la versión " "solicitada\n" -#: src/elflint.c:3090 +#: src/elflint.c:3091 #, c-format msgid "more than one version reference section present\n" msgstr "Más de una sección de referencia de versión presente\n" -#: src/elflint.c:3098 src/elflint.c:3245 +#: src/elflint.c:3099 src/elflint.c:3246 #, c-format msgid "section [%2d] '%s': sh_link does not link to string table\n" msgstr "Sección [%2d] '%s': sh_link no se enlaza a la tabla de cadenas\n" -#: src/elflint.c:3123 src/elflint.c:3299 +#: src/elflint.c:3124 src/elflint.c:3300 #, c-format msgid "section [%2d] '%s': entry %d has wrong version %d\n" msgstr "Sección [%2d] '%s': entrada %d tiene versión %d errada\n" -#: src/elflint.c:3130 src/elflint.c:3306 +#: src/elflint.c:3131 src/elflint.c:3307 #, c-format msgid "section [%2d] '%s': entry %d has wrong offset of auxiliary data\n" msgstr "" "Sección [%2d] '%s': entrada %d tiene compensación errada de datos " "auxiliares\n" -#: src/elflint.c:3140 +#: src/elflint.c:3141 #, c-format msgid "section [%2d] '%s': entry %d has invalid file reference\n" msgstr "Sección [%2d] '%s': entrada %d tiene referencia de archivo inválida\n" -#: src/elflint.c:3148 +#: src/elflint.c:3149 #, c-format msgid "section [%2d] '%s': entry %d references unknown dependency\n" msgstr "Sección [%2d] '%s': %d hace referencia a dependencia desconocida\n" -#: src/elflint.c:3160 +#: src/elflint.c:3161 #, c-format msgid "section [%2d] '%s': auxiliary entry %d of entry %d has unknown flag\n" msgstr "" "sección [%2d] '%s': entrada auxiliar %d de entrada %d tiene bandera " "desconocida\n" -#: src/elflint.c:3168 +#: src/elflint.c:3169 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has invalid name " @@ -2986,7 +2998,7 @@ msgstr "" "Sección [%2d] '%s': entrada auxiliar %d de entrada %d tiene referencia de " "nombre inválida\n" -#: src/elflint.c:3177 +#: src/elflint.c:3178 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong hash value: " @@ -2995,7 +3007,7 @@ msgstr "" "Sección [%2d] '%s': entrada auxiliar %d de entrada %d tiene valor de " "dispersión: %#x, esperado %#x\n" -#: src/elflint.c:3186 +#: src/elflint.c:3187 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has duplicate version " @@ -3004,7 +3016,7 @@ msgstr "" "sección [%2d] '%s': entrada auxiliar %d de entrada %d tiene nombre duplicado " "'%s'\n" -#: src/elflint.c:3197 +#: src/elflint.c:3198 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong next field\n" @@ -3012,14 +3024,14 @@ msgstr "" "sección [%2d] '%s': entrada auxiliar %d de entrada %d tiene próximo campo " "errado\n" -#: src/elflint.c:3214 src/elflint.c:3390 +#: src/elflint.c:3215 src/elflint.c:3391 #, c-format msgid "section [%2d] '%s': entry %d has invalid offset to next entry\n" msgstr "" "sección [%2d] '%s': entrada %d tiene compensación inválida para próxima " "entrada\n" -#: src/elflint.c:3222 src/elflint.c:3398 +#: src/elflint.c:3223 src/elflint.c:3399 #, fuzzy, c-format msgid "" "section [%2d] '%s': entry %d has zero offset to next entry, but sh_info says " @@ -3028,46 +3040,46 @@ msgstr "" "sección [%2d] '%s': entrada %d tiene compensación inválida para próxima " "entrada\n" -#: src/elflint.c:3237 +#: src/elflint.c:3238 #, c-format msgid "more than one version definition section present\n" msgstr "más de una definición de versión presente de sección\n" -#: src/elflint.c:3284 +#: src/elflint.c:3285 #, c-format msgid "section [%2d] '%s': more than one BASE definition\n" msgstr "Sección [%2d] '%s': más de una definición de BASE\n" -#: src/elflint.c:3288 +#: src/elflint.c:3289 #, c-format msgid "section [%2d] '%s': BASE definition must have index VER_NDX_GLOBAL\n" msgstr "" "Sección [%2d] '%s': definición de BASE debe tener Ãndice VER_NDX_GLOBAL\n" -#: src/elflint.c:3294 +#: src/elflint.c:3295 #, c-format msgid "section [%2d] '%s': entry %d has unknown flag\n" msgstr "Sección [%2d] '%s': entrada %d tiene bandera desconocida\n" -#: src/elflint.c:3321 +#: src/elflint.c:3322 #, c-format msgid "section [%2d] '%s': entry %d has invalid name reference\n" msgstr "Sección [%2d] '%s': entrada %d tiene referencia de nombre inválida\n" -#: src/elflint.c:3328 +#: src/elflint.c:3329 #, c-format msgid "section [%2d] '%s': entry %d has wrong hash value: %#x, expected %#x\n" msgstr "" "Sección [%2d] '%s': entrada %d tiene valor de dispersión errado: %#x, " "esperado %#x\n" -#: src/elflint.c:3336 +#: src/elflint.c:3337 #, c-format msgid "section [%2d] '%s': entry %d has duplicate version name '%s'\n" msgstr "" "Sección [%2d] '%s': entrada %d tiene nombre de versión duplicado '%s'\n" -#: src/elflint.c:3356 +#: src/elflint.c:3357 #, c-format msgid "" "section [%2d] '%s': entry %d has invalid name reference in auxiliary data\n" @@ -3075,34 +3087,34 @@ msgstr "" "Sección [%2d] '%s': entrada %d tiene referencia de nombre inválida en datos " "auxiliares\n" -#: src/elflint.c:3373 +#: src/elflint.c:3374 #, c-format msgid "section [%2d] '%s': entry %d has wrong next field in auxiliary data\n" msgstr "" "Sección [%2d] '%s': entrada %d tiene próximo campo errado en datos " "auxiliares\n" -#: src/elflint.c:3406 +#: src/elflint.c:3407 #, c-format msgid "section [%2d] '%s': no BASE definition\n" msgstr "Sección [%2d] '%s': no hay definición de BASE\n" -#: src/elflint.c:3422 +#: src/elflint.c:3423 #, c-format msgid "section [%2d] '%s': unknown parent version '%s'\n" msgstr "Sección [%2d] '%s': desconocida versión principal '%s'\n" -#: src/elflint.c:3447 +#: src/elflint.c:3448 #, c-format msgid "section [%2d] '%s': empty object attributes section\n" msgstr "Sección [%2d] '%s': sección de atributos de objeto vacÃo\n" -#: src/elflint.c:3463 +#: src/elflint.c:3464 #, c-format msgid "section [%2d] '%s': unrecognized attribute format\n" msgstr "Sección[%2d] '%s': formato de atributo no reconocido\n" -#: src/elflint.c:3474 +#: src/elflint.c:3475 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute section\n" @@ -3110,21 +3122,21 @@ msgstr "" "Sección[%2d] '%s': compensación %zu: campo de longitud cero en sección de " "atributo\n" -#: src/elflint.c:3483 +#: src/elflint.c:3484 #, c-format msgid "section [%2d] '%s': offset %zu: invalid length in attribute section\n" msgstr "" "Sección[%2d] '%s': compensación %zu: longitud inválida en sección de " "atributo\n" -#: src/elflint.c:3495 +#: src/elflint.c:3496 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated vendor name string\n" msgstr "" "Sección[%2d] '%s': compensación %zu: cadena de nombre de proveedor sin " "terminar\n" -#: src/elflint.c:3512 +#: src/elflint.c:3513 #, c-format msgid "" "section [%2d] '%s': offset %zu: endless ULEB128 in attribute subsection tag\n" @@ -3132,12 +3144,12 @@ msgstr "" "Sección [%2d] '%s': compensación %zu: sin fin ULEB128 en etiqueta de sub-" "sección de atributo\n" -#: src/elflint.c:3521 +#: src/elflint.c:3522 #, c-format msgid "section [%2d] '%s': offset %zu: truncated attribute section\n" msgstr "Sección [%2d] '%s': compensación %zu: sección de atributo truncado\n" -#: src/elflint.c:3530 +#: src/elflint.c:3531 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute subsection\n" @@ -3145,7 +3157,7 @@ msgstr "" "Sección [%2d] '%s': compensación %zu: campo de longitud cero length en sub-" "sección de atributo\n" -#: src/elflint.c:3545 +#: src/elflint.c:3546 #, c-format msgid "" "section [%2d] '%s': offset %zu: invalid length in attribute subsection\n" @@ -3154,7 +3166,7 @@ msgstr "" "atributo\n" #. Tag_File -#: src/elflint.c:3556 +#: src/elflint.c:3557 #, c-format msgid "" "section [%2d] '%s': offset %zu: attribute subsection has unexpected tag %u\n" @@ -3162,26 +3174,26 @@ msgstr "" "Sección[%2d] '%s': compensación %zu: sub-sección de atributo tiene etiqueta " "inesperada %u\n" -#: src/elflint.c:3574 +#: src/elflint.c:3578 #, c-format msgid "section [%2d] '%s': offset %zu: endless ULEB128 in attribute tag\n" msgstr "" "Sección[%2d] '%s': compensación %zu: sin fin ULEB128 en etiqueta de " "atributo\n" -#: src/elflint.c:3585 +#: src/elflint.c:3589 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated string in attribute\n" msgstr "" "Sección [%2d] '%s': compensación %zu: cadena sin terminar en atributo\n" -#: src/elflint.c:3598 +#: src/elflint.c:3602 #, c-format msgid "section [%2d] '%s': offset %zu: unrecognized attribute tag %u\n" msgstr "" "Sección [%2d] '%s': compensación %zu: etiqueta de atributo no reconocida %u\n" -#: src/elflint.c:3602 +#: src/elflint.c:3606 #, c-format msgid "" "section [%2d] '%s': offset %zu: unrecognized %s attribute value %<PRIu64>\n" @@ -3189,12 +3201,12 @@ msgstr "" "Sección [%2d] '%s': compensación %zu: no reconocido %s valor de atributo " "%<PRIu64>\n" -#: src/elflint.c:3612 +#: src/elflint.c:3616 #, c-format msgid "section [%2d] '%s': offset %zu: vendor '%s' unknown\n" msgstr "Sección [%2d] '%s': compensación %zu: proveedor '%s' desconocido\n" -#: src/elflint.c:3618 +#: src/elflint.c:3622 #, c-format msgid "" "section [%2d] '%s': offset %zu: extra bytes after last attribute section\n" @@ -3202,47 +3214,47 @@ msgstr "" "Sección [%2d] '%s': compensación %zu: extra bytes después de la última " "sección de atributo\n" -#: src/elflint.c:3715 +#: src/elflint.c:3719 #, c-format msgid "cannot get section header of zeroth section\n" msgstr "no puede obtener encabezamiento de sección de sección zeroth\n" -#: src/elflint.c:3719 +#: src/elflint.c:3723 #, c-format msgid "zeroth section has nonzero name\n" msgstr "Sección zeroth tiene nombre nonzero\n" -#: src/elflint.c:3721 +#: src/elflint.c:3725 #, c-format msgid "zeroth section has nonzero type\n" msgstr "Sección zeroth tiene tipo nonzero\n" -#: src/elflint.c:3723 +#: src/elflint.c:3727 #, c-format msgid "zeroth section has nonzero flags\n" msgstr "Sección zeroth tiene banderas nonzero\n" -#: src/elflint.c:3725 +#: src/elflint.c:3729 #, c-format msgid "zeroth section has nonzero address\n" msgstr "Sección zeroth tiene dirección nonzero\n" -#: src/elflint.c:3727 +#: src/elflint.c:3731 #, c-format msgid "zeroth section has nonzero offset\n" msgstr "Sección zeroth tiene compensación nonzero\n" -#: src/elflint.c:3729 +#: src/elflint.c:3733 #, c-format msgid "zeroth section has nonzero align value\n" msgstr "Sección zeroth tiene valor de alineación nonzero\n" -#: src/elflint.c:3731 +#: src/elflint.c:3735 #, c-format msgid "zeroth section has nonzero entry size value\n" msgstr "Sección zeroth tiene valor de tamaño de entrada nonzero\n" -#: src/elflint.c:3734 +#: src/elflint.c:3738 #, c-format msgid "" "zeroth section has nonzero size value while ELF header has nonzero shnum " @@ -3251,7 +3263,7 @@ msgstr "" "Sección zeroth tiene valor de tamaño nonzero mientras que el encabezamiento " "ELF tiene valor shnum nonzero\n" -#: src/elflint.c:3738 +#: src/elflint.c:3742 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " @@ -3260,7 +3272,7 @@ msgstr "" "Sección zeroth tiene valor de enlace nonzero mientras que el encabezamiento " "ELF no señala sobreflujo en shstrndx\n" -#: src/elflint.c:3742 +#: src/elflint.c:3746 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " @@ -3269,27 +3281,27 @@ msgstr "" "la sección zeroth tiene un valor de enlace distinto a cero mientras que el " "encabezamiento ELF no señala desbordamiento en phnum\n" -#: src/elflint.c:3760 +#: src/elflint.c:3764 #, c-format msgid "cannot get section header for section [%2zu] '%s': %s\n" msgstr "No se puede obtener encabezamiento para sección [%2zu] '%s': %s\n" -#: src/elflint.c:3769 +#: src/elflint.c:3773 #, c-format msgid "section [%2zu]: invalid name\n" msgstr "Sección [%2zu]: nombre inválido\n" -#: src/elflint.c:3796 +#: src/elflint.c:3800 #, c-format msgid "section [%2d] '%s' has wrong type: expected %s, is %s\n" msgstr "Sección [%2d] '%s' tiene tipo errado: %s esperado, es %s\n" -#: src/elflint.c:3813 +#: src/elflint.c:3817 #, c-format msgid "section [%2zu] '%s' has wrong flags: expected %s, is %s\n" msgstr "Sección [%2zu] '%s' tiene banderas erradas: %s esperado, es %s\n" -#: src/elflint.c:3831 +#: src/elflint.c:3835 #, c-format msgid "" "section [%2zu] '%s' has wrong flags: expected %s and possibly %s, is %s\n" @@ -3297,12 +3309,12 @@ msgstr "" "Sección [%2zu] '%s' tiene banderas erradas: %s esperado y posiblemente %s, " "es %s\n" -#: src/elflint.c:3848 +#: src/elflint.c:3852 #, c-format msgid "section [%2zu] '%s' present in object file\n" msgstr "Sección [%2zu] '%s' presente en archivo objeto\n" -#: src/elflint.c:3854 src/elflint.c:3886 +#: src/elflint.c:3858 src/elflint.c:3890 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag set but there is no loadable segment\n" @@ -3310,7 +3322,7 @@ msgstr "" "Sección [%2zu] '%s' tiene bandera SHF_ALLOC establecida pero no es un " "segmento cargable\n" -#: src/elflint.c:3859 src/elflint.c:3891 +#: src/elflint.c:3863 src/elflint.c:3895 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag not set but there are loadable " @@ -3319,7 +3331,7 @@ msgstr "" "Sección [%2zu] '%s' no tiene bandera SHF_ALLOC establecida pero hay " "segmentos cargables\n" -#: src/elflint.c:3867 +#: src/elflint.c:3871 #, c-format msgid "" "section [%2zu] '%s' is extension section index table in non-object file\n" @@ -3327,22 +3339,22 @@ msgstr "" "Sección [%2zu] '%s' es tabla de Ãndice de sección de extensión en archivo no-" "objeto\n" -#: src/elflint.c:3910 +#: src/elflint.c:3914 #, c-format msgid "section [%2zu] '%s': size not multiple of entry size\n" msgstr "Sección [%2zu] '%s': tamaño no es múltiplo de tamaño de entrada\n" -#: src/elflint.c:3915 +#: src/elflint.c:3919 #, c-format msgid "cannot get section header\n" msgstr "no se puede obtener encabezamiento de sección\n" -#: src/elflint.c:3925 +#: src/elflint.c:3929 #, c-format msgid "section [%2zu] '%s' has unsupported type %d\n" msgstr "sección [%2zu] '%s' tiene tipo %d incompatible \n" -#: src/elflint.c:3945 +#: src/elflint.c:3949 #, c-format msgid "" "section [%2zu] '%s' contains invalid processor-specific flag(s) %#<PRIx64>\n" @@ -3350,76 +3362,76 @@ msgstr "" "Sección [%2zu] '%s' contiene bandera(s) de procesador-especÃfico inválidas " "%#<PRIx64>\n" -#: src/elflint.c:3955 +#: src/elflint.c:3959 #, c-format msgid "section [%2zu] '%s' contains unknown flag(s) %#<PRIx64>\n" msgstr "Sección [%2zu] '%s' contiene bandera(s) desconocidas %#<PRIx64>\n" -#: src/elflint.c:3963 +#: src/elflint.c:3967 #, c-format msgid "section [%2zu] '%s': thread-local data sections address not zero\n" msgstr "" "Sección [%2zu] '%s': dirección de secciones de datos de hilo-local no cero\n" -#: src/elflint.c:3973 +#: src/elflint.c:3977 #, fuzzy, c-format msgid "section [%2zu] '%s': allocated section cannot be compressed\n" msgstr "" "Sección [%2zu] '%s': dirección de secciones de datos de hilo-local no cero\n" -#: src/elflint.c:3978 +#: src/elflint.c:3982 #, fuzzy, c-format msgid "section [%2zu] '%s': nobits section cannot be compressed\n" msgstr "Sección [%2d] '%s': no hay sección de dispersión presente\n" -#: src/elflint.c:3984 +#: src/elflint.c:3988 #, fuzzy, c-format msgid "" "section [%2zu] '%s': compressed section with no compression header: %s\n" msgstr "Sección [%2d] '%s': grupo de sección con sólo un miembro\n" -#: src/elflint.c:3990 +#: src/elflint.c:3994 #, c-format msgid "section [%2zu] '%s': invalid section reference in link value\n" msgstr "" "Sección [%2zu] '%s': referencia de sección inválida en valor de enlace\n" -#: src/elflint.c:3995 +#: src/elflint.c:3999 #, c-format msgid "section [%2zu] '%s': invalid section reference in info value\n" msgstr "" "Sección [%2zu] '%s': referencia de sección inválida en valor de información\n" -#: src/elflint.c:4002 +#: src/elflint.c:4006 #, c-format msgid "section [%2zu] '%s': strings flag set without merge flag\n" msgstr "" "Sección [%2zu] '%s': bandera de cadenas establecida sin bandera de fusión\n" -#: src/elflint.c:4007 +#: src/elflint.c:4011 #, c-format msgid "section [%2zu] '%s': merge flag set but entry size is zero\n" msgstr "" "Sección [%2zu] '%s': bandera de fusión establecida pero tamaño de entrada es " "cero\n" -#: src/elflint.c:4026 +#: src/elflint.c:4030 #, c-format msgid "section [%2zu] '%s' has unexpected type %d for an executable section\n" msgstr "" "Sección [%2zu] '%s' tiene un tipo %d inesperado para una sección ejecutable\n" -#: src/elflint.c:4035 +#: src/elflint.c:4039 #, fuzzy, c-format msgid "section [%2zu] '%s' must be of type NOBITS in debuginfo files\n" msgstr "sección [%2zu] '%s' no debe tener permiso de escritura\n" -#: src/elflint.c:4042 +#: src/elflint.c:4046 #, c-format msgid "section [%2zu] '%s' is both executable and writable\n" msgstr "Sección [%2zu] '%s' es tanto de ejecución como de escritura\n" -#: src/elflint.c:4073 +#: src/elflint.c:4077 #, c-format msgid "" "section [%2zu] '%s' not fully contained in segment of program header entry " @@ -3428,7 +3440,7 @@ msgstr "" "Sección [%2zu] '%s' no contenida totalmente en segmento de entrada de " "encabezamiento de programa %d\n" -#: src/elflint.c:4083 +#: src/elflint.c:4087 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " @@ -3437,7 +3449,7 @@ msgstr "" "Sección [%2zu] '%s' no tiene tipo NOBITS pero es leÃda desde el archivo en " "segmento de entrada de encabezamiento de programa %d\n" -#: src/elflint.c:4109 +#: src/elflint.c:4113 #, fuzzy, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " @@ -3446,7 +3458,7 @@ msgstr "" "Sección [%2zu] '%s' no tiene tipo NOBITS pero es leÃda desde el archivo en " "segmento de entrada de encabezamiento de programa %d\n" -#: src/elflint.c:4120 +#: src/elflint.c:4124 #, c-format msgid "" "section [%2zu] '%s' has not type NOBITS but is not read from the file in " @@ -3455,18 +3467,18 @@ msgstr "" "Sección [%2zu] '%s' no tiene tipo NOBITS pero no es leÃda desde el fichero " "en segmento de entrada de encabezamiento de programa %d\n" -#: src/elflint.c:4131 +#: src/elflint.c:4135 #, c-format msgid "section [%2zu] '%s' is executable in nonexecutable segment %d\n" msgstr "Sección [%2zu] '%s' es ejecutable en segmento no ejecutable %d\n" -#: src/elflint.c:4141 +#: src/elflint.c:4145 #, c-format msgid "section [%2zu] '%s' is writable in unwritable segment %d\n" msgstr "" "Sección [%2zu] '%s' es de escritura en segmento que no es de escritura %d\n" -#: src/elflint.c:4151 +#: src/elflint.c:4155 #, c-format msgid "" "section [%2zu] '%s': alloc flag set but section not in any loaded segment\n" @@ -3474,7 +3486,7 @@ msgstr "" "Sección [%2zu] '%s': asignación de bandera establecida pero sección no en " "ningún segmento cargado\n" -#: src/elflint.c:4157 +#: src/elflint.c:4161 #, c-format msgid "" "section [%2zu] '%s': ELF header says this is the section header string table " @@ -3483,7 +3495,7 @@ msgstr "" "Sección [%2zu] '%s': encabezamiento ELF dice esta es la tabla de cadena de " "encabezamiento de sección, pero el tipo no es SHT_TYPE\n" -#: src/elflint.c:4165 +#: src/elflint.c:4169 #, c-format msgid "" "section [%2zu] '%s': relocatable files cannot have dynamic symbol tables\n" @@ -3491,32 +3503,32 @@ msgstr "" "sección [%2zu] '%s': ficheros reubicables no pueden tener tablas de sÃmbolos " "dinámicos\n" -#: src/elflint.c:4216 +#: src/elflint.c:4220 #, c-format msgid "more than one version symbol table present\n" msgstr "Más de una tabla de sÃmbolos presente\n" -#: src/elflint.c:4239 +#: src/elflint.c:4243 #, c-format msgid "INTERP program header entry but no .interp section\n" msgstr "" "Entrada de encabezamiento de programa INTERP pero no la sección .interp\n" -#: src/elflint.c:4250 +#: src/elflint.c:4254 #, c-format msgid "" "loadable segment [%u] is executable but contains no executable sections\n" msgstr "" "segmento cargable [%u] es ejecutable pero no contiene secciones ejecutables\n" -#: src/elflint.c:4256 +#: src/elflint.c:4260 #, c-format msgid "loadable segment [%u] is writable but contains no writable sections\n" msgstr "" "segmento cargable [%u] es de escritura pero contiene secciones protegidas " "contra escritura\n" -#: src/elflint.c:4267 +#: src/elflint.c:4271 #, c-format msgid "" "no .gnu.versym section present but .gnu.versym_d or .gnu.versym_r section " @@ -3525,26 +3537,26 @@ msgstr "" "Sección no .gnu.versym presente, pero la sección .gnu.versym_d o la sección ." "gnu.versym_r existen\n" -#: src/elflint.c:4280 +#: src/elflint.c:4284 #, c-format msgid "duplicate version index %d\n" msgstr "Duplicar Ãndice de versión %d\n" -#: src/elflint.c:4294 +#: src/elflint.c:4298 #, c-format msgid ".gnu.versym section present without .gnu.versym_d or .gnu.versym_r\n" msgstr "" "Sección .gnu.versym presente sin las secciones .gnu.versym_d o .gnu." "versym_r\n" -#: src/elflint.c:4343 +#: src/elflint.c:4347 #, c-format msgid "phdr[%d]: unknown core file note type %<PRIu32> at offset %<PRIu64>\n" msgstr "" "phdr[%d]: tipo de nota de fichero core desconocido %<PRIu32> en compensación " "%<PRIu64>\n" -#: src/elflint.c:4347 +#: src/elflint.c:4351 #, fuzzy, c-format msgid "" "section [%2d] '%s': unknown core file note type %<PRIu32> at offset %zu\n" @@ -3552,7 +3564,7 @@ msgstr "" "Sección [%2d] '%s': tipo de nota de fichero core desconocido %<PRIu32> en " "compensación %Zu\n" -#: src/elflint.c:4403 +#: src/elflint.c:4407 #, fuzzy, c-format msgid "" "phdr[%d]: unknown object file note type %<PRIu32> with owner name '%s' at " @@ -3561,7 +3573,7 @@ msgstr "" "phdr[%d]: tipo de nota de fichero objeto desconocido %<PRIu32> en " "compensación %Zu\n" -#: src/elflint.c:4408 +#: src/elflint.c:4412 #, fuzzy, c-format msgid "" "section [%2d] '%s': unknown object file note type %<PRIu32> with owner name " @@ -3570,40 +3582,40 @@ msgstr "" "Sección [%2d] '%s': tipo de nota de fichero objeto desconocido %<PRIu32> en " "compensación %Zu\n" -#: src/elflint.c:4427 +#: src/elflint.c:4431 #, c-format msgid "phdr[%d]: no note entries defined for the type of file\n" msgstr "phdr[%d]: no hay entradas de nota definidas para el tipo de archivo\n" -#: src/elflint.c:4447 +#: src/elflint.c:4451 #, c-format msgid "phdr[%d]: cannot get content of note section: %s\n" msgstr "phdr[%d]: no puede obtener contenido de sección de nota: %s\n" -#: src/elflint.c:4450 +#: src/elflint.c:4454 #, c-format msgid "phdr[%d]: extra %<PRIu64> bytes after last note\n" msgstr "phdr[%d]: extra %<PRIu64> bytes después de la última nota\n" -#: src/elflint.c:4471 +#: src/elflint.c:4475 #, c-format msgid "section [%2d] '%s': no note entries defined for the type of file\n" msgstr "" "Sección [%2d] '%s': no hay entradas de nota definidas para el tipo de " "archivo\n" -#: src/elflint.c:4478 +#: src/elflint.c:4482 #, c-format msgid "section [%2d] '%s': cannot get content of note section\n" msgstr "" "Sección[%2d] '%s': no se puede obtener el contenido de sección de nota\n" -#: src/elflint.c:4481 +#: src/elflint.c:4485 #, c-format msgid "section [%2d] '%s': extra %<PRIu64> bytes after last note\n" msgstr "Sección[%2d] '%s': extra %<PRIu64> bytes después de la última nota\n" -#: src/elflint.c:4499 +#: src/elflint.c:4503 #, c-format msgid "" "only executables, shared objects, and core files can have program headers\n" @@ -3611,145 +3623,145 @@ msgstr "" "Sólo ejecutables, objetos compartidos y ficheros core pueden tener " "encabezamientos de programas\n" -#: src/elflint.c:4514 +#: src/elflint.c:4518 #, c-format msgid "cannot get program header entry %d: %s\n" msgstr "no se puede obtener entrada de encabezamiento %d: %s\n" -#: src/elflint.c:4524 +#: src/elflint.c:4528 #, c-format msgid "program header entry %d: unknown program header entry type %#<PRIx64>\n" msgstr "" "entrada de encabezamiento de programa %d: tipo %#<PRIx64> de entrada de " "encabezamiento de programa desconocido\n" -#: src/elflint.c:4535 +#: src/elflint.c:4539 #, c-format msgid "more than one INTERP entry in program header\n" msgstr "Más de una entrada INTERP en encabezamiento de programa\n" -#: src/elflint.c:4543 +#: src/elflint.c:4547 #, c-format msgid "more than one TLS entry in program header\n" msgstr "más de una entrada TLS en encabezamiento de programa\n" -#: src/elflint.c:4550 +#: src/elflint.c:4554 #, c-format msgid "static executable cannot have dynamic sections\n" msgstr "ejecutable estático no puede tener secciones dinámicas\n" -#: src/elflint.c:4564 +#: src/elflint.c:4568 #, c-format msgid "dynamic section reference in program header has wrong offset\n" msgstr "" "Referencia de sección dinámica en encabezamiento de programa tiene " "compensación errada\n" -#: src/elflint.c:4567 +#: src/elflint.c:4571 #, c-format msgid "dynamic section size mismatch in program and section header\n" msgstr "" "No coinciden tamaño de sección dinámica en programa y encabezamiento de " "sección\n" -#: src/elflint.c:4577 +#: src/elflint.c:4581 #, c-format msgid "more than one GNU_RELRO entry in program header\n" msgstr "Más de una entrada GNU_RELRO en encabezamiento de programa\n" -#: src/elflint.c:4598 +#: src/elflint.c:4602 #, c-format msgid "loadable segment GNU_RELRO applies to is not writable\n" msgstr "Segmento cargable GNU_RELRO que se aplica no es de escritura\n" -#: src/elflint.c:4609 +#: src/elflint.c:4613 #, c-format msgid "loadable segment [%u] flags do not match GNU_RELRO [%u] flags\n" msgstr "" "Banderas de segmento cargable [%u] no coinciden con banderas GNU_RELRO [%u]\n" -#: src/elflint.c:4616 +#: src/elflint.c:4620 #, c-format msgid "" "GNU_RELRO [%u] flags are not a subset of the loadable segment [%u] flags\n" msgstr "" -#: src/elflint.c:4625 src/elflint.c:4648 +#: src/elflint.c:4629 src/elflint.c:4652 #, c-format msgid "%s segment not contained in a loaded segment\n" msgstr "Segmento %s no contenido en un segmento cargable\n" -#: src/elflint.c:4654 +#: src/elflint.c:4658 #, c-format msgid "program header offset in ELF header and PHDR entry do not match" msgstr "" "Compensación de encabezamiento de programa en encabezamiento ELF y entrada " "PHDR no coinciden" -#: src/elflint.c:4681 +#: src/elflint.c:4685 #, c-format msgid "call frame search table reference in program header has wrong offset\n" msgstr "" "Referencia de tabla de búsqueda de marco de llamada en encabezamiento de " "programa tiene una compensación errada\n" -#: src/elflint.c:4684 +#: src/elflint.c:4688 #, c-format msgid "call frame search table size mismatch in program and section header\n" msgstr "" "Tamaño de tabla de búsqueda de marco de llamada no coincide con programa y " "encabezamiento de sección\n" -#: src/elflint.c:4697 +#: src/elflint.c:4701 #, c-format msgid "PT_GNU_EH_FRAME present but no .eh_frame_hdr section\n" msgstr "PT_GNU_EH_FRAME presente pero no la sección.eh_frame_hdr\n" -#: src/elflint.c:4705 +#: src/elflint.c:4709 #, c-format msgid "call frame search table must be allocated\n" msgstr "tabla de búsqueda de marco de llamada debe ser asignada\n" -#: src/elflint.c:4708 +#: src/elflint.c:4712 #, c-format msgid "section [%2zu] '%s' must be allocated\n" msgstr "sección [%2zu] '%s' debe ser asignada\n" -#: src/elflint.c:4712 +#: src/elflint.c:4716 #, c-format msgid "call frame search table must not be writable\n" msgstr "" "tabla de búsqueda de marco de llamada no debe tener permiso de escritura\n" -#: src/elflint.c:4715 +#: src/elflint.c:4719 #, c-format msgid "section [%2zu] '%s' must not be writable\n" msgstr "sección [%2zu] '%s' no debe tener permiso de escritura\n" -#: src/elflint.c:4720 +#: src/elflint.c:4724 #, c-format msgid "call frame search table must not be executable\n" msgstr "tabla de búsqueda de marco de llamada no debe ser ejecutable\n" -#: src/elflint.c:4723 +#: src/elflint.c:4727 #, c-format msgid "section [%2zu] '%s' must not be executable\n" msgstr "sección [%2zu] '%s' no debe ser ejecutable\n" -#: src/elflint.c:4737 +#: src/elflint.c:4741 #, c-format msgid "program header entry %d: file size greater than memory size\n" msgstr "" "entrada de encabezamiento de programa %d: tamaño de fichero mayor que el " "tamaño de memoria\n" -#: src/elflint.c:4744 +#: src/elflint.c:4748 #, c-format msgid "program header entry %d: alignment not a power of 2\n" msgstr "" "entrada de encabezamiento de programa %d: alineamiento no es potencia de 2\n" -#: src/elflint.c:4747 +#: src/elflint.c:4751 #, c-format msgid "" "program header entry %d: file offset and virtual address not module of " @@ -3758,7 +3770,7 @@ msgstr "" "entrada de encabezamiento de programa %d: compensación de fichero y " "dirección virtual no módulo de alineación\n" -#: src/elflint.c:4760 +#: src/elflint.c:4764 #, c-format msgid "" "executable/DSO with .eh_frame_hdr section does not have a PT_GNU_EH_FRAME " @@ -3767,17 +3779,17 @@ msgstr "" "ejecutable/DSO con sección .eh_frame_hdr no tiene una entrada de " "encabezamiento de programa PT_GNU_EH_FRAME" -#: src/elflint.c:4794 +#: src/elflint.c:4798 #, c-format msgid "cannot read ELF header: %s\n" msgstr "No se puede leer encabezamiento ELF: %s\n" -#: src/elflint.c:4806 +#: src/elflint.c:4810 #, fuzzy, c-format msgid "cannot create backend for ELF file\n" msgstr "no sepuede crear fichero nuevo" -#: src/elflint.c:4827 +#: src/elflint.c:4831 #, c-format msgid "text relocation flag set but not needed\n" msgstr "Bandera de reubicación de texto establecida pero no necesaria\n" @@ -4043,11 +4055,11 @@ msgid "cannot create search tree" msgstr "No se puede crear el árbol de búsqueda" #: src/nm.c:742 src/nm.c:1234 src/objdump.c:778 src/readelf.c:663 -#: src/readelf.c:1471 src/readelf.c:1620 src/readelf.c:1847 src/readelf.c:2084 -#: src/readelf.c:2273 src/readelf.c:2451 src/readelf.c:2526 src/readelf.c:2791 -#: src/readelf.c:2866 src/readelf.c:2952 src/readelf.c:3547 src/readelf.c:3595 -#: src/readelf.c:3664 src/readelf.c:11581 src/readelf.c:12771 -#: src/readelf.c:12981 src/readelf.c:13049 src/size.c:396 src/size.c:467 +#: src/readelf.c:1484 src/readelf.c:1633 src/readelf.c:1860 src/readelf.c:2097 +#: src/readelf.c:2286 src/readelf.c:2466 src/readelf.c:2544 src/readelf.c:2809 +#: src/readelf.c:2884 src/readelf.c:2970 src/readelf.c:3565 src/readelf.c:3613 +#: src/readelf.c:3682 src/readelf.c:11620 src/readelf.c:12803 +#: src/readelf.c:13013 src/readelf.c:13081 src/size.c:396 src/size.c:467 #: src/strip.c:1093 #, c-format msgid "cannot get section header string table index" @@ -4167,11 +4179,11 @@ msgstr "No se especificó una operación.\n" msgid "while close `%s'" msgstr "mientras cierra `%s'" -#: src/objdump.c:362 src/readelf.c:2179 src/readelf.c:2370 +#: src/objdump.c:362 src/readelf.c:2192 src/readelf.c:2383 msgid "INVALID SYMBOL" msgstr "SÃMBOLO INVÃLIDO" -#: src/objdump.c:377 src/readelf.c:2213 src/readelf.c:2406 +#: src/objdump.c:377 src/readelf.c:2226 src/readelf.c:2419 msgid "INVALID SECTION" msgstr "SECCIÓN INVÃLIDA" @@ -4396,12 +4408,12 @@ msgstr "no se puede crear descriptor ELF: %s" msgid "cannot determine number of sections: %s" msgstr "no se pudieron determinar el número de secciones: %s" -#: src/readelf.c:672 src/readelf.c:1287 src/readelf.c:1495 +#: src/readelf.c:672 src/readelf.c:1300 src/readelf.c:1508 #, c-format msgid "cannot get section: %s" msgstr "No se puede encontrar la sección: %s" -#: src/readelf.c:681 src/readelf.c:1294 src/readelf.c:1502 src/readelf.c:13001 +#: src/readelf.c:681 src/readelf.c:1307 src/readelf.c:1515 src/readelf.c:13033 #: src/unstrip.c:396 src/unstrip.c:427 src/unstrip.c:490 src/unstrip.c:610 #: src/unstrip.c:631 src/unstrip.c:671 src/unstrip.c:887 src/unstrip.c:1222 #: src/unstrip.c:1349 src/unstrip.c:1373 src/unstrip.c:1429 src/unstrip.c:1470 @@ -4415,8 +4427,8 @@ msgstr "No se puede obtener encabezamiento de sección: %s" msgid "cannot get section name" msgstr "no se puede obtener encabezamiento de sección\n" -#: src/readelf.c:698 src/readelf.c:6797 src/readelf.c:10854 src/readelf.c:10956 -#: src/readelf.c:11134 +#: src/readelf.c:698 src/readelf.c:6833 src/readelf.c:10887 src/readelf.c:10989 +#: src/readelf.c:11173 #, c-format msgid "cannot get %s content: %s" msgstr "No se puede obtener el contenido %s: %s" @@ -4486,38 +4498,44 @@ msgstr "no se pudo determinar la cantidad de encabezados de programa: %s" msgid "cannot read ELF: %s" msgstr "no sepuede leer %s: %s" -#: src/readelf.c:1078 +#: src/readelf.c:1050 +#, fuzzy +#| msgid "cannot get section: %s" +msgid "cannot find section" +msgstr "No se puede encontrar la sección: %s" + +#: src/readelf.c:1087 msgid "NONE (None)" msgstr "NONE (Ninguno)" -#: src/readelf.c:1079 +#: src/readelf.c:1088 msgid "REL (Relocatable file)" msgstr "REL (Fichero reubicable)" -#: src/readelf.c:1080 +#: src/readelf.c:1089 msgid "EXEC (Executable file)" msgstr "EXEC (Fichero ejecutable)" -#: src/readelf.c:1081 +#: src/readelf.c:1090 msgid "DYN (Shared object file)" msgstr "DYN (Fichero objeto compartido)" -#: src/readelf.c:1082 +#: src/readelf.c:1091 msgid "CORE (Core file)" msgstr "CORE (Fichero núcleo)" -#: src/readelf.c:1087 +#: src/readelf.c:1096 #, c-format msgid "OS Specific: (%x)\n" msgstr "OS Specific: (%x)\n" #. && e_type <= ET_HIPROC always true -#: src/readelf.c:1089 +#: src/readelf.c:1098 #, c-format msgid "Processor Specific: (%x)\n" msgstr "EspecÃfico del procesador: (%x)\n" -#: src/readelf.c:1099 +#: src/readelf.c:1108 msgid "" "ELF Header:\n" " Magic: " @@ -4525,7 +4543,7 @@ msgstr "" "Encabezamiento ELF:\n" " Mágico: " -#: src/readelf.c:1103 +#: src/readelf.c:1112 #, c-format msgid "" "\n" @@ -4534,125 +4552,125 @@ msgstr "" "\n" " Clase: %s\n" -#: src/readelf.c:1108 +#: src/readelf.c:1117 #, c-format msgid " Data: %s\n" msgstr " Datos: %s\n" -#: src/readelf.c:1114 +#: src/readelf.c:1123 #, c-format msgid " Ident Version: %hhd %s\n" msgstr " Versión ident: %hhd %s\n" -#: src/readelf.c:1116 src/readelf.c:1138 +#: src/readelf.c:1125 src/readelf.c:1147 msgid "(current)" msgstr "(actual)" -#: src/readelf.c:1120 +#: src/readelf.c:1129 #, c-format msgid " OS/ABI: %s\n" msgstr " OS/ABI: %s\n" -#: src/readelf.c:1123 +#: src/readelf.c:1132 #, c-format msgid " ABI Version: %hhd\n" msgstr " Versión ABI: %hhd\n" -#: src/readelf.c:1126 +#: src/readelf.c:1135 msgid " Type: " msgstr " Tipo: " -#: src/readelf.c:1131 +#: src/readelf.c:1140 #, c-format msgid " Machine: %s\n" msgstr " Máquina: %s\n" -#: src/readelf.c:1133 +#: src/readelf.c:1142 #, fuzzy, c-format msgid " Machine: <unknown>: 0x%x\n" msgstr " Máquina: %s\n" -#: src/readelf.c:1136 +#: src/readelf.c:1145 #, c-format msgid " Version: %d %s\n" msgstr " Versión: %d %s\n" -#: src/readelf.c:1140 +#: src/readelf.c:1149 #, c-format msgid " Entry point address: %#<PRIx64>\n" msgstr " Dirección de punto de entrada: %#<PRIx64>\n" -#: src/readelf.c:1143 +#: src/readelf.c:1152 #, c-format msgid " Start of program headers: %<PRId64> %s\n" msgstr " Inicio de encabezamientos de programa: %<PRId64> %s\n" -#: src/readelf.c:1144 src/readelf.c:1147 +#: src/readelf.c:1153 src/readelf.c:1156 msgid "(bytes into file)" msgstr " (bytes en el archivo)" -#: src/readelf.c:1146 +#: src/readelf.c:1155 #, c-format msgid " Start of section headers: %<PRId64> %s\n" msgstr " Inicio de encabezamientos de sección: %<PRId64> %s\n" -#: src/readelf.c:1149 +#: src/readelf.c:1158 #, c-format msgid " Flags: %s\n" msgstr " Indicadores: %s\n" -#: src/readelf.c:1152 +#: src/readelf.c:1161 #, c-format msgid " Size of this header: %<PRId16> %s\n" msgstr " Tamaño de este encabezamiento: %<PRId16> %s\n" -#: src/readelf.c:1153 src/readelf.c:1156 src/readelf.c:1173 +#: src/readelf.c:1162 src/readelf.c:1165 src/readelf.c:1182 msgid "(bytes)" msgstr "(bytes)" -#: src/readelf.c:1155 +#: src/readelf.c:1164 #, c-format msgid " Size of program header entries: %<PRId16> %s\n" msgstr "" " Tamaño de las entradas en encabezamiento del programa: %<PRId16> %s\n" -#: src/readelf.c:1158 +#: src/readelf.c:1167 #, c-format msgid " Number of program headers entries: %<PRId16>" msgstr " Cantidad de entradas de encabezados de programa: %<PRId16>" -#: src/readelf.c:1165 +#: src/readelf.c:1174 #, c-format msgid " (%<PRIu32> in [0].sh_info)" msgstr " (%<PRIu32> in [0].sh_info)" -#: src/readelf.c:1168 src/readelf.c:1185 src/readelf.c:1199 +#: src/readelf.c:1177 src/readelf.c:1194 src/readelf.c:1208 msgid " ([0] not available)" msgstr " ([0] no disponible)" -#: src/readelf.c:1172 +#: src/readelf.c:1181 #, c-format msgid " Size of section header entries: %<PRId16> %s\n" msgstr "" " Tamaño de las entradas en el encabezamiento de sección: %<PRId16> %s\n" -#: src/readelf.c:1175 +#: src/readelf.c:1184 #, c-format msgid " Number of section headers entries: %<PRId16>" msgstr " Cantidad de entradas en los encabezamientos de sección: %<PRId16>" -#: src/readelf.c:1182 +#: src/readelf.c:1191 #, c-format msgid " (%<PRIu32> in [0].sh_size)" msgstr " (%<PRIu32> en [0].sh_size)" #. We managed to get the zeroth section. -#: src/readelf.c:1195 +#: src/readelf.c:1204 #, c-format msgid " (%<PRIu32> in [0].sh_link)" msgstr " (%<PRIu32> en [0].sh_link)" -#: src/readelf.c:1203 +#: src/readelf.c:1212 #, c-format msgid "" " Section header string table index: XINDEX%s\n" @@ -4661,19 +4679,19 @@ msgstr "" " Ãndice de tabla de cadenas de sección de encabezamiento de : XINDEX%s\n" "\n" -#: src/readelf.c:1207 +#: src/readelf.c:1216 #, c-format msgid "" " Section header string table index: %<PRId16>\n" "\n" msgstr " Ãndice de tabla de cadenas de sección de encabezamiento: %<PRId16>\n" -#: src/readelf.c:1253 src/readelf.c:1461 +#: src/readelf.c:1266 src/readelf.c:1474 #, fuzzy, c-format msgid "cannot get number of sections: %s" msgstr "no se pudieron determinar el número de secciones: %s" -#: src/readelf.c:1256 +#: src/readelf.c:1269 #, fuzzy, c-format msgid "" "There are %zd section headers, starting at offset %#<PRIx64>:\n" @@ -4682,16 +4700,16 @@ msgstr "" "Hay %d encabezamientos de sección, comenzando en compensación %#<PRIx64>:\n" "\n" -#: src/readelf.c:1264 +#: src/readelf.c:1277 #, fuzzy, c-format msgid "cannot get section header string table index: %s" msgstr "no se puede obtener Ãndice de cadena de encabezamiento de sección" -#: src/readelf.c:1267 +#: src/readelf.c:1280 msgid "Section Headers:" msgstr "encabezamientos de sección:" -#: src/readelf.c:1270 +#: src/readelf.c:1283 msgid "" "[Nr] Name Type Addr Off Size ES Flags Lk " "Inf Al" @@ -4699,7 +4717,7 @@ msgstr "" "[Nr] Nombre Tipo Dirección Off Tamaño Inf Al " "Enlace banderas ES" -#: src/readelf.c:1272 +#: src/readelf.c:1285 msgid "" "[Nr] Name Type Addr Off Size ES " "Flags Lk Inf Al" @@ -4707,36 +4725,36 @@ msgstr "" "[Nr] Name Type Addr Off Size ES " "Flags Lk Inf Al" -#: src/readelf.c:1277 +#: src/readelf.c:1290 msgid " [Compression Size Al]" msgstr "" -#: src/readelf.c:1279 +#: src/readelf.c:1292 msgid " [Compression Size Al]" msgstr "" -#: src/readelf.c:1357 +#: src/readelf.c:1370 #, fuzzy, c-format msgid "bad compression header for section %zd: %s" msgstr "No se puede obtener el encabezamiento de sección %zu: %s" -#: src/readelf.c:1368 +#: src/readelf.c:1381 #, fuzzy, c-format msgid "bad gnu compressed size for section %zd: %s" msgstr "No se pueden obtener datos para la sección %d: %s" -#: src/readelf.c:1386 +#: src/readelf.c:1399 msgid "Program Headers:" msgstr "encabezamientos de programa:" -#: src/readelf.c:1388 +#: src/readelf.c:1401 msgid "" " Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align" msgstr "" " Tipo Compensación Dirección Virtual Dirección " "FÃsica Tamaño de Fichero Tamaño de Memoria Alineación de bandera" -#: src/readelf.c:1391 +#: src/readelf.c:1404 msgid "" " Type Offset VirtAddr PhysAddr FileSiz " "MemSiz Flg Align" @@ -4744,12 +4762,12 @@ msgstr "" " Tipo Compensación Dirección Virtual Dirección " "FÃsica Tamaño de Fichero Tamaño de Memoria Alineación de bandera" -#: src/readelf.c:1448 +#: src/readelf.c:1461 #, c-format msgid "\t[Requesting program interpreter: %s]\n" msgstr "\t[Solicitando intérprete de programa: %s]\n" -#: src/readelf.c:1473 +#: src/readelf.c:1486 msgid "" "\n" " Section to Segment mapping:\n" @@ -4759,12 +4777,12 @@ msgstr "" " Sección para asignación de segmento:\n" " Secciones de segmento..." -#: src/readelf.c:1484 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 +#: src/readelf.c:1497 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 #, c-format msgid "cannot get program header: %s" msgstr "no se puede obtener memoria para encabezamiento del programa: %s" -#: src/readelf.c:1628 +#: src/readelf.c:1641 #, c-format msgid "" "\n" @@ -4779,7 +4797,7 @@ msgstr[1] "" "\n" "Grupo de sección COMDAT [%2zu] '%s' con firma '%s' contiene entradas %zu:\n" -#: src/readelf.c:1633 +#: src/readelf.c:1646 #, c-format msgid "" "\n" @@ -4794,31 +4812,32 @@ msgstr[1] "" "\n" "Grupo de sección [%2zu] '%s' con firma '%s' contiene entradas %zu:\n" -#: src/readelf.c:1641 +#: src/readelf.c:1654 msgid "<INVALID SYMBOL>" msgstr "<SÃMBOLO INVÃLIDO>" -#: src/readelf.c:1655 +#: src/readelf.c:1668 msgid "<INVALID SECTION>" msgstr "<SECCIÓN INVÃLIDA>" -#: src/readelf.c:1678 src/readelf.c:2461 src/readelf.c:3563 src/readelf.c:12873 -#: src/readelf.c:12880 src/readelf.c:12924 src/readelf.c:12931 +#: src/readelf.c:1691 src/readelf.c:2476 src/readelf.c:3581 src/readelf.c:3881 +#: src/readelf.c:12905 src/readelf.c:12912 src/readelf.c:12956 +#: src/readelf.c:12963 msgid "Couldn't uncompress section" msgstr "" -#: src/readelf.c:1682 src/readelf.c:2466 src/readelf.c:3567 +#: src/readelf.c:1695 src/readelf.c:2481 src/readelf.c:3585 #, fuzzy, c-format msgid "cannot get section [%zd] header: %s" msgstr "No se puede obtener encabezamiento de sección: %s" -#: src/readelf.c:1851 src/readelf.c:2532 src/readelf.c:2797 src/readelf.c:2872 -#: src/readelf.c:3175 src/readelf.c:3249 src/readelf.c:5570 +#: src/readelf.c:1864 src/readelf.c:2550 src/readelf.c:2815 src/readelf.c:2890 +#: src/readelf.c:3193 src/readelf.c:3267 src/readelf.c:5619 #, fuzzy, c-format msgid "invalid sh_link value in section %zu" msgstr ".debug_line section inválida" -#: src/readelf.c:1854 +#: src/readelf.c:1867 #, c-format msgid "" "\n" @@ -4839,7 +4858,7 @@ msgstr[1] "" " Dirección: %#0*<PRIx64> Compensación: %#08<PRIx64> Enlace a sección: " "[%2u] '%s'\n" -#: src/readelf.c:1867 +#: src/readelf.c:1880 #, fuzzy, c-format #| msgid "" #| "\n" @@ -4868,41 +4887,41 @@ msgstr[1] "" " Dirección: %#0*<PRIx64> Compensación: %#08<PRIx64> Enlace a sección: " "[%2u] '%s'\n" -#: src/readelf.c:1877 +#: src/readelf.c:1890 msgid " Type Value\n" msgstr " Tipo Valor\n" -#: src/readelf.c:1886 +#: src/readelf.c:1899 #, fuzzy msgid "cannot get string table by using dynamic segment" msgstr "no se pueden obtener datos de sección: %s" -#: src/readelf.c:1925 +#: src/readelf.c:1938 #, c-format msgid "Shared library: [%s]\n" msgstr "Biblioteca compartida: [%s]\n" -#: src/readelf.c:1929 +#: src/readelf.c:1942 #, c-format msgid "Library soname: [%s]\n" msgstr "Nombre-so de la biblioteca: [%s]\n" -#: src/readelf.c:1933 +#: src/readelf.c:1946 #, c-format msgid "Library rpath: [%s]\n" msgstr "Rpath de la biblioteca: [%s]\n" -#: src/readelf.c:1937 +#: src/readelf.c:1950 #, c-format msgid "Library runpath: [%s]\n" msgstr "Ruta de ejecución de la biblioteca: [%s]\n" -#: src/readelf.c:1956 +#: src/readelf.c:1969 #, c-format msgid "%<PRId64> (bytes)\n" msgstr "%<PRId64> (bytes)\n" -#: src/readelf.c:2070 src/readelf.c:2259 +#: src/readelf.c:2083 src/readelf.c:2272 #, c-format msgid "" "\n" @@ -4911,7 +4930,7 @@ msgstr "" "\n" "Tabla de sÃmbolos inválida en compensación %#0<PRIx64>\n" -#: src/readelf.c:2087 src/readelf.c:2276 +#: src/readelf.c:2100 src/readelf.c:2289 #, c-format msgid "" "\n" @@ -4936,7 +4955,7 @@ msgstr[1] "" #. The .rela.dyn section does not refer to a specific section but #. instead of section index zero. Do not try to print a section #. name. -#: src/readelf.c:2102 src/readelf.c:2291 +#: src/readelf.c:2115 src/readelf.c:2304 #, c-format msgid "" "\n" @@ -4953,29 +4972,29 @@ msgstr[1] "" "Sección de reubicación [%2u] '%s' en compensación %#0<PRIx64> contiene " "entradas %d:\n" -#: src/readelf.c:2112 +#: src/readelf.c:2125 msgid " Offset Type Value Name\n" msgstr " Compensación Tipo Valor Nombre\n" -#: src/readelf.c:2114 +#: src/readelf.c:2127 msgid " Offset Type Value Name\n" msgstr " Compensación Tipo Valor Nombre\n" -#: src/readelf.c:2167 src/readelf.c:2178 src/readelf.c:2191 src/readelf.c:2212 -#: src/readelf.c:2224 src/readelf.c:2357 src/readelf.c:2369 src/readelf.c:2383 -#: src/readelf.c:2405 src/readelf.c:2418 +#: src/readelf.c:2180 src/readelf.c:2191 src/readelf.c:2204 src/readelf.c:2225 +#: src/readelf.c:2237 src/readelf.c:2370 src/readelf.c:2382 src/readelf.c:2396 +#: src/readelf.c:2418 src/readelf.c:2431 msgid "<INVALID RELOC>" msgstr "<REUBIC INVÃLIDA>" -#: src/readelf.c:2301 +#: src/readelf.c:2314 msgid " Offset Type Value Addend Name\n" msgstr " Compensación Tipo Valor Nombre Adend\n" -#: src/readelf.c:2303 +#: src/readelf.c:2316 msgid " Offset Type Value Addend Name\n" msgstr " Compensación Tipo Valor Nombre Adend\n" -#: src/readelf.c:2540 +#: src/readelf.c:2558 #, c-format msgid "" "\n" @@ -4990,40 +5009,40 @@ msgstr[1] "" "\n" "La tabla de sÃmbolos [%2u] '%s' contiene entradas %u:\n" -#: src/readelf.c:2545 +#: src/readelf.c:2563 #, c-format msgid " %lu local symbol String table: [%2u] '%s'\n" msgid_plural " %lu local symbols String table: [%2u] '%s'\n" msgstr[0] "sÃmbolos locales %lu Tabla de cadena: [%2u] '%s'\n" msgstr[1] " SÃmbolos locales %lu Tabla de cadenas: [%2u] '%s'\n" -#: src/readelf.c:2553 +#: src/readelf.c:2571 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr " Núm: Valor Tamaño Tipo Unión Vis Nombre Ndx\n" -#: src/readelf.c:2555 +#: src/readelf.c:2573 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr " Num: Valor Tamaño Tipo Unión Vis Nombre Ndx\n" -#: src/readelf.c:2575 +#: src/readelf.c:2593 #, c-format msgid "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" msgstr "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" -#: src/readelf.c:2668 +#: src/readelf.c:2686 #, c-format msgid "bad dynamic symbol" msgstr "sÃmbolo dinámico erróneo" -#: src/readelf.c:2753 +#: src/readelf.c:2771 msgid "none" msgstr "nada" -#: src/readelf.c:2770 +#: src/readelf.c:2788 msgid "| <unknown>" msgstr "| <desconocido>" -#: src/readelf.c:2800 +#: src/readelf.c:2818 #, c-format msgid "" "\n" @@ -5044,17 +5063,17 @@ msgstr[1] "" " Dirección: %#0*<PRIx64> Compensación: %#08<PRIx64> Enlace a sección: " "[%2u] '%s'\n" -#: src/readelf.c:2821 +#: src/readelf.c:2839 #, c-format msgid " %#06x: Version: %hu File: %s Cnt: %hu\n" msgstr " %#06x: Versión: %hu Fichero: %s Conteo: %hu\n" -#: src/readelf.c:2834 +#: src/readelf.c:2852 #, c-format msgid " %#06x: Name: %s Flags: %s Version: %hu\n" msgstr " %#06x: Nombre: %s Banderas: %s Versión: %hu\n" -#: src/readelf.c:2876 +#: src/readelf.c:2894 #, c-format msgid "" "\n" @@ -5075,19 +5094,19 @@ msgstr[1] "" " Dirección: %#0*<PRIx64> Compensación: %#08<PRIx64> Enlace a sección: " "[%2u] '%s'\n" -#: src/readelf.c:2904 +#: src/readelf.c:2922 #, c-format msgid " %#06x: Version: %hd Flags: %s Index: %hd Cnt: %hd Name: %s\n" msgstr "" " %#06x: Versión: %hd Banderas: %s Ãndice: %hd Conteo: %hd Nombre: %s\n" -#: src/readelf.c:2919 +#: src/readelf.c:2937 #, c-format msgid " %#06x: Parent %d: %s\n" msgstr " %#06x: Principal %d: %s\n" #. Print the header. -#: src/readelf.c:3179 +#: src/readelf.c:3197 #, c-format msgid "" "\n" @@ -5108,15 +5127,15 @@ msgstr[1] "" " Dirección: %#0*<PRIx64> Compensación: %#08<PRIx64> Enlace a sección: " "[%2u] '%s'" -#: src/readelf.c:3207 +#: src/readelf.c:3225 msgid " 0 *local* " msgstr " 0 *local* " -#: src/readelf.c:3212 +#: src/readelf.c:3230 msgid " 1 *global* " msgstr " 1 *global* " -#: src/readelf.c:3254 +#: src/readelf.c:3272 #, c-format msgid "" "\n" @@ -5141,22 +5160,22 @@ msgstr[1] "" " Dirección: %#0*<PRIx64> Compensación: %#08<PRIx64> Enlace a sección: " "[%2u] '%s'\n" -#: src/readelf.c:3276 +#: src/readelf.c:3294 #, no-c-format msgid " Length Number % of total Coverage\n" msgstr " Longitud Número % of total Cobertura\n" -#: src/readelf.c:3278 +#: src/readelf.c:3296 #, c-format msgid " 0 %6<PRIu32> %5.1f%%\n" msgstr " 0 %6<PRIu32> %5.1f%%\n" -#: src/readelf.c:3285 +#: src/readelf.c:3303 #, c-format msgid "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" msgstr "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" -#: src/readelf.c:3298 +#: src/readelf.c:3316 #, c-format msgid "" " Average number of tests: successful lookup: %f\n" @@ -5165,37 +5184,37 @@ msgstr "" " Número promedio de pruebas: búsqueda exitosa: %f\n" " búsqueda sin éxito: %f\n" -#: src/readelf.c:3316 src/readelf.c:3380 src/readelf.c:3446 +#: src/readelf.c:3334 src/readelf.c:3398 src/readelf.c:3464 #, c-format msgid "cannot get data for section %d: %s" msgstr "No se pueden obtener datos para la sección %d: %s" -#: src/readelf.c:3324 +#: src/readelf.c:3342 #, fuzzy, c-format msgid "invalid data in sysv.hash section %d" msgstr "Datos inválidos en sección [%zu] '%s'" -#: src/readelf.c:3353 +#: src/readelf.c:3371 #, fuzzy, c-format msgid "invalid chain in sysv.hash section %d" msgstr "Datos inválidos en sección [%zu] '%s'" -#: src/readelf.c:3388 +#: src/readelf.c:3406 #, fuzzy, c-format msgid "invalid data in sysv.hash64 section %d" msgstr "Datos inválidos en sección [%zu] '%s'" -#: src/readelf.c:3419 +#: src/readelf.c:3437 #, fuzzy, c-format msgid "invalid chain in sysv.hash64 section %d" msgstr "Datos inválidos en sección [%zu] '%s'" -#: src/readelf.c:3455 +#: src/readelf.c:3473 #, fuzzy, c-format msgid "invalid data in gnu.hash section %d" msgstr "Datos inválidos en sección [%zu] '%s'" -#: src/readelf.c:3521 +#: src/readelf.c:3539 #, c-format msgid "" " Symbol Bias: %u\n" @@ -5205,7 +5224,7 @@ msgstr "" " Tamaño de Bitmask: %zu bytes %<PRIuFAST32>%% bits establecen segundo " "cambio de dispersión: %u\n" -#: src/readelf.c:3606 +#: src/readelf.c:3624 #, c-format msgid "" "\n" @@ -5222,7 +5241,7 @@ msgstr[1] "" "Sección de lista de biblioteca [%2zu] '%s' en compensación %#0<PRIx64> " "contiene entradas %d:\n" -#: src/readelf.c:3620 +#: src/readelf.c:3638 msgid "" " Library Time Stamp Checksum Version " "Flags" @@ -5230,7 +5249,7 @@ msgstr "" " Biblioteca Marca de tiempo Indicadores " "de versión de suma de verificación" -#: src/readelf.c:3680 +#: src/readelf.c:3698 #, c-format msgid "" "\n" @@ -5241,102 +5260,107 @@ msgstr "" "Sección de atributos de objeto [%2zu] '%s' de %<PRIu64> bytes con " "desplazamiento %#0<PRIx64>:\n" -#: src/readelf.c:3697 +#: src/readelf.c:3715 msgid " Owner Size\n" msgstr " Propietario Tamaño\n" -#: src/readelf.c:3721 +#: src/readelf.c:3739 #, c-format msgid " %-13s %4<PRIu32>\n" msgstr " %-13s %4<PRIu32>\n" #. Unknown subsection, print and skip. -#: src/readelf.c:3760 +#: src/readelf.c:3778 #, c-format msgid " %-4u %12<PRIu32>\n" msgstr " %-4u %12<PRIu32>\n" #. Tag_File -#: src/readelf.c:3765 +#: src/readelf.c:3783 #, c-format msgid " File: %11<PRIu32>\n" msgstr " File: %11<PRIu32>\n" -#: src/readelf.c:3814 +#: src/readelf.c:3833 #, c-format msgid " %s: %<PRId64>, %s\n" msgstr " %s: %<PRId64>, %s\n" -#: src/readelf.c:3817 +#: src/readelf.c:3836 #, c-format msgid " %s: %<PRId64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:3820 +#: src/readelf.c:3839 #, c-format msgid " %s: %s\n" msgstr " %s: %s\n" -#: src/readelf.c:3830 +#: src/readelf.c:3849 #, c-format msgid " %u: %<PRId64>\n" msgstr " %u: %<PRId64>\n" -#: src/readelf.c:3833 +#: src/readelf.c:3852 #, c-format msgid " %u: %s\n" msgstr " %u: %s\n" -#: src/readelf.c:3903 +#: src/readelf.c:3890 +#, fuzzy +msgid "Couldn't get data from section" +msgstr "No se puede obtener encabezamiento de sección 0th: %s" + +#: src/readelf.c:3955 #, fuzzy msgid "sprintf failure" msgstr "mprotect falló" -#: src/readelf.c:4387 +#: src/readelf.c:4439 msgid "empty block" msgstr "bloque vacÃo" -#: src/readelf.c:4390 +#: src/readelf.c:4442 #, c-format msgid "%zu byte block:" msgstr "bloque de byte %zu:" -#: src/readelf.c:4868 +#: src/readelf.c:4920 #, fuzzy, c-format msgid "%*s[%2<PRIuMAX>] %s <TRUNCATED>\n" msgstr "%*s[%4<PRIuMAX>] %s <TRUNCATED>\n" -#: src/readelf.c:5028 +#: src/readelf.c:5080 #, c-format msgid "%s %#<PRIx64> used with different address sizes" msgstr "%s %#<PRIx64> utilizado con direcciones de diferente tamaño" -#: src/readelf.c:5035 +#: src/readelf.c:5087 #, c-format msgid "%s %#<PRIx64> used with different offset sizes" msgstr "%s %#<PRIx64> utilizado con offsetr de diferente tamaño" -#: src/readelf.c:5042 +#: src/readelf.c:5094 #, fuzzy, c-format msgid "%s %#<PRIx64> used with different base addresses" msgstr "%s %#<PRIx64> utilizado con direcciones de diferente tamaño" -#: src/readelf.c:5049 +#: src/readelf.c:5101 #, fuzzy, c-format msgid "%s %#<PRIx64> used with different attribute %s and %s" msgstr "%s %#<PRIx64> utilizado con direcciones de diferente tamaño" -#: src/readelf.c:5149 +#: src/readelf.c:5201 #, c-format msgid " [%6tx] <UNUSED GARBAGE IN REST OF SECTION>\n" msgstr " [%6tx] <MATERIAL INUTIL SIN UTILIZAR EN EL RESTO DE LA SECCION>\n" -#: src/readelf.c:5157 +#: src/readelf.c:5209 #, c-format msgid " [%6tx] <UNUSED GARBAGE> ... %<PRIu64> bytes ...\n" msgstr " [%6tx] <MATERIAL INUTIL NO UTILIZADO> ... %<PRIu64> bytes ...\n" -#: src/readelf.c:5260 +#: src/readelf.c:5315 #, c-format msgid "" "\n" @@ -5347,7 +5371,7 @@ msgstr "" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64>:\n" " [ Código]\n" -#: src/readelf.c:5268 +#: src/readelf.c:5323 #, c-format msgid "" "\n" @@ -5356,20 +5380,20 @@ msgstr "" "\n" "Sección de abreviatura en compensación %<PRIu64>:\n" -#: src/readelf.c:5281 +#: src/readelf.c:5336 #, c-format msgid " *** error while reading abbreviation: %s\n" msgstr " *** error en lectura de abreviatura: %s\n" -#: src/readelf.c:5297 +#: src/readelf.c:5352 #, c-format msgid " [%5u] offset: %<PRId64>, children: %s, tag: %s\n" msgstr " [%5u] compensación: %<PRId64>, hijos: %s, etiqueta: %s\n" -#: src/readelf.c:5330 src/readelf.c:5639 src/readelf.c:5806 src/readelf.c:6191 -#: src/readelf.c:6807 src/readelf.c:8562 src/readelf.c:9308 src/readelf.c:9791 -#: src/readelf.c:10042 src/readelf.c:10208 src/readelf.c:10595 -#: src/readelf.c:10655 +#: src/readelf.c:5389 src/readelf.c:5682 src/readelf.c:5853 src/readelf.c:6224 +#: src/readelf.c:6850 src/readelf.c:8619 src/readelf.c:9361 src/readelf.c:9829 +#: src/readelf.c:10084 src/readelf.c:10246 src/readelf.c:10627 +#: src/readelf.c:10698 #, c-format msgid "" "\n" @@ -5378,52 +5402,47 @@ msgstr "" "\n" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64>:\n" -#: src/readelf.c:5343 -#, fuzzy, c-format -msgid "cannot get .debug_addr section data: %s" -msgstr "no se pueden obtener datos de sección: %s" - -#: src/readelf.c:5443 src/readelf.c:5467 src/readelf.c:5851 src/readelf.c:9353 +#: src/readelf.c:5492 src/readelf.c:5516 src/readelf.c:5889 src/readelf.c:9397 #, fuzzy, c-format msgid " Length: %8<PRIu64>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:5445 src/readelf.c:5482 src/readelf.c:5864 src/readelf.c:9366 +#: src/readelf.c:5494 src/readelf.c:5531 src/readelf.c:5902 src/readelf.c:9410 #, fuzzy, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5446 src/readelf.c:5491 src/readelf.c:5873 src/readelf.c:9375 +#: src/readelf.c:5495 src/readelf.c:5540 src/readelf.c:5911 src/readelf.c:9419 #, fuzzy, c-format msgid " Address size: %8<PRIu64>\n" msgstr " (fin de compensación: %#<PRIx64>)" -#: src/readelf.c:5448 src/readelf.c:5501 src/readelf.c:5883 src/readelf.c:9385 +#: src/readelf.c:5497 src/readelf.c:5550 src/readelf.c:5921 src/readelf.c:9429 #, fuzzy, c-format msgid " Segment size: %8<PRIu64>\n" msgstr " establecer archivo a %<PRIu64>\n" -#: src/readelf.c:5486 src/readelf.c:5868 src/readelf.c:9370 src/readelf.c:10787 +#: src/readelf.c:5535 src/readelf.c:5906 src/readelf.c:9414 src/readelf.c:10820 #, fuzzy, c-format msgid "Unknown version" msgstr "versión desconocida" -#: src/readelf.c:5496 src/readelf.c:5709 src/readelf.c:5878 src/readelf.c:9380 +#: src/readelf.c:5545 src/readelf.c:5752 src/readelf.c:5916 src/readelf.c:9424 #, fuzzy, c-format msgid "unsupported address size" msgstr "no hay valor de dirección" -#: src/readelf.c:5507 src/readelf.c:5720 src/readelf.c:5888 src/readelf.c:9390 +#: src/readelf.c:5556 src/readelf.c:5763 src/readelf.c:5926 src/readelf.c:9434 #, c-format msgid "unsupported segment size" msgstr "" -#: src/readelf.c:5560 src/readelf.c:5634 +#: src/readelf.c:5609 #, c-format msgid "cannot get .debug_aranges content: %s" msgstr "no se ha podido obtener contenido de .debug_aranges: %s" -#: src/readelf.c:5575 +#: src/readelf.c:5624 #, c-format msgid "" "\n" @@ -5438,12 +5457,12 @@ msgstr[1] "" "\n" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64> contiene entradas %zu:\n" -#: src/readelf.c:5606 +#: src/readelf.c:5655 #, c-format msgid " [%*zu] ???\n" msgstr " [%*zu] ???\n" -#: src/readelf.c:5608 +#: src/readelf.c:5657 #, c-format msgid "" " [%*zu] start: %0#*<PRIx64>, length: %5<PRIu64>, CU DIE offset: %6<PRId64>\n" @@ -5451,7 +5470,7 @@ msgstr "" " Inicio [%*zu]: %0#*<PRIx64>, longitud: %5<PRIu64>, compensación CU DIE: " "%6<PRId64>\n" -#: src/readelf.c:5652 src/readelf.c:8589 +#: src/readelf.c:5695 src/readelf.c:8638 #, fuzzy, c-format msgid "" "\n" @@ -5460,150 +5479,140 @@ msgstr "" "\n" "Tabla en compensación %Zu:\n" -#: src/readelf.c:5656 src/readelf.c:5832 src/readelf.c:6831 src/readelf.c:8600 -#: src/readelf.c:9334 +#: src/readelf.c:5699 src/readelf.c:5870 src/readelf.c:6874 src/readelf.c:8649 +#: src/readelf.c:9378 #, c-format msgid "invalid data in section [%zu] '%s'" msgstr "Datos inválidos en sección [%zu] '%s'" -#: src/readelf.c:5672 +#: src/readelf.c:5715 #, fuzzy, c-format msgid "" "\n" " Length: %6<PRIu64>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:5684 +#: src/readelf.c:5727 #, fuzzy, c-format msgid " DWARF version: %6<PRIuFAST16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5688 +#: src/readelf.c:5731 #, c-format msgid "unsupported aranges version" msgstr "" -#: src/readelf.c:5699 +#: src/readelf.c:5742 #, fuzzy, c-format msgid " CU offset: %6<PRIx64>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:5705 +#: src/readelf.c:5748 #, fuzzy, c-format msgid " Address size: %6<PRIu64>\n" msgstr " (fin de compensación: %#<PRIx64>)" -#: src/readelf.c:5716 +#: src/readelf.c:5759 #, fuzzy, c-format msgid "" " Segment size: %6<PRIu64>\n" "\n" msgstr " establecer archivo a %<PRIu64>\n" -#: src/readelf.c:5771 +#: src/readelf.c:5814 #, c-format msgid " %zu padding bytes\n" msgstr "" -#: src/readelf.c:5815 -#, fuzzy, c-format -msgid "cannot get .debug_rnglists content: %s" -msgstr "no se ha podido obtener contenido de .debug_ranges: %s" - -#: src/readelf.c:5838 src/readelf.c:9340 +#: src/readelf.c:5876 src/readelf.c:9384 #, fuzzy, c-format msgid "" "Table at Offset 0x%<PRIx64>:\n" "\n" msgstr " (fin de compensación: %#<PRIx64>)" -#: src/readelf.c:5893 src/readelf.c:9395 +#: src/readelf.c:5931 src/readelf.c:9439 #, fuzzy, c-format msgid " Offset entries: %8<PRIu64>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:5909 src/readelf.c:9411 +#: src/readelf.c:5947 src/readelf.c:9455 #, c-format msgid " Unknown CU base: " msgstr "" -#: src/readelf.c:5911 src/readelf.c:9413 +#: src/readelf.c:5949 src/readelf.c:9457 #, c-format msgid " CU [%6<PRIx64>] base: " msgstr "" -#: src/readelf.c:5917 src/readelf.c:9419 +#: src/readelf.c:5955 src/readelf.c:9463 #, c-format msgid " Not associated with a CU.\n" msgstr "" -#: src/readelf.c:5928 src/readelf.c:9430 +#: src/readelf.c:5966 src/readelf.c:9474 #, c-format msgid "too many offset entries for unit length" msgstr "" -#: src/readelf.c:5932 src/readelf.c:9434 +#: src/readelf.c:5970 src/readelf.c:9478 #, fuzzy, c-format msgid " Offsets starting at 0x%<PRIx64>:\n" msgstr " Propietario Tamaño\n" -#: src/readelf.c:5984 +#: src/readelf.c:6022 #, fuzzy, c-format msgid "invalid range list data" msgstr "datos inválidos" -#: src/readelf.c:6169 src/readelf.c:9769 +#: src/readelf.c:6207 src/readelf.c:9813 #, c-format msgid "" " %zu padding bytes\n" "\n" msgstr "" -#: src/readelf.c:6186 -#, c-format -msgid "cannot get .debug_ranges content: %s" -msgstr "no se ha podido obtener contenido de .debug_ranges: %s" - -#: src/readelf.c:6222 src/readelf.c:9824 +#: src/readelf.c:6255 src/readelf.c:9862 #, c-format msgid "" "\n" " Unknown CU base: " msgstr "" -#: src/readelf.c:6224 src/readelf.c:9826 +#: src/readelf.c:6257 src/readelf.c:9864 #, c-format msgid "" "\n" " CU [%6<PRIx64>] base: " msgstr "" -#: src/readelf.c:6233 src/readelf.c:9852 src/readelf.c:9878 +#: src/readelf.c:6266 src/readelf.c:9890 src/readelf.c:9916 #, c-format msgid " [%6tx] <INVALID DATA>\n" msgstr " [%6tx] <DATOS INVÃLIDOS>\n" -#: src/readelf.c:6258 src/readelf.c:9962 +#: src/readelf.c:6291 src/readelf.c:10000 #, fuzzy msgid "base address" msgstr "Establecer dirección a %s\n" -#: src/readelf.c:6268 src/readelf.c:9972 +#: src/readelf.c:6301 src/readelf.c:10010 #, fuzzy, c-format msgid " [%6tx] empty list\n" msgstr " [%6tx] lista vacÃa\n" -#: src/readelf.c:6528 +#: src/readelf.c:6565 #, fuzzy msgid " <INVALID DATA>\n" msgstr " <DATOS INVÃLIDOS>\n" -#: src/readelf.c:6785 +#: src/readelf.c:6822 #, fuzzy, c-format msgid "cannot get ELF: %s" msgstr "no se puede leer encabezamiento ELF: %s" -#: src/readelf.c:6803 +#: src/readelf.c:6846 #, c-format msgid "" "\n" @@ -5613,7 +5622,7 @@ msgstr "" "Sección de información de marco de llamada [%2zu] '%s' en compensación " "%#<PRIx64>:\n" -#: src/readelf.c:6853 +#: src/readelf.c:6896 #, c-format msgid "" "\n" @@ -5622,65 +5631,65 @@ msgstr "" "\n" " [%6tx] Terminator cero\n" -#: src/readelf.c:6954 src/readelf.c:7108 +#: src/readelf.c:7000 src/readelf.c:7154 #, c-format msgid "invalid augmentation length" msgstr "longitud de aumento inválida" -#: src/readelf.c:6969 +#: src/readelf.c:7015 msgid "FDE address encoding: " msgstr "Codificación de dirección FDE:" -#: src/readelf.c:6975 +#: src/readelf.c:7021 msgid "LSDA pointer encoding: " msgstr "Codificación de puntero LSDA:" -#: src/readelf.c:7085 +#: src/readelf.c:7131 #, c-format msgid " (offset: %#<PRIx64>)" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:7092 +#: src/readelf.c:7138 #, c-format msgid " (end offset: %#<PRIx64>)" msgstr " (fin de compensación: %#<PRIx64>)" -#: src/readelf.c:7129 +#: src/readelf.c:7175 #, c-format msgid " %-26sLSDA pointer: %#<PRIx64>\n" msgstr "Puntero %-26sLSDA: %#<PRIx64>\n" -#: src/readelf.c:7214 +#: src/readelf.c:7260 #, fuzzy, c-format msgid "DIE [%<PRIx64>] cannot get attribute code: %s" msgstr "No se puede obtener código de atributo: %s" -#: src/readelf.c:7224 +#: src/readelf.c:7270 #, fuzzy, c-format msgid "DIE [%<PRIx64>] cannot get attribute form: %s" msgstr "No se puede obtener forma de atributo: %s" -#: src/readelf.c:7246 +#: src/readelf.c:7292 #, fuzzy, c-format msgid "DIE [%<PRIx64>] cannot get attribute '%s' (%s) value: %s" msgstr "No se puede obtener valor: %s" -#: src/readelf.c:7576 +#: src/readelf.c:7622 #, fuzzy, c-format msgid "invalid file (%<PRId64>): %s" msgstr "Archivo inválido" -#: src/readelf.c:7580 +#: src/readelf.c:7626 #, fuzzy, c-format msgid "no srcfiles for CU [%<PRIx64>]" msgstr " establecer archivo a %<PRIu64>\n" -#: src/readelf.c:7584 +#: src/readelf.c:7630 #, fuzzy, c-format msgid "couldn't get DWARF CU: %s" msgstr "no se puede leer encabezamiento ELF: %s" -#: src/readelf.c:7899 +#: src/readelf.c:7952 #, c-format msgid "" "\n" @@ -5691,12 +5700,12 @@ msgstr "" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64>:\n" " [Offset]\n" -#: src/readelf.c:7949 +#: src/readelf.c:8002 #, fuzzy, c-format msgid "cannot get next unit: %s" msgstr "No se puede obtener próximo DIE: %s" -#: src/readelf.c:7969 +#: src/readelf.c:8022 #, fuzzy, c-format msgid "" " Type unit at offset %<PRIu64>:\n" @@ -5709,7 +5718,7 @@ msgstr "" "Tamaño de dirección: %<PRIu8>, Tamaño de compensación: %<PRIu8>\n" " Tipo de firma: %#<PRIx64>, Tipo de compensación: %#<PRIx64>\n" -#: src/readelf.c:7981 +#: src/readelf.c:8034 #, c-format msgid "" " Compilation unit at offset %<PRIu64>:\n" @@ -5720,39 +5729,39 @@ msgstr "" " Versión: %<PRIu16>, Compensación de sección de abreviatura: %<PRIu64>, " "Tamaño de dirección: %<PRIu8>, Tamaño de compensación: %<PRIu8>\n" -#: src/readelf.c:7991 src/readelf.c:8152 +#: src/readelf.c:8044 src/readelf.c:8205 #, c-format msgid " Unit type: %s (%<PRIu8>)" msgstr "" -#: src/readelf.c:8018 +#: src/readelf.c:8071 #, c-format msgid "unknown version (%d) or unit type (%d)" msgstr "" -#: src/readelf.c:8047 +#: src/readelf.c:8100 #, c-format msgid "cannot get DIE offset: %s" msgstr "no se puede obtener DIE en compensación: %s" -#: src/readelf.c:8056 +#: src/readelf.c:8109 #, fuzzy, c-format msgid "cannot get tag of DIE at offset [%<PRIx64>] in section '%s': %s" msgstr "" "no se ha podido obtener etiqueta de DIE en compensación%<PRIu64> en sección " "'%s': %s" -#: src/readelf.c:8092 +#: src/readelf.c:8145 #, c-format msgid "cannot get next DIE: %s\n" msgstr "No se puede obtener próximo DIE: %s\n" -#: src/readelf.c:8100 +#: src/readelf.c:8153 #, c-format msgid "cannot get next DIE: %s" msgstr "No se puede obtener próximo DIE: %s" -#: src/readelf.c:8144 +#: src/readelf.c:8197 #, fuzzy, c-format msgid "" " Split compilation unit at offset %<PRIu64>:\n" @@ -5763,7 +5772,7 @@ msgstr "" " Versión: %<PRIu16>, Compensación de sección de abreviatura: %<PRIu64>, " "Tamaño de dirección: %<PRIu8>, Tamaño de compensación: %<PRIu8>\n" -#: src/readelf.c:8196 +#: src/readelf.c:8249 #, fuzzy, c-format msgid "" "\n" @@ -5773,18 +5782,13 @@ msgstr "" "\n" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64>:\n" -#: src/readelf.c:8528 +#: src/readelf.c:8581 #, fuzzy, c-format msgid "unknown form: %s" msgstr "Forma %<PRIx64> desconocida" -#: src/readelf.c:8576 -#, c-format -msgid "cannot get line data section data: %s" -msgstr "No se puede obtener sección de datos de lÃnea: %s" - #. Print what we got so far. -#: src/readelf.c:8680 +#: src/readelf.c:8729 #, fuzzy, c-format msgid "" "\n" @@ -5815,34 +5819,34 @@ msgstr "" "\n" "Códigos operativos:\n" -#: src/readelf.c:8702 +#: src/readelf.c:8751 #, fuzzy, c-format msgid "cannot handle .debug_line version: %u\n" msgstr "no se puede obtener versión de sÃmbolo: %s" -#: src/readelf.c:8710 +#: src/readelf.c:8759 #, fuzzy, c-format msgid "cannot handle address size: %u\n" msgstr "no hay valor de dirección" -#: src/readelf.c:8718 +#: src/readelf.c:8767 #, fuzzy, c-format msgid "cannot handle segment selector size: %u\n" msgstr "No se puede encontrar la sección: %s" -#: src/readelf.c:8728 +#: src/readelf.c:8777 #, c-format msgid "invalid data at offset %tu in section [%zu] '%s'" msgstr "datos inválidos en compensación %tu en sección [%zu] '%s'" -#: src/readelf.c:8743 +#: src/readelf.c:8792 #, c-format msgid " [%*<PRIuFAST8>] %hhu argument\n" msgid_plural " [%*<PRIuFAST8>] %hhu arguments\n" msgstr[0] " [%*<PRIuFAST8>] argumento %hhu \n" msgstr[1] " [%*<PRIuFAST8>] argumento %hhu\n" -#: src/readelf.c:8754 +#: src/readelf.c:8803 msgid "" "\n" "Directory table:" @@ -5850,12 +5854,12 @@ msgstr "" "\n" "Tabla de Directorio:" -#: src/readelf.c:8760 src/readelf.c:8837 +#: src/readelf.c:8809 src/readelf.c:8886 #, fuzzy, c-format msgid " [" msgstr " %s: %s\n" -#: src/readelf.c:8831 +#: src/readelf.c:8880 #, fuzzy msgid "" "\n" @@ -5864,7 +5868,7 @@ msgstr "" "\n" " Tabla de sitio de llamada:" -#: src/readelf.c:8892 +#: src/readelf.c:8941 #, fuzzy msgid " Entry Dir Time Size Name" msgstr "" @@ -5872,7 +5876,7 @@ msgstr "" "Tabla de nombre de archivo:\n" " Directorio de entrada Tiempo Tamaño Nombre" -#: src/readelf.c:8938 +#: src/readelf.c:8987 #, fuzzy msgid "" "\n" @@ -5881,7 +5885,7 @@ msgstr "" "\n" " Declaraciones de número de LÃnea:" -#: src/readelf.c:8942 +#: src/readelf.c:8991 msgid "" "\n" "Line number statements:" @@ -5889,132 +5893,132 @@ msgstr "" "\n" " Declaraciones de número de LÃnea:" -#: src/readelf.c:8957 +#: src/readelf.c:9006 #, fuzzy, c-format msgid "invalid maximum operations per instruction is zero" msgstr "longitud mÃnima inválida de tamaño de cadena coincidente" -#: src/readelf.c:8991 +#: src/readelf.c:9040 #, fuzzy, c-format msgid " special opcode %u: address+%u = " msgstr " opcode especial %u: dirección+%u = %s, lÃnea%+d = %zu\n" -#: src/readelf.c:8995 +#: src/readelf.c:9044 #, fuzzy, c-format msgid ", op_index = %u, line%+d = %zu\n" msgstr "" " opcode especial %u: dirección+%u = %s, op_index = %u, lÃnea%+d = %zu\n" -#: src/readelf.c:8998 +#: src/readelf.c:9047 #, c-format msgid ", line%+d = %zu\n" msgstr "" -#: src/readelf.c:9016 +#: src/readelf.c:9065 #, c-format msgid " extended opcode %u: " msgstr " Código operativo extendido %u: " -#: src/readelf.c:9021 +#: src/readelf.c:9070 #, fuzzy msgid " end of sequence" msgstr "Fin de secuencia" -#: src/readelf.c:9039 +#: src/readelf.c:9088 #, fuzzy, c-format msgid " set address to " msgstr "Establecer dirección a %s\n" -#: src/readelf.c:9067 +#: src/readelf.c:9116 #, fuzzy, c-format msgid " define new file: dir=%u, mtime=%<PRIu64>, length=%<PRIu64>, name=%s\n" msgstr "" "definir nuevo archivo: dir=%u, mtime=%<PRIu64>, longitud=%<PRIu64>, " "nombre=%s\n" -#: src/readelf.c:9081 +#: src/readelf.c:9130 #, c-format msgid " set discriminator to %u\n" msgstr " establecer discriminador a %u\n" -#: src/readelf.c:9108 +#: src/readelf.c:9157 #, c-format msgid " set inlined context %u, function name %s (0x%x)\n" msgstr "" -#: src/readelf.c:9132 +#: src/readelf.c:9181 #, fuzzy, c-format #| msgid "Also show function names" msgid " set function name %s (0x%x)\n" msgstr "También mostrar nombres de función" #. Unknown, ignore it. -#: src/readelf.c:9139 +#: src/readelf.c:9188 #, fuzzy msgid " unknown opcode" msgstr "código operativo desconocido " #. Takes no argument. -#: src/readelf.c:9151 +#: src/readelf.c:9200 msgid " copy" msgstr "Copiar" -#: src/readelf.c:9162 +#: src/readelf.c:9211 #, fuzzy, c-format msgid " advance address by %u to " msgstr "Dirección de avance por %u a %s\n" -#: src/readelf.c:9166 src/readelf.c:9227 +#: src/readelf.c:9215 src/readelf.c:9276 #, c-format msgid ", op_index to %u" msgstr "" -#: src/readelf.c:9178 +#: src/readelf.c:9227 #, c-format msgid " advance line by constant %d to %<PRId64>\n" msgstr " lÃnea de avance por la constante %d a %<PRId64>\n" -#: src/readelf.c:9188 +#: src/readelf.c:9237 #, c-format msgid " set file to %<PRIu64>\n" msgstr " establecer archivo a %<PRIu64>\n" -#: src/readelf.c:9199 +#: src/readelf.c:9248 #, c-format msgid " set column to %<PRIu64>\n" msgstr " Establecer columna a %<PRIu64>\n" -#: src/readelf.c:9206 +#: src/readelf.c:9255 #, c-format msgid " set '%s' to %<PRIuFAST8>\n" msgstr "Establecer '%s' a %<PRIuFAST8>\n" #. Takes no argument. -#: src/readelf.c:9212 +#: src/readelf.c:9261 msgid " set basic block flag" msgstr "Establecer bandera de bloque básico" -#: src/readelf.c:9223 +#: src/readelf.c:9272 #, fuzzy, c-format msgid " advance address by constant %u to " msgstr "Dirección de avance por constante %u a %s\n" -#: src/readelf.c:9243 +#: src/readelf.c:9292 #, fuzzy, c-format msgid " advance address by fixed value %u to \n" msgstr "dirección de avance por valor corregido %u a %s\n" #. Takes no argument. -#: src/readelf.c:9253 +#: src/readelf.c:9302 msgid " set prologue end flag" msgstr " Establecer bandera prologue_end" #. Takes no argument. -#: src/readelf.c:9258 +#: src/readelf.c:9307 msgid " set epilogue begin flag" msgstr " Establecer bandera epilogue_begin" -#: src/readelf.c:9268 +#: src/readelf.c:9317 #, c-format msgid " set isa to %u\n" msgstr " establecer isa para %u\n" @@ -6022,110 +6026,95 @@ msgstr " establecer isa para %u\n" #. This is a new opcode the generator but not we know about. #. Read the parameters associated with it but then discard #. everything. Read all the parameters for this opcode. -#: src/readelf.c:9277 +#: src/readelf.c:9326 #, c-format msgid " unknown opcode with %<PRIu8> parameter:" msgid_plural " unknown opcode with %<PRIu8> parameters:" msgstr[0] " opcódigo con parámetro %<PRIu8> desconocido:" msgstr[1] " opcódigo con parámetros %<PRIu8> desconocido:" -#: src/readelf.c:9317 -#, fuzzy, c-format -msgid "cannot get .debug_loclists content: %s" -msgstr "no es posible obtener contenido de .debug_loc: %s" - -#: src/readelf.c:9483 +#: src/readelf.c:9527 #, fuzzy, c-format msgid " <INVALID DATA>\n" msgstr " <DATOS INVÃLIDOS>\n" -#: src/readelf.c:9523 +#: src/readelf.c:9567 #, fuzzy, c-format msgid "invalid loclists data" msgstr "datos inválidos" -#: src/readelf.c:9786 -#, c-format -msgid "cannot get .debug_loc content: %s" -msgstr "no es posible obtener contenido de .debug_loc: %s" - -#: src/readelf.c:9999 src/readelf.c:11043 +#: src/readelf.c:10037 src/readelf.c:11082 msgid " <INVALID DATA>\n" msgstr " <DATOS INVÃLIDOS>\n" -#: src/readelf.c:10054 src/readelf.c:10217 -#, c-format -msgid "cannot get macro information section data: %s" -msgstr "no es posible obtener datos de la sección de macro información: %s" - -#: src/readelf.c:10134 +#: src/readelf.c:10168 #, c-format msgid "%*s*** non-terminated string at end of section" msgstr "%*s*** cadena no finalizada al final de la sección" -#: src/readelf.c:10157 +#: src/readelf.c:10191 #, fuzzy, c-format msgid "%*s*** missing DW_MACINFO_start_file argument at end of section" msgstr "%*s*** cadena no finalizada al final de la sección" -#: src/readelf.c:10258 +#: src/readelf.c:10286 #, fuzzy, c-format msgid " Offset: 0x%<PRIx64>\n" msgstr " Propietario Tamaño\n" -#: src/readelf.c:10270 +#: src/readelf.c:10298 #, fuzzy, c-format msgid " Version: %<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10276 src/readelf.c:11163 +#: src/readelf.c:10304 src/readelf.c:11202 #, c-format msgid " unknown version, cannot parse section\n" msgstr "" -#: src/readelf.c:10283 +#: src/readelf.c:10311 #, fuzzy, c-format msgid " Flag: 0x%<PRIx8>" msgstr " Dirección de punto de entrada: %#<PRIx64>\n" -#: src/readelf.c:10312 +#: src/readelf.c:10340 #, fuzzy, c-format msgid " Offset length: %<PRIu8>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:10320 +#: src/readelf.c:10348 #, fuzzy, c-format msgid " .debug_line offset: 0x%<PRIx64>\n" msgstr " (fin de compensación: %#<PRIx64>)" -#: src/readelf.c:10345 +#: src/readelf.c:10373 #, fuzzy, c-format msgid " extension opcode table, %<PRIu8> items:\n" msgstr " opcódigo con parámetro %<PRIu8> desconocido:" -#: src/readelf.c:10352 +#: src/readelf.c:10380 #, c-format msgid " [%<PRIx8>]" msgstr "" -#: src/readelf.c:10364 +#: src/readelf.c:10392 #, fuzzy, c-format msgid " %<PRIu8> arguments:" msgstr " [%*<PRIuFAST8>] argumento %hhu \n" -#: src/readelf.c:10379 +#: src/readelf.c:10407 #, c-format msgid " no arguments." msgstr "" -#: src/readelf.c:10580 +#: src/readelf.c:10608 #, c-format msgid " [%5d] DIE offset: %6<PRId64>, CU DIE offset: %6<PRId64>, name: %s\n" msgstr "" " Compensación [%5d] DIE: %6<PRId64>, Compensación CU DIE: %6<PRId64>, " "nombre: %s\n" -#: src/readelf.c:10624 +#: src/readelf.c:10663 #, c-format msgid "" "\n" @@ -6137,42 +6126,37 @@ msgstr "" " %*s String\n" #. TRANS: the debugstr| prefix makes the string unique. -#: src/readelf.c:10629 +#: src/readelf.c:10668 msgctxt "debugstr" msgid "Offset" msgstr "" -#: src/readelf.c:10639 +#: src/readelf.c:10678 #, fuzzy, c-format msgid " *** error, missing string terminator\n" msgstr " *** error en lectura de cadenas: %s\n" -#: src/readelf.c:10668 -#, fuzzy, c-format -msgid "cannot get .debug_str_offsets section data: %s" -msgstr "no se pueden obtener datos de sección: %s" - -#: src/readelf.c:10767 +#: src/readelf.c:10800 #, fuzzy, c-format msgid " Length: %8<PRIu64>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:10769 +#: src/readelf.c:10802 #, fuzzy, c-format msgid " Offset size: %8<PRIu8>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:10783 +#: src/readelf.c:10816 #, fuzzy, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10792 +#: src/readelf.c:10825 #, fuzzy, c-format msgid " Padding: %8<PRIx16>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:10846 +#: src/readelf.c:10879 #, c-format msgid "" "\n" @@ -6181,7 +6165,7 @@ msgstr "" "\n" "Sección de tabla de búsqueda de marco de llamada [%2zu] '.eh_frame_hdr':\n" -#: src/readelf.c:10948 +#: src/readelf.c:10981 #, c-format msgid "" "\n" @@ -6190,22 +6174,22 @@ msgstr "" "\n" "Excepción en el manejo de la sección de tabla [%2zu] '.gcc_except_table':\n" -#: src/readelf.c:10971 +#: src/readelf.c:11004 #, c-format msgid " LPStart encoding: %#x " msgstr "Codificación LPStart: %#x " -#: src/readelf.c:10983 +#: src/readelf.c:11016 #, c-format msgid " TType encoding: %#x " msgstr "Codificación TType: %#x " -#: src/readelf.c:10998 +#: src/readelf.c:11033 #, c-format msgid " Call site encoding: %#x " msgstr "Codificación de sitio de llamada: %#x " -#: src/readelf.c:11011 +#: src/readelf.c:11048 msgid "" "\n" " Call site table:" @@ -6213,7 +6197,7 @@ msgstr "" "\n" " Tabla de sitio de llamada:" -#: src/readelf.c:11025 +#: src/readelf.c:11064 #, c-format msgid "" " [%4u] Call site start: %#<PRIx64>\n" @@ -6226,12 +6210,12 @@ msgstr "" " Landing pad: %#<PRIx64>\n" " Action: %u\n" -#: src/readelf.c:11098 +#: src/readelf.c:11137 #, c-format msgid "invalid TType encoding" msgstr "Codificación TType inválida" -#: src/readelf.c:11125 +#: src/readelf.c:11164 #, fuzzy, c-format msgid "" "\n" @@ -6240,37 +6224,37 @@ msgstr "" "\n" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64> contiene entrada %zu:\n" -#: src/readelf.c:11154 +#: src/readelf.c:11193 #, fuzzy, c-format msgid " Version: %<PRId32>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:11172 +#: src/readelf.c:11211 #, fuzzy, c-format msgid " CU offset: %#<PRIx32>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:11179 +#: src/readelf.c:11218 #, fuzzy, c-format msgid " TU offset: %#<PRIx32>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:11186 +#: src/readelf.c:11225 #, fuzzy, c-format msgid " address offset: %#<PRIx32>\n" msgstr " (fin de compensación: %#<PRIx64>)" -#: src/readelf.c:11193 +#: src/readelf.c:11232 #, fuzzy, c-format msgid " symbol offset: %#<PRIx32>\n" msgstr " (compensación: %#<PRIx64>)" -#: src/readelf.c:11200 +#: src/readelf.c:11239 #, fuzzy, c-format msgid " constant offset: %#<PRIx32>\n" msgstr " (fin de compensación: %#<PRIx64>)" -#: src/readelf.c:11214 +#: src/readelf.c:11253 #, fuzzy, c-format msgid "" "\n" @@ -6279,7 +6263,7 @@ msgstr "" "\n" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64> contiene entrada %zu:\n" -#: src/readelf.c:11239 +#: src/readelf.c:11278 #, fuzzy, c-format msgid "" "\n" @@ -6288,7 +6272,7 @@ msgstr "" "\n" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64> contiene entrada %zu:\n" -#: src/readelf.c:11268 +#: src/readelf.c:11307 #, fuzzy, c-format msgid "" "\n" @@ -6297,7 +6281,7 @@ msgstr "" "\n" "Sección DWARF [%2zu] '%s' en compensación %#<PRIx64> contiene entrada %zu:\n" -#: src/readelf.c:11300 +#: src/readelf.c:11339 #, fuzzy, c-format msgid "" "\n" @@ -6306,18 +6290,18 @@ msgstr "" "\n" "Tabla de sÃmbolos inválida en compensación %#0<PRIx64>\n" -#: src/readelf.c:11438 +#: src/readelf.c:11477 #, c-format msgid "cannot get debug context descriptor: %s" msgstr "no se puede depurar descriptor de contexto: %s" -#: src/readelf.c:11804 src/readelf.c:12431 src/readelf.c:12541 -#: src/readelf.c:12598 +#: src/readelf.c:11843 src/readelf.c:12463 src/readelf.c:12573 +#: src/readelf.c:12630 #, c-format msgid "cannot convert core note data: %s" msgstr "no es posible convertir datos de la nota principal: %s" -#: src/readelf.c:12168 +#: src/readelf.c:12207 #, c-format msgid "" "\n" @@ -6326,21 +6310,21 @@ msgstr "" "\n" "%*s... <repeats %u more times> ..." -#: src/readelf.c:12677 +#: src/readelf.c:12709 msgid " Owner Data size Type\n" msgstr " Owner Data size Type\n" -#: src/readelf.c:12705 +#: src/readelf.c:12737 #, c-format msgid " %-13.*s %9<PRId32> %s\n" msgstr " %-13.*s %9<PRId32> %s\n" -#: src/readelf.c:12757 +#: src/readelf.c:12789 #, fuzzy, c-format msgid "cannot get content of note: %s" msgstr "no se puede obtener el contenido de sección de nota: %s" -#: src/readelf.c:12790 +#: src/readelf.c:12822 #, c-format msgid "" "\n" @@ -6349,7 +6333,7 @@ msgstr "" "\n" "Sección de nota [%2zu] '%s' de %<PRIu64> bytes en compensación %#0<PRIx64>:\n" -#: src/readelf.c:12813 +#: src/readelf.c:12845 #, c-format msgid "" "\n" @@ -6358,7 +6342,7 @@ msgstr "" "\n" "Segmento de nota de %<PRIu64> bytes en compensación %#0<PRIx64>:\n" -#: src/readelf.c:12860 +#: src/readelf.c:12892 #, fuzzy, c-format msgid "" "\n" @@ -6367,12 +6351,12 @@ msgstr "" "\n" "Sección [%Zu] '%s' no tiene datos para volcar.\n" -#: src/readelf.c:12887 src/readelf.c:12938 +#: src/readelf.c:12919 src/readelf.c:12970 #, fuzzy, c-format msgid "cannot get data for section [%zu] '%s': %s" msgstr "no se pueden obtener datos para sección [%Zu] '%s': %s" -#: src/readelf.c:12892 +#: src/readelf.c:12924 #, fuzzy, c-format msgid "" "\n" @@ -6382,7 +6366,7 @@ msgstr "" "Volcado Hex de sección [%Zu] '%s', %<PRIu64> bytes en compensación " "%#0<PRIx64>:\n" -#: src/readelf.c:12897 +#: src/readelf.c:12929 #, fuzzy, c-format msgid "" "\n" @@ -6393,7 +6377,7 @@ msgstr "" "Volcado Hex de sección [%Zu] '%s', %<PRIu64> bytes en compensación " "%#0<PRIx64>:\n" -#: src/readelf.c:12911 +#: src/readelf.c:12943 #, fuzzy, c-format msgid "" "\n" @@ -6402,7 +6386,7 @@ msgstr "" "\n" "Sección [%Zu] '%s' no tiene datos para volcar.\n" -#: src/readelf.c:12943 +#: src/readelf.c:12975 #, fuzzy, c-format msgid "" "\n" @@ -6412,7 +6396,7 @@ msgstr "" "Sección de cadena [%Zu] '%s' contiene %<PRIu64> bytes en compensación " "%#0<PRIx64>:\n" -#: src/readelf.c:12948 +#: src/readelf.c:12980 #, fuzzy, c-format msgid "" "\n" @@ -6423,7 +6407,7 @@ msgstr "" "Sección de cadena [%Zu] '%s' contiene %<PRIu64> bytes en compensación " "%#0<PRIx64>:\n" -#: src/readelf.c:12996 +#: src/readelf.c:13028 #, c-format msgid "" "\n" @@ -6432,7 +6416,7 @@ msgstr "" "\n" "sección [%lu] no existe" -#: src/readelf.c:13026 +#: src/readelf.c:13058 #, c-format msgid "" "\n" @@ -6441,12 +6425,12 @@ msgstr "" "\n" "sección '%s' no existe" -#: src/readelf.c:13081 +#: src/readelf.c:13113 #, c-format msgid "cannot get symbol index of archive '%s': %s" msgstr "no se puede obtener el Ãndice de sÃmbolo de archivo '%s': %s" -#: src/readelf.c:13084 +#: src/readelf.c:13116 #, c-format msgid "" "\n" @@ -6455,7 +6439,7 @@ msgstr "" "\n" "Archivo '%s' no tiene Ãndice de sÃmbolo\n" -#: src/readelf.c:13088 +#: src/readelf.c:13120 #, fuzzy, c-format msgid "" "\n" @@ -6464,12 +6448,12 @@ msgstr "" "\n" "Ãndice de archivo '%s' tiene %Zu entradas:\n" -#: src/readelf.c:13106 +#: src/readelf.c:13138 #, fuzzy, c-format msgid "cannot extract member at offset %zu in '%s': %s" msgstr "no es posible extraer miembro en compensación %Zu en '%s': %s" -#: src/readelf.c:13111 +#: src/readelf.c:13143 #, c-format msgid "Archive member '%s' contains:\n" msgstr "Miembro de archivo contiene '%s':\n" @@ -7524,6 +7508,38 @@ msgid "Show instances of inlined functions" msgstr "" #, fuzzy, c-format +#~ msgid "cannot get .debug_addr section data: %s" +#~ msgstr "no se pueden obtener datos de sección: %s" + +#, fuzzy, c-format +#~ msgid "cannot get .debug_rnglists content: %s" +#~ msgstr "no se ha podido obtener contenido de .debug_ranges: %s" + +#, c-format +#~ msgid "cannot get .debug_ranges content: %s" +#~ msgstr "no se ha podido obtener contenido de .debug_ranges: %s" + +#, c-format +#~ msgid "cannot get line data section data: %s" +#~ msgstr "No se puede obtener sección de datos de lÃnea: %s" + +#, fuzzy, c-format +#~ msgid "cannot get .debug_loclists content: %s" +#~ msgstr "no es posible obtener contenido de .debug_loc: %s" + +#, c-format +#~ msgid "cannot get .debug_loc content: %s" +#~ msgstr "no es posible obtener contenido de .debug_loc: %s" + +#, c-format +#~ msgid "cannot get macro information section data: %s" +#~ msgstr "no es posible obtener datos de la sección de macro información: %s" + +#, fuzzy, c-format +#~ msgid "cannot get .debug_str_offsets section data: %s" +#~ msgstr "no se pueden obtener datos de sección: %s" + +#, fuzzy, c-format #~ msgid "cannot allocate memory" #~ msgstr "No se puede asignar sección PLT: %s" @@ -7731,9 +7747,6 @@ msgstr "" #~ msgid "Strip all symbols." #~ msgstr "Descartar todos los sÃmbolos." -#~ msgid "Strip debugging symbols." -#~ msgstr "Descartar los sÃmbolos de depuración." - #~ msgid "Assume pagesize for the target system to be SIZE." #~ msgstr "Asumir que pagesize para el sistema de destino sea SIZE." @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: elfutils\n" "Report-Msgid-Bugs-To: https://sourceware.org/bugzilla/\n" -"POT-Creation-Date: 2022-11-02 13:30+0100\n" +"POT-Creation-Date: 2023-03-03 16:09+0100\n" "PO-Revision-Date: 2009-09-20 15:32+0900\n" "Last-Translator: Hyu_gabaru Ryu_ichi <hyu_gabaru@yahoo.co.jp>\n" "Language-Team: Japanese <jp@li.org>\n" @@ -42,18 +42,18 @@ msgid "" "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" msgstr "" -#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11754 +#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11793 #: src/unstrip.c:311 #, c-format msgid "memory exhausted" msgstr "メモリー枯渇" -#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:51 +#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:47 #: libelf/elf_error.c:59 msgid "no error" msgstr "エラー無ã—" -#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:53 +#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:49 #: libelf/elf_error.c:90 msgid "out of memory" msgstr "メモリーä¸è¶³ã§ã™" @@ -90,7 +90,7 @@ msgstr "データ出力ä¸ã®ã‚¨ãƒ©ãƒ¼ã§ã™" msgid "no backend support available" msgstr "ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ã‚µãƒãƒ¼ãƒˆã‚’利用ã§ãã¾ã›ã‚“" -#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:52 +#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:48 #: libelf/elf_error.c:62 msgid "unknown error" msgstr "ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ã§ã™" @@ -105,7 +105,7 @@ msgstr "ä¸å½“ãªæ–‡å— '%c' ㌠%d 行目ã«ã‚ã‚Šã¾ã™; 無視ã—ã¾ã—ãŸ" msgid "invalid character '\\%o' at line %d; ignored" msgstr "ä¸å½“ãªæ–‡å— '\\%o' ㌠%d 行目ã«ã‚ã‚Šã¾ã™; 無視ã—ã¾ã—ãŸ" -#: libcpu/i386_parse.y:553 +#: libcpu/i386_parse.y:555 #, c-format msgid "while reading i386 CPU description: %s at line %d" msgstr "i386 CPU description ã®èªã¿è¾¼ã¿ä¸: %2$d 行目㮠%1$s" @@ -218,7 +218,7 @@ msgstr "ä¸å½“㪠DWARF ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã™" msgid "invalid directory index" msgstr "ä¸å½“ãªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ç´¢å¼•ã§ã™" -#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:73 +#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:69 msgid "address out of range" msgstr "アドレスãŒç¯„囲外ã§ã™" @@ -246,7 +246,7 @@ msgstr "ä¸å½“ãªè¡Œç´¢å¼•ã§ã™" msgid "invalid address range index" msgstr "ä¸å½“ãªã‚¢ãƒ‰ãƒ¬ã‚¹ç¯„囲索引ã§ã™" -#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:74 +#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:70 msgid "no matching address range" msgstr "一致ã™ã‚‹ã‚¢ãƒ‰ãƒ¬ã‚¹ç¯„囲ãŒã‚ã‚Šã¾ã›ã‚“" @@ -356,165 +356,165 @@ msgstr "メモリーãŒå分ã§ã¯ã‚ã‚Šã¾ã›ã‚“" msgid "No modules recognized in core file" msgstr "コアファイルã®ä¸ã«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚’èªè˜ã§ãã¾ã›ã‚“" -#: libdwfl/libdwflP.h:54 +#: libdwfl/libdwflP.h:50 msgid "See errno" msgstr "errno ã‚’å‚ç…§ã—ã¦ãã ã•ã„" -#: libdwfl/libdwflP.h:55 +#: libdwfl/libdwflP.h:51 msgid "See elf_errno" msgstr "elf_errno ã‚’å‚ç…§ã—ã¦ãã ã•ã„" -#: libdwfl/libdwflP.h:56 +#: libdwfl/libdwflP.h:52 msgid "See dwarf_errno" msgstr "dwarf_errno ã‚’å‚ç…§ã—ã¦ãã ã•ã„" -#: libdwfl/libdwflP.h:57 +#: libdwfl/libdwflP.h:53 msgid "See ebl_errno (XXX missing)" msgstr "ebl_errno ã‚’å‚ç…§ã—ã¦ãã ã•ã„(XXX ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“)" -#: libdwfl/libdwflP.h:58 +#: libdwfl/libdwflP.h:54 msgid "gzip decompression failed" msgstr "gzip ã®å±•é–‹ã«å¤±æ•—ã—ã¾ã—ãŸ" -#: libdwfl/libdwflP.h:59 +#: libdwfl/libdwflP.h:55 msgid "bzip2 decompression failed" msgstr "bzip2 ã®å±•é–‹ã«å¤±æ•—ã—ã¾ã—ãŸ" -#: libdwfl/libdwflP.h:60 +#: libdwfl/libdwflP.h:56 msgid "LZMA decompression failed" msgstr "LZMA ã®å±•é–‹ã«å¤±æ•—ã—ã¾ã—ãŸ" -#: libdwfl/libdwflP.h:61 +#: libdwfl/libdwflP.h:57 msgid "zstd decompression failed" msgstr "zstd ã®å±•é–‹ã«å¤±æ•—ã—ã¾ã—ãŸ" -#: libdwfl/libdwflP.h:62 +#: libdwfl/libdwflP.h:58 msgid "no support library found for machine" msgstr "マシン用ã®ã‚µãƒãƒ¼ãƒˆãƒ©ã‚¤ãƒ–ラリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:63 +#: libdwfl/libdwflP.h:59 msgid "Callbacks missing for ET_REL file" msgstr "ET_REL ファイル用ã®ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:64 +#: libdwfl/libdwflP.h:60 msgid "Unsupported relocation type" msgstr "未対応ã®ãƒªãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚¿ã‚¤ãƒ—ã§ã™" -#: libdwfl/libdwflP.h:65 +#: libdwfl/libdwflP.h:61 msgid "r_offset is bogus" msgstr "r_offset ãŒå½ç‰©ã§ã™" -#: libdwfl/libdwflP.h:66 libelf/elf_error.c:114 libelf/elf_error.c:174 +#: libdwfl/libdwflP.h:62 libelf/elf_error.c:114 libelf/elf_error.c:174 msgid "offset out of range" msgstr "オフセットãŒç¯„囲外ã§ã™" -#: libdwfl/libdwflP.h:67 +#: libdwfl/libdwflP.h:63 msgid "relocation refers to undefined symbol" msgstr "リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ãŒæœªå®šç¾©ã‚·ãƒ³ãƒœãƒ«ã‚’å‚ç…§ã—ã¦ã„ã¾ã™" -#: libdwfl/libdwflP.h:68 +#: libdwfl/libdwflP.h:64 msgid "Callback returned failure" msgstr "コールãƒãƒƒã‚¯ãŒå¤±æ•—ã‚’è¿”ã—ã¾ã—ãŸ" -#: libdwfl/libdwflP.h:69 +#: libdwfl/libdwflP.h:65 msgid "No DWARF information found" msgstr "DWARF æƒ…å ±ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:70 +#: libdwfl/libdwflP.h:66 msgid "No symbol table found" msgstr "シンボルテーブルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:71 +#: libdwfl/libdwflP.h:67 msgid "No ELF program headers" msgstr "ELF プãƒã‚°ãƒ©ãƒ ヘッダーã§ã¯ã‚ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:72 +#: libdwfl/libdwflP.h:68 msgid "address range overlaps an existing module" msgstr "アドレス範囲ãŒæ—¢å˜ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã¨é‡ãªã‚Šã¾ã™" -#: libdwfl/libdwflP.h:75 +#: libdwfl/libdwflP.h:71 msgid "image truncated" msgstr "イメージãŒåˆ‡ã‚Šè©°ã‚られã¦ã„ã¾ã™" -#: libdwfl/libdwflP.h:76 +#: libdwfl/libdwflP.h:72 msgid "ELF file opened" msgstr "既㫠ELF ファイルを開ã„ã¦ã„ã¾ã™" -#: libdwfl/libdwflP.h:77 +#: libdwfl/libdwflP.h:73 msgid "not a valid ELF file" msgstr "ä¸å½“㪠ELF ファイルã§ã™" -#: libdwfl/libdwflP.h:78 +#: libdwfl/libdwflP.h:74 msgid "cannot handle DWARF type description" msgstr "DWARF type description ã‚’æ“作ã§ãã¾ã›ã‚“" -#: libdwfl/libdwflP.h:79 +#: libdwfl/libdwflP.h:75 msgid "ELF file does not match build ID" msgstr "ELF ファイルãŒãƒ“ルド ID ã¨ä¸€è‡´ã—ã¾ã›ã‚“" -#: libdwfl/libdwflP.h:80 +#: libdwfl/libdwflP.h:76 msgid "corrupt .gnu.prelink_undo section data" msgstr ".gnu.prelink_undo セクションデータãŒå£Šã‚Œã¦ã„ã¾ã™" -#: libdwfl/libdwflP.h:81 +#: libdwfl/libdwflP.h:77 msgid "Internal error due to ebl" msgstr "ebl ã«èµ·å› ã™ã‚‹å†…部エラー" -#: libdwfl/libdwflP.h:82 +#: libdwfl/libdwflP.h:78 msgid "Missing data in core file" msgstr "コアファイルã®ä¸ã«ãƒ‡ãƒ¼ã‚¿ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:83 +#: libdwfl/libdwflP.h:79 msgid "Invalid register" msgstr "ä¸å½“ãªãƒ¬ã‚¸ã‚¹ã‚¿ãƒ¼ã§ã™" -#: libdwfl/libdwflP.h:84 +#: libdwfl/libdwflP.h:80 #, fuzzy #| msgid "no reference value" msgid "Unknown register value" msgstr "å‚照値ã§ã¯ã‚ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:85 +#: libdwfl/libdwflP.h:81 msgid "Error reading process memory" msgstr "プãƒã‚»ã‚¹ãƒ¡ãƒ¢ãƒªãƒ¼ã®èªã¿è¾¼ã¿ã‚¨ãƒ©ãƒ¼ã§ã™" -#: libdwfl/libdwflP.h:86 +#: libdwfl/libdwflP.h:82 msgid "Couldn't find architecture of any ELF" msgstr "ELF ã®ã‚¢ãƒ¼ã‚テクãƒãƒ£ãŒï¼‘ã¤ã‚‚見ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ" -#: libdwfl/libdwflP.h:87 +#: libdwfl/libdwflP.h:83 msgid "Error parsing /proc filesystem" msgstr "/proc ファイルシステムã®ãƒ‘ースエラーã§ã™" -#: libdwfl/libdwflP.h:88 +#: libdwfl/libdwflP.h:84 msgid "Invalid DWARF" msgstr "ä¸å½“㪠DWARF ã§ã™" -#: libdwfl/libdwflP.h:89 +#: libdwfl/libdwflP.h:85 msgid "Unsupported DWARF" msgstr "未対応㮠DWARF ã§ã™" -#: libdwfl/libdwflP.h:90 +#: libdwfl/libdwflP.h:86 msgid "Unable to find more threads" msgstr "ã“れ以上スレッドãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:91 +#: libdwfl/libdwflP.h:87 msgid "Dwfl already has attached state" msgstr "Dwfl ã¯æ—¢ã«ã‚¢ã‚¿ãƒƒãƒçŠ¶æ…‹ã§ã™" -#: libdwfl/libdwflP.h:92 +#: libdwfl/libdwflP.h:88 msgid "Dwfl has no attached state" msgstr "Dwfl ã¯ã‚¢ã‚¿ãƒƒãƒçŠ¶æ…‹ã§ã¯ã‚ã‚Šã¾ã›ã‚“" -#: libdwfl/libdwflP.h:93 +#: libdwfl/libdwflP.h:89 msgid "Unwinding not supported for this architecture" msgstr "ã“ã®ã‚¢ãƒ¼ã‚テクãƒãƒ£ã«å¯¾å¿œã—ã¦ã„ãªã„å·»ã戻ã—ã§ã™" -#: libdwfl/libdwflP.h:94 +#: libdwfl/libdwflP.h:90 msgid "Invalid argument" msgstr "ä¸å½“ãªå¼•æ•°ã§ã™" -#: libdwfl/libdwflP.h:95 +#: libdwfl/libdwflP.h:91 msgid "Not an ET_CORE ELF file" msgstr "ET_CORE ELF ファイルã§ã¯ã‚ã‚Šã¾ã›ã‚“" @@ -619,7 +619,7 @@ msgstr "ソース演算åã®å¤§ãã•ãŒç„¡åŠ¹ã§ã™" msgid "invalid size of destination operand" msgstr "宛先演算åã®å¤§ãã•ãŒç„¡åŠ¹ã§ã™" -#: libelf/elf_error.c:86 src/readelf.c:6378 +#: libelf/elf_error.c:86 src/readelf.c:6415 #, c-format msgid "invalid encoding" msgstr "無効ãªã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã§ã™" @@ -704,8 +704,8 @@ msgstr "データ/scnã®ä¸æ•´åˆã§ã™" msgid "invalid section header" msgstr "ä¸å½“ãªã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼ã§ã™" -#: libelf/elf_error.c:190 src/readelf.c:10266 src/readelf.c:10866 -#: src/readelf.c:10967 src/readelf.c:11149 +#: libelf/elf_error.c:190 src/readelf.c:10294 src/readelf.c:10899 +#: src/readelf.c:11000 src/readelf.c:11188 #, c-format msgid "invalid data" msgstr "ä¸å½“ãªãƒ‡ãƒ¼ã‚¿ã§ã™" @@ -831,48 +831,54 @@ msgstr "" msgid "Show demangled symbols (ARG is always ignored)" msgstr "デマングルã•ã‚ŒãŸ シンボルを 表示 (ARGã¯å¸¸ã«ç„¡è¦–ã•ã‚Œã‚‹ï¼‰" -#: src/addr2line.c:77 +#: src/addr2line.c:76 +#, fuzzy +#| msgid "Show demangled symbols (ARG is always ignored)" +msgid "Show demangled symbols" +msgstr "デマングルã•ã‚ŒãŸ シンボルを 表示 (ARGã¯å¸¸ã«ç„¡è¦–ã•ã‚Œã‚‹ï¼‰" + +#: src/addr2line.c:78 msgid "Print all information on one line, and indent inlines" msgstr "å…¨ã¦ã® æƒ…å ±ã‚’ 一行㧠表示ã—〠å—下ã’ã™ã‚‹" -#: src/addr2line.c:79 +#: src/addr2line.c:80 #, fuzzy #| msgid "Show absolute file names using compilation directory" msgid "Show relative file names without compilation directory" msgstr "コンパイルディレクトリを 使用ã—㦠絶対ファイルåã‚’ 表示" -#: src/addr2line.c:81 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 +#: src/addr2line.c:82 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 #: src/strings.c:77 msgid "Miscellaneous:" msgstr "Misc:" #. Short description of program. -#: src/addr2line.c:89 +#: src/addr2line.c:90 msgid "" "Locate source files and line information for ADDRs (in a.out by default)." msgstr "" "ADDR ã®ã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã¨è¡Œã®æƒ…å ±ã‚’ 検索ã™ã‚‹ (デフォルトã§ã¯ a.out ã‹ã‚‰ï¼‰" #. Strings for arguments in help texts. -#: src/addr2line.c:93 +#: src/addr2line.c:94 msgid "[ADDR...]" msgstr "" -#: src/addr2line.c:526 +#: src/addr2line.c:530 msgid "Section syntax requires exactly one module" msgstr "" -#: src/addr2line.c:548 +#: src/addr2line.c:552 #, c-format msgid "offset %#<PRIxMAX> lies outside section '%s'" msgstr "" -#: src/addr2line.c:658 +#: src/addr2line.c:662 #, c-format msgid "cannot find symbol '%s'" msgstr "シンボル '%s' ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" -#: src/addr2line.c:663 +#: src/addr2line.c:667 #, c-format msgid "offset %#<PRIxMAX> lies outside contents of '%s'" msgstr "" @@ -1351,7 +1357,7 @@ msgid "Suppress some error output (counterpart to --verbose)" msgstr "ã„ãã¤ã‹ã®ã‚¨ãƒ©ãƒ¼å‡ºåŠ›ã‚’ 抑制ã™ã‚‹ ( --verbose ã®å対)" #. Strings for arguments in help texts. -#: src/elfclassify.c:979 src/elfcompress.c:1358 src/elflint.c:76 +#: src/elfclassify.c:979 src/elfcompress.c:1433 src/elflint.c:76 #: src/readelf.c:160 msgid "FILE..." msgstr "" @@ -1619,44 +1625,50 @@ msgstr "セクション %zu ã®å†…容をå–å¾—ã§ãã¾ã›ã‚“: %s" msgid "cannot get relocation: %s" msgstr "リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å–å¾—ã§ãã¾ã›ã‚“: %s" -#: src/elfcompress.c:117 src/strip.c:305 src/unstrip.c:116 +#: src/elfcompress.c:128 src/strip.c:305 src/unstrip.c:116 #, c-format msgid "-o option specified twice" msgstr "-o オプション㌠2 回指定ã•ã‚Œã¦ã„ã¾ã™" -#: src/elfcompress.c:124 +#: src/elfcompress.c:135 #, c-format msgid "-t option specified twice" msgstr "-t オプション㌠2 回指定ã•ã‚Œã¦ã„ã¾ã™" -#: src/elfcompress.c:133 +#: src/elfcompress.c:147 +#, c-format +msgid "ZSTD support is not enabled" +msgstr "" + +#: src/elfcompress.c:150 #, c-format msgid "unknown compression type '%s'" msgstr "ä¸æ˜Žãªåœ§ç¸®ã‚¿ã‚¤ãƒ— '%s'" #. We need at least one input file. -#: src/elfcompress.c:145 src/elfcompress.c:1369 +#: src/elfcompress.c:162 src/elfcompress.c:1444 #, c-format msgid "No input file given" msgstr "入力ファイルãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã¾ã›ã‚“" -#: src/elfcompress.c:151 src/elfcompress.c:1373 +#: src/elfcompress.c:168 src/elfcompress.c:1448 #, c-format msgid "Only one input file allowed together with '-o'" msgstr "'-o' ã¨ä¸€ç·’ã®å ´åˆã¯å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã¯ 1 ã¤ã—ã‹èªã‚られã¾ã›ã‚“" -#: src/elfcompress.c:1331 +#: src/elfcompress.c:1405 msgid "Place (de)compressed output into FILE" msgstr "圧縮(展開)ã—ãŸå‡ºåŠ›ã‚’ FILE ã«ç½®ã" -#: src/elfcompress.c:1334 +#: src/elfcompress.c:1408 msgid "" "What type of compression to apply. TYPE can be 'none' (decompress), " -"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias) or 'zlib-" -"gnu' (.zdebug GNU style compression, 'gnu' is an alias)" +"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias), 'zlib-" +"gnu' (.zdebug GNU style compression, 'gnu' is an alias) or 'zstd' (ELF ZSTD " +"compression)" msgstr "" -#: src/elfcompress.c:1337 +#: src/elfcompress.c:1412 msgid "" "SECTION name to (de)compress, SECTION is an extended wildcard pattern " "(defaults to '.?(z)debug*')" @@ -1664,25 +1676,25 @@ msgstr "" "圧縮(展開)ã™ã‚‹ セクションå。 SECTION 㯠拡張 ワイルドカード パターン(デ" "フォルト㧠'.?(z)debug*')" -#: src/elfcompress.c:1340 +#: src/elfcompress.c:1415 msgid "Print a message for each section being (de)compressed" msgstr "圧縮(展開) ã•ã‚Œã¦ã„ã‚‹ å„セクション ã«å¯¾ã™ã‚‹ メッセージを 表示" -#: src/elfcompress.c:1343 +#: src/elfcompress.c:1418 msgid "" "Force compression of section even if it would become larger or update/" "rewrite the file even if no section would be (de)compressed" msgstr "" -#: src/elfcompress.c:1346 src/strip.c:92 +#: src/elfcompress.c:1421 src/strip.c:92 msgid "Relax a few rules to handle slightly broken ELF files" msgstr "å°‘ã—壊れ㟠ELF ファイルをå–り扱ã†ãŸã‚ã«ãƒ«ãƒ¼ãƒ«ã‚’å°‘ã—ç·©å’Œã™ã‚‹" -#: src/elfcompress.c:1349 +#: src/elfcompress.c:1424 msgid "Be silent when a section cannot be compressed" msgstr "セクションを圧縮ã§ããªã„ã¨ãã«é™ã‹ã«ã™ã‚‹" -#: src/elfcompress.c:1359 +#: src/elfcompress.c:1434 msgid "Compress or decompress sections in an ELF file." msgstr "ELF ファイル㮠セクションを 圧縮 ã¾ãŸã¯ 展開ã™ã‚‹" @@ -1745,133 +1757,133 @@ msgstr "sub-ELF 記述åを解放ã—ã¦ã„る時ã«ã‚¨ãƒ©ãƒ¼: %s\n" msgid "Not an ELF file - it has the wrong magic bytes at the start\n" msgstr "ELF ファイルã§ã¯ã‚ã‚Šã¾ã›ã‚“ - 最åˆã«èª¤ã£ãŸãƒžã‚¸ãƒƒã‚¯ãƒã‚¤ãƒˆãŒã‚ã‚Šã¾ã™\n" -#: src/elflint.c:356 +#: src/elflint.c:357 #, c-format msgid "e_ident[%d] == %d is no known class\n" msgstr "e_ident[%d] == %d ã¯æ—¢çŸ¥ã®ã‚¯ãƒ©ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:361 +#: src/elflint.c:362 #, c-format msgid "e_ident[%d] == %d is no known data encoding\n" msgstr "e_ident[%d] == %d ã¯æ—¢çŸ¥ã®ãƒ‡ãƒ¼ã‚¿ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã§ã¯ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:365 +#: src/elflint.c:366 #, c-format msgid "unknown ELF header version number e_ident[%d] == %d\n" msgstr "ä¸æ˜Žãª ELF ヘッダーãƒãƒ¼ã‚¸ãƒ§ãƒ³æ•° e_ident[%d] == %d\n" -#: src/elflint.c:373 +#: src/elflint.c:374 #, c-format msgid "unsupported OS ABI e_ident[%d] == '%s'\n" msgstr "ä¸æ˜Žãª OS ABI e_ident[%d] == '%s'\n" -#: src/elflint.c:379 +#: src/elflint.c:380 #, c-format msgid "unsupported ABI version e_ident[%d] == %d\n" msgstr "ä¸æ˜Žãª ABI ãƒãƒ¼ã‚¸ãƒ§ãƒ³ e_ident[%d] == %d\n" -#: src/elflint.c:384 +#: src/elflint.c:385 #, c-format msgid "e_ident[%zu] is not zero\n" msgstr "e_ident[%zu] ãŒã‚¼ãƒã§ã¯ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:389 +#: src/elflint.c:390 #, c-format msgid "unknown object file type %d\n" msgstr "ä¸æ˜Žãªã‚ªãƒ–ジェクトファイルタイプ %d\n" -#: src/elflint.c:396 +#: src/elflint.c:397 #, c-format msgid "unknown machine type %d\n" msgstr "ä¸æ˜Žãªãƒžã‚·ãƒ³ã‚¿ã‚¤ãƒ— %d\n" -#: src/elflint.c:400 +#: src/elflint.c:401 #, c-format msgid "unknown object file version\n" msgstr "ä¸æ˜Žãªã‚ªãƒ–ジェクトファイルãƒãƒ¼ã‚¸ãƒ§ãƒ³\n" -#: src/elflint.c:406 +#: src/elflint.c:407 #, c-format msgid "invalid program header offset\n" msgstr "ä¸å½“ãªãƒ—ãƒã‚°ãƒ©ãƒ ヘッダーオフセット\n" -#: src/elflint.c:408 +#: src/elflint.c:409 #, c-format msgid "executables and DSOs cannot have zero program header offset\n" msgstr "" "実行ファイル㨠DSO ã¯ãƒ—ãƒã‚°ãƒ©ãƒ ヘッダーオフセット㌠0 ã§ã‚ã£ã¦ã¯ã„ã‘ã¾ã›ã‚“\n" -#: src/elflint.c:412 +#: src/elflint.c:413 #, c-format msgid "invalid number of program header entries\n" msgstr "プãƒã‚°ãƒ©ãƒ ãƒ˜ãƒƒãƒ€ãƒ¼é …ç›®æ•°ã¨ã—ã¦ä¸å½“ãªæ•°\n" -#: src/elflint.c:420 +#: src/elflint.c:421 #, c-format msgid "invalid section header table offset\n" msgstr "ä¸å½“ãªã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ†ãƒ¼ãƒ–ルオフセット\n" -#: src/elflint.c:423 +#: src/elflint.c:424 #, c-format msgid "section header table must be present\n" msgstr "セクションヘッダーテーブルãŒãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:437 +#: src/elflint.c:438 #, c-format msgid "invalid number of section header table entries\n" msgstr "ã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ†ãƒ¼ãƒ–ãƒ«é …ç›®æ•°ã¨ã—ã¦ä¸å½“ãªæ•°\n" -#: src/elflint.c:454 +#: src/elflint.c:455 #, c-format msgid "invalid section header index\n" msgstr "ä¸å½“ãªã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹\n" -#: src/elflint.c:472 +#: src/elflint.c:473 #, c-format msgid "Can only check %u headers, shnum was %u\n" msgstr "" -#: src/elflint.c:486 +#: src/elflint.c:487 #, c-format msgid "invalid number of program header table entries\n" msgstr "プãƒã‚°ãƒ©ãƒ ãƒ˜ãƒƒãƒ€ãƒ¼é …ç›®æ•°ã¨ã—ã¦ä¸å½“ãªæ•°\n" -#: src/elflint.c:503 +#: src/elflint.c:504 #, c-format msgid "Can only check %u headers, phnum was %u\n" msgstr "" -#: src/elflint.c:508 +#: src/elflint.c:509 #, c-format msgid "invalid machine flags: %s\n" msgstr "ä¸å½“ãªãƒžã‚·ãƒ³ãƒ•ãƒ©ã‚°: %s\n" -#: src/elflint.c:515 src/elflint.c:532 +#: src/elflint.c:516 src/elflint.c:533 #, c-format msgid "invalid ELF header size: %hd\n" msgstr "ä¸å½“㪠ELF ヘッダーサイズ: %hd\n" -#: src/elflint.c:518 src/elflint.c:535 +#: src/elflint.c:519 src/elflint.c:536 #, c-format msgid "invalid program header size: %hd\n" msgstr "ä¸å½“ãªãƒ—ãƒã‚°ãƒ©ãƒ ヘッダーサイズ: %hd\n" -#: src/elflint.c:521 src/elflint.c:538 +#: src/elflint.c:522 src/elflint.c:539 #, c-format msgid "invalid program header position or size\n" msgstr "ä¸å½“ãªãƒ—ãƒã‚°ãƒ©ãƒ ヘッダーä½ç½®ã‹ã‚µã‚¤ã‚º\n" -#: src/elflint.c:524 src/elflint.c:541 +#: src/elflint.c:525 src/elflint.c:542 #, c-format msgid "invalid section header size: %hd\n" msgstr "ä¸å½“ãªã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼ã‚µã‚¤ã‚º: %hd\n" -#: src/elflint.c:527 src/elflint.c:544 +#: src/elflint.c:528 src/elflint.c:545 #, c-format msgid "invalid section header position or size\n" msgstr "ä¸å½“ãªã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼ä½ç½®ã‹ã‚µã‚¤ã‚º\n" -#: src/elflint.c:589 +#: src/elflint.c:590 #, c-format msgid "" "section [%2d] '%s': section with SHF_GROUP flag set not part of a section " @@ -1880,7 +1892,7 @@ msgstr "" "セクション [%2d] '%s': SHF_GROUP フラグã®ã‚るセクションã«ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚°ãƒ«ãƒ¼ãƒ—ã®" "一部分ãŒè¨å®šã•ã‚Œã¦ã„ã¾ã›ã‚“\n" -#: src/elflint.c:593 +#: src/elflint.c:594 #, c-format msgid "" "section [%2d] '%s': section group [%2zu] '%s' does not precede group member\n" @@ -1888,14 +1900,14 @@ msgstr "" "セクション [%2d] '%s': セクショングループ [%2zu] '%s' ãŒã‚°ãƒ«ãƒ¼ãƒ—メンãƒãƒ¼ã‚ˆã‚Š" "å‰ã«ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:609 src/elflint.c:1497 src/elflint.c:1548 src/elflint.c:1654 -#: src/elflint.c:1990 src/elflint.c:2316 src/elflint.c:2942 src/elflint.c:3105 -#: src/elflint.c:3253 src/elflint.c:3455 src/elflint.c:4464 +#: src/elflint.c:610 src/elflint.c:1498 src/elflint.c:1549 src/elflint.c:1655 +#: src/elflint.c:1991 src/elflint.c:2317 src/elflint.c:2943 src/elflint.c:3106 +#: src/elflint.c:3254 src/elflint.c:3456 src/elflint.c:4468 #, c-format msgid "section [%2d] '%s': cannot get section data\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:622 src/elflint.c:1661 +#: src/elflint.c:623 src/elflint.c:1662 #, c-format msgid "" "section [%2d] '%s': referenced as string table for section [%2d] '%s' but " @@ -1904,7 +1916,7 @@ msgstr "" "セクション [%2d] '%s': セクション [%2d] '%s' 用ã®æ–‡å—列テーブルã¨ã—ã¦å‚ç…§ã•ã‚Œ" "ã¦ã„ã¾ã™ãŒã€ã‚¿ã‚¤ãƒ—㌠SHT_STRTAB ã§ã¯ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:645 +#: src/elflint.c:646 #, c-format msgid "" "section [%2d] '%s': symbol table cannot have more than one extended index " @@ -1913,45 +1925,45 @@ msgstr "" "セクション [%2d] '%s': シンボルテーブル㯠1 個を越ãˆã‚‹æ‹¡å¼µã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã‚»ã‚¯" "ションをæŒã¦ã¾ã›ã‚“\n" -#: src/elflint.c:657 +#: src/elflint.c:658 #, c-format msgid "section [%2u] '%s': entry size is does not match ElfXX_Sym\n" msgstr "セクション [%2u] '%s': é …ç›®ã‚µã‚¤ã‚ºãŒ ElfXX_Sym ã¨ä¸€è‡´ã—ã¾ã›ã‚“\n" -#: src/elflint.c:661 +#: src/elflint.c:662 #, c-format msgid "" "section [%2u] '%s': number of local entries in 'st_info' larger than table " "size\n" msgstr "" -#: src/elflint.c:670 +#: src/elflint.c:671 #, c-format msgid "section [%2d] '%s': cannot get symbol %d: %s\n" msgstr "セクション [%2d] '%s': シンボル %d を得られã¾ã›ã‚“: %s\n" -#: src/elflint.c:675 src/elflint.c:678 src/elflint.c:681 src/elflint.c:684 -#: src/elflint.c:687 src/elflint.c:690 +#: src/elflint.c:676 src/elflint.c:679 src/elflint.c:682 src/elflint.c:685 +#: src/elflint.c:688 src/elflint.c:691 #, c-format msgid "section [%2d] '%s': '%s' in zeroth entry not zero\n" msgstr "セクション [%2d] '%s': 0番目ã®é …ç›®ã«ã‚ã‚‹ '%s' ゼãƒã§ã¯ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:693 +#: src/elflint.c:694 #, c-format msgid "section [%2d] '%s': XINDEX for zeroth entry not zero\n" msgstr "セクション [%2d] '%s': 0番目ã®é …目用㮠XINDEX ãŒã‚¼ãƒã§ã¯ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:703 +#: src/elflint.c:704 #, c-format msgid "section [%2d] '%s': cannot get symbol %zu: %s\n" msgstr "セクション [%2d] '%s': シンボル %zu を得られã¾ã›ã‚“: %s\n" -#: src/elflint.c:712 +#: src/elflint.c:713 #, c-format msgid "section [%2d] '%s': symbol %zu: invalid name value\n" msgstr "セクション [%2d] '%s': シンボル %zu: ä¸å½“ãªåå‰ã®å€¤\n" -#: src/elflint.c:727 +#: src/elflint.c:728 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): too large section index but no extended " @@ -1960,7 +1972,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: 大ãã™ãŽã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã ãŒã€æ‹¡" "張セクションインデックスセクションãŒã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:733 +#: src/elflint.c:734 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): XINDEX used for index which would fit " @@ -1970,29 +1982,29 @@ msgstr "" "クス用ã«ä½¿ã‚れる XINDEX\n" #. || sym->st_shndx > SHN_HIRESERVE always false -#: src/elflint.c:745 +#: src/elflint.c:746 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): invalid section index\n" msgstr "セクション [%2d] '%s': シンボル %zu: ä¸å½“ãªã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹\n" -#: src/elflint.c:753 +#: src/elflint.c:754 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown type\n" msgstr "セクション [%2d] '%s': シンボル %zu: ä¸æ˜Žãªã‚¿ã‚¤ãƒ—\n" -#: src/elflint.c:759 +#: src/elflint.c:760 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown symbol binding\n" msgstr "セクション [%2d] '%s': シンボル %zu: ä¸æ˜Žãªã‚·ãƒ³ãƒœãƒ«ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°\n" -#: src/elflint.c:764 +#: src/elflint.c:765 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unique symbol not of object type\n" msgstr "" "セクション [%2d] '%s': シンボル %zu: オブジェクトタイプã¨ç•°ãªã‚‹å›ºæœ‰ã®ã‚·ãƒ³ãƒœ" "ル\n" -#: src/elflint.c:772 +#: src/elflint.c:773 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): COMMON only allowed in relocatable " @@ -2001,7 +2013,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: COMMON ã¯ãƒªãƒã‚±ãƒ¼ã‚¿ãƒ–ルファイル内ã®ã¿ã§" "許ã•ã‚Œã¾ã™\n" -#: src/elflint.c:776 +#: src/elflint.c:777 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local COMMON symbols are nonsense\n" @@ -2009,7 +2021,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: ãƒãƒ¼ã‚«ãƒ«ãª COMMON シンボルã¯æ„味ãŒã‚ã‚Šã¾" "ã›ã‚“\n" -#: src/elflint.c:780 +#: src/elflint.c:781 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): function in COMMON section is nonsense\n" @@ -2017,12 +2029,12 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: COMMON セクションã®æ©Ÿèƒ½ã¯æ„味ãŒã‚ã‚Šã¾ã›" "ã‚“\n" -#: src/elflint.c:831 +#: src/elflint.c:832 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): st_value out of bounds\n" msgstr "セクション [%2d] '%s': シンボル %zu: st_value 境界外\n" -#: src/elflint.c:837 src/elflint.c:862 src/elflint.c:911 +#: src/elflint.c:838 src/elflint.c:863 src/elflint.c:912 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s) does not fit completely in referenced " @@ -2031,7 +2043,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu ã¯å‚ç…§ã•ã‚Œã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%2d] '%s' ã¨ã¯å®Œ" "å…¨ã«ä¸€è‡´ã—ã¾ã›ã‚“\n" -#: src/elflint.c:846 +#: src/elflint.c:847 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): referenced section [%2d] '%s' does not " @@ -2040,7 +2052,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: å‚ç…§ã•ã‚Œã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%2d] '%s' 㯠" "SHF_TLS フラグãŒè¨å®šã•ã‚Œã¦ã„ã¾ã›ã‚“\n" -#: src/elflint.c:856 src/elflint.c:904 +#: src/elflint.c:857 src/elflint.c:905 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value out of bounds of referenced " @@ -2049,7 +2061,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: st_value å‚ç…§ã•ã‚Œã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%2d] " "'%s' ã®å¢ƒç•Œå¤–\n" -#: src/elflint.c:883 +#: src/elflint.c:884 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but no TLS program header " @@ -2058,7 +2070,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: TLS プãƒã‚°ãƒ©ãƒ ãƒ˜ãƒƒãƒ€ãƒ¼é …ç›®ãŒãªã„ TLS ã‚·" "ンボル\n" -#: src/elflint.c:889 +#: src/elflint.c:890 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but couldn't get TLS program " @@ -2067,7 +2079,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: TLS プãƒã‚°ãƒ©ãƒ ãƒ˜ãƒƒãƒ€ãƒ¼é …ç›®ãŒãªã„ TLS ã‚·" "ンボル\n" -#: src/elflint.c:897 +#: src/elflint.c:898 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value short of referenced section " @@ -2076,7 +2088,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: å‚ç…§ã•ã‚Œã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%2d] '%s' ã®" "st_value ä¸è¶³\n" -#: src/elflint.c:924 +#: src/elflint.c:925 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local symbol outside range described in " @@ -2085,7 +2097,7 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: sh_info ã«è¨˜è¿°ã•ã‚ŒãŸç¯„囲外ã®ãƒãƒ¼ã‚«ãƒ«ã‚·ãƒ³" "ボル\n" -#: src/elflint.c:931 +#: src/elflint.c:932 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): non-local symbol outside range " @@ -2094,12 +2106,12 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: sh_info ã«è¨˜è¿°ã•ã‚ŒãŸç¯„囲外ã®éžãƒãƒ¼ã‚«ãƒ«ã‚·" "ンボル\n" -#: src/elflint.c:938 +#: src/elflint.c:939 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): non-local section symbol\n" msgstr "セクション [%2d] '%s': シンボル %zu: éžãƒãƒ¼ã‚«ãƒ«ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚·ãƒ³ãƒœãƒ«\n" -#: src/elflint.c:988 +#: src/elflint.c:989 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to bad section " @@ -2108,7 +2120,7 @@ msgstr "" "セクション [%2d] '%s': _GLOBAL_OFFSET_TABLE_ シンボルãŒé–“é•ã£ãŸã‚»ã‚¯ã‚·ãƒ§ãƒ³ " "[%2d] ã‚’å‚ç…§ã—ã¦ã„ã¾ã™\n" -#: src/elflint.c:995 +#: src/elflint.c:996 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to section [%2d] " @@ -2120,7 +2132,7 @@ msgstr "" #. This test is more strict than the psABIs which #. usually allow the symbol to be in the middle of #. the .got section, allowing negative offsets. -#: src/elflint.c:1011 +#: src/elflint.c:1012 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol value %#<PRIx64> does not " @@ -2129,7 +2141,7 @@ msgstr "" "セクション [%2d] '%s': _GLOBAL_OFFSET_TABLE_ シンボル値 %#<PRIx64> 㯠%s ã®ã‚»" "クションアドレス %#<PRIx64> ã¨ä¸€è‡´ã—ã¾ã›ã‚“\n" -#: src/elflint.c:1018 +#: src/elflint.c:1019 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol size %<PRIu64> does not " @@ -2138,7 +2150,7 @@ msgstr "" "セクション [%2d] '%s': _GLOBAL_OFFSET_TABLE_ シンボルサイズ %<PRIu64> 㯠%s " "ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚µã‚¤ã‚º %<PRIu64> ã¨ä¸€è‡´ã—ã¾ã›ã‚“\n" -#: src/elflint.c:1026 +#: src/elflint.c:1027 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol present, but no .got " @@ -2147,7 +2159,7 @@ msgstr "" "セクション [%2d] '%s': _GLOBAL_OFFSET_TABLE_ シンボルã¯ã‚ã‚Šã¾ã™ãŒã€.got セク" "ションãŒã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:1042 +#: src/elflint.c:1043 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC_ symbol value %#<PRIx64> does not match dynamic " @@ -2156,7 +2168,7 @@ msgstr "" "セクション [%2d] '%s': _DYNAMIC_ シンボル値 %#<PRIx64> ã¯å‹•çš„セグメントアドレ" "ス %#<PRIx64> ã¨ä¸€è‡´ã—ã¾ã›ã‚“\n" -#: src/elflint.c:1049 +#: src/elflint.c:1050 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC symbol size %<PRIu64> does not match dynamic " @@ -2165,7 +2177,7 @@ msgstr "" "セクション [%2d] '%s': _DYNAMIC シンボルサイズ %<PRIu64> ã¯å‹•çš„セグメントサイ" "ズ %<PRIu64> ã¨ä¸€è‡´ã—ã¾ã›ã‚“\n" -#: src/elflint.c:1062 +#: src/elflint.c:1063 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): symbol in dynamic symbol table with non-" @@ -2174,29 +2186,29 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: çœç•¥ä»¥å¤–ã®å¯è¦–性をæŒã£ãŸå‹•çš„シンボルテー" "ブルä¸ã®ã‚·ãƒ³ãƒœãƒ«\n" -#: src/elflint.c:1066 +#: src/elflint.c:1067 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown bit set in st_other\n" msgstr "" "セクション [%2d] '%s': シンボル %zu: st_other ä¸ã«è¨å®šã•ã‚ŒãŸä¸æ˜Žãªãƒ“ット\n" -#: src/elflint.c:1104 +#: src/elflint.c:1105 #, fuzzy, c-format msgid "section [%2d] '%s': cannot get section data.\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:1120 +#: src/elflint.c:1121 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT used for this RELA section\n" msgstr "セクション [%2d] '%s': ã“ã® RELA セクション用ã«ä½¿ã‚れる DT_RELCOUNT\n" -#: src/elflint.c:1131 src/elflint.c:1184 +#: src/elflint.c:1132 src/elflint.c:1185 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT value %d too high for this section\n" msgstr "" "セクション [%2d] '%s': ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ç”¨ã«ã¯é«˜ã™ãŽã‚‹ DT_RELCOUNT 値 %d\n" -#: src/elflint.c:1156 src/elflint.c:1209 +#: src/elflint.c:1157 src/elflint.c:1210 #, c-format msgid "" "section [%2d] '%s': relative relocations after index %d as specified by " @@ -2205,7 +2217,7 @@ msgstr "" "セクション [%2d] '%s': UT_RELOCOUNT ã§æŒ‡å®šã•ã‚ŒãŸã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ %d 後ã®ç›¸å¯¾ãƒªãƒ" "ケーション\n" -#: src/elflint.c:1162 src/elflint.c:1215 +#: src/elflint.c:1163 src/elflint.c:1216 #, c-format msgid "" "section [%2d] '%s': non-relative relocation at index %zu; DT_RELCOUNT " @@ -2214,52 +2226,52 @@ msgstr "" "セクション [%2d] '%s': インデックス %zu ã§ã®éžç›¸å¯¾ãƒªãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³; %d 相対リ" "ãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã§æŒ‡å®šã•ã‚ŒãŸ DT_RELCOUNT\n" -#: src/elflint.c:1174 +#: src/elflint.c:1175 #, c-format msgid "section [%2d] '%s': DT_RELACOUNT used for this REL section\n" msgstr "セクション [%2d] '%s': ã“ã® REL セクション用ã«ä½¿ã‚れる DT_RELACOUNT\n" -#: src/elflint.c:1257 +#: src/elflint.c:1258 #, c-format msgid "section [%2d] '%s': invalid destination section index\n" msgstr "セクション [%2d] '%s': ä¸å½“ãªå®›å…ˆã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹\n" -#: src/elflint.c:1269 +#: src/elflint.c:1270 #, c-format msgid "section [%2d] '%s': invalid destination section type\n" msgstr "セクション [%2d] '%s': ä¸å½“ãªå®›å…ˆã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚¿ã‚¤ãƒ—\n" -#: src/elflint.c:1277 +#: src/elflint.c:1278 #, c-format msgid "section [%2d] '%s': sh_info should be zero\n" msgstr "セクション [%2d] '%s': sh_info ã¯ã‚¼ãƒã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:1285 +#: src/elflint.c:1286 #, fuzzy, c-format msgid "" "section [%2d] '%s': no relocations for merge-able string sections possible\n" msgstr "" "セクション [%2d] '%s': マージã§ãるセクションã®ãƒªãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã¯ä¸å¯èƒ½ã§ã™\n" -#: src/elflint.c:1293 +#: src/elflint.c:1294 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Rela\n" msgstr "" "セクション [%2d] '%s': ã‚»ã‚¯ã‚·ãƒ§ãƒ³é …ç›®ã‚µã‚¤ã‚ºãŒ ElfXX_Rela ã¨ä¸€è‡´ã—ã¾ã›ã‚“\n" -#: src/elflint.c:1353 +#: src/elflint.c:1354 #, c-format msgid "text relocation flag set but there is no read-only segment\n" msgstr "" "テã‚ストリãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ãƒ•ãƒ©ã‚°ãŒè¨å®šã•ã‚Œã¦ã„ã¾ã™ãŒã€èªè¾¼ã¿å°‚用セグメントãŒã‚ã‚Š" "ã¾ã›ã‚“\n" -#: src/elflint.c:1380 +#: src/elflint.c:1381 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid type\n" msgstr "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ %zu: ä¸å½“ãªã‚¿ã‚¤ãƒ—\n" -#: src/elflint.c:1388 +#: src/elflint.c:1389 #, c-format msgid "" "section [%2d] '%s': relocation %zu: relocation type invalid for the file " @@ -2268,13 +2280,13 @@ msgstr "" "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ %zu: ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ç”¨ã®ãƒªãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚¿ã‚¤" "プã¯ä¸å½“ã§ã™\n" -#: src/elflint.c:1396 +#: src/elflint.c:1397 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid symbol index\n" msgstr "" "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ %zu: ä¸å½“ãªã‚·ãƒ³ãƒœãƒ«ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹\n" -#: src/elflint.c:1414 +#: src/elflint.c:1415 #, c-format msgid "" "section [%2d] '%s': relocation %zu: only symbol '_GLOBAL_OFFSET_TABLE_' can " @@ -2283,12 +2295,12 @@ msgstr "" "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ %zu: シンボル '_GLOBAL_OFFSET_TABLE_' " "ã®ã¿ãŒ %s ã¨ä¸€ç·’ã«ä½¿ç”¨ã§ãã¾ã™\n" -#: src/elflint.c:1431 +#: src/elflint.c:1432 #, c-format msgid "section [%2d] '%s': relocation %zu: offset out of bounds\n" msgstr "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ %zu: オフセット境界外\n" -#: src/elflint.c:1446 +#: src/elflint.c:1447 #, c-format msgid "" "section [%2d] '%s': relocation %zu: copy relocation against symbol of type " @@ -2297,7 +2309,7 @@ msgstr "" "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ %zu: タイプ %s ã®ã‚·ãƒ³ãƒœãƒ«ã«å¯¾ã™ã‚‹ã‚³ãƒ”ー" "リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³\n" -#: src/elflint.c:1467 +#: src/elflint.c:1468 #, c-format msgid "" "section [%2d] '%s': relocation %zu: read-only section modified but text " @@ -2306,24 +2318,24 @@ msgstr "" "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ %zu: èªè¾¼ã¿å°‚用セクションãŒå¤‰æ›´ã•ã‚Œã¾ã—" "ãŸãŒã€ãƒ†ã‚ストリãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ãƒ•ãƒ©ã‚°ãŒè¨å®šã•ã‚Œã¦ã„ã¾ã›ã‚“\n" -#: src/elflint.c:1482 +#: src/elflint.c:1483 #, c-format msgid "section [%2d] '%s': relocations are against loaded and unloaded data\n" msgstr "" "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ãŒãƒãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ‡ãƒ¼ã‚¿ã¨ãƒãƒ¼ãƒ‰ã•ã‚Œãªã‹ã£ãŸ" "データã«å¯¾ã—ã¦ã§ã™\n" -#: src/elflint.c:1522 src/elflint.c:1573 +#: src/elflint.c:1523 src/elflint.c:1574 #, c-format msgid "section [%2d] '%s': cannot get relocation %zu: %s\n" msgstr "" -#: src/elflint.c:1649 +#: src/elflint.c:1650 #, c-format msgid "more than one dynamic section present\n" msgstr "" -#: src/elflint.c:1667 +#: src/elflint.c:1668 #, fuzzy, c-format msgid "" "section [%2d]: referenced as string table for section [%2d] '%s' but section " @@ -2332,427 +2344,427 @@ msgstr "" "セクション [%2d] '%s': セクション [%2d] '%s' 用ã®æ–‡å—列テーブルã¨ã—ã¦å‚ç…§ã•ã‚Œ" "ã¦ã„ã¾ã™ãŒã€ã‚¿ã‚¤ãƒ—㌠SHT_STRTAB ã§ã¯ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:1675 +#: src/elflint.c:1676 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Dyn\n" msgstr "" -#: src/elflint.c:1680 src/elflint.c:1969 +#: src/elflint.c:1681 src/elflint.c:1970 #, c-format msgid "section [%2d] '%s': sh_info not zero\n" msgstr "" -#: src/elflint.c:1690 +#: src/elflint.c:1691 #, c-format msgid "section [%2d] '%s': cannot get dynamic section entry %zu: %s\n" msgstr "" -#: src/elflint.c:1698 +#: src/elflint.c:1699 #, c-format msgid "section [%2d] '%s': non-DT_NULL entries follow DT_NULL entry\n" msgstr "" -#: src/elflint.c:1705 +#: src/elflint.c:1706 #, c-format msgid "section [%2d] '%s': entry %zu: unknown tag\n" msgstr "" -#: src/elflint.c:1716 +#: src/elflint.c:1717 #, c-format msgid "section [%2d] '%s': entry %zu: more than one entry with tag %s\n" msgstr "" -#: src/elflint.c:1726 +#: src/elflint.c:1727 #, c-format msgid "section [%2d] '%s': entry %zu: level 2 tag %s used\n" msgstr "" -#: src/elflint.c:1744 +#: src/elflint.c:1745 #, c-format msgid "" "section [%2d] '%s': entry %zu: DT_PLTREL value must be DT_REL or DT_RELA\n" msgstr "" -#: src/elflint.c:1757 +#: src/elflint.c:1758 #, c-format msgid "" "section [%2d] '%s': entry %zu: pointer does not match address of section " "[%2d] '%s' referenced by sh_link\n" msgstr "" -#: src/elflint.c:1800 +#: src/elflint.c:1801 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must point into loaded segment\n" msgstr "" -#: src/elflint.c:1815 +#: src/elflint.c:1816 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must be valid offset in section " "[%2d] '%s'\n" msgstr "" -#: src/elflint.c:1835 src/elflint.c:1863 +#: src/elflint.c:1836 src/elflint.c:1864 #, c-format msgid "section [%2d] '%s': contains %s entry but not %s\n" msgstr "" -#: src/elflint.c:1847 +#: src/elflint.c:1848 #, c-format msgid "section [%2d] '%s': mandatory tag %s not present\n" msgstr "" -#: src/elflint.c:1856 +#: src/elflint.c:1857 #, c-format msgid "section [%2d] '%s': no hash section present\n" msgstr "" -#: src/elflint.c:1871 src/elflint.c:1878 +#: src/elflint.c:1872 src/elflint.c:1879 #, c-format msgid "section [%2d] '%s': not all of %s, %s, and %s are present\n" msgstr "" -#: src/elflint.c:1888 src/elflint.c:1892 +#: src/elflint.c:1889 src/elflint.c:1893 #, c-format msgid "section [%2d] '%s': %s tag missing in DSO marked during prelinking\n" msgstr "" -#: src/elflint.c:1898 +#: src/elflint.c:1899 #, c-format msgid "section [%2d] '%s': non-DSO file marked as dependency during prelink\n" msgstr "" -#: src/elflint.c:1909 src/elflint.c:1913 src/elflint.c:1917 src/elflint.c:1921 +#: src/elflint.c:1910 src/elflint.c:1914 src/elflint.c:1918 src/elflint.c:1922 #, c-format msgid "section [%2d] '%s': %s tag missing in prelinked executable\n" msgstr "" -#: src/elflint.c:1933 +#: src/elflint.c:1934 #, c-format msgid "" "section [%2d] '%s': only relocatable files can have extended section index\n" msgstr "" -#: src/elflint.c:1943 +#: src/elflint.c:1944 #, c-format msgid "" "section [%2d] '%s': extended section index section not for symbol table\n" msgstr "" -#: src/elflint.c:1947 +#: src/elflint.c:1948 #, fuzzy, c-format msgid "section [%2d] '%s': sh_link extended section index [%2d] is invalid\n" msgstr "セクション [%2d] '%s': ä¸å½“ãªå®›å…ˆã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹\n" -#: src/elflint.c:1952 +#: src/elflint.c:1953 #, c-format msgid "cannot get data for symbol section\n" msgstr "" -#: src/elflint.c:1955 +#: src/elflint.c:1956 #, c-format msgid "section [%2d] '%s': entry size does not match Elf32_Word\n" msgstr "" -#: src/elflint.c:1964 +#: src/elflint.c:1965 #, c-format msgid "section [%2d] '%s': extended index table too small for symbol table\n" msgstr "" -#: src/elflint.c:1979 +#: src/elflint.c:1980 #, c-format msgid "" "section [%2d] '%s': extended section index in section [%2zu] '%s' refers to " "same symbol table\n" msgstr "" -#: src/elflint.c:1997 +#: src/elflint.c:1998 #, c-format msgid "symbol 0 should have zero extended section index\n" msgstr "" -#: src/elflint.c:2009 +#: src/elflint.c:2010 #, c-format msgid "cannot get data for symbol %zu\n" msgstr "" -#: src/elflint.c:2014 +#: src/elflint.c:2015 #, c-format msgid "extended section index is %<PRIu32> but symbol index is not XINDEX\n" msgstr "" -#: src/elflint.c:2031 src/elflint.c:2088 +#: src/elflint.c:2032 src/elflint.c:2089 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected %ld)\n" msgstr "" -#: src/elflint.c:2045 src/elflint.c:2102 +#: src/elflint.c:2046 src/elflint.c:2103 #, c-format msgid "section [%2d] '%s': chain array too large\n" msgstr "" -#: src/elflint.c:2059 src/elflint.c:2116 +#: src/elflint.c:2060 src/elflint.c:2117 #, c-format msgid "section [%2d] '%s': hash bucket reference %zu out of bounds\n" msgstr "" -#: src/elflint.c:2069 +#: src/elflint.c:2070 #, c-format msgid "section [%2d] '%s': hash chain reference %zu out of bounds\n" msgstr "" -#: src/elflint.c:2126 +#: src/elflint.c:2127 #, c-format msgid "section [%2d] '%s': hash chain reference %<PRIu64> out of bounds\n" msgstr "" -#: src/elflint.c:2139 +#: src/elflint.c:2140 #, fuzzy, c-format msgid "section [%2d] '%s': not enough data\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:2151 +#: src/elflint.c:2152 #, fuzzy, c-format msgid "section [%2d] '%s': bitmask size zero or not power of 2: %u\n" msgstr "セクション [%2d] '%s': 0番目ã®é …ç›®ã«ã‚ã‚‹ '%s' ゼãƒã§ã¯ã‚ã‚Šã¾ã›ã‚“\n" -#: src/elflint.c:2167 +#: src/elflint.c:2168 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected at " "least %ld)\n" msgstr "" -#: src/elflint.c:2176 +#: src/elflint.c:2177 #, c-format msgid "section [%2d] '%s': 2nd hash function shift too big: %u\n" msgstr "" -#: src/elflint.c:2210 +#: src/elflint.c:2211 #, c-format msgid "" "section [%2d] '%s': hash chain for bucket %zu lower than symbol index bias\n" msgstr "" -#: src/elflint.c:2231 +#: src/elflint.c:2232 #, c-format msgid "" "section [%2d] '%s': symbol %u referenced in chain for bucket %zu is " "undefined\n" msgstr "" -#: src/elflint.c:2244 +#: src/elflint.c:2245 #, c-format msgid "" "section [%2d] '%s': hash value for symbol %u in chain for bucket %zu wrong\n" msgstr "" -#: src/elflint.c:2253 +#: src/elflint.c:2254 #, fuzzy, c-format msgid "" "section [%2d] '%s': mask index for symbol %u in chain for bucket %zu wrong\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:2283 +#: src/elflint.c:2284 #, c-format msgid "section [%2d] '%s': hash chain for bucket %zu out of bounds\n" msgstr "" -#: src/elflint.c:2288 +#: src/elflint.c:2289 #, c-format msgid "" "section [%2d] '%s': symbol reference in chain for bucket %zu out of bounds\n" msgstr "" -#: src/elflint.c:2294 +#: src/elflint.c:2295 #, c-format msgid "section [%2d] '%s': bitmask does not match names in the hash table\n" msgstr "" -#: src/elflint.c:2307 +#: src/elflint.c:2308 #, c-format msgid "section [%2d] '%s': relocatable files cannot have hash tables\n" msgstr "" -#: src/elflint.c:2325 +#: src/elflint.c:2326 #, c-format msgid "section [%2d] '%s': hash table not for dynamic symbol table\n" msgstr "" -#: src/elflint.c:2329 +#: src/elflint.c:2330 #, fuzzy, c-format msgid "section [%2d] '%s': invalid sh_link symbol table section index [%2d]\n" msgstr "セクション [%2d] '%s': ä¸å½“ãªå®›å…ˆã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹\n" -#: src/elflint.c:2339 +#: src/elflint.c:2340 #, c-format msgid "section [%2d] '%s': hash table entry size incorrect\n" msgstr "" -#: src/elflint.c:2344 +#: src/elflint.c:2345 #, c-format msgid "section [%2d] '%s': not marked to be allocated\n" msgstr "" -#: src/elflint.c:2349 +#: src/elflint.c:2350 #, c-format msgid "" "section [%2d] '%s': hash table has not even room for initial administrative " "entries\n" msgstr "" -#: src/elflint.c:2398 +#: src/elflint.c:2399 #, c-format msgid "sh_link in hash sections [%2zu] '%s' and [%2zu] '%s' not identical\n" msgstr "" -#: src/elflint.c:2422 src/elflint.c:2487 src/elflint.c:2522 +#: src/elflint.c:2423 src/elflint.c:2488 src/elflint.c:2523 #, fuzzy, c-format msgid "hash section [%2zu] '%s' does not contain enough data\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:2443 +#: src/elflint.c:2444 #, fuzzy, c-format msgid "hash section [%2zu] '%s' has zero bit mask words\n" msgstr "" "\n" "セクション [%Zu] '%s' ã«ã¯ãƒ€ãƒ³ãƒ—ã™ã¹ãデータãŒã‚ã‚Šã¾ã›ã‚“。\n" -#: src/elflint.c:2454 src/elflint.c:2498 src/elflint.c:2535 +#: src/elflint.c:2455 src/elflint.c:2499 src/elflint.c:2536 #, fuzzy, c-format msgid "hash section [%2zu] '%s' uses too much data\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:2469 +#: src/elflint.c:2470 #, c-format msgid "" "hash section [%2zu] '%s' invalid symbol index %<PRIu32> (max_nsyms: " "%<PRIu32>, nentries: %<PRIu32>\n" msgstr "" -#: src/elflint.c:2556 +#: src/elflint.c:2557 #, fuzzy, c-format msgid "hash section [%2zu] '%s' invalid sh_entsize\n" msgstr "セクション [%2d] '%s': ä¸å½“ãªå®›å…ˆã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚¿ã‚¤ãƒ—\n" -#: src/elflint.c:2566 src/elflint.c:2570 +#: src/elflint.c:2567 src/elflint.c:2571 #, c-format msgid "section [%2zu] '%s': reference to symbol index 0\n" msgstr "" -#: src/elflint.c:2577 +#: src/elflint.c:2578 #, c-format msgid "" "symbol %d referenced in new hash table in [%2zu] '%s' but not in old hash " "table in [%2zu] '%s'\n" msgstr "" -#: src/elflint.c:2589 +#: src/elflint.c:2590 #, c-format msgid "" "symbol %d referenced in old hash table in [%2zu] '%s' but not in new hash " "table in [%2zu] '%s'\n" msgstr "" -#: src/elflint.c:2605 +#: src/elflint.c:2606 #, c-format msgid "section [%2d] '%s': nonzero sh_%s for NULL section\n" msgstr "" -#: src/elflint.c:2625 +#: src/elflint.c:2626 #, c-format msgid "" "section [%2d] '%s': section groups only allowed in relocatable object files\n" msgstr "" -#: src/elflint.c:2636 +#: src/elflint.c:2637 #, c-format msgid "section [%2d] '%s': cannot get symbol table: %s\n" msgstr "" -#: src/elflint.c:2641 +#: src/elflint.c:2642 #, c-format msgid "section [%2d] '%s': section reference in sh_link is no symbol table\n" msgstr "" -#: src/elflint.c:2647 +#: src/elflint.c:2648 #, c-format msgid "section [%2d] '%s': invalid symbol index in sh_info\n" msgstr "" -#: src/elflint.c:2652 +#: src/elflint.c:2653 #, c-format msgid "section [%2d] '%s': sh_flags not zero\n" msgstr "" -#: src/elflint.c:2659 +#: src/elflint.c:2660 #, c-format msgid "section [%2d] '%s': cannot get symbol for signature\n" msgstr "" -#: src/elflint.c:2663 +#: src/elflint.c:2664 #, fuzzy, c-format msgid "section [%2d] '%s': cannot get symbol name for signature\n" msgstr "セクション [%2d] '%s': シンボル %d を得られã¾ã›ã‚“: %s\n" -#: src/elflint.c:2668 +#: src/elflint.c:2669 #, fuzzy, c-format msgid "section [%2d] '%s': signature symbol cannot be empty string\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:2674 +#: src/elflint.c:2675 #, c-format msgid "section [%2d] '%s': sh_flags not set correctly\n" msgstr "" -#: src/elflint.c:2680 +#: src/elflint.c:2681 #, c-format msgid "section [%2d] '%s': cannot get data: %s\n" msgstr "" -#: src/elflint.c:2689 +#: src/elflint.c:2690 #, c-format msgid "section [%2d] '%s': section size not multiple of sizeof(Elf32_Word)\n" msgstr "" -#: src/elflint.c:2695 +#: src/elflint.c:2696 #, c-format msgid "section [%2d] '%s': section group without flags word\n" msgstr "" -#: src/elflint.c:2703 +#: src/elflint.c:2704 #, c-format msgid "section [%2d] '%s': section group without member\n" msgstr "" -#: src/elflint.c:2707 +#: src/elflint.c:2708 #, c-format msgid "section [%2d] '%s': section group with only one member\n" msgstr "" -#: src/elflint.c:2718 +#: src/elflint.c:2719 #, c-format msgid "section [%2d] '%s': unknown section group flags\n" msgstr "" -#: src/elflint.c:2730 +#: src/elflint.c:2731 #, fuzzy, c-format msgid "section [%2d] '%s': section index %zu out of range\n" msgstr "セクション [%2d] '%s': リãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ %zu: オフセット境界外\n" -#: src/elflint.c:2739 +#: src/elflint.c:2740 #, c-format msgid "section [%2d] '%s': cannot get section header for element %zu: %s\n" msgstr "" -#: src/elflint.c:2746 +#: src/elflint.c:2747 #, c-format msgid "section [%2d] '%s': section group contains another group [%2d] '%s'\n" msgstr "" -#: src/elflint.c:2752 +#: src/elflint.c:2753 #, fuzzy, c-format msgid "" "section [%2d] '%s': element %zu references section [%2d] '%s' without " @@ -2761,770 +2773,770 @@ msgstr "" "セクション [%2d] '%s': シンボル %zu: å‚ç…§ã•ã‚Œã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%2d] '%s' 㯠" "SHF_TLS フラグãŒè¨å®šã•ã‚Œã¦ã„ã¾ã›ã‚“\n" -#: src/elflint.c:2759 +#: src/elflint.c:2760 #, c-format msgid "section [%2d] '%s' is contained in more than one section group\n" msgstr "" -#: src/elflint.c:2956 +#: src/elflint.c:2957 #, c-format msgid "" "section [%2d] '%s' refers in sh_link to section [%2d] '%s' which is no " "dynamic symbol table\n" msgstr "" -#: src/elflint.c:2968 +#: src/elflint.c:2969 #, c-format msgid "" "section [%2d] '%s' has different number of entries than symbol table [%2d] " "'%s'\n" msgstr "" -#: src/elflint.c:2984 +#: src/elflint.c:2985 #, c-format msgid "section [%2d] '%s': symbol %d: cannot read version data\n" msgstr "" -#: src/elflint.c:3000 +#: src/elflint.c:3001 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with global scope\n" msgstr "" -#: src/elflint.c:3008 +#: src/elflint.c:3009 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with version\n" msgstr "" -#: src/elflint.c:3022 +#: src/elflint.c:3023 #, c-format msgid "section [%2d] '%s': symbol %d: invalid version index %d\n" msgstr "" -#: src/elflint.c:3027 +#: src/elflint.c:3028 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for defined version\n" msgstr "" -#: src/elflint.c:3037 +#: src/elflint.c:3038 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for requested version\n" msgstr "" -#: src/elflint.c:3090 +#: src/elflint.c:3091 #, c-format msgid "more than one version reference section present\n" msgstr "" -#: src/elflint.c:3098 src/elflint.c:3245 +#: src/elflint.c:3099 src/elflint.c:3246 #, c-format msgid "section [%2d] '%s': sh_link does not link to string table\n" msgstr "" -#: src/elflint.c:3123 src/elflint.c:3299 +#: src/elflint.c:3124 src/elflint.c:3300 #, c-format msgid "section [%2d] '%s': entry %d has wrong version %d\n" msgstr "" -#: src/elflint.c:3130 src/elflint.c:3306 +#: src/elflint.c:3131 src/elflint.c:3307 #, c-format msgid "section [%2d] '%s': entry %d has wrong offset of auxiliary data\n" msgstr "" -#: src/elflint.c:3140 +#: src/elflint.c:3141 #, c-format msgid "section [%2d] '%s': entry %d has invalid file reference\n" msgstr "" -#: src/elflint.c:3148 +#: src/elflint.c:3149 #, c-format msgid "section [%2d] '%s': entry %d references unknown dependency\n" msgstr "" -#: src/elflint.c:3160 +#: src/elflint.c:3161 #, c-format msgid "section [%2d] '%s': auxiliary entry %d of entry %d has unknown flag\n" msgstr "" -#: src/elflint.c:3168 +#: src/elflint.c:3169 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has invalid name " "reference\n" msgstr "" -#: src/elflint.c:3177 +#: src/elflint.c:3178 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong hash value: " "%#x, expected %#x\n" msgstr "" -#: src/elflint.c:3186 +#: src/elflint.c:3187 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has duplicate version " "name '%s'\n" msgstr "" -#: src/elflint.c:3197 +#: src/elflint.c:3198 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong next field\n" msgstr "" -#: src/elflint.c:3214 src/elflint.c:3390 +#: src/elflint.c:3215 src/elflint.c:3391 #, c-format msgid "section [%2d] '%s': entry %d has invalid offset to next entry\n" msgstr "" -#: src/elflint.c:3222 src/elflint.c:3398 +#: src/elflint.c:3223 src/elflint.c:3399 #, c-format msgid "" "section [%2d] '%s': entry %d has zero offset to next entry, but sh_info says " "there are more entries\n" msgstr "" -#: src/elflint.c:3237 +#: src/elflint.c:3238 #, c-format msgid "more than one version definition section present\n" msgstr "" -#: src/elflint.c:3284 +#: src/elflint.c:3285 #, c-format msgid "section [%2d] '%s': more than one BASE definition\n" msgstr "" -#: src/elflint.c:3288 +#: src/elflint.c:3289 #, c-format msgid "section [%2d] '%s': BASE definition must have index VER_NDX_GLOBAL\n" msgstr "" -#: src/elflint.c:3294 +#: src/elflint.c:3295 #, c-format msgid "section [%2d] '%s': entry %d has unknown flag\n" msgstr "" -#: src/elflint.c:3321 +#: src/elflint.c:3322 #, c-format msgid "section [%2d] '%s': entry %d has invalid name reference\n" msgstr "" -#: src/elflint.c:3328 +#: src/elflint.c:3329 #, c-format msgid "section [%2d] '%s': entry %d has wrong hash value: %#x, expected %#x\n" msgstr "" -#: src/elflint.c:3336 +#: src/elflint.c:3337 #, c-format msgid "section [%2d] '%s': entry %d has duplicate version name '%s'\n" msgstr "" -#: src/elflint.c:3356 +#: src/elflint.c:3357 #, c-format msgid "" "section [%2d] '%s': entry %d has invalid name reference in auxiliary data\n" msgstr "" -#: src/elflint.c:3373 +#: src/elflint.c:3374 #, c-format msgid "section [%2d] '%s': entry %d has wrong next field in auxiliary data\n" msgstr "" -#: src/elflint.c:3406 +#: src/elflint.c:3407 #, c-format msgid "section [%2d] '%s': no BASE definition\n" msgstr "" -#: src/elflint.c:3422 +#: src/elflint.c:3423 #, c-format msgid "section [%2d] '%s': unknown parent version '%s'\n" msgstr "" -#: src/elflint.c:3447 +#: src/elflint.c:3448 #, c-format msgid "section [%2d] '%s': empty object attributes section\n" msgstr "" -#: src/elflint.c:3463 +#: src/elflint.c:3464 #, c-format msgid "section [%2d] '%s': unrecognized attribute format\n" msgstr "" -#: src/elflint.c:3474 +#: src/elflint.c:3475 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute section\n" msgstr "" -#: src/elflint.c:3483 +#: src/elflint.c:3484 #, c-format msgid "section [%2d] '%s': offset %zu: invalid length in attribute section\n" msgstr "" -#: src/elflint.c:3495 +#: src/elflint.c:3496 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated vendor name string\n" msgstr "" -#: src/elflint.c:3512 +#: src/elflint.c:3513 #, c-format msgid "" "section [%2d] '%s': offset %zu: endless ULEB128 in attribute subsection tag\n" msgstr "" -#: src/elflint.c:3521 +#: src/elflint.c:3522 #, c-format msgid "section [%2d] '%s': offset %zu: truncated attribute section\n" msgstr "" -#: src/elflint.c:3530 +#: src/elflint.c:3531 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute subsection\n" msgstr "" -#: src/elflint.c:3545 +#: src/elflint.c:3546 #, c-format msgid "" "section [%2d] '%s': offset %zu: invalid length in attribute subsection\n" msgstr "" #. Tag_File -#: src/elflint.c:3556 +#: src/elflint.c:3557 #, c-format msgid "" "section [%2d] '%s': offset %zu: attribute subsection has unexpected tag %u\n" msgstr "" -#: src/elflint.c:3574 +#: src/elflint.c:3578 #, c-format msgid "section [%2d] '%s': offset %zu: endless ULEB128 in attribute tag\n" msgstr "" -#: src/elflint.c:3585 +#: src/elflint.c:3589 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated string in attribute\n" msgstr "" -#: src/elflint.c:3598 +#: src/elflint.c:3602 #, c-format msgid "section [%2d] '%s': offset %zu: unrecognized attribute tag %u\n" msgstr "" -#: src/elflint.c:3602 +#: src/elflint.c:3606 #, c-format msgid "" "section [%2d] '%s': offset %zu: unrecognized %s attribute value %<PRIu64>\n" msgstr "" -#: src/elflint.c:3612 +#: src/elflint.c:3616 #, c-format msgid "section [%2d] '%s': offset %zu: vendor '%s' unknown\n" msgstr "" -#: src/elflint.c:3618 +#: src/elflint.c:3622 #, c-format msgid "" "section [%2d] '%s': offset %zu: extra bytes after last attribute section\n" msgstr "" -#: src/elflint.c:3715 +#: src/elflint.c:3719 #, c-format msgid "cannot get section header of zeroth section\n" msgstr "" -#: src/elflint.c:3719 +#: src/elflint.c:3723 #, c-format msgid "zeroth section has nonzero name\n" msgstr "" -#: src/elflint.c:3721 +#: src/elflint.c:3725 #, c-format msgid "zeroth section has nonzero type\n" msgstr "" -#: src/elflint.c:3723 +#: src/elflint.c:3727 #, c-format msgid "zeroth section has nonzero flags\n" msgstr "" -#: src/elflint.c:3725 +#: src/elflint.c:3729 #, c-format msgid "zeroth section has nonzero address\n" msgstr "" -#: src/elflint.c:3727 +#: src/elflint.c:3731 #, c-format msgid "zeroth section has nonzero offset\n" msgstr "" -#: src/elflint.c:3729 +#: src/elflint.c:3733 #, c-format msgid "zeroth section has nonzero align value\n" msgstr "" -#: src/elflint.c:3731 +#: src/elflint.c:3735 #, c-format msgid "zeroth section has nonzero entry size value\n" msgstr "" -#: src/elflint.c:3734 +#: src/elflint.c:3738 #, c-format msgid "" "zeroth section has nonzero size value while ELF header has nonzero shnum " "value\n" msgstr "" -#: src/elflint.c:3738 +#: src/elflint.c:3742 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " "overflow in shstrndx\n" msgstr "" -#: src/elflint.c:3742 +#: src/elflint.c:3746 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " "overflow in phnum\n" msgstr "" -#: src/elflint.c:3760 +#: src/elflint.c:3764 #, c-format msgid "cannot get section header for section [%2zu] '%s': %s\n" msgstr "" -#: src/elflint.c:3769 +#: src/elflint.c:3773 #, c-format msgid "section [%2zu]: invalid name\n" msgstr "" -#: src/elflint.c:3796 +#: src/elflint.c:3800 #, c-format msgid "section [%2d] '%s' has wrong type: expected %s, is %s\n" msgstr "" -#: src/elflint.c:3813 +#: src/elflint.c:3817 #, c-format msgid "section [%2zu] '%s' has wrong flags: expected %s, is %s\n" msgstr "" -#: src/elflint.c:3831 +#: src/elflint.c:3835 #, c-format msgid "" "section [%2zu] '%s' has wrong flags: expected %s and possibly %s, is %s\n" msgstr "" -#: src/elflint.c:3848 +#: src/elflint.c:3852 #, c-format msgid "section [%2zu] '%s' present in object file\n" msgstr "" -#: src/elflint.c:3854 src/elflint.c:3886 +#: src/elflint.c:3858 src/elflint.c:3890 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag set but there is no loadable segment\n" msgstr "" -#: src/elflint.c:3859 src/elflint.c:3891 +#: src/elflint.c:3863 src/elflint.c:3895 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag not set but there are loadable " "segments\n" msgstr "" -#: src/elflint.c:3867 +#: src/elflint.c:3871 #, c-format msgid "" "section [%2zu] '%s' is extension section index table in non-object file\n" msgstr "" -#: src/elflint.c:3910 +#: src/elflint.c:3914 #, c-format msgid "section [%2zu] '%s': size not multiple of entry size\n" msgstr "" -#: src/elflint.c:3915 +#: src/elflint.c:3919 #, c-format msgid "cannot get section header\n" msgstr "" -#: src/elflint.c:3925 +#: src/elflint.c:3929 #, c-format msgid "section [%2zu] '%s' has unsupported type %d\n" msgstr "" -#: src/elflint.c:3945 +#: src/elflint.c:3949 #, c-format msgid "" "section [%2zu] '%s' contains invalid processor-specific flag(s) %#<PRIx64>\n" msgstr "" -#: src/elflint.c:3955 +#: src/elflint.c:3959 #, c-format msgid "section [%2zu] '%s' contains unknown flag(s) %#<PRIx64>\n" msgstr "" -#: src/elflint.c:3963 +#: src/elflint.c:3967 #, c-format msgid "section [%2zu] '%s': thread-local data sections address not zero\n" msgstr "" -#: src/elflint.c:3973 +#: src/elflint.c:3977 #, fuzzy, c-format msgid "section [%2zu] '%s': allocated section cannot be compressed\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:3978 +#: src/elflint.c:3982 #, fuzzy, c-format msgid "section [%2zu] '%s': nobits section cannot be compressed\n" msgstr "セクション [%2d] '%s': セクションデータを得られã¾ã›ã‚“\n" -#: src/elflint.c:3984 +#: src/elflint.c:3988 #, c-format msgid "" "section [%2zu] '%s': compressed section with no compression header: %s\n" msgstr "" -#: src/elflint.c:3990 +#: src/elflint.c:3994 #, c-format msgid "section [%2zu] '%s': invalid section reference in link value\n" msgstr "" -#: src/elflint.c:3995 +#: src/elflint.c:3999 #, c-format msgid "section [%2zu] '%s': invalid section reference in info value\n" msgstr "" -#: src/elflint.c:4002 +#: src/elflint.c:4006 #, c-format msgid "section [%2zu] '%s': strings flag set without merge flag\n" msgstr "" -#: src/elflint.c:4007 +#: src/elflint.c:4011 #, c-format msgid "section [%2zu] '%s': merge flag set but entry size is zero\n" msgstr "" -#: src/elflint.c:4026 +#: src/elflint.c:4030 #, c-format msgid "section [%2zu] '%s' has unexpected type %d for an executable section\n" msgstr "" -#: src/elflint.c:4035 +#: src/elflint.c:4039 #, c-format msgid "section [%2zu] '%s' must be of type NOBITS in debuginfo files\n" msgstr "" -#: src/elflint.c:4042 +#: src/elflint.c:4046 #, c-format msgid "section [%2zu] '%s' is both executable and writable\n" msgstr "" -#: src/elflint.c:4073 +#: src/elflint.c:4077 #, c-format msgid "" "section [%2zu] '%s' not fully contained in segment of program header entry " "%d\n" msgstr "" -#: src/elflint.c:4083 +#: src/elflint.c:4087 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " "program header entry %d\n" msgstr "" -#: src/elflint.c:4109 +#: src/elflint.c:4113 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " "program header entry %d and file contents is non-zero\n" msgstr "" -#: src/elflint.c:4120 +#: src/elflint.c:4124 #, c-format msgid "" "section [%2zu] '%s' has not type NOBITS but is not read from the file in " "segment of program header entry %d\n" msgstr "" -#: src/elflint.c:4131 +#: src/elflint.c:4135 #, c-format msgid "section [%2zu] '%s' is executable in nonexecutable segment %d\n" msgstr "" -#: src/elflint.c:4141 +#: src/elflint.c:4145 #, c-format msgid "section [%2zu] '%s' is writable in unwritable segment %d\n" msgstr "" -#: src/elflint.c:4151 +#: src/elflint.c:4155 #, c-format msgid "" "section [%2zu] '%s': alloc flag set but section not in any loaded segment\n" msgstr "" -#: src/elflint.c:4157 +#: src/elflint.c:4161 #, c-format msgid "" "section [%2zu] '%s': ELF header says this is the section header string table " "but type is not SHT_TYPE\n" msgstr "" -#: src/elflint.c:4165 +#: src/elflint.c:4169 #, c-format msgid "" "section [%2zu] '%s': relocatable files cannot have dynamic symbol tables\n" msgstr "" -#: src/elflint.c:4216 +#: src/elflint.c:4220 #, c-format msgid "more than one version symbol table present\n" msgstr "" -#: src/elflint.c:4239 +#: src/elflint.c:4243 #, c-format msgid "INTERP program header entry but no .interp section\n" msgstr "" -#: src/elflint.c:4250 +#: src/elflint.c:4254 #, c-format msgid "" "loadable segment [%u] is executable but contains no executable sections\n" msgstr "" -#: src/elflint.c:4256 +#: src/elflint.c:4260 #, c-format msgid "loadable segment [%u] is writable but contains no writable sections\n" msgstr "" -#: src/elflint.c:4267 +#: src/elflint.c:4271 #, c-format msgid "" "no .gnu.versym section present but .gnu.versym_d or .gnu.versym_r section " "exist\n" msgstr "" -#: src/elflint.c:4280 +#: src/elflint.c:4284 #, c-format msgid "duplicate version index %d\n" msgstr "" -#: src/elflint.c:4294 +#: src/elflint.c:4298 #, c-format msgid ".gnu.versym section present without .gnu.versym_d or .gnu.versym_r\n" msgstr "" -#: src/elflint.c:4343 +#: src/elflint.c:4347 #, c-format msgid "phdr[%d]: unknown core file note type %<PRIu32> at offset %<PRIu64>\n" msgstr "" -#: src/elflint.c:4347 +#: src/elflint.c:4351 #, c-format msgid "" "section [%2d] '%s': unknown core file note type %<PRIu32> at offset %zu\n" msgstr "" -#: src/elflint.c:4403 +#: src/elflint.c:4407 #, c-format msgid "" "phdr[%d]: unknown object file note type %<PRIu32> with owner name '%s' at " "offset %zu\n" msgstr "" -#: src/elflint.c:4408 +#: src/elflint.c:4412 #, c-format msgid "" "section [%2d] '%s': unknown object file note type %<PRIu32> with owner name " "'%s' at offset %zu\n" msgstr "" -#: src/elflint.c:4427 +#: src/elflint.c:4431 #, c-format msgid "phdr[%d]: no note entries defined for the type of file\n" msgstr "" -#: src/elflint.c:4447 +#: src/elflint.c:4451 #, c-format msgid "phdr[%d]: cannot get content of note section: %s\n" msgstr "" -#: src/elflint.c:4450 +#: src/elflint.c:4454 #, c-format msgid "phdr[%d]: extra %<PRIu64> bytes after last note\n" msgstr "" -#: src/elflint.c:4471 +#: src/elflint.c:4475 #, c-format msgid "section [%2d] '%s': no note entries defined for the type of file\n" msgstr "" -#: src/elflint.c:4478 +#: src/elflint.c:4482 #, c-format msgid "section [%2d] '%s': cannot get content of note section\n" msgstr "" -#: src/elflint.c:4481 +#: src/elflint.c:4485 #, c-format msgid "section [%2d] '%s': extra %<PRIu64> bytes after last note\n" msgstr "" -#: src/elflint.c:4499 +#: src/elflint.c:4503 #, c-format msgid "" "only executables, shared objects, and core files can have program headers\n" msgstr "" -#: src/elflint.c:4514 +#: src/elflint.c:4518 #, c-format msgid "cannot get program header entry %d: %s\n" msgstr "" -#: src/elflint.c:4524 +#: src/elflint.c:4528 #, c-format msgid "program header entry %d: unknown program header entry type %#<PRIx64>\n" msgstr "" -#: src/elflint.c:4535 +#: src/elflint.c:4539 #, c-format msgid "more than one INTERP entry in program header\n" msgstr "" -#: src/elflint.c:4543 +#: src/elflint.c:4547 #, c-format msgid "more than one TLS entry in program header\n" msgstr "" -#: src/elflint.c:4550 +#: src/elflint.c:4554 #, c-format msgid "static executable cannot have dynamic sections\n" msgstr "" -#: src/elflint.c:4564 +#: src/elflint.c:4568 #, c-format msgid "dynamic section reference in program header has wrong offset\n" msgstr "" -#: src/elflint.c:4567 +#: src/elflint.c:4571 #, c-format msgid "dynamic section size mismatch in program and section header\n" msgstr "" -#: src/elflint.c:4577 +#: src/elflint.c:4581 #, c-format msgid "more than one GNU_RELRO entry in program header\n" msgstr "" -#: src/elflint.c:4598 +#: src/elflint.c:4602 #, c-format msgid "loadable segment GNU_RELRO applies to is not writable\n" msgstr "" -#: src/elflint.c:4609 +#: src/elflint.c:4613 #, c-format msgid "loadable segment [%u] flags do not match GNU_RELRO [%u] flags\n" msgstr "" -#: src/elflint.c:4616 +#: src/elflint.c:4620 #, c-format msgid "" "GNU_RELRO [%u] flags are not a subset of the loadable segment [%u] flags\n" msgstr "" -#: src/elflint.c:4625 src/elflint.c:4648 +#: src/elflint.c:4629 src/elflint.c:4652 #, c-format msgid "%s segment not contained in a loaded segment\n" msgstr "" -#: src/elflint.c:4654 +#: src/elflint.c:4658 #, c-format msgid "program header offset in ELF header and PHDR entry do not match" msgstr "" -#: src/elflint.c:4681 +#: src/elflint.c:4685 #, c-format msgid "call frame search table reference in program header has wrong offset\n" msgstr "" -#: src/elflint.c:4684 +#: src/elflint.c:4688 #, c-format msgid "call frame search table size mismatch in program and section header\n" msgstr "" -#: src/elflint.c:4697 +#: src/elflint.c:4701 #, c-format msgid "PT_GNU_EH_FRAME present but no .eh_frame_hdr section\n" msgstr "" -#: src/elflint.c:4705 +#: src/elflint.c:4709 #, c-format msgid "call frame search table must be allocated\n" msgstr "" -#: src/elflint.c:4708 +#: src/elflint.c:4712 #, c-format msgid "section [%2zu] '%s' must be allocated\n" msgstr "" -#: src/elflint.c:4712 +#: src/elflint.c:4716 #, c-format msgid "call frame search table must not be writable\n" msgstr "" -#: src/elflint.c:4715 +#: src/elflint.c:4719 #, c-format msgid "section [%2zu] '%s' must not be writable\n" msgstr "" -#: src/elflint.c:4720 +#: src/elflint.c:4724 #, c-format msgid "call frame search table must not be executable\n" msgstr "" -#: src/elflint.c:4723 +#: src/elflint.c:4727 #, c-format msgid "section [%2zu] '%s' must not be executable\n" msgstr "" -#: src/elflint.c:4737 +#: src/elflint.c:4741 #, c-format msgid "program header entry %d: file size greater than memory size\n" msgstr "" -#: src/elflint.c:4744 +#: src/elflint.c:4748 #, c-format msgid "program header entry %d: alignment not a power of 2\n" msgstr "" -#: src/elflint.c:4747 +#: src/elflint.c:4751 #, c-format msgid "" "program header entry %d: file offset and virtual address not module of " "alignment\n" msgstr "" -#: src/elflint.c:4760 +#: src/elflint.c:4764 #, c-format msgid "" "executable/DSO with .eh_frame_hdr section does not have a PT_GNU_EH_FRAME " "program header entry" msgstr "" -#: src/elflint.c:4794 +#: src/elflint.c:4798 #, c-format msgid "cannot read ELF header: %s\n" msgstr "" -#: src/elflint.c:4806 +#: src/elflint.c:4810 #, fuzzy, c-format msgid "cannot create backend for ELF file\n" msgstr "æ–°ã—ã„ファイルを生æˆã§ãã¾ã›ã‚“" -#: src/elflint.c:4827 +#: src/elflint.c:4831 #, c-format msgid "text relocation flag set but not needed\n" msgstr "" @@ -3785,11 +3797,11 @@ msgid "cannot create search tree" msgstr "検索ツリーを生æˆã§ãã¾ã›ã‚“" #: src/nm.c:742 src/nm.c:1234 src/objdump.c:778 src/readelf.c:663 -#: src/readelf.c:1471 src/readelf.c:1620 src/readelf.c:1847 src/readelf.c:2084 -#: src/readelf.c:2273 src/readelf.c:2451 src/readelf.c:2526 src/readelf.c:2791 -#: src/readelf.c:2866 src/readelf.c:2952 src/readelf.c:3547 src/readelf.c:3595 -#: src/readelf.c:3664 src/readelf.c:11581 src/readelf.c:12771 -#: src/readelf.c:12981 src/readelf.c:13049 src/size.c:396 src/size.c:467 +#: src/readelf.c:1484 src/readelf.c:1633 src/readelf.c:1860 src/readelf.c:2097 +#: src/readelf.c:2286 src/readelf.c:2466 src/readelf.c:2544 src/readelf.c:2809 +#: src/readelf.c:2884 src/readelf.c:2970 src/readelf.c:3565 src/readelf.c:3613 +#: src/readelf.c:3682 src/readelf.c:11620 src/readelf.c:12803 +#: src/readelf.c:13013 src/readelf.c:13081 src/size.c:396 src/size.c:467 #: src/strip.c:1093 #, c-format msgid "cannot get section header string table index" @@ -3906,11 +3918,11 @@ msgstr "æ“作ãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã›ã‚“。\n" msgid "while close `%s'" msgstr "" -#: src/objdump.c:362 src/readelf.c:2179 src/readelf.c:2370 +#: src/objdump.c:362 src/readelf.c:2192 src/readelf.c:2383 msgid "INVALID SYMBOL" msgstr "ä¸å½“ãªã‚·ãƒ³ãƒœãƒ«" -#: src/objdump.c:377 src/readelf.c:2213 src/readelf.c:2406 +#: src/objdump.c:377 src/readelf.c:2226 src/readelf.c:2419 msgid "INVALID SECTION" msgstr "ä¸å½“ãªã‚»ã‚¯ã‚·ãƒ§ãƒ³" @@ -4123,12 +4135,12 @@ msgstr "Elf 記述åを生æˆã§ãã¾ã›ã‚“: %s" msgid "cannot determine number of sections: %s" msgstr "セクション数を決定ã§ãã¾ã›ã‚“: %s" -#: src/readelf.c:672 src/readelf.c:1287 src/readelf.c:1495 +#: src/readelf.c:672 src/readelf.c:1300 src/readelf.c:1508 #, c-format msgid "cannot get section: %s" msgstr "セクションをå–å¾—ã§ãã¾ã›ã‚“: %s" -#: src/readelf.c:681 src/readelf.c:1294 src/readelf.c:1502 src/readelf.c:13001 +#: src/readelf.c:681 src/readelf.c:1307 src/readelf.c:1515 src/readelf.c:13033 #: src/unstrip.c:396 src/unstrip.c:427 src/unstrip.c:490 src/unstrip.c:610 #: src/unstrip.c:631 src/unstrip.c:671 src/unstrip.c:887 src/unstrip.c:1222 #: src/unstrip.c:1349 src/unstrip.c:1373 src/unstrip.c:1429 src/unstrip.c:1470 @@ -4142,8 +4154,8 @@ msgstr "セクションヘッダーをå–å¾—ã§ãã¾ã›ã‚“: %s" msgid "cannot get section name" msgstr "セクションåã‚’å–å¾—ã§ãã¾ã›ã‚“" -#: src/readelf.c:698 src/readelf.c:6797 src/readelf.c:10854 src/readelf.c:10956 -#: src/readelf.c:11134 +#: src/readelf.c:698 src/readelf.c:6833 src/readelf.c:10887 src/readelf.c:10989 +#: src/readelf.c:11173 #, c-format msgid "cannot get %s content: %s" msgstr "%s ã®å†…容をå–å¾—ã§ãã¾ã›ã‚“: %s" @@ -4213,38 +4225,44 @@ msgstr "プãƒã‚°ãƒ©ãƒ ヘッダã®æ•°ã‚’決定ã§ãã¾ã›ã‚“: %s" msgid "cannot read ELF: %s" msgstr "ELFã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“: %s" -#: src/readelf.c:1078 +#: src/readelf.c:1050 +#, fuzzy +#| msgid "cannot get section: %s" +msgid "cannot find section" +msgstr "セクションをå–å¾—ã§ãã¾ã›ã‚“: %s" + +#: src/readelf.c:1087 msgid "NONE (None)" msgstr "ãªã— (ãªã—)" -#: src/readelf.c:1079 +#: src/readelf.c:1088 msgid "REL (Relocatable file)" msgstr "REL (リãƒã‚±ãƒ¼ã‚¿ãƒ–ルファイル)" -#: src/readelf.c:1080 +#: src/readelf.c:1089 msgid "EXEC (Executable file)" msgstr "(EXEC (実行ファイル)" -#: src/readelf.c:1081 +#: src/readelf.c:1090 msgid "DYN (Shared object file)" msgstr "DYN (共用オブジェクトファイル)" -#: src/readelf.c:1082 +#: src/readelf.c:1091 msgid "CORE (Core file)" msgstr "CORE (コアファイル)" -#: src/readelf.c:1087 +#: src/readelf.c:1096 #, c-format msgid "OS Specific: (%x)\n" msgstr "OS 固有: (%x)\n" #. && e_type <= ET_HIPROC always true -#: src/readelf.c:1089 +#: src/readelf.c:1098 #, c-format msgid "Processor Specific: (%x)\n" msgstr "プãƒã‚»ãƒƒã‚µãƒ¼å›ºæœ‰: (%x)\n" -#: src/readelf.c:1099 +#: src/readelf.c:1108 msgid "" "ELF Header:\n" " Magic: " @@ -4252,7 +4270,7 @@ msgstr "" "ELF ヘッダー:\n" " マジック: " -#: src/readelf.c:1103 +#: src/readelf.c:1112 #, c-format msgid "" "\n" @@ -4261,123 +4279,123 @@ msgstr "" "\n" " クラス: %s\n" -#: src/readelf.c:1108 +#: src/readelf.c:1117 #, c-format msgid " Data: %s\n" msgstr " データ: %s\n" -#: src/readelf.c:1114 +#: src/readelf.c:1123 #, c-format msgid " Ident Version: %hhd %s\n" msgstr " è˜åˆ¥ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %hhd %s\n" -#: src/readelf.c:1116 src/readelf.c:1138 +#: src/readelf.c:1125 src/readelf.c:1147 msgid "(current)" msgstr "(ç¾åœ¨)" -#: src/readelf.c:1120 +#: src/readelf.c:1129 #, c-format msgid " OS/ABI: %s\n" msgstr " OS/ABI: %s\n" -#: src/readelf.c:1123 +#: src/readelf.c:1132 #, c-format msgid " ABI Version: %hhd\n" msgstr " ABI ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %hhd\n" -#: src/readelf.c:1126 +#: src/readelf.c:1135 msgid " Type: " msgstr " タイプ: " -#: src/readelf.c:1131 +#: src/readelf.c:1140 #, c-format msgid " Machine: %s\n" msgstr " マシン : %s\n" -#: src/readelf.c:1133 +#: src/readelf.c:1142 #, fuzzy, c-format msgid " Machine: <unknown>: 0x%x\n" msgstr " マシン : %s\n" -#: src/readelf.c:1136 +#: src/readelf.c:1145 #, c-format msgid " Version: %d %s\n" msgstr " ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %d %s\n" -#: src/readelf.c:1140 +#: src/readelf.c:1149 #, c-format msgid " Entry point address: %#<PRIx64>\n" msgstr " å…¥å£ç‚¹ã‚¢ãƒ‰ãƒ¬ã‚¹ : %#<PRIx64>\n" -#: src/readelf.c:1143 +#: src/readelf.c:1152 #, c-format msgid " Start of program headers: %<PRId64> %s\n" msgstr " プãƒã‚°ãƒ©ãƒ ヘッダーã®é–‹å§‹: %<PRId64> %s\n" -#: src/readelf.c:1144 src/readelf.c:1147 +#: src/readelf.c:1153 src/readelf.c:1156 msgid "(bytes into file)" msgstr "(ファイルã¸ã®ãƒã‚¤ãƒˆæ•°)" -#: src/readelf.c:1146 +#: src/readelf.c:1155 #, c-format msgid " Start of section headers: %<PRId64> %s\n" msgstr " セクションヘッダーã®é–‹å§‹: %<PRId64> %s\n" -#: src/readelf.c:1149 +#: src/readelf.c:1158 #, c-format msgid " Flags: %s\n" msgstr " フラグ: %s\n" -#: src/readelf.c:1152 +#: src/readelf.c:1161 #, c-format msgid " Size of this header: %<PRId16> %s\n" msgstr " ã“ã®ãƒ˜ãƒƒãƒ€ãƒ¼ã®å¤§ãã•: %<PRId16> %s\n" -#: src/readelf.c:1153 src/readelf.c:1156 src/readelf.c:1173 +#: src/readelf.c:1162 src/readelf.c:1165 src/readelf.c:1182 msgid "(bytes)" msgstr "(ãƒã‚¤ãƒˆ)" -#: src/readelf.c:1155 +#: src/readelf.c:1164 #, c-format msgid " Size of program header entries: %<PRId16> %s\n" msgstr " プãƒã‚°ãƒ©ãƒ ãƒ˜ãƒƒãƒ€ãƒ¼é …ç›®ã®å¤§ãã•:%<PRId16> %s\n" -#: src/readelf.c:1158 +#: src/readelf.c:1167 #, fuzzy, c-format msgid " Number of program headers entries: %<PRId16>" msgstr " プãƒã‚°ãƒ©ãƒ ãƒ˜ãƒƒãƒ€ãƒ¼é …ç›®ã®æ•° : %<PRId16>\n" -#: src/readelf.c:1165 +#: src/readelf.c:1174 #, fuzzy, c-format msgid " (%<PRIu32> in [0].sh_info)" msgstr "([0].sh_link ã® %<PRIu32>)" -#: src/readelf.c:1168 src/readelf.c:1185 src/readelf.c:1199 +#: src/readelf.c:1177 src/readelf.c:1194 src/readelf.c:1208 msgid " ([0] not available)" msgstr "([0]ã¯ä½¿ãˆã¾ã›ã‚“)" -#: src/readelf.c:1172 +#: src/readelf.c:1181 #, c-format msgid " Size of section header entries: %<PRId16> %s\n" msgstr " ã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼é …ç›®ã®å¤§ãã•:%<PRId16> %s\n" -#: src/readelf.c:1175 +#: src/readelf.c:1184 #, c-format msgid " Number of section headers entries: %<PRId16>" msgstr " ã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼é …ç›®ã®æ•° : %<PRId16>" -#: src/readelf.c:1182 +#: src/readelf.c:1191 #, c-format msgid " (%<PRIu32> in [0].sh_size)" msgstr " ([0].sh_size ã® %<PRIu32>)" #. We managed to get the zeroth section. -#: src/readelf.c:1195 +#: src/readelf.c:1204 #, c-format msgid " (%<PRIu32> in [0].sh_link)" msgstr "([0].sh_link ã® %<PRIu32>)" -#: src/readelf.c:1203 +#: src/readelf.c:1212 #, c-format msgid "" " Section header string table index: XINDEX%s\n" @@ -4386,7 +4404,7 @@ msgstr "" " セクションヘッダー文å—列テーブル索引: XINDEX%s\n" "\n" -#: src/readelf.c:1207 +#: src/readelf.c:1216 #, c-format msgid "" " Section header string table index: %<PRId16>\n" @@ -4395,12 +4413,12 @@ msgstr "" " セクションヘッダー文å—列テーブル索引: %<PRId16>\n" "\n" -#: src/readelf.c:1253 src/readelf.c:1461 +#: src/readelf.c:1266 src/readelf.c:1474 #, fuzzy, c-format msgid "cannot get number of sections: %s" msgstr "セクション数を決定ã§ãã¾ã›ã‚“: %s" -#: src/readelf.c:1256 +#: src/readelf.c:1269 #, fuzzy, c-format msgid "" "There are %zd section headers, starting at offset %#<PRIx64>:\n" @@ -4409,16 +4427,16 @@ msgstr "" "オフセット %2$#<PRIx64> ã‹ã‚‰å§‹ã¾ã‚‹ %1$d 個ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ãƒ˜ãƒƒãƒ€ãƒ¼ãŒã‚ã‚Šã¾ã™:\n" "\n" -#: src/readelf.c:1264 +#: src/readelf.c:1277 #, fuzzy, c-format msgid "cannot get section header string table index: %s" msgstr "セクションヘッダー文å—列テーブル索引ãŒå¾—られã¾ã›ã‚“" -#: src/readelf.c:1267 +#: src/readelf.c:1280 msgid "Section Headers:" msgstr "セクションヘッダー:" -#: src/readelf.c:1270 +#: src/readelf.c:1283 msgid "" "[Nr] Name Type Addr Off Size ES Flags Lk " "Inf Al" @@ -4426,7 +4444,7 @@ msgstr "" "[番] åå‰ ã‚¿ã‚¤ãƒ— アドレス オフセ 大ãã• ES フラグLk " "Inf Al" -#: src/readelf.c:1272 +#: src/readelf.c:1285 msgid "" "[Nr] Name Type Addr Off Size ES " "Flags Lk Inf Al" @@ -4434,35 +4452,35 @@ msgstr "" "[番] åå‰ ã‚¿ã‚¤ãƒ— アドレス オフセ 大ãã• ES " "フラグLk Inf Al" -#: src/readelf.c:1277 +#: src/readelf.c:1290 msgid " [Compression Size Al]" msgstr "" -#: src/readelf.c:1279 +#: src/readelf.c:1292 msgid " [Compression Size Al]" msgstr "" -#: src/readelf.c:1357 +#: src/readelf.c:1370 #, fuzzy, c-format msgid "bad compression header for section %zd: %s" msgstr "セクションヘッダー文å—列セクションを生æˆã§ãã¾ã›ã‚“: %s" -#: src/readelf.c:1368 +#: src/readelf.c:1381 #, fuzzy, c-format msgid "bad gnu compressed size for section %zd: %s" msgstr "セクションã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ã‚’得られã¾ã›ã‚“ %d: %s" -#: src/readelf.c:1386 +#: src/readelf.c:1399 msgid "Program Headers:" msgstr "プãƒã‚°ãƒ©ãƒ ヘッダー:" -#: src/readelf.c:1388 +#: src/readelf.c:1401 msgid "" " Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align" msgstr "" " タイプ オフセ 仮アドレス 物アドレス ãƒ•ã‚¡ã‚¤é‡ ãƒ¡ãƒ¢é‡ Flg 調整 " -#: src/readelf.c:1391 +#: src/readelf.c:1404 msgid "" " Type Offset VirtAddr PhysAddr FileSiz " "MemSiz Flg Align" @@ -4470,12 +4488,12 @@ msgstr "" " タイプ オフセ 仮想アドレス 物ç†ã‚¢ãƒ‰ãƒ¬ã‚¹ ファイルé‡ãƒ¡ãƒ¢" "é‡ Flg 調整 " -#: src/readelf.c:1448 +#: src/readelf.c:1461 #, c-format msgid "\t[Requesting program interpreter: %s]\n" msgstr "\t[プãƒã‚°ãƒ©ãƒ 割込ã¿ã‚’è¦æ±‚: %s]\n" -#: src/readelf.c:1473 +#: src/readelf.c:1486 msgid "" "\n" " Section to Segment mapping:\n" @@ -4485,12 +4503,12 @@ msgstr "" " セクションã‹ã‚‰ã‚»ã‚°ãƒ¡ãƒ³ãƒˆã¸ã®ãƒžãƒƒãƒ“ング:\n" " セグメント セクション..." -#: src/readelf.c:1484 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 +#: src/readelf.c:1497 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 #, c-format msgid "cannot get program header: %s" msgstr "プãƒã‚°ãƒ©ãƒ ヘッダーを得られã¾ã›ã‚“: %s" -#: src/readelf.c:1628 +#: src/readelf.c:1641 #, c-format msgid "" "\n" @@ -4503,7 +4521,7 @@ msgstr[0] "" "ç½²å '%3$s' ã‚’æŒã¤ COMDAT セクショングループ [%1$2zu] '%2$s' ã«ã¯ %4$zu 個ã®" "é …ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:1633 +#: src/readelf.c:1646 #, c-format msgid "" "\n" @@ -4516,31 +4534,32 @@ msgstr[0] "" "ç½²å '%3$s' ã‚’æŒã¤ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚°ãƒ«ãƒ¼ãƒ— [%1$2zu] '%2$s' ã«ã¯ %4$zu 個ã®é …ç›®ãŒã‚" "ã‚Šã¾ã™:\n" -#: src/readelf.c:1641 +#: src/readelf.c:1654 msgid "<INVALID SYMBOL>" msgstr "<ä¸å½“ãªã‚·ãƒ³ãƒœãƒ«>" -#: src/readelf.c:1655 +#: src/readelf.c:1668 msgid "<INVALID SECTION>" msgstr "<ä¸å½“ãªã‚»ã‚¯ã‚·ãƒ§ãƒ³>" -#: src/readelf.c:1678 src/readelf.c:2461 src/readelf.c:3563 src/readelf.c:12873 -#: src/readelf.c:12880 src/readelf.c:12924 src/readelf.c:12931 +#: src/readelf.c:1691 src/readelf.c:2476 src/readelf.c:3581 src/readelf.c:3881 +#: src/readelf.c:12905 src/readelf.c:12912 src/readelf.c:12956 +#: src/readelf.c:12963 msgid "Couldn't uncompress section" msgstr "" -#: src/readelf.c:1682 src/readelf.c:2466 src/readelf.c:3567 +#: src/readelf.c:1695 src/readelf.c:2481 src/readelf.c:3585 #, fuzzy, c-format msgid "cannot get section [%zd] header: %s" msgstr "セクションヘッダーを得られã¾ã›ã‚“: %s" -#: src/readelf.c:1851 src/readelf.c:2532 src/readelf.c:2797 src/readelf.c:2872 -#: src/readelf.c:3175 src/readelf.c:3249 src/readelf.c:5570 +#: src/readelf.c:1864 src/readelf.c:2550 src/readelf.c:2815 src/readelf.c:2890 +#: src/readelf.c:3193 src/readelf.c:3267 src/readelf.c:5619 #, fuzzy, c-format msgid "invalid sh_link value in section %zu" msgstr "ä¸å½“㪠.debug_line セクション" -#: src/readelf.c:1854 +#: src/readelf.c:1867 #, c-format msgid "" "\n" @@ -4556,7 +4575,7 @@ msgstr[0] "" " アドレス: %#0*<PRIx64> オフセット: %#08<PRIx64> セクションã¸ã®ãƒªãƒ³ã‚¯: " "[%2u] '%s'\n" -#: src/readelf.c:1867 +#: src/readelf.c:1880 #, fuzzy, c-format #| msgid "" #| "\n" @@ -4580,42 +4599,42 @@ msgstr[0] "" " アドレス: %#0*<PRIx64> オフセット: %#08<PRIx64> セクションã¸ã®ãƒªãƒ³ã‚¯: " "[%2u] '%s'\n" -#: src/readelf.c:1877 +#: src/readelf.c:1890 msgid " Type Value\n" msgstr " タイプ 値\n" -#: src/readelf.c:1886 +#: src/readelf.c:1899 #, fuzzy #| msgid "cannot get string section data: %s" msgid "cannot get string table by using dynamic segment" msgstr "æ–‡å—列セクションデータをå–å¾—ã§ãã¾ã›ã‚“: %s" -#: src/readelf.c:1925 +#: src/readelf.c:1938 #, c-format msgid "Shared library: [%s]\n" msgstr "共用ライブラリー: [%s]\n" -#: src/readelf.c:1929 +#: src/readelf.c:1942 #, c-format msgid "Library soname: [%s]\n" msgstr "ライブラリー so å: [%s]\n" -#: src/readelf.c:1933 +#: src/readelf.c:1946 #, c-format msgid "Library rpath: [%s]\n" msgstr "ライブラリー rパス: [%s]\n" -#: src/readelf.c:1937 +#: src/readelf.c:1950 #, c-format msgid "Library runpath: [%s]\n" msgstr "ライブラリー run パス: [%s]\n" -#: src/readelf.c:1956 +#: src/readelf.c:1969 #, c-format msgid "%<PRId64> (bytes)\n" msgstr "%<PRId64> (ãƒã‚¤ãƒˆ)\n" -#: src/readelf.c:2070 src/readelf.c:2259 +#: src/readelf.c:2083 src/readelf.c:2272 #, c-format msgid "" "\n" @@ -4624,7 +4643,7 @@ msgstr "" "\n" "オフセット %#0<PRIx64> ã«ä¸å½“ãªã‚·ãƒ³ãƒœãƒ«ãƒ†ãƒ¼ãƒ–ル\n" -#: src/readelf.c:2087 src/readelf.c:2276 +#: src/readelf.c:2100 src/readelf.c:2289 #, c-format msgid "" "\n" @@ -4645,7 +4664,7 @@ msgstr[0] "" #. The .rela.dyn section does not refer to a specific section but #. instead of section index zero. Do not try to print a section #. name. -#: src/readelf.c:2102 src/readelf.c:2291 +#: src/readelf.c:2115 src/readelf.c:2304 #, c-format msgid "" "\n" @@ -4658,29 +4677,29 @@ msgstr[0] "" "オフセット %3$#0<PRIx64> ã®ãƒªãƒã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%1$2u] '%2$s' ã«ã¯ %4$d " "個ã®é …ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:2112 +#: src/readelf.c:2125 msgid " Offset Type Value Name\n" msgstr " オフセット タイプ 値 åå‰\n" -#: src/readelf.c:2114 +#: src/readelf.c:2127 msgid " Offset Type Value Name\n" msgstr " オフセット タイプ 値 åå‰\n" -#: src/readelf.c:2167 src/readelf.c:2178 src/readelf.c:2191 src/readelf.c:2212 -#: src/readelf.c:2224 src/readelf.c:2357 src/readelf.c:2369 src/readelf.c:2383 -#: src/readelf.c:2405 src/readelf.c:2418 +#: src/readelf.c:2180 src/readelf.c:2191 src/readelf.c:2204 src/readelf.c:2225 +#: src/readelf.c:2237 src/readelf.c:2370 src/readelf.c:2382 src/readelf.c:2396 +#: src/readelf.c:2418 src/readelf.c:2431 msgid "<INVALID RELOC>" msgstr "<ä¸å½“ãªRELOC>" -#: src/readelf.c:2301 +#: src/readelf.c:2314 msgid " Offset Type Value Addend Name\n" msgstr " オフセット タイプ 値 ä»˜åŠ å\n" -#: src/readelf.c:2303 +#: src/readelf.c:2316 msgid " Offset Type Value Addend Name\n" msgstr " オフセット タイプ 値 ä»˜åŠ å\n" -#: src/readelf.c:2540 +#: src/readelf.c:2558 #, c-format msgid "" "\n" @@ -4692,39 +4711,39 @@ msgstr[0] "" "\n" "シンボルテーブル [%2u] '%s' ã«ã¯ %u 個ã®é …ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:2545 +#: src/readelf.c:2563 #, c-format msgid " %lu local symbol String table: [%2u] '%s'\n" msgid_plural " %lu local symbols String table: [%2u] '%s'\n" msgstr[0] " %lu ãƒãƒ¼ã‚«ãƒ«ã‚·ãƒ³ãƒœãƒ«æ–‡å—列テーブル: [%2u] '%s'\n" -#: src/readelf.c:2553 +#: src/readelf.c:2571 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr " æ•° : 値 大ã タイプ Bind Vis Ndx åå‰\n" -#: src/readelf.c:2555 +#: src/readelf.c:2573 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr " æ•° : 値 大ã タイプ Bind Vis Ndx åå‰\n" -#: src/readelf.c:2575 +#: src/readelf.c:2593 #, c-format msgid "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" msgstr "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" -#: src/readelf.c:2668 +#: src/readelf.c:2686 #, c-format msgid "bad dynamic symbol" msgstr "ä¸æ£ãªå‹•çš„シンボル" -#: src/readelf.c:2753 +#: src/readelf.c:2771 msgid "none" msgstr "ãªã—" -#: src/readelf.c:2770 +#: src/readelf.c:2788 msgid "| <unknown>" msgstr "| <ä¸æ˜Ž>" -#: src/readelf.c:2800 +#: src/readelf.c:2818 #, c-format msgid "" "\n" @@ -4740,17 +4759,17 @@ msgstr[0] "" " アドレス: %#0*<PRIx64> オフセット: %#08<PRIx64> セクションã¸ã®ãƒªãƒ³ã‚¯: " "[%2u] '%s'\n" -#: src/readelf.c:2821 +#: src/readelf.c:2839 #, c-format msgid " %#06x: Version: %hu File: %s Cnt: %hu\n" msgstr " %#06x: ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %hu ファイル: %s æ•°: %hu\n" -#: src/readelf.c:2834 +#: src/readelf.c:2852 #, c-format msgid " %#06x: Name: %s Flags: %s Version: %hu\n" msgstr " %#06x: åå‰: %s フラグ: %s ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %hu\n" -#: src/readelf.c:2876 +#: src/readelf.c:2894 #, c-format msgid "" "\n" @@ -4766,18 +4785,18 @@ msgstr[0] "" " アドレス: %#0*<PRIx64> オフセット: %#08<PRIx64> セクションã¸ã®ãƒªãƒ³ã‚¯: " "[%2u] '%s'\n" -#: src/readelf.c:2904 +#: src/readelf.c:2922 #, c-format msgid " %#06x: Version: %hd Flags: %s Index: %hd Cnt: %hd Name: %s\n" msgstr " %#06x: ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %hd フラグ: %s 索引: %hd æ•°: %hd åå‰: %s\n" -#: src/readelf.c:2919 +#: src/readelf.c:2937 #, c-format msgid " %#06x: Parent %d: %s\n" msgstr " %#06x: 親 %d: %s\n" #. Print the header. -#: src/readelf.c:3179 +#: src/readelf.c:3197 #, c-format msgid "" "\n" @@ -4793,15 +4812,15 @@ msgstr[0] "" " アドレス: %#0*<PRIx64> オフセット: %#08<PRIx64> セクションã¸ã®ãƒªãƒ³ã‚¯: " "[%2u] '%s'" -#: src/readelf.c:3207 +#: src/readelf.c:3225 msgid " 0 *local* " msgstr " 0 *ãƒãƒ¼ã‚«ãƒ«* " -#: src/readelf.c:3212 +#: src/readelf.c:3230 msgid " 1 *global* " msgstr " 1 *ã‚°ãƒãƒ¼ãƒãƒ«* " -#: src/readelf.c:3254 +#: src/readelf.c:3272 #, c-format msgid "" "\n" @@ -4819,22 +4838,22 @@ msgstr[0] "" " アドレス: %#0*<PRIx64> オフセット: %#08<PRIx64> セクションã¸ã®ãƒªãƒ³ã‚¯: " "[%2u] '%s'\n" -#: src/readelf.c:3276 +#: src/readelf.c:3294 #, fuzzy, no-c-format msgid " Length Number % of total Coverage\n" msgstr " é•·ã• æ•° 全体ã®% 範囲 \n" -#: src/readelf.c:3278 +#: src/readelf.c:3296 #, c-format msgid " 0 %6<PRIu32> %5.1f%%\n" msgstr " 0 %6<PRIu32> %5.1f%%\n" -#: src/readelf.c:3285 +#: src/readelf.c:3303 #, c-format msgid "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" msgstr "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" -#: src/readelf.c:3298 +#: src/readelf.c:3316 #, fuzzy, c-format msgid "" " Average number of tests: successful lookup: %f\n" @@ -4843,37 +4862,37 @@ msgstr "" " テストã®å¹³å‡æ•°: 検索æˆåŠŸ: %f\n" " 検索失敗: %f\n" -#: src/readelf.c:3316 src/readelf.c:3380 src/readelf.c:3446 +#: src/readelf.c:3334 src/readelf.c:3398 src/readelf.c:3464 #, c-format msgid "cannot get data for section %d: %s" msgstr "セクションã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ã‚’得られã¾ã›ã‚“ %d: %s" -#: src/readelf.c:3324 +#: src/readelf.c:3342 #, fuzzy, c-format msgid "invalid data in sysv.hash section %d" msgstr "セクション [%zu] '%s' ã®ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:3353 +#: src/readelf.c:3371 #, fuzzy, c-format msgid "invalid chain in sysv.hash section %d" msgstr "セクション [%zu] '%s' ã®ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:3388 +#: src/readelf.c:3406 #, fuzzy, c-format msgid "invalid data in sysv.hash64 section %d" msgstr "セクション [%zu] '%s' ã®ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:3419 +#: src/readelf.c:3437 #, fuzzy, c-format msgid "invalid chain in sysv.hash64 section %d" msgstr "セクション [%zu] '%s' ã®ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:3455 +#: src/readelf.c:3473 #, fuzzy, c-format msgid "invalid data in gnu.hash section %d" msgstr "セクション [%zu] '%s' ã®ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:3521 +#: src/readelf.c:3539 #, c-format msgid "" " Symbol Bias: %u\n" @@ -4883,7 +4902,7 @@ msgstr "" " ビットマスクã®å¤§ãã•: %zu ãƒã‚¤ãƒˆ %<PRIuFAST32>%% ビットè¨å®š 第2ãƒãƒƒã‚·ãƒ¥ã‚·ãƒ•" "ト: %u\n" -#: src/readelf.c:3606 +#: src/readelf.c:3624 #, c-format msgid "" "\n" @@ -4896,7 +4915,7 @@ msgstr[0] "" "オフセット %3$#0<PRIx64> ã®ãƒ©ã‚¤ãƒ–ラリー一覧セクション [%1$2zu] '%2$s' ã«ã¯ " "%4$d 個ã®é …ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:3620 +#: src/readelf.c:3638 msgid "" " Library Time Stamp Checksum Version " "Flags" @@ -4904,7 +4923,7 @@ msgstr "" " ライブラリー タイムスタンプ ãƒã‚§ãƒƒã‚¯ã‚µãƒ ãƒãƒ¼" "ジョン フラグ" -#: src/readelf.c:3680 +#: src/readelf.c:3698 #, c-format msgid "" "\n" @@ -4915,101 +4934,107 @@ msgstr "" "オフセット %4$#0<PRIx64> ã® %3$<PRIu64> ãƒã‚¤ãƒˆã®ã‚ªãƒ–ジェクト属性セクション " "[%1$2zu] '%2$s':\n" -#: src/readelf.c:3697 +#: src/readelf.c:3715 msgid " Owner Size\n" msgstr " 所有者 大ãã•\n" -#: src/readelf.c:3721 +#: src/readelf.c:3739 #, c-format msgid " %-13s %4<PRIu32>\n" msgstr " %-13s %4<PRIu32>\n" #. Unknown subsection, print and skip. -#: src/readelf.c:3760 +#: src/readelf.c:3778 #, c-format msgid " %-4u %12<PRIu32>\n" msgstr " %-4u %12<PRIu32>\n" #. Tag_File -#: src/readelf.c:3765 +#: src/readelf.c:3783 #, c-format msgid " File: %11<PRIu32>\n" msgstr " ファイル: %11<PRIu32>\n" -#: src/readelf.c:3814 +#: src/readelf.c:3833 #, c-format msgid " %s: %<PRId64>, %s\n" msgstr " %s: %<PRId64>ã€%s\n" -#: src/readelf.c:3817 +#: src/readelf.c:3836 #, c-format msgid " %s: %<PRId64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:3820 +#: src/readelf.c:3839 #, c-format msgid " %s: %s\n" msgstr " %s: %s\n" -#: src/readelf.c:3830 +#: src/readelf.c:3849 #, c-format msgid " %u: %<PRId64>\n" msgstr " %u: %<PRId64>\n" -#: src/readelf.c:3833 +#: src/readelf.c:3852 #, c-format msgid " %u: %s\n" msgstr " %u: %s\n" -#: src/readelf.c:3903 +#: src/readelf.c:3890 +#, fuzzy +#| msgid "couldn't get shdr for group section: %s" +msgid "Couldn't get data from section" +msgstr "グループセクションã«å¯¾ã™ã‚‹ shdr ã‚’å–å¾—ã§ãã¾ã›ã‚“ã§ã—ãŸ: %s" + +#: src/readelf.c:3955 msgid "sprintf failure" msgstr "" -#: src/readelf.c:4387 +#: src/readelf.c:4439 msgid "empty block" msgstr "空ブãƒãƒƒã‚¯" -#: src/readelf.c:4390 +#: src/readelf.c:4442 #, c-format msgid "%zu byte block:" msgstr "%zu ãƒã‚¤ãƒˆã®ãƒ–ãƒãƒƒã‚¯:" -#: src/readelf.c:4868 +#: src/readelf.c:4920 #, fuzzy, c-format msgid "%*s[%2<PRIuMAX>] %s <TRUNCATED>\n" msgstr "%*s[%4<PRIuMAX>] %s <TRUNCATED>\n" -#: src/readelf.c:5028 +#: src/readelf.c:5080 #, c-format msgid "%s %#<PRIx64> used with different address sizes" msgstr "" -#: src/readelf.c:5035 +#: src/readelf.c:5087 #, c-format msgid "%s %#<PRIx64> used with different offset sizes" msgstr "" -#: src/readelf.c:5042 +#: src/readelf.c:5094 #, c-format msgid "%s %#<PRIx64> used with different base addresses" msgstr "" -#: src/readelf.c:5049 +#: src/readelf.c:5101 #, c-format msgid "%s %#<PRIx64> used with different attribute %s and %s" msgstr "" -#: src/readelf.c:5149 +#: src/readelf.c:5201 #, c-format msgid " [%6tx] <UNUSED GARBAGE IN REST OF SECTION>\n" msgstr "" -#: src/readelf.c:5157 +#: src/readelf.c:5209 #, c-format msgid " [%6tx] <UNUSED GARBAGE> ... %<PRIu64> bytes ...\n" msgstr "" -#: src/readelf.c:5260 +#: src/readelf.c:5315 #, c-format msgid "" "\n" @@ -5020,7 +5045,7 @@ msgstr "" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s':\n" " [ コード]\n" -#: src/readelf.c:5268 +#: src/readelf.c:5323 #, c-format msgid "" "\n" @@ -5029,20 +5054,20 @@ msgstr "" "\n" "オフセット %<PRIu64> ã®ç•¥èªžã‚»ã‚¯ã‚·ãƒ§ãƒ³:\n" -#: src/readelf.c:5281 +#: src/readelf.c:5336 #, c-format msgid " *** error while reading abbreviation: %s\n" msgstr " *** 略語をèªã‚“ã§ã„ã‚‹é–“ã«ã‚¨ãƒ©ãƒ¼: %s\n" -#: src/readelf.c:5297 +#: src/readelf.c:5352 #, c-format msgid " [%5u] offset: %<PRId64>, children: %s, tag: %s\n" msgstr " [%5u] オフセット: %<PRId64>ã€å: %sã€ã‚¿ã‚°: %s\n" -#: src/readelf.c:5330 src/readelf.c:5639 src/readelf.c:5806 src/readelf.c:6191 -#: src/readelf.c:6807 src/readelf.c:8562 src/readelf.c:9308 src/readelf.c:9791 -#: src/readelf.c:10042 src/readelf.c:10208 src/readelf.c:10595 -#: src/readelf.c:10655 +#: src/readelf.c:5389 src/readelf.c:5682 src/readelf.c:5853 src/readelf.c:6224 +#: src/readelf.c:6850 src/readelf.c:8619 src/readelf.c:9361 src/readelf.c:9829 +#: src/readelf.c:10084 src/readelf.c:10246 src/readelf.c:10627 +#: src/readelf.c:10698 #, c-format msgid "" "\n" @@ -5051,52 +5076,47 @@ msgstr "" "\n" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s':\n" -#: src/readelf.c:5343 -#, fuzzy, c-format -msgid "cannot get .debug_addr section data: %s" -msgstr "セクションデータを割り当ã¦ã‚‰ã‚Œã¾ã›ã‚“: %s" - -#: src/readelf.c:5443 src/readelf.c:5467 src/readelf.c:5851 src/readelf.c:9353 +#: src/readelf.c:5492 src/readelf.c:5516 src/readelf.c:5889 src/readelf.c:9397 #, fuzzy, c-format msgid " Length: %8<PRIu64>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:5445 src/readelf.c:5482 src/readelf.c:5864 src/readelf.c:9366 +#: src/readelf.c:5494 src/readelf.c:5531 src/readelf.c:5902 src/readelf.c:9410 #, fuzzy, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5446 src/readelf.c:5491 src/readelf.c:5873 src/readelf.c:9375 +#: src/readelf.c:5495 src/readelf.c:5540 src/readelf.c:5911 src/readelf.c:9419 #, fuzzy, c-format msgid " Address size: %8<PRIu64>\n" msgstr " (終了オフセット: %#<PRIx64>)" -#: src/readelf.c:5448 src/readelf.c:5501 src/readelf.c:5883 src/readelf.c:9385 +#: src/readelf.c:5497 src/readelf.c:5550 src/readelf.c:5921 src/readelf.c:9429 #, fuzzy, c-format msgid " Segment size: %8<PRIu64>\n" msgstr " ファイルを %<PRIu64> ã«è¨å®šã™ã‚‹\n" -#: src/readelf.c:5486 src/readelf.c:5868 src/readelf.c:9370 src/readelf.c:10787 +#: src/readelf.c:5535 src/readelf.c:5906 src/readelf.c:9414 src/readelf.c:10820 #, fuzzy, c-format msgid "Unknown version" msgstr "ä¸æ˜Žãªãƒãƒ¼ã‚¸ãƒ§ãƒ³" -#: src/readelf.c:5496 src/readelf.c:5709 src/readelf.c:5878 src/readelf.c:9380 +#: src/readelf.c:5545 src/readelf.c:5752 src/readelf.c:5916 src/readelf.c:9424 #, fuzzy, c-format msgid "unsupported address size" msgstr "アドレス値ã§ã¯ã‚ã‚Šã¾ã›ã‚“" -#: src/readelf.c:5507 src/readelf.c:5720 src/readelf.c:5888 src/readelf.c:9390 +#: src/readelf.c:5556 src/readelf.c:5763 src/readelf.c:5926 src/readelf.c:9434 #, c-format msgid "unsupported segment size" msgstr "" -#: src/readelf.c:5560 src/readelf.c:5634 +#: src/readelf.c:5609 #, c-format msgid "cannot get .debug_aranges content: %s" msgstr ".debug_aragnes ã®å†…容を得られã¾ã›ã‚“: %s" -#: src/readelf.c:5575 +#: src/readelf.c:5624 #, c-format msgid "" "\n" @@ -5109,19 +5129,19 @@ msgstr[0] "" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s' ã«ã¯ %4$zu 個ã®é …" "ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:5606 +#: src/readelf.c:5655 #, c-format msgid " [%*zu] ???\n" msgstr " [%*zu] ???\n" -#: src/readelf.c:5608 +#: src/readelf.c:5657 #, c-format msgid "" " [%*zu] start: %0#*<PRIx64>, length: %5<PRIu64>, CU DIE offset: %6<PRId64>\n" msgstr "" " [%*zu] 開始: %0#*<PRIx64>ã€é•·ã•: %5<PRIu64>ã€CU DIE オフセット: %6<PRId64>\n" -#: src/readelf.c:5652 src/readelf.c:8589 +#: src/readelf.c:5695 src/readelf.c:8638 #, fuzzy, c-format msgid "" "\n" @@ -5130,152 +5150,142 @@ msgstr "" "\n" "オフセット %Zu ã®ãƒ†ãƒ¼ãƒ–ル:\n" -#: src/readelf.c:5656 src/readelf.c:5832 src/readelf.c:6831 src/readelf.c:8600 -#: src/readelf.c:9334 +#: src/readelf.c:5699 src/readelf.c:5870 src/readelf.c:6874 src/readelf.c:8649 +#: src/readelf.c:9378 #, c-format msgid "invalid data in section [%zu] '%s'" msgstr "セクション [%zu] '%s' ã®ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:5672 +#: src/readelf.c:5715 #, fuzzy, c-format msgid "" "\n" " Length: %6<PRIu64>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:5684 +#: src/readelf.c:5727 #, fuzzy, c-format msgid " DWARF version: %6<PRIuFAST16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:5688 +#: src/readelf.c:5731 #, c-format msgid "unsupported aranges version" msgstr "" -#: src/readelf.c:5699 +#: src/readelf.c:5742 #, fuzzy, c-format msgid " CU offset: %6<PRIx64>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:5705 +#: src/readelf.c:5748 #, fuzzy, c-format msgid " Address size: %6<PRIu64>\n" msgstr " (終了オフセット: %#<PRIx64>)" -#: src/readelf.c:5716 +#: src/readelf.c:5759 #, fuzzy, c-format msgid "" " Segment size: %6<PRIu64>\n" "\n" msgstr " ファイルを %<PRIu64> ã«è¨å®šã™ã‚‹\n" -#: src/readelf.c:5771 +#: src/readelf.c:5814 #, c-format msgid " %zu padding bytes\n" msgstr "" -#: src/readelf.c:5815 -#, fuzzy, c-format -msgid "cannot get .debug_rnglists content: %s" -msgstr ".degub_ranges ã®å†…容を得られã¾ã›ã‚“: %s" - -#: src/readelf.c:5838 src/readelf.c:9340 +#: src/readelf.c:5876 src/readelf.c:9384 #, fuzzy, c-format msgid "" "Table at Offset 0x%<PRIx64>:\n" "\n" msgstr " (終了オフセット: %#<PRIx64>)" -#: src/readelf.c:5893 src/readelf.c:9395 +#: src/readelf.c:5931 src/readelf.c:9439 #, fuzzy, c-format msgid " Offset entries: %8<PRIu64>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:5909 src/readelf.c:9411 +#: src/readelf.c:5947 src/readelf.c:9455 #, c-format msgid " Unknown CU base: " msgstr "" -#: src/readelf.c:5911 src/readelf.c:9413 +#: src/readelf.c:5949 src/readelf.c:9457 #, c-format msgid " CU [%6<PRIx64>] base: " msgstr "" -#: src/readelf.c:5917 src/readelf.c:9419 +#: src/readelf.c:5955 src/readelf.c:9463 #, c-format msgid " Not associated with a CU.\n" msgstr "" -#: src/readelf.c:5928 src/readelf.c:9430 +#: src/readelf.c:5966 src/readelf.c:9474 #, c-format msgid "too many offset entries for unit length" msgstr "" -#: src/readelf.c:5932 src/readelf.c:9434 +#: src/readelf.c:5970 src/readelf.c:9478 #, fuzzy, c-format msgid " Offsets starting at 0x%<PRIx64>:\n" msgstr " 所有者 大ãã•\n" -#: src/readelf.c:5984 +#: src/readelf.c:6022 #, fuzzy, c-format msgid "invalid range list data" msgstr "ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:6169 src/readelf.c:9769 +#: src/readelf.c:6207 src/readelf.c:9813 #, c-format msgid "" " %zu padding bytes\n" "\n" msgstr "" -#: src/readelf.c:6186 -#, c-format -msgid "cannot get .debug_ranges content: %s" -msgstr ".degub_ranges ã®å†…容を得られã¾ã›ã‚“: %s" - -#: src/readelf.c:6222 src/readelf.c:9824 +#: src/readelf.c:6255 src/readelf.c:9862 #, c-format msgid "" "\n" " Unknown CU base: " msgstr "" -#: src/readelf.c:6224 src/readelf.c:9826 +#: src/readelf.c:6257 src/readelf.c:9864 #, c-format msgid "" "\n" " CU [%6<PRIx64>] base: " msgstr "" -#: src/readelf.c:6233 src/readelf.c:9852 src/readelf.c:9878 +#: src/readelf.c:6266 src/readelf.c:9890 src/readelf.c:9916 #, c-format msgid " [%6tx] <INVALID DATA>\n" msgstr " [%6tx] <ä¸å½“ãªãƒ‡ãƒ¼ã‚¿>\n" -#: src/readelf.c:6258 src/readelf.c:9962 +#: src/readelf.c:6291 src/readelf.c:10000 #, fuzzy msgid "base address" msgstr "アドレスを %s ã«è¨å®šã™ã‚‹\n" -#: src/readelf.c:6268 src/readelf.c:9972 +#: src/readelf.c:6301 src/readelf.c:10010 #, fuzzy, c-format msgid " [%6tx] empty list\n" msgstr "" "\n" " [%6tx] ゼãƒçµ‚端\n" -#: src/readelf.c:6528 +#: src/readelf.c:6565 #, fuzzy msgid " <INVALID DATA>\n" msgstr " [%6tx] <ä¸å½“ãªãƒ‡ãƒ¼ã‚¿>\n" -#: src/readelf.c:6785 +#: src/readelf.c:6822 #, fuzzy, c-format msgid "cannot get ELF: %s" msgstr "次㮠DIE を得られã¾ã›ã‚“: %s" -#: src/readelf.c:6803 +#: src/readelf.c:6846 #, c-format msgid "" "\n" @@ -5284,7 +5294,7 @@ msgstr "" "\n" "オフセット %3$#<PRIx64> ã® ãƒ•ãƒ¬ãƒ¼ãƒ æƒ…å ±å‘¼å‡ºã—セクション [%1$2zu] '%2$s':\n" -#: src/readelf.c:6853 +#: src/readelf.c:6896 #, c-format msgid "" "\n" @@ -5293,65 +5303,65 @@ msgstr "" "\n" " [%6tx] ゼãƒçµ‚端\n" -#: src/readelf.c:6954 src/readelf.c:7108 +#: src/readelf.c:7000 src/readelf.c:7154 #, fuzzy, c-format msgid "invalid augmentation length" msgstr "ä¸å½“ãªæ‹¡å¤§ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰" -#: src/readelf.c:6969 +#: src/readelf.c:7015 msgid "FDE address encoding: " msgstr "FDE アドレスエンコード" -#: src/readelf.c:6975 +#: src/readelf.c:7021 msgid "LSDA pointer encoding: " msgstr "LSDA ãƒã‚¤ãƒ³ã‚¿ãƒ¼ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰:" -#: src/readelf.c:7085 +#: src/readelf.c:7131 #, c-format msgid " (offset: %#<PRIx64>)" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:7092 +#: src/readelf.c:7138 #, c-format msgid " (end offset: %#<PRIx64>)" msgstr " (終了オフセット: %#<PRIx64>)" -#: src/readelf.c:7129 +#: src/readelf.c:7175 #, c-format msgid " %-26sLSDA pointer: %#<PRIx64>\n" msgstr " %-26sLSDA ãƒã‚¤ãƒ³ã‚¿ãƒ¼: %#<PRIx64>\n" -#: src/readelf.c:7214 +#: src/readelf.c:7260 #, fuzzy, c-format msgid "DIE [%<PRIx64>] cannot get attribute code: %s" msgstr "属性コードを得られã¾ã›ã‚“: %s" -#: src/readelf.c:7224 +#: src/readelf.c:7270 #, fuzzy, c-format msgid "DIE [%<PRIx64>] cannot get attribute form: %s" msgstr "属性様å¼ã‚’得られã¾ã›ã‚“: %s" -#: src/readelf.c:7246 +#: src/readelf.c:7292 #, fuzzy, c-format msgid "DIE [%<PRIx64>] cannot get attribute '%s' (%s) value: %s" msgstr "属性値を得られã¾ã›ã‚“: %s" -#: src/readelf.c:7576 +#: src/readelf.c:7622 #, fuzzy, c-format msgid "invalid file (%<PRId64>): %s" msgstr "ä¸å½“ãªãƒ•ã‚¡ã‚¤ãƒ«" -#: src/readelf.c:7580 +#: src/readelf.c:7626 #, fuzzy, c-format msgid "no srcfiles for CU [%<PRIx64>]" msgstr " ファイルを %<PRIu64> ã«è¨å®šã™ã‚‹\n" -#: src/readelf.c:7584 +#: src/readelf.c:7630 #, fuzzy, c-format msgid "couldn't get DWARF CU: %s" msgstr "次㮠DIE を得られã¾ã›ã‚“: %s" -#: src/readelf.c:7899 +#: src/readelf.c:7952 #, c-format msgid "" "\n" @@ -5362,12 +5372,12 @@ msgstr "" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s':\n" " [オフセット]\n" -#: src/readelf.c:7949 +#: src/readelf.c:8002 #, fuzzy, c-format msgid "cannot get next unit: %s" msgstr "次㮠DIE を得られã¾ã›ã‚“: %s" -#: src/readelf.c:7969 +#: src/readelf.c:8022 #, fuzzy, c-format msgid "" " Type unit at offset %<PRIu64>:\n" @@ -5379,7 +5389,7 @@ msgstr "" " ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %2$<PRIu16>ã€ç•¥èªžã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚ªãƒ•ã‚»ãƒƒãƒˆ: %3$<PRIu64>ã€ã‚¢ãƒ‰ãƒ¬ã‚¹ã®å¤§" "ãã•: %4$<PRIu8>ã€ã‚ªãƒ•ã‚»ãƒƒãƒˆã®å¤§ãã•: %5$<PRIu8>\n" -#: src/readelf.c:7981 +#: src/readelf.c:8034 #, c-format msgid "" " Compilation unit at offset %<PRIu64>:\n" @@ -5390,39 +5400,39 @@ msgstr "" " ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %2$<PRIu16>ã€ç•¥èªžã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚ªãƒ•ã‚»ãƒƒãƒˆ: %3$<PRIu64>ã€ã‚¢ãƒ‰ãƒ¬ã‚¹ã®å¤§" "ãã•: %4$<PRIu8>ã€ã‚ªãƒ•ã‚»ãƒƒãƒˆã®å¤§ãã•: %5$<PRIu8>\n" -#: src/readelf.c:7991 src/readelf.c:8152 +#: src/readelf.c:8044 src/readelf.c:8205 #, c-format msgid " Unit type: %s (%<PRIu8>)" msgstr "" -#: src/readelf.c:8018 +#: src/readelf.c:8071 #, c-format msgid "unknown version (%d) or unit type (%d)" msgstr "" -#: src/readelf.c:8047 +#: src/readelf.c:8100 #, c-format msgid "cannot get DIE offset: %s" msgstr "DIE オフセットを得られã¾ã›ã‚“: %s" -#: src/readelf.c:8056 +#: src/readelf.c:8109 #, fuzzy, c-format msgid "cannot get tag of DIE at offset [%<PRIx64>] in section '%s': %s" msgstr "" "セクション '%2$s' ä¸ã®ã‚ªãƒ•ã‚»ãƒƒãƒˆ %1$<PRIu64> ã® DIE ã®ã‚¿ã‚°ã‚’得られã¾ã›ã‚“: " "%3$s" -#: src/readelf.c:8092 +#: src/readelf.c:8145 #, c-format msgid "cannot get next DIE: %s\n" msgstr "次㮠DIE を得られã¾ã›ã‚“: %s\n" -#: src/readelf.c:8100 +#: src/readelf.c:8153 #, c-format msgid "cannot get next DIE: %s" msgstr "次㮠DIE を得られã¾ã›ã‚“: %s" -#: src/readelf.c:8144 +#: src/readelf.c:8197 #, fuzzy, c-format msgid "" " Split compilation unit at offset %<PRIu64>:\n" @@ -5433,7 +5443,7 @@ msgstr "" " ãƒãƒ¼ã‚¸ãƒ§ãƒ³: %2$<PRIu16>ã€ç•¥èªžã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚ªãƒ•ã‚»ãƒƒãƒˆ: %3$<PRIu64>ã€ã‚¢ãƒ‰ãƒ¬ã‚¹ã®å¤§" "ãã•: %4$<PRIu8>ã€ã‚ªãƒ•ã‚»ãƒƒãƒˆã®å¤§ãã•: %5$<PRIu8>\n" -#: src/readelf.c:8196 +#: src/readelf.c:8249 #, fuzzy, c-format msgid "" "\n" @@ -5443,18 +5453,13 @@ msgstr "" "\n" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s':\n" -#: src/readelf.c:8528 +#: src/readelf.c:8581 #, fuzzy, c-format msgid "unknown form: %s" msgstr "ä¸æ˜Žãªæ§˜å¼ %<PRIx64>" -#: src/readelf.c:8576 -#, c-format -msgid "cannot get line data section data: %s" -msgstr "ラインデータセクションデータを得られã¾ã›ã‚“: %s" - #. Print what we got so far. -#: src/readelf.c:8680 +#: src/readelf.c:8729 #, fuzzy, c-format msgid "" "\n" @@ -5484,33 +5489,33 @@ msgstr "" "\n" "命令コード:\n" -#: src/readelf.c:8702 +#: src/readelf.c:8751 #, c-format msgid "cannot handle .debug_line version: %u\n" msgstr ".debug_line ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’扱ãˆã¾ã›ã‚“: %u\n" -#: src/readelf.c:8710 +#: src/readelf.c:8759 #, c-format msgid "cannot handle address size: %u\n" msgstr "アドレスサイズを扱ãˆã¾ã›ã‚“: %u\n" -#: src/readelf.c:8718 +#: src/readelf.c:8767 #, c-format msgid "cannot handle segment selector size: %u\n" msgstr "セグメントセレクタサイズを扱ãˆã¾ã›ã‚“: %u\n" -#: src/readelf.c:8728 +#: src/readelf.c:8777 #, c-format msgid "invalid data at offset %tu in section [%zu] '%s'" msgstr "セクション [%2$zu] '%3$s' ä¸ã®ã‚ªãƒ•ã‚»ãƒƒãƒˆ %1$tu ã«ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:8743 +#: src/readelf.c:8792 #, c-format msgid " [%*<PRIuFAST8>] %hhu argument\n" msgid_plural " [%*<PRIuFAST8>] %hhu arguments\n" msgstr[0] " [%*<PRIuFAST8>] %hhu パラメーター\n" -#: src/readelf.c:8754 +#: src/readelf.c:8803 msgid "" "\n" "Directory table:" @@ -5518,12 +5523,12 @@ msgstr "" "\n" "ディレクトリーテーブル:" -#: src/readelf.c:8760 src/readelf.c:8837 +#: src/readelf.c:8809 src/readelf.c:8886 #, fuzzy, c-format msgid " [" msgstr " %s: %s\n" -#: src/readelf.c:8831 +#: src/readelf.c:8880 #, fuzzy msgid "" "\n" @@ -5532,7 +5537,7 @@ msgstr "" "\n" " 呼出ã—サイトテーブル:" -#: src/readelf.c:8892 +#: src/readelf.c:8941 #, fuzzy msgid " Entry Dir Time Size Name" msgstr "" @@ -5540,7 +5545,7 @@ msgstr "" "ファイルåテーブル:\n" " Entry Dir 時刻 大ãã• åå‰" -#: src/readelf.c:8938 +#: src/readelf.c:8987 #, fuzzy msgid "" "\n" @@ -5549,7 +5554,7 @@ msgstr "" "\n" "è¡Œ ç•ªå· æ–‡:" -#: src/readelf.c:8942 +#: src/readelf.c:8991 msgid "" "\n" "Line number statements:" @@ -5557,129 +5562,129 @@ msgstr "" "\n" "è¡Œ ç•ªå· æ–‡:" -#: src/readelf.c:8957 +#: src/readelf.c:9006 #, c-format msgid "invalid maximum operations per instruction is zero" msgstr "" -#: src/readelf.c:8991 +#: src/readelf.c:9040 #, fuzzy, c-format msgid " special opcode %u: address+%u = " msgstr " 特殊命令コード %u: アドレス+%u = %s, è¡Œ%+d = %zu\n" -#: src/readelf.c:8995 +#: src/readelf.c:9044 #, fuzzy, c-format msgid ", op_index = %u, line%+d = %zu\n" msgstr " 特殊命令コード %u: アドレス+%u = %s, è¡Œ%+d = %zu\n" -#: src/readelf.c:8998 +#: src/readelf.c:9047 #, c-format msgid ", line%+d = %zu\n" msgstr "" -#: src/readelf.c:9016 +#: src/readelf.c:9065 #, c-format msgid " extended opcode %u: " msgstr " 拡張命令コード %u: " -#: src/readelf.c:9021 +#: src/readelf.c:9070 #, fuzzy msgid " end of sequence" msgstr "列ã®çµ‚ã‚ã‚Š" -#: src/readelf.c:9039 +#: src/readelf.c:9088 #, fuzzy, c-format msgid " set address to " msgstr "アドレスを %s ã«è¨å®šã™ã‚‹\n" -#: src/readelf.c:9067 +#: src/readelf.c:9116 #, fuzzy, c-format msgid " define new file: dir=%u, mtime=%<PRIu64>, length=%<PRIu64>, name=%s\n" msgstr "" "新ファイルを定義ã™ã‚‹: dir=%uã€mtime=%<PRIu64>ã€é•·ã•h=%<PRIu64>ã€åå‰=%s\n" -#: src/readelf.c:9081 +#: src/readelf.c:9130 #, fuzzy, c-format msgid " set discriminator to %u\n" msgstr "カラムを %<PRIu64> ã«è¨å®šã™ã‚‹\n" -#: src/readelf.c:9108 +#: src/readelf.c:9157 #, c-format msgid " set inlined context %u, function name %s (0x%x)\n" msgstr "" -#: src/readelf.c:9132 +#: src/readelf.c:9181 #, fuzzy, c-format #| msgid "Also show function names" msgid " set function name %s (0x%x)\n" msgstr "関数åも表示" #. Unknown, ignore it. -#: src/readelf.c:9139 +#: src/readelf.c:9188 msgid " unknown opcode" msgstr "ä¸æ˜Žãªã‚ªãƒšã‚³ãƒ¼ãƒ‰" #. Takes no argument. -#: src/readelf.c:9151 +#: src/readelf.c:9200 msgid " copy" msgstr "複写" -#: src/readelf.c:9162 +#: src/readelf.c:9211 #, fuzzy, c-format msgid " advance address by %u to " msgstr "アドレスを %u ã ã‘進ã‚㦠%s ã«ã™ã‚‹\n" -#: src/readelf.c:9166 src/readelf.c:9227 +#: src/readelf.c:9215 src/readelf.c:9276 #, c-format msgid ", op_index to %u" msgstr "" -#: src/readelf.c:9178 +#: src/readelf.c:9227 #, c-format msgid " advance line by constant %d to %<PRId64>\n" msgstr "行を定数 %d ã ã‘進ã‚㦠%<PRId64> ã«ã™ã‚‹\n" -#: src/readelf.c:9188 +#: src/readelf.c:9237 #, c-format msgid " set file to %<PRIu64>\n" msgstr " ファイルを %<PRIu64> ã«è¨å®šã™ã‚‹\n" -#: src/readelf.c:9199 +#: src/readelf.c:9248 #, c-format msgid " set column to %<PRIu64>\n" msgstr "カラムを %<PRIu64> ã«è¨å®šã™ã‚‹\n" -#: src/readelf.c:9206 +#: src/readelf.c:9255 #, c-format msgid " set '%s' to %<PRIuFAST8>\n" msgstr " '%s' ã‚’ %<PRIuFAST8> ã«è¨å®šã™ã‚‹\n" #. Takes no argument. -#: src/readelf.c:9212 +#: src/readelf.c:9261 msgid " set basic block flag" msgstr "基本ブãƒãƒƒã‚¯ãƒ•ãƒ©ã‚°ã‚’è¨å®šã™ã‚‹" -#: src/readelf.c:9223 +#: src/readelf.c:9272 #, fuzzy, c-format msgid " advance address by constant %u to " msgstr "アドレスを定数 %u ã ã‘済ã‚㦠%s ã«ã™ã‚‹\n" -#: src/readelf.c:9243 +#: src/readelf.c:9292 #, fuzzy, c-format msgid " advance address by fixed value %u to \n" msgstr "アドレスを固定値 %u ã ã‘進ã‚㦠%s ã«ã™ã‚‹\n" #. Takes no argument. -#: src/readelf.c:9253 +#: src/readelf.c:9302 msgid " set prologue end flag" msgstr "プãƒãƒãƒ¼ã‚°çµ‚了フラグをè¨å®šã™ã‚‹" #. Takes no argument. -#: src/readelf.c:9258 +#: src/readelf.c:9307 msgid " set epilogue begin flag" msgstr "エピãƒãƒ¼ã‚°é–‹å§‹ãƒ•ãƒ©ã‚°ã‚’è¨å®šã™ã‚‹" -#: src/readelf.c:9268 +#: src/readelf.c:9317 #, fuzzy, c-format msgid " set isa to %u\n" msgstr " ファイルを %<PRIu64> ã«è¨å®šã™ã‚‹\n" @@ -5687,103 +5692,88 @@ msgstr " ファイルを %<PRIu64> ã«è¨å®šã™ã‚‹\n" #. This is a new opcode the generator but not we know about. #. Read the parameters associated with it but then discard #. everything. Read all the parameters for this opcode. -#: src/readelf.c:9277 +#: src/readelf.c:9326 #, c-format msgid " unknown opcode with %<PRIu8> parameter:" msgid_plural " unknown opcode with %<PRIu8> parameters:" msgstr[0] " %<PRIu8> 個ã®ãƒ‘ラメーターã®ã‚ã‚‹ä¸æ˜Žãªå‘½ä»¤ã‚³ãƒ¼ãƒ‰:" -#: src/readelf.c:9317 -#, c-format -msgid "cannot get .debug_loclists content: %s" -msgstr ".debug_loclists ã®å†…容をå–å¾—ã§ãã¾ã›ã‚“: %s" - -#: src/readelf.c:9483 +#: src/readelf.c:9527 #, fuzzy, c-format msgid " <INVALID DATA>\n" msgstr " [%6tx] <ä¸å½“ãªãƒ‡ãƒ¼ã‚¿>\n" -#: src/readelf.c:9523 +#: src/readelf.c:9567 #, fuzzy, c-format msgid "invalid loclists data" msgstr "ä¸å½“ãªãƒ‡ãƒ¼ã‚¿" -#: src/readelf.c:9786 -#, c-format -msgid "cannot get .debug_loc content: %s" -msgstr ".debug_loc ã®å†…容を得られã¾ã›ã‚“: %s" - -#: src/readelf.c:9999 src/readelf.c:11043 +#: src/readelf.c:10037 src/readelf.c:11082 #, fuzzy msgid " <INVALID DATA>\n" msgstr " [%6tx] <ä¸å½“ãªãƒ‡ãƒ¼ã‚¿>\n" -#: src/readelf.c:10054 src/readelf.c:10217 -#, c-format -msgid "cannot get macro information section data: %s" -msgstr "マクãƒæƒ…å ±ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒ‡ãƒ¼ã‚¿ã‚’得られã¾ã›ã‚“: %s" - -#: src/readelf.c:10134 +#: src/readelf.c:10168 #, c-format msgid "%*s*** non-terminated string at end of section" msgstr "%*s*** 最後ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®çµ‚端ã—ã¦ã„ãªã„æ–‡å—列" -#: src/readelf.c:10157 +#: src/readelf.c:10191 #, fuzzy, c-format msgid "%*s*** missing DW_MACINFO_start_file argument at end of section" msgstr "%*s*** 最後ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®çµ‚端ã—ã¦ã„ãªã„æ–‡å—列" -#: src/readelf.c:10258 +#: src/readelf.c:10286 #, fuzzy, c-format msgid " Offset: 0x%<PRIx64>\n" msgstr " 所有者 大ãã•\n" -#: src/readelf.c:10270 +#: src/readelf.c:10298 #, fuzzy, c-format msgid " Version: %<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10276 src/readelf.c:11163 +#: src/readelf.c:10304 src/readelf.c:11202 #, c-format msgid " unknown version, cannot parse section\n" msgstr "" -#: src/readelf.c:10283 +#: src/readelf.c:10311 #, fuzzy, c-format msgid " Flag: 0x%<PRIx8>" msgstr " å…¥å£ç‚¹ã‚¢ãƒ‰ãƒ¬ã‚¹ : %#<PRIx64>\n" -#: src/readelf.c:10312 +#: src/readelf.c:10340 #, fuzzy, c-format msgid " Offset length: %<PRIu8>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:10320 +#: src/readelf.c:10348 #, fuzzy, c-format msgid " .debug_line offset: 0x%<PRIx64>\n" msgstr " (終了オフセット: %#<PRIx64>)" -#: src/readelf.c:10345 +#: src/readelf.c:10373 #, fuzzy, c-format msgid " extension opcode table, %<PRIu8> items:\n" msgstr " %<PRIu8> 個ã®ãƒ‘ラメーターã®ã‚ã‚‹ä¸æ˜Žãªå‘½ä»¤ã‚³ãƒ¼ãƒ‰:" -#: src/readelf.c:10352 +#: src/readelf.c:10380 #, c-format msgid " [%<PRIx8>]" msgstr "" -#: src/readelf.c:10364 +#: src/readelf.c:10392 #, fuzzy, c-format msgid " %<PRIu8> arguments:" msgstr " [%*<PRIuFAST8>] %hhu パラメーター\n" -#: src/readelf.c:10379 +#: src/readelf.c:10407 #, c-format msgid " no arguments." msgstr "" -#: src/readelf.c:10580 +#: src/readelf.c:10608 #, c-format msgid " [%5d] DIE offset: %6<PRId64>, CU DIE offset: %6<PRId64>, name: %s\n" msgstr "" @@ -5791,7 +5781,7 @@ msgstr "" # # "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s':\n" # # " %4$*s æ–‡å—列\n" ãŒã‚¨ãƒ©ãƒ¼ã«ãªã‚‹ã®ã¯ä½•æ•…? å–ã‚Šæ•¢ãˆãš fuzzy扱ㄠ-#: src/readelf.c:10624 +#: src/readelf.c:10663 #, fuzzy, c-format msgid "" "\n" @@ -5803,42 +5793,37 @@ msgstr "" " %4$*s æ–‡å—列\n" #. TRANS: the debugstr| prefix makes the string unique. -#: src/readelf.c:10629 +#: src/readelf.c:10668 msgctxt "debugstr" msgid "Offset" msgstr "" -#: src/readelf.c:10639 +#: src/readelf.c:10678 #, fuzzy, c-format msgid " *** error, missing string terminator\n" msgstr " *** æ–‡å—列ã®èªè¾¼ã¿ä¸ã«ã‚¨ãƒ©ãƒ¼: %s\n" -#: src/readelf.c:10668 -#, fuzzy, c-format -msgid "cannot get .debug_str_offsets section data: %s" -msgstr ".degub_ranges ã®å†…容を得られã¾ã›ã‚“: %s" - -#: src/readelf.c:10767 +#: src/readelf.c:10800 #, fuzzy, c-format msgid " Length: %8<PRIu64>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:10769 +#: src/readelf.c:10802 #, fuzzy, c-format msgid " Offset size: %8<PRIu8>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:10783 +#: src/readelf.c:10816 #, fuzzy, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:10792 +#: src/readelf.c:10825 #, fuzzy, c-format msgid " Padding: %8<PRIx16>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:10846 +#: src/readelf.c:10879 #, c-format msgid "" "\n" @@ -5847,7 +5832,7 @@ msgstr "" "\n" "呼出ã—フレーム検索テーブルセクション [%2zu] '.eh_frame_hdr':\n" -#: src/readelf.c:10948 +#: src/readelf.c:10981 #, c-format msgid "" "\n" @@ -5856,22 +5841,22 @@ msgstr "" "\n" "例外å–扱ã„テーブルセクション [%2zu] '.gcc_except_table':\n" -#: src/readelf.c:10971 +#: src/readelf.c:11004 #, c-format msgid " LPStart encoding: %#x " msgstr " LPStart コード化: %#x " -#: src/readelf.c:10983 +#: src/readelf.c:11016 #, c-format msgid " TType encoding: %#x " msgstr "TType コード化: %#x " -#: src/readelf.c:10998 +#: src/readelf.c:11033 #, c-format msgid " Call site encoding: %#x " msgstr "呼出ã—サイトコード化: %#x " -#: src/readelf.c:11011 +#: src/readelf.c:11048 msgid "" "\n" " Call site table:" @@ -5879,7 +5864,7 @@ msgstr "" "\n" " 呼出ã—サイトテーブル:" -#: src/readelf.c:11025 +#: src/readelf.c:11064 #, c-format msgid "" " [%4u] Call site start: %#<PRIx64>\n" @@ -5892,12 +5877,12 @@ msgstr "" " 離ç€é™¸å ´: %#<PRIx64>\n" " 行動: %u\n" -#: src/readelf.c:11098 +#: src/readelf.c:11137 #, c-format msgid "invalid TType encoding" msgstr "ä¸å½“㪠TType コード化" -#: src/readelf.c:11125 +#: src/readelf.c:11164 #, fuzzy, c-format msgid "" "\n" @@ -5907,37 +5892,37 @@ msgstr "" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s' ã«ã¯ %4$zu 個ã®é …" "ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:11154 +#: src/readelf.c:11193 #, fuzzy, c-format msgid " Version: %<PRId32>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:11172 +#: src/readelf.c:11211 #, fuzzy, c-format msgid " CU offset: %#<PRIx32>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:11179 +#: src/readelf.c:11218 #, fuzzy, c-format msgid " TU offset: %#<PRIx32>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:11186 +#: src/readelf.c:11225 #, fuzzy, c-format msgid " address offset: %#<PRIx32>\n" msgstr " (終了オフセット: %#<PRIx64>)" -#: src/readelf.c:11193 +#: src/readelf.c:11232 #, fuzzy, c-format msgid " symbol offset: %#<PRIx32>\n" msgstr " (オフセット: %#<PRIx64>)" -#: src/readelf.c:11200 +#: src/readelf.c:11239 #, fuzzy, c-format msgid " constant offset: %#<PRIx32>\n" msgstr " (終了オフセット: %#<PRIx64>)" -#: src/readelf.c:11214 +#: src/readelf.c:11253 #, fuzzy, c-format msgid "" "\n" @@ -5947,7 +5932,7 @@ msgstr "" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s' ã«ã¯ %4$zu 個ã®é …" "ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:11239 +#: src/readelf.c:11278 #, fuzzy, c-format msgid "" "\n" @@ -5957,7 +5942,7 @@ msgstr "" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s' ã«ã¯ %4$zu 個ã®é …" "ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:11268 +#: src/readelf.c:11307 #, fuzzy, c-format msgid "" "\n" @@ -5967,7 +5952,7 @@ msgstr "" "オフセット %3$#<PRIx64> ã® DWARF セクション [%1$2zu] '%2$s' ã«ã¯ %4$zu 個ã®é …" "ç›®ãŒã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:11300 +#: src/readelf.c:11339 #, fuzzy, c-format msgid "" "\n" @@ -5976,18 +5961,18 @@ msgstr "" "\n" "オフセット %#0<PRIx64> ã«ä¸å½“ãªã‚·ãƒ³ãƒœãƒ«ãƒ†ãƒ¼ãƒ–ル\n" -#: src/readelf.c:11438 +#: src/readelf.c:11477 #, c-format msgid "cannot get debug context descriptor: %s" msgstr "デãƒãƒƒã‚°å†…容記述åを得られã¾ã›ã‚“: %s" -#: src/readelf.c:11804 src/readelf.c:12431 src/readelf.c:12541 -#: src/readelf.c:12598 +#: src/readelf.c:11843 src/readelf.c:12463 src/readelf.c:12573 +#: src/readelf.c:12630 #, c-format msgid "cannot convert core note data: %s" msgstr "コアノートデータã®å¤‰æ›ãŒã§ãã¾ã›ã‚“: %s" -#: src/readelf.c:12168 +#: src/readelf.c:12207 #, c-format msgid "" "\n" @@ -5996,21 +5981,21 @@ msgstr "" "\n" "%*s... < %u 回ã®ç¹°è¿”ã—> ..." -#: src/readelf.c:12677 +#: src/readelf.c:12709 msgid " Owner Data size Type\n" msgstr " 所有者 データ大ãã•ã‚¿ã‚¤ãƒ—\n" -#: src/readelf.c:12705 +#: src/readelf.c:12737 #, c-format msgid " %-13.*s %9<PRId32> %s\n" msgstr " %-13.*s %9<PRId32> %s\n" -#: src/readelf.c:12757 +#: src/readelf.c:12789 #, c-format msgid "cannot get content of note: %s" msgstr "ノートセクションã®å†…容をå–å¾—ã§ãã¾ã›ã‚“: %s" -#: src/readelf.c:12790 +#: src/readelf.c:12822 #, c-format msgid "" "\n" @@ -6020,7 +6005,7 @@ msgstr "" "オフセット %4$#0<PRIx64> ã® %3$<PRIu64> ãƒã‚¤ãƒˆã®ãƒŽãƒ¼ãƒˆã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%1$2zu] " "'%2$s':\n" -#: src/readelf.c:12813 +#: src/readelf.c:12845 #, c-format msgid "" "\n" @@ -6029,7 +6014,7 @@ msgstr "" "\n" "オフセット %2$#0<PRIx64> ã® %1$<PRIu64> ãƒã‚¤ãƒˆã®ãƒŽãƒ¼ãƒˆã‚»ã‚°ãƒ¡ãƒ³ãƒˆ:\n" -#: src/readelf.c:12860 +#: src/readelf.c:12892 #, fuzzy, c-format msgid "" "\n" @@ -6038,12 +6023,12 @@ msgstr "" "\n" "セクション [%Zu] '%s' ã«ã¯ãƒ€ãƒ³ãƒ—ã™ã¹ãデータãŒã‚ã‚Šã¾ã›ã‚“。\n" -#: src/readelf.c:12887 src/readelf.c:12938 +#: src/readelf.c:12919 src/readelf.c:12970 #, fuzzy, c-format msgid "cannot get data for section [%zu] '%s': %s" msgstr "セクション [%Zu] '%s' ã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ãŒå¾—られã¾ã›ã‚“: %s" -#: src/readelf.c:12892 +#: src/readelf.c:12924 #, fuzzy, c-format msgid "" "\n" @@ -6053,7 +6038,7 @@ msgstr "" "オフセット %4$#0<PRIx64> ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%1$Zu] '%2$s' ã®16進ダン" "プã€%3$<PRIu64> ãƒã‚¤ãƒˆ:\n" -#: src/readelf.c:12897 +#: src/readelf.c:12929 #, fuzzy, c-format msgid "" "\n" @@ -6064,7 +6049,7 @@ msgstr "" "オフセット %4$#0<PRIx64> ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ [%1$Zu] '%2$s' ã®16進ダン" "プã€%3$<PRIu64> ãƒã‚¤ãƒˆ:\n" -#: src/readelf.c:12911 +#: src/readelf.c:12943 #, fuzzy, c-format msgid "" "\n" @@ -6073,7 +6058,7 @@ msgstr "" "\n" "セクション [%Zu] '%s' ã«ã¯ãƒ€ãƒ³ãƒ—ã™ã¹ãデータãŒã‚ã‚Šã¾ã›ã‚“。\n" -#: src/readelf.c:12943 +#: src/readelf.c:12975 #, fuzzy, c-format msgid "" "\n" @@ -6083,7 +6068,7 @@ msgstr "" "オフセット %4$#0<PRIx64> æ–‡å—列セクション [%1$Zu] '%2$s' ã«ã¯ %3$<PRIu64> ãƒ" "イトã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:12948 +#: src/readelf.c:12980 #, fuzzy, c-format msgid "" "\n" @@ -6094,7 +6079,7 @@ msgstr "" "オフセット %4$#0<PRIx64> æ–‡å—列セクション [%1$Zu] '%2$s' ã«ã¯ %3$<PRIu64> ãƒ" "イトã‚ã‚Šã¾ã™:\n" -#: src/readelf.c:12996 +#: src/readelf.c:13028 #, c-format msgid "" "\n" @@ -6103,7 +6088,7 @@ msgstr "" "\n" "セクション [%lu] ãŒã‚ã‚Šã¾ã›ã‚“" -#: src/readelf.c:13026 +#: src/readelf.c:13058 #, c-format msgid "" "\n" @@ -6112,12 +6097,12 @@ msgstr "" "\n" "セクション '%s' ãŒã‚ã‚Šã¾ã›ã‚“" -#: src/readelf.c:13081 +#: src/readelf.c:13113 #, c-format msgid "cannot get symbol index of archive '%s': %s" msgstr "アーカイブã®ã‚·ãƒ³ãƒœãƒ«ç´¢å¼• '%s' を得られã¾ã›ã‚“: %s" -#: src/readelf.c:13084 +#: src/readelf.c:13116 #, c-format msgid "" "\n" @@ -6126,7 +6111,7 @@ msgstr "" "\n" "アーカイブ '%s' ã«ã¯ã‚·ãƒ³ãƒœãƒ«ç´¢å¼•ãŒã‚ã‚Šã¾ã›ã‚“\n" -#: src/readelf.c:13088 +#: src/readelf.c:13120 #, c-format msgid "" "\n" @@ -6135,12 +6120,12 @@ msgstr "" "\n" "アーカイブ '%s' ã®ç´¢å¼•ã¯ %zu 個ã®é …目をæŒã¡ã¾ã™:\n" -#: src/readelf.c:13106 +#: src/readelf.c:13138 #, c-format msgid "cannot extract member at offset %zu in '%s': %s" msgstr "'%2$s' 㮠オフセット %1$zu ã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’抽出ã§ãã¾ã›ã‚“: %3$s" -#: src/readelf.c:13111 +#: src/readelf.c:13143 #, c-format msgid "Archive member '%s' contains:\n" msgstr "アーカイブメンãƒãƒ¼ '%s' ã«ã¯ä»¥ä¸‹ãŒã‚ã‚Šã¾ã™:\n" @@ -7154,6 +7139,38 @@ msgstr "関数åã‚’ ã•ã‚‰ã« 表示" msgid "Show instances of inlined functions" msgstr "インライン関数ã®å®Ÿä½“を表示" +#, fuzzy, c-format +#~ msgid "cannot get .debug_addr section data: %s" +#~ msgstr "セクションデータを割り当ã¦ã‚‰ã‚Œã¾ã›ã‚“: %s" + +#, fuzzy, c-format +#~ msgid "cannot get .debug_rnglists content: %s" +#~ msgstr ".degub_ranges ã®å†…容を得られã¾ã›ã‚“: %s" + +#, c-format +#~ msgid "cannot get .debug_ranges content: %s" +#~ msgstr ".degub_ranges ã®å†…容を得られã¾ã›ã‚“: %s" + +#, c-format +#~ msgid "cannot get line data section data: %s" +#~ msgstr "ラインデータセクションデータを得られã¾ã›ã‚“: %s" + +#, c-format +#~ msgid "cannot get .debug_loclists content: %s" +#~ msgstr ".debug_loclists ã®å†…容をå–å¾—ã§ãã¾ã›ã‚“: %s" + +#, c-format +#~ msgid "cannot get .debug_loc content: %s" +#~ msgstr ".debug_loc ã®å†…容を得られã¾ã›ã‚“: %s" + +#, c-format +#~ msgid "cannot get macro information section data: %s" +#~ msgstr "マクãƒæƒ…å ±ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒ‡ãƒ¼ã‚¿ã‚’得られã¾ã›ã‚“: %s" + +#, fuzzy, c-format +#~ msgid "cannot get .debug_str_offsets section data: %s" +#~ msgstr ".degub_ranges ã®å†…容を得られã¾ã›ã‚“: %s" + #~ msgid "cannot allocate memory" #~ msgstr "メモリーを割り当ã¦ã‚‰ã‚Œã¾ã›ã‚“" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: elfutils\n" "Report-Msgid-Bugs-To: https://sourceware.org/bugzilla/\n" -"POT-Creation-Date: 2022-11-02 13:30+0100\n" +"POT-Creation-Date: 2023-03-03 16:09+0100\n" "PO-Revision-Date: 2021-02-22 16:25+0100\n" "Last-Translator: Piotr DrÄ…g <piotrdrag@gmail.com>\n" "Language-Team: Polish <trans-pl@lists.fedoraproject.org>\n" @@ -54,18 +54,18 @@ msgstr "" "BEZ JAKIEJKOLWIEK GWARANCJI, nawet domyÅ›lnej gwarancji PRZYDATNOÅšCI\n" "HANDLOWEJ albo PRZYDATNOÅšCI DO OKREÅšLONYCH ZASTOSOWAŃ.\n" -#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11754 +#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11793 #: src/unstrip.c:311 #, c-format msgid "memory exhausted" msgstr "pamięć wyczerpana" -#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:51 +#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:47 #: libelf/elf_error.c:59 msgid "no error" msgstr "brak bÅ‚Ä™du" -#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:53 +#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:49 #: libelf/elf_error.c:90 msgid "out of memory" msgstr "brak pamiÄ™ci" @@ -102,7 +102,7 @@ msgstr "bÅ‚Ä…d podczas wyprowadzania danych" msgid "no backend support available" msgstr "brak dostÄ™pnej obsÅ‚ugi zaplecza" -#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:52 +#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:48 #: libelf/elf_error.c:62 msgid "unknown error" msgstr "nieznany bÅ‚Ä…d" @@ -117,7 +117,7 @@ msgstr "nieprawidÅ‚owy znak „%c†w %d. wierszu; zignorowano" msgid "invalid character '\\%o' at line %d; ignored" msgstr "nieprawidÅ‚owy znak „\\%o†w %d. wierszu; zignorowano" -#: libcpu/i386_parse.y:553 +#: libcpu/i386_parse.y:555 #, c-format msgid "while reading i386 CPU description: %s at line %d" msgstr "podczas odczytywania opisu procesora i386: %s w %d. wierszu" @@ -230,7 +230,7 @@ msgstr "nieprawidÅ‚owa wersja DWARF" msgid "invalid directory index" msgstr "nieprawidÅ‚owy indeks katalogu" -#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:73 +#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:69 msgid "address out of range" msgstr "adres jest spoza zakresu" @@ -258,7 +258,7 @@ msgstr "nieprawidÅ‚owy indeks wiersza" msgid "invalid address range index" msgstr "nieprawidÅ‚owy indeks zakresu adresów" -#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:74 +#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:70 msgid "no matching address range" msgstr "brak pasujÄ…cego zakresu adresów" @@ -368,165 +368,165 @@ msgstr "Za maÅ‚o pamiÄ™ci" msgid "No modules recognized in core file" msgstr "Nie rozpoznano żadnych modułów w pliku core" -#: libdwfl/libdwflP.h:54 +#: libdwfl/libdwflP.h:50 msgid "See errno" msgstr "ProszÄ™ zobaczyć errno" -#: libdwfl/libdwflP.h:55 +#: libdwfl/libdwflP.h:51 msgid "See elf_errno" msgstr "ProszÄ™ zobaczyć elf_errno" -#: libdwfl/libdwflP.h:56 +#: libdwfl/libdwflP.h:52 msgid "See dwarf_errno" msgstr "ProszÄ™ zobaczyć dwarf_errno" -#: libdwfl/libdwflP.h:57 +#: libdwfl/libdwflP.h:53 msgid "See ebl_errno (XXX missing)" msgstr "ProszÄ™ zobaczyć ebl_errno (brak XXX)" -#: libdwfl/libdwflP.h:58 +#: libdwfl/libdwflP.h:54 msgid "gzip decompression failed" msgstr "dekompresja gzip siÄ™ nie powiodÅ‚a" -#: libdwfl/libdwflP.h:59 +#: libdwfl/libdwflP.h:55 msgid "bzip2 decompression failed" msgstr "dekompresja bzip2 siÄ™ nie powiodÅ‚a" -#: libdwfl/libdwflP.h:60 +#: libdwfl/libdwflP.h:56 msgid "LZMA decompression failed" msgstr "dekompresja LZMA siÄ™ nie powiodÅ‚a" -#: libdwfl/libdwflP.h:61 +#: libdwfl/libdwflP.h:57 msgid "zstd decompression failed" msgstr "dekompresja zstd siÄ™ nie powiodÅ‚a" -#: libdwfl/libdwflP.h:62 +#: libdwfl/libdwflP.h:58 msgid "no support library found for machine" msgstr "nie odnaleziono biblioteki obsÅ‚ugi dla komputera" -#: libdwfl/libdwflP.h:63 +#: libdwfl/libdwflP.h:59 msgid "Callbacks missing for ET_REL file" msgstr "Brak wywoÅ‚aÅ„ zwrotnych dla pliku ET_REL" -#: libdwfl/libdwflP.h:64 +#: libdwfl/libdwflP.h:60 msgid "Unsupported relocation type" msgstr "NieobsÅ‚ugiwany typ relokacji" -#: libdwfl/libdwflP.h:65 +#: libdwfl/libdwflP.h:61 msgid "r_offset is bogus" msgstr "r_offset jest faÅ‚szywe" -#: libdwfl/libdwflP.h:66 libelf/elf_error.c:114 libelf/elf_error.c:174 +#: libdwfl/libdwflP.h:62 libelf/elf_error.c:114 libelf/elf_error.c:174 msgid "offset out of range" msgstr "offset spoza zakresu" -#: libdwfl/libdwflP.h:67 +#: libdwfl/libdwflP.h:63 msgid "relocation refers to undefined symbol" msgstr "relokacja odnosi siÄ™ do nieokreÅ›lonego symbolu" -#: libdwfl/libdwflP.h:68 +#: libdwfl/libdwflP.h:64 msgid "Callback returned failure" msgstr "WywoÅ‚anie zwrotne zwróciÅ‚o niepowodzenie" -#: libdwfl/libdwflP.h:69 +#: libdwfl/libdwflP.h:65 msgid "No DWARF information found" msgstr "Nie odnaleziono informacji DWARF" -#: libdwfl/libdwflP.h:70 +#: libdwfl/libdwflP.h:66 msgid "No symbol table found" msgstr "Nie odnaleziono tabeli symboli" -#: libdwfl/libdwflP.h:71 +#: libdwfl/libdwflP.h:67 msgid "No ELF program headers" msgstr "Brak nagłówków programu ELF" -#: libdwfl/libdwflP.h:72 +#: libdwfl/libdwflP.h:68 msgid "address range overlaps an existing module" msgstr "zakres adresów pokrywa siÄ™ z istniejÄ…cym moduÅ‚em" -#: libdwfl/libdwflP.h:75 +#: libdwfl/libdwflP.h:71 msgid "image truncated" msgstr "skrócono obraz" -#: libdwfl/libdwflP.h:76 +#: libdwfl/libdwflP.h:72 msgid "ELF file opened" msgstr "otwarto plik ELF" -#: libdwfl/libdwflP.h:77 +#: libdwfl/libdwflP.h:73 msgid "not a valid ELF file" msgstr "nie jest prawidÅ‚owym plikiem ELF" -#: libdwfl/libdwflP.h:78 +#: libdwfl/libdwflP.h:74 msgid "cannot handle DWARF type description" msgstr "nie można obsÅ‚użyć opisu typu DWARF" -#: libdwfl/libdwflP.h:79 +#: libdwfl/libdwflP.h:75 msgid "ELF file does not match build ID" msgstr "plik ELF nie ma pasujÄ…cego identyfikatora kopii" -#: libdwfl/libdwflP.h:80 +#: libdwfl/libdwflP.h:76 msgid "corrupt .gnu.prelink_undo section data" msgstr "uszkodzone dane sekcji .gnu.prelink_undo" -#: libdwfl/libdwflP.h:81 +#: libdwfl/libdwflP.h:77 msgid "Internal error due to ebl" msgstr "WewnÄ™trzny bÅ‚Ä…d z powodu ebl" -#: libdwfl/libdwflP.h:82 +#: libdwfl/libdwflP.h:78 msgid "Missing data in core file" msgstr "Brak danych w pliku core" -#: libdwfl/libdwflP.h:83 +#: libdwfl/libdwflP.h:79 msgid "Invalid register" msgstr "NieprawidÅ‚owy rejestr" -#: libdwfl/libdwflP.h:84 +#: libdwfl/libdwflP.h:80 #, fuzzy #| msgid "no reference value" msgid "Unknown register value" msgstr "brak wartoÅ›ci odwoÅ‚ania" -#: libdwfl/libdwflP.h:85 +#: libdwfl/libdwflP.h:81 msgid "Error reading process memory" msgstr "BÅ‚Ä…d podczas odczytywania pamiÄ™ci procesu" -#: libdwfl/libdwflP.h:86 +#: libdwfl/libdwflP.h:82 msgid "Couldn't find architecture of any ELF" msgstr "Nie można odnaleźć architektury żadnego ELF" -#: libdwfl/libdwflP.h:87 +#: libdwfl/libdwflP.h:83 msgid "Error parsing /proc filesystem" msgstr "BÅ‚Ä…d podczas przetwarzania systemu plików /proc" -#: libdwfl/libdwflP.h:88 +#: libdwfl/libdwflP.h:84 msgid "Invalid DWARF" msgstr "NieprawidÅ‚owy DWARF" -#: libdwfl/libdwflP.h:89 +#: libdwfl/libdwflP.h:85 msgid "Unsupported DWARF" msgstr "NieobsÅ‚ugiwany DWARF" -#: libdwfl/libdwflP.h:90 +#: libdwfl/libdwflP.h:86 msgid "Unable to find more threads" msgstr "Nie można odnaleźć wiÄ™cej wÄ…tków" -#: libdwfl/libdwflP.h:91 +#: libdwfl/libdwflP.h:87 msgid "Dwfl already has attached state" msgstr "Dwfl już ma zaÅ‚Ä…czony stan" -#: libdwfl/libdwflP.h:92 +#: libdwfl/libdwflP.h:88 msgid "Dwfl has no attached state" msgstr "Dwfl nie ma zaÅ‚Ä…czonego stanu" -#: libdwfl/libdwflP.h:93 +#: libdwfl/libdwflP.h:89 msgid "Unwinding not supported for this architecture" msgstr "Odwijanie nie jest obsÅ‚ugiwane dla tej architektury" -#: libdwfl/libdwflP.h:94 +#: libdwfl/libdwflP.h:90 msgid "Invalid argument" msgstr "NieprawidÅ‚owy parametr" -#: libdwfl/libdwflP.h:95 +#: libdwfl/libdwflP.h:91 msgid "Not an ET_CORE ELF file" msgstr "Nie jest plikiem ELF ET_CORE" @@ -631,7 +631,7 @@ msgstr "nieprawidÅ‚owy rozmiar operandu źródÅ‚owego" msgid "invalid size of destination operand" msgstr "nieprawidÅ‚owy rozmiar operandu docelowego" -#: libelf/elf_error.c:86 src/readelf.c:6378 +#: libelf/elf_error.c:86 src/readelf.c:6415 #, c-format msgid "invalid encoding" msgstr "nieprawidÅ‚owe kodowanie" @@ -716,8 +716,8 @@ msgstr "dane/scn nie zgadzajÄ… siÄ™" msgid "invalid section header" msgstr "nieprawidÅ‚owy nagłówek sekcji" -#: libelf/elf_error.c:190 src/readelf.c:10266 src/readelf.c:10866 -#: src/readelf.c:10967 src/readelf.c:11149 +#: libelf/elf_error.c:190 src/readelf.c:10294 src/readelf.c:10899 +#: src/readelf.c:11000 src/readelf.c:11188 #, c-format msgid "invalid data" msgstr "nieprawidÅ‚owe dane" @@ -844,23 +844,30 @@ msgid "Show demangled symbols (ARG is always ignored)" msgstr "" "WyÅ›wietla symbole z usuniÄ™tym dekorowaniem (PARAMETR jest zawsze ignorowany)" -#: src/addr2line.c:77 +#: src/addr2line.c:76 +#, fuzzy +#| msgid "Show demangled symbols (ARG is always ignored)" +msgid "Show demangled symbols" +msgstr "" +"WyÅ›wietla symbole z usuniÄ™tym dekorowaniem (PARAMETR jest zawsze ignorowany)" + +#: src/addr2line.c:78 msgid "Print all information on one line, and indent inlines" msgstr "WyÅ›wietla wszystkie informacje w jednym wierszy i wyrównuje wstawki" -#: src/addr2line.c:79 +#: src/addr2line.c:80 #, fuzzy #| msgid "Show absolute file names using compilation directory" msgid "Show relative file names without compilation directory" msgstr "WyÅ›wietla bezwzglÄ™dne nazwy plików używajÄ…c katalogu kompilacji" -#: src/addr2line.c:81 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 +#: src/addr2line.c:82 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 #: src/strings.c:77 msgid "Miscellaneous:" msgstr "Różne:" #. Short description of program. -#: src/addr2line.c:89 +#: src/addr2line.c:90 msgid "" "Locate source files and line information for ADDRs (in a.out by default)." msgstr "" @@ -868,25 +875,25 @@ msgstr "" "w a.out)." #. Strings for arguments in help texts. -#: src/addr2line.c:93 +#: src/addr2line.c:94 msgid "[ADDR...]" msgstr "[ADRES…]" -#: src/addr2line.c:526 +#: src/addr2line.c:530 msgid "Section syntax requires exactly one module" msgstr "SkÅ‚adnia sekcji wymaga dokÅ‚adnie jednego moduÅ‚u" -#: src/addr2line.c:548 +#: src/addr2line.c:552 #, c-format msgid "offset %#<PRIxMAX> lies outside section '%s'" msgstr "offset %#<PRIxMAX> leży poza sekcjÄ… „%sâ€" -#: src/addr2line.c:658 +#: src/addr2line.c:662 #, c-format msgid "cannot find symbol '%s'" msgstr "nie można odnaleźć symbolu „%sâ€" -#: src/addr2line.c:663 +#: src/addr2line.c:667 #, c-format msgid "offset %#<PRIxMAX> lies outside contents of '%s'" msgstr "offset %#<PRIxMAX> leży poza zawartoÅ›ciÄ… „%sâ€" @@ -1367,7 +1374,7 @@ msgid "Suppress some error output (counterpart to --verbose)" msgstr "Zmniejsza wyjÅ›cie bÅ‚Ä™dów (odpowiednik opcji --verbose)" #. Strings for arguments in help texts. -#: src/elfclassify.c:979 src/elfcompress.c:1358 src/elflint.c:76 +#: src/elfclassify.c:979 src/elfcompress.c:1433 src/elflint.c:76 #: src/readelf.c:160 msgid "FILE..." msgstr "PLIK…" @@ -1671,47 +1678,58 @@ msgstr "nie można uzyskać zawartoÅ›ci sekcji %zu: %s" msgid "cannot get relocation: %s" msgstr "nie można uzyskać relokacji: %s" -#: src/elfcompress.c:117 src/strip.c:305 src/unstrip.c:116 +#: src/elfcompress.c:128 src/strip.c:305 src/unstrip.c:116 #, c-format msgid "-o option specified twice" msgstr "OpcjÄ™ -o podano dwukrotnie" -#: src/elfcompress.c:124 +#: src/elfcompress.c:135 #, c-format msgid "-t option specified twice" msgstr "OpcjÄ™ -t podano dwukrotnie" -#: src/elfcompress.c:133 +#: src/elfcompress.c:147 +#, c-format +msgid "ZSTD support is not enabled" +msgstr "" + +#: src/elfcompress.c:150 #, c-format msgid "unknown compression type '%s'" msgstr "nieznany typ kompresji „%sâ€" #. We need at least one input file. -#: src/elfcompress.c:145 src/elfcompress.c:1369 +#: src/elfcompress.c:162 src/elfcompress.c:1444 #, c-format msgid "No input file given" msgstr "Nie podano pliku wejÅ›ciowego" -#: src/elfcompress.c:151 src/elfcompress.c:1373 +#: src/elfcompress.c:168 src/elfcompress.c:1448 #, c-format msgid "Only one input file allowed together with '-o'" msgstr "Tylko jeden plik wejÅ›ciowy jest dozwolony z „-oâ€" -#: src/elfcompress.c:1331 +#: src/elfcompress.c:1405 msgid "Place (de)compressed output into FILE" msgstr "Umieszcza zdekompresowane wyjÅ›cie w PLIKU" -#: src/elfcompress.c:1334 +#: src/elfcompress.c:1408 +#, fuzzy +#| msgid "" +#| "What type of compression to apply. TYPE can be 'none' (decompress), " +#| "'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias) or " +#| "'zlib-gnu' (.zdebug GNU style compression, 'gnu' is an alias)" msgid "" "What type of compression to apply. TYPE can be 'none' (decompress), " -"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias) or 'zlib-" -"gnu' (.zdebug GNU style compression, 'gnu' is an alias)" +"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias), 'zlib-" +"gnu' (.zdebug GNU style compression, 'gnu' is an alias) or 'zstd' (ELF ZSTD " +"compression)" msgstr "" "Typ stosowanej kompresji. TYP może wynosić „none†(dekompresja), " "„zlib†(kompresja zlib ELF, domyÅ›lna, „zlib-gabi†to alias) lub „zlib-" "gnu†(kompresja .zdebug w stylu GNU, „gnu†to alias)" -#: src/elfcompress.c:1337 +#: src/elfcompress.c:1412 msgid "" "SECTION name to (de)compress, SECTION is an extended wildcard pattern " "(defaults to '.?(z)debug*')" @@ -1719,11 +1737,11 @@ msgstr "" "Nazwa SEKCJI do (de)kompresowania, SEKCJA jest rozszerzonym wzorem " "(domyÅ›lnie „.?(z)debug*â€)" -#: src/elfcompress.c:1340 +#: src/elfcompress.c:1415 msgid "Print a message for each section being (de)compressed" msgstr "WyÅ›wietla komunikat dla każdej (de)kompresowanej sekcji" -#: src/elfcompress.c:1343 +#: src/elfcompress.c:1418 msgid "" "Force compression of section even if it would become larger or update/" "rewrite the file even if no section would be (de)compressed" @@ -1732,15 +1750,15 @@ msgstr "" "zaktualizowanie/przepisanie pliku, nawet jeÅ›li żadna sekcja nie zostaÅ‚aby " "(zde)kompresowana" -#: src/elfcompress.c:1346 src/strip.c:92 +#: src/elfcompress.c:1421 src/strip.c:92 msgid "Relax a few rules to handle slightly broken ELF files" msgstr "Åagodzi kilka reguÅ‚, aby obsÅ‚użyć lekko uszkodzone pliki ELF" -#: src/elfcompress.c:1349 +#: src/elfcompress.c:1424 msgid "Be silent when a section cannot be compressed" msgstr "Bez zgÅ‚aszania, kiedy nie można zdekompresować sekcji" -#: src/elfcompress.c:1359 +#: src/elfcompress.c:1434 msgid "Compress or decompress sections in an ELF file." msgstr "Kompresuje lub dekompresuje sekcje w pliku ELF." @@ -1804,133 +1822,133 @@ msgstr " bÅ‚Ä…d podczas zwalniania deskryptora pod-ELF: %s\n" msgid "Not an ELF file - it has the wrong magic bytes at the start\n" msgstr "To nie jest plik ELF — ma bÅ‚Ä™dne bajty magiczne na poczÄ…tku\n" -#: src/elflint.c:356 +#: src/elflint.c:357 #, c-format msgid "e_ident[%d] == %d is no known class\n" msgstr "e_ident[%d] == %d nie jest znanÄ… klasÄ…\n" -#: src/elflint.c:361 +#: src/elflint.c:362 #, c-format msgid "e_ident[%d] == %d is no known data encoding\n" msgstr "e_ident[%d] == %d nie jest znanym kodowaniem danych\n" -#: src/elflint.c:365 +#: src/elflint.c:366 #, c-format msgid "unknown ELF header version number e_ident[%d] == %d\n" msgstr "nieznany numer wersji nagłówka ELF e_ident[%d] == %d\n" -#: src/elflint.c:373 +#: src/elflint.c:374 #, c-format msgid "unsupported OS ABI e_ident[%d] == '%s'\n" msgstr "nieobsÅ‚ugiwane ABI systemu operacyjnego e_ident[%d] == „%sâ€\n" -#: src/elflint.c:379 +#: src/elflint.c:380 #, c-format msgid "unsupported ABI version e_ident[%d] == %d\n" msgstr "nieobsÅ‚ugiwana wersja ABI e_ident[%d] == %d\n" -#: src/elflint.c:384 +#: src/elflint.c:385 #, c-format msgid "e_ident[%zu] is not zero\n" msgstr "e_ident[%zu] nie wynosi zero\n" -#: src/elflint.c:389 +#: src/elflint.c:390 #, c-format msgid "unknown object file type %d\n" msgstr "nieznany typ pliku obiektu %d\n" -#: src/elflint.c:396 +#: src/elflint.c:397 #, c-format msgid "unknown machine type %d\n" msgstr "nieznany typ komputera %d\n" -#: src/elflint.c:400 +#: src/elflint.c:401 #, c-format msgid "unknown object file version\n" msgstr "nieznana wersja pliku obiektu\n" -#: src/elflint.c:406 +#: src/elflint.c:407 #, c-format msgid "invalid program header offset\n" msgstr "nieprawidÅ‚owy offset nagłówka programu\n" -#: src/elflint.c:408 +#: src/elflint.c:409 #, c-format msgid "executables and DSOs cannot have zero program header offset\n" msgstr "" "pliki wykonywalne i DSO nie mogÄ… mieć zerowego offsetu nagłówka programu\n" -#: src/elflint.c:412 +#: src/elflint.c:413 #, c-format msgid "invalid number of program header entries\n" msgstr "nieprawidÅ‚owa liczba wpisów nagłówka programu\n" -#: src/elflint.c:420 +#: src/elflint.c:421 #, c-format msgid "invalid section header table offset\n" msgstr "nieprawidÅ‚owy offset tabeli nagłówków sekcji\n" -#: src/elflint.c:423 +#: src/elflint.c:424 #, c-format msgid "section header table must be present\n" msgstr "tabela nagłówków sekcji musi istnieć\n" -#: src/elflint.c:437 +#: src/elflint.c:438 #, c-format msgid "invalid number of section header table entries\n" msgstr "nieprawidÅ‚owa liczba wpisów tabeli nagłówków sekcji\n" -#: src/elflint.c:454 +#: src/elflint.c:455 #, c-format msgid "invalid section header index\n" msgstr "nieprawidÅ‚owy indeks nagłówka sekcji\n" -#: src/elflint.c:472 +#: src/elflint.c:473 #, c-format msgid "Can only check %u headers, shnum was %u\n" msgstr "Można sprawdzić tylko nagłówki %u, shnum wynosiÅ‚o %u\n" -#: src/elflint.c:486 +#: src/elflint.c:487 #, c-format msgid "invalid number of program header table entries\n" msgstr "nieprawidÅ‚owa liczba wpisów tabeli nagłówka programu\n" -#: src/elflint.c:503 +#: src/elflint.c:504 #, c-format msgid "Can only check %u headers, phnum was %u\n" msgstr "Można sprawdzić tylko nagłówki %u, phnum wynosiÅ‚o %u\n" -#: src/elflint.c:508 +#: src/elflint.c:509 #, c-format msgid "invalid machine flags: %s\n" msgstr "nieprawidÅ‚owe flagi komputera: %s\n" -#: src/elflint.c:515 src/elflint.c:532 +#: src/elflint.c:516 src/elflint.c:533 #, c-format msgid "invalid ELF header size: %hd\n" msgstr "nieprawidÅ‚owy rozmiar nagłówka ELF: %hd\n" -#: src/elflint.c:518 src/elflint.c:535 +#: src/elflint.c:519 src/elflint.c:536 #, c-format msgid "invalid program header size: %hd\n" msgstr "nieprawidÅ‚owa rozmiar nagłówka programu: %hd\n" -#: src/elflint.c:521 src/elflint.c:538 +#: src/elflint.c:522 src/elflint.c:539 #, c-format msgid "invalid program header position or size\n" msgstr "nieprawidÅ‚owe poÅ‚ożenie lub rozmiar nagłówka programu\n" -#: src/elflint.c:524 src/elflint.c:541 +#: src/elflint.c:525 src/elflint.c:542 #, c-format msgid "invalid section header size: %hd\n" msgstr "nieprawidÅ‚owy rozmiar nagłówka sekcji: %hd\n" -#: src/elflint.c:527 src/elflint.c:544 +#: src/elflint.c:528 src/elflint.c:545 #, c-format msgid "invalid section header position or size\n" msgstr "nieprawidÅ‚owe poÅ‚ożenie lub rozmiar nagłówka sekcji\n" -#: src/elflint.c:589 +#: src/elflint.c:590 #, c-format msgid "" "section [%2d] '%s': section with SHF_GROUP flag set not part of a section " @@ -1938,21 +1956,21 @@ msgid "" msgstr "" "sekcja [%2d] „%sâ€: sekcja z flagÄ… SHF_GROUP nie jest częściÄ… grupy sekcji\n" -#: src/elflint.c:593 +#: src/elflint.c:594 #, c-format msgid "" "section [%2d] '%s': section group [%2zu] '%s' does not precede group member\n" msgstr "" "sekcja [%2d] „%sâ€: grupa sekcji [%2zu] „%s†nie poprzedza elementu grupy\n" -#: src/elflint.c:609 src/elflint.c:1497 src/elflint.c:1548 src/elflint.c:1654 -#: src/elflint.c:1990 src/elflint.c:2316 src/elflint.c:2942 src/elflint.c:3105 -#: src/elflint.c:3253 src/elflint.c:3455 src/elflint.c:4464 +#: src/elflint.c:610 src/elflint.c:1498 src/elflint.c:1549 src/elflint.c:1655 +#: src/elflint.c:1991 src/elflint.c:2317 src/elflint.c:2943 src/elflint.c:3106 +#: src/elflint.c:3254 src/elflint.c:3456 src/elflint.c:4468 #, c-format msgid "section [%2d] '%s': cannot get section data\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać danych sekcji\n" -#: src/elflint.c:622 src/elflint.c:1661 +#: src/elflint.c:623 src/elflint.c:1662 #, c-format msgid "" "section [%2d] '%s': referenced as string table for section [%2d] '%s' but " @@ -1961,7 +1979,7 @@ msgstr "" "sekcja [%2d] „%sâ€: użyta jako tabela ciÄ…gów dla sekcji [%2d] „%sâ€, ale nie " "jest typu SHT_STRTAB\n" -#: src/elflint.c:645 +#: src/elflint.c:646 #, c-format msgid "" "section [%2d] '%s': symbol table cannot have more than one extended index " @@ -1970,12 +1988,12 @@ msgstr "" "sekcja [%2d] „%sâ€: tabela symboli nie może mieć wiÄ™cej niż jednej " "rozszerzonej sekcji indeksów\n" -#: src/elflint.c:657 +#: src/elflint.c:658 #, c-format msgid "section [%2u] '%s': entry size is does not match ElfXX_Sym\n" msgstr "sekcja [%2u] „%sâ€: rozmiar wpisu nie zgadza siÄ™ z ElfXX_Sym\n" -#: src/elflint.c:661 +#: src/elflint.c:662 #, c-format msgid "" "section [%2u] '%s': number of local entries in 'st_info' larger than table " @@ -1984,33 +2002,33 @@ msgstr "" "sekcja [%2u] „%sâ€: liczba lokalnych wpisów w „st_info†jest wiÄ™ksza niż " "rozmiar tabeli\n" -#: src/elflint.c:670 +#: src/elflint.c:671 #, c-format msgid "section [%2d] '%s': cannot get symbol %d: %s\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać symbolu %d: %s\n" -#: src/elflint.c:675 src/elflint.c:678 src/elflint.c:681 src/elflint.c:684 -#: src/elflint.c:687 src/elflint.c:690 +#: src/elflint.c:676 src/elflint.c:679 src/elflint.c:682 src/elflint.c:685 +#: src/elflint.c:688 src/elflint.c:691 #, c-format msgid "section [%2d] '%s': '%s' in zeroth entry not zero\n" msgstr "sekcja [%2d] „%sâ€: „%s†w zerowym wpisie nie jest zerem\n" -#: src/elflint.c:693 +#: src/elflint.c:694 #, c-format msgid "section [%2d] '%s': XINDEX for zeroth entry not zero\n" msgstr "sekcja [%2d] „%sâ€: XINDEX dla zerowego wpisu nie jest zerem\n" -#: src/elflint.c:703 +#: src/elflint.c:704 #, c-format msgid "section [%2d] '%s': cannot get symbol %zu: %s\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać symbolu %zu: %s\n" -#: src/elflint.c:712 +#: src/elflint.c:713 #, c-format msgid "section [%2d] '%s': symbol %zu: invalid name value\n" msgstr "sekcja [%2d] „%sâ€: symbol %zu: nieprawidÅ‚owa wartość nazwy\n" -#: src/elflint.c:727 +#: src/elflint.c:728 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): too large section index but no extended " @@ -2019,7 +2037,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): za duży indeks sekcji, ale nie ma sekcji " "rozszerzonych indeksów sekcji\n" -#: src/elflint.c:733 +#: src/elflint.c:734 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): XINDEX used for index which would fit " @@ -2029,28 +2047,28 @@ msgstr "" "zmieÅ›ciÅ‚by siÄ™ w st_shndx (%<PRIu32>)\n" #. || sym->st_shndx > SHN_HIRESERVE always false -#: src/elflint.c:745 +#: src/elflint.c:746 #, c-format msgid "section [%2d] '%s': symbol %zu (%s): invalid section index\n" msgstr "sekcja [%2d] „%sâ€: symbol %zu (%s): nieprawidÅ‚owy indeks sekcji\n" -#: src/elflint.c:753 +#: src/elflint.c:754 #, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown type\n" msgstr "sekcja [%2d] „%sâ€: symbol %zu (%s): nieznany typ\n" -#: src/elflint.c:759 +#: src/elflint.c:760 #, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown symbol binding\n" msgstr "sekcja [%2d] „%sâ€: symbol %zu (%s): nieznane dowiÄ…zanie symbolu\n" -#: src/elflint.c:764 +#: src/elflint.c:765 #, c-format msgid "section [%2d] '%s': symbol %zu (%s): unique symbol not of object type\n" msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): unikalny symbol nie jest typem obiektu\n" -#: src/elflint.c:772 +#: src/elflint.c:773 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): COMMON only allowed in relocatable " @@ -2059,26 +2077,26 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): COMMON jest dozwolone tylko w plikach " "relokowalnych\n" -#: src/elflint.c:776 +#: src/elflint.c:777 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local COMMON symbols are nonsense\n" msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): lokalne symbole COMMON to nonsens\n" -#: src/elflint.c:780 +#: src/elflint.c:781 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): function in COMMON section is nonsense\n" msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): funkcja w sekcji COMMON to nonsens\n" -#: src/elflint.c:831 +#: src/elflint.c:832 #, c-format msgid "section [%2d] '%s': symbol %zu (%s): st_value out of bounds\n" msgstr "sekcja [%2d] „%sâ€: symbol %zu (%s): st_value spoza zakresu\n" -#: src/elflint.c:837 src/elflint.c:862 src/elflint.c:911 +#: src/elflint.c:838 src/elflint.c:863 src/elflint.c:912 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s) does not fit completely in referenced " @@ -2087,7 +2105,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s) nie mieÅ›ci siÄ™ w caÅ‚oÅ›ci we wskazywanej " "sekcji [%2d] „%sâ€\n" -#: src/elflint.c:846 +#: src/elflint.c:847 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): referenced section [%2d] '%s' does not " @@ -2096,7 +2114,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): wskazywana sekcja [%2d] „%s†nie ma " "ustawionej flagi SHF_TLS\n" -#: src/elflint.c:856 src/elflint.c:904 +#: src/elflint.c:857 src/elflint.c:905 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value out of bounds of referenced " @@ -2105,7 +2123,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): st_value spoza zakresu wskazywanej " "sekcji [%2d] „%sâ€\n" -#: src/elflint.c:883 +#: src/elflint.c:884 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but no TLS program header " @@ -2114,7 +2132,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): symbol TLS, ale brak wpisu TLS nagłówka " "programu\n" -#: src/elflint.c:889 +#: src/elflint.c:890 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but couldn't get TLS program " @@ -2123,7 +2141,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): symbol TLS, ale nie można uzyskać wpisu " "TLS nagłówka programu\n" -#: src/elflint.c:897 +#: src/elflint.c:898 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value short of referenced section " @@ -2132,7 +2150,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): st_value pomija wskazywanÄ… sekcjÄ™ [%2d] " "„%sâ€\n" -#: src/elflint.c:924 +#: src/elflint.c:925 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local symbol outside range described in " @@ -2141,7 +2159,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): lokalny symbol spoza zakresu okreÅ›lonego " "w sh_info\n" -#: src/elflint.c:931 +#: src/elflint.c:932 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): non-local symbol outside range " @@ -2150,12 +2168,12 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): nielokalny symbol spoza zakresu " "okreÅ›lonego w sh_info\n" -#: src/elflint.c:938 +#: src/elflint.c:939 #, c-format msgid "section [%2d] '%s': symbol %zu (%s): non-local section symbol\n" msgstr "sekcja [%2d] „%sâ€: symbol %zu (%s): nielokalny symbol sekcji\n" -#: src/elflint.c:988 +#: src/elflint.c:989 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to bad section " @@ -2164,7 +2182,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol _GLOBAL_OFFSET_TABLE_ odnosi siÄ™ do bÅ‚Ä™dnej sekcji " "[%2d]\n" -#: src/elflint.c:995 +#: src/elflint.c:996 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to section [%2d] " @@ -2176,7 +2194,7 @@ msgstr "" #. This test is more strict than the psABIs which #. usually allow the symbol to be in the middle of #. the .got section, allowing negative offsets. -#: src/elflint.c:1011 +#: src/elflint.c:1012 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol value %#<PRIx64> does not " @@ -2185,7 +2203,7 @@ msgstr "" "sekcja [%2d] „%sâ€: wartość symbolu _GLOBAL_OFFSET_TABLE_ %#<PRIx64> nie " "pasuje do adresu sekcji %s %#<PRIx64>\n" -#: src/elflint.c:1018 +#: src/elflint.c:1019 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol size %<PRIu64> does not " @@ -2194,7 +2212,7 @@ msgstr "" "sekcja [%2d] „%sâ€: rozmiar symbolu _GLOBAL_OFFSET_TABLE_ %<PRIu64> nie " "pasuje do rozmiaru sekcji %s %<PRIu64>\n" -#: src/elflint.c:1026 +#: src/elflint.c:1027 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol present, but no .got " @@ -2203,7 +2221,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol _GLOBAL_OFFSET_TABLE_ istnieje, ale brak sekcji ." "got\n" -#: src/elflint.c:1042 +#: src/elflint.c:1043 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC_ symbol value %#<PRIx64> does not match dynamic " @@ -2212,7 +2230,7 @@ msgstr "" "sekcja [%2d] „%sâ€: wartość symbolu _DYNAMIC_ %#<PRIx64> nie pasuje do adresu " "segmentu dynamicznego %#<PRIx64>\n" -#: src/elflint.c:1049 +#: src/elflint.c:1050 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC symbol size %<PRIu64> does not match dynamic " @@ -2221,7 +2239,7 @@ msgstr "" "sekcja [%2d] „%sâ€: rozmiar symbolu _DYNAMIC_ %<PRIu64> nie pasuje do " "rozmiaru segmentu dynamicznego %<PRIu64>\n" -#: src/elflint.c:1062 +#: src/elflint.c:1063 #, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): symbol in dynamic symbol table with non-" @@ -2230,28 +2248,28 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): symbol w dynamicznej tabeli symboli " "z niedomyÅ›lnÄ… widocznoÅ›ciÄ…\n" -#: src/elflint.c:1066 +#: src/elflint.c:1067 #, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown bit set in st_other\n" msgstr "" "sekcja [%2d] „%sâ€: symbol %zu (%s): ustawiono nieznany bit w st_other\n" -#: src/elflint.c:1104 +#: src/elflint.c:1105 #, c-format msgid "section [%2d] '%s': cannot get section data.\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać danych sekcji.\n" -#: src/elflint.c:1120 +#: src/elflint.c:1121 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT used for this RELA section\n" msgstr "sekcja [%2d] „%sâ€: DT_RELCOUNT użyte dla tej sekcji RELA\n" -#: src/elflint.c:1131 src/elflint.c:1184 +#: src/elflint.c:1132 src/elflint.c:1185 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT value %d too high for this section\n" msgstr "sekcja [%2d] „%sâ€: DT_RELCOUNT %d za duże dla tej sekcji\n" -#: src/elflint.c:1156 src/elflint.c:1209 +#: src/elflint.c:1157 src/elflint.c:1210 #, c-format msgid "" "section [%2d] '%s': relative relocations after index %d as specified by " @@ -2260,7 +2278,7 @@ msgstr "" "sekcja [%2d] „%sâ€: relokacje wzglÄ™dne po indeksie %d podanym przez " "DT_RELCOUNT\n" -#: src/elflint.c:1162 src/elflint.c:1215 +#: src/elflint.c:1163 src/elflint.c:1216 #, c-format msgid "" "section [%2d] '%s': non-relative relocation at index %zu; DT_RELCOUNT " @@ -2269,50 +2287,50 @@ msgstr "" "sekcja [%2d] „%sâ€: relokacja bezwzglÄ™dna pod indeksem %zu; DT_RELCOUNT podaÅ‚ " "%d relokacji wzglÄ™dnych\n" -#: src/elflint.c:1174 +#: src/elflint.c:1175 #, c-format msgid "section [%2d] '%s': DT_RELACOUNT used for this REL section\n" msgstr "sekcja [%2d] „%sâ€: DT_RELACOUNT użyte dla tej sekcji REL\n" -#: src/elflint.c:1257 +#: src/elflint.c:1258 #, c-format msgid "section [%2d] '%s': invalid destination section index\n" msgstr "sekcja [%2d] „%sâ€: nieprawidÅ‚owy indeks sekcji docelowej\n" -#: src/elflint.c:1269 +#: src/elflint.c:1270 #, c-format msgid "section [%2d] '%s': invalid destination section type\n" msgstr "sekcja [%2d] „%sâ€: nieprawidÅ‚owy typ sekcji docelowej\n" -#: src/elflint.c:1277 +#: src/elflint.c:1278 #, c-format msgid "section [%2d] '%s': sh_info should be zero\n" msgstr "sekcja [%2d] „%sâ€: sh_info musi wynosić zero\n" -#: src/elflint.c:1285 +#: src/elflint.c:1286 #, c-format msgid "" "section [%2d] '%s': no relocations for merge-able string sections possible\n" msgstr "" "sekcja [%2d] „%sâ€: relokacje dla sekcji zÅ‚Ä…czalnych ciÄ…gów sÄ… niemożliwe\n" -#: src/elflint.c:1293 +#: src/elflint.c:1294 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Rela\n" msgstr "sekcja [%2d] „%sâ€: rozmiar wpisu sekcji nie zgadza siÄ™ z ElfXX_Rela\n" -#: src/elflint.c:1353 +#: src/elflint.c:1354 #, c-format msgid "text relocation flag set but there is no read-only segment\n" msgstr "" "flaga relokacji tekstu jest ustawiona, ale nie ma segmentu tylko do odczytu\n" -#: src/elflint.c:1380 +#: src/elflint.c:1381 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid type\n" msgstr "sekcja [%2d] „%sâ€: relokacja %zu: nieprawidÅ‚owy typ\n" -#: src/elflint.c:1388 +#: src/elflint.c:1389 #, c-format msgid "" "section [%2d] '%s': relocation %zu: relocation type invalid for the file " @@ -2321,12 +2339,12 @@ msgstr "" "sekcja [%2d] „%sâ€: relokacja %zu: typ relokacji nieprawidÅ‚owy dla tego typu " "pliku\n" -#: src/elflint.c:1396 +#: src/elflint.c:1397 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid symbol index\n" msgstr "sekcja [%2d] „%sâ€: relokacja %zu: nieprawidÅ‚owy indeks symbolu\n" -#: src/elflint.c:1414 +#: src/elflint.c:1415 #, c-format msgid "" "section [%2d] '%s': relocation %zu: only symbol '_GLOBAL_OFFSET_TABLE_' can " @@ -2335,12 +2353,12 @@ msgstr "" "sekcja [%2d] „%sâ€: relokacja %zu: z %s można użyć tylko symbolu " "„_GLOBAL_OFFSET_TABLE_â€\n" -#: src/elflint.c:1431 +#: src/elflint.c:1432 #, c-format msgid "section [%2d] '%s': relocation %zu: offset out of bounds\n" msgstr "sekcja [%2d] „%sâ€: relokacja %zu: offset spoza zakresu\n" -#: src/elflint.c:1446 +#: src/elflint.c:1447 #, c-format msgid "" "section [%2d] '%s': relocation %zu: copy relocation against symbol of type " @@ -2348,7 +2366,7 @@ msgid "" msgstr "" "sekcja [%2d] „%sâ€: relokacja %zu: relokacja kopii wzglÄ™dem symbolu typu %s\n" -#: src/elflint.c:1467 +#: src/elflint.c:1468 #, c-format msgid "" "section [%2d] '%s': relocation %zu: read-only section modified but text " @@ -2357,23 +2375,23 @@ msgstr "" "sekcja [%2d] „%sâ€: relokacja %zu: sekcja tylko do odczytu zostaÅ‚a " "zmodyfikowana, ale nie ustawiono flagi relokacji tekstu\n" -#: src/elflint.c:1482 +#: src/elflint.c:1483 #, c-format msgid "section [%2d] '%s': relocations are against loaded and unloaded data\n" msgstr "" "sekcja [%2d] „%sâ€: relokacje wzglÄ™dem wczytanych i niewczytanych danych\n" -#: src/elflint.c:1522 src/elflint.c:1573 +#: src/elflint.c:1523 src/elflint.c:1574 #, c-format msgid "section [%2d] '%s': cannot get relocation %zu: %s\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać relokacji %zu: %s\n" -#: src/elflint.c:1649 +#: src/elflint.c:1650 #, c-format msgid "more than one dynamic section present\n" msgstr "obecna jest wiÄ™cej niż jedna sekcja dynamiczna\n" -#: src/elflint.c:1667 +#: src/elflint.c:1668 #, c-format msgid "" "section [%2d]: referenced as string table for section [%2d] '%s' but section " @@ -2382,43 +2400,43 @@ msgstr "" "sekcja [%2d]: wskazane jako tabela ciÄ…gów dla sekcji [%2d] „%sâ€, ale wartość " "dowiÄ…zania sekcji jest nieprawidÅ‚owa\n" -#: src/elflint.c:1675 +#: src/elflint.c:1676 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Dyn\n" msgstr "sekcja [%2d] „%sâ€: rozmiar wpisu sekcji nie zgadza siÄ™ z ElfXX_Dyn\n" -#: src/elflint.c:1680 src/elflint.c:1969 +#: src/elflint.c:1681 src/elflint.c:1970 #, c-format msgid "section [%2d] '%s': sh_info not zero\n" msgstr "sekcja [%2d] „%sâ€: sh_info nie wynosi zero\n" -#: src/elflint.c:1690 +#: src/elflint.c:1691 #, c-format msgid "section [%2d] '%s': cannot get dynamic section entry %zu: %s\n" msgstr "" "sekcja [%2d] „%sâ€: nie można uzyskać wpisu %zu sekcji dynamicznej: %s\n" -#: src/elflint.c:1698 +#: src/elflint.c:1699 #, c-format msgid "section [%2d] '%s': non-DT_NULL entries follow DT_NULL entry\n" msgstr "sekcja [%2d] „%sâ€: wpisy nie-DT_NULL wystÄ™pujÄ… po wpisie DT_NULL\n" -#: src/elflint.c:1705 +#: src/elflint.c:1706 #, c-format msgid "section [%2d] '%s': entry %zu: unknown tag\n" msgstr "sekcja [%2d] „%sâ€: wpis %zu: nieznany znacznik\n" -#: src/elflint.c:1716 +#: src/elflint.c:1717 #, c-format msgid "section [%2d] '%s': entry %zu: more than one entry with tag %s\n" msgstr "sekcja [%2d] „%sâ€: wpis %zu: wiÄ™cej niż jeden wpis ze znacznikiem %s\n" -#: src/elflint.c:1726 +#: src/elflint.c:1727 #, c-format msgid "section [%2d] '%s': entry %zu: level 2 tag %s used\n" msgstr "sekcja [%2d] „%sâ€: wpis %zu: użyto znacznika %s poziomu 2\n" -#: src/elflint.c:1744 +#: src/elflint.c:1745 #, c-format msgid "" "section [%2d] '%s': entry %zu: DT_PLTREL value must be DT_REL or DT_RELA\n" @@ -2426,7 +2444,7 @@ msgstr "" "sekcja [%2d] „%sâ€: wpis %zu: wartość DT_PLTREL musi wynosić DT_REL lub " "DT_RELA\n" -#: src/elflint.c:1757 +#: src/elflint.c:1758 #, c-format msgid "" "section [%2d] '%s': entry %zu: pointer does not match address of section " @@ -2435,14 +2453,14 @@ msgstr "" "sekcja [%2d] „%sâ€: wpis %zu: wskaźnik nie pasuje do adresu sekcji [%2d] „%s†" "wskazywanej przez sh_link\n" -#: src/elflint.c:1800 +#: src/elflint.c:1801 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must point into loaded segment\n" msgstr "" "sekcja [%2d] „%sâ€: wpis %zu: wartość %s musi wskazywać na wczytany segment\n" -#: src/elflint.c:1815 +#: src/elflint.c:1816 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must be valid offset in section " @@ -2451,48 +2469,48 @@ msgstr "" "sekcja [%2d] „%sâ€: wpis %zu: wartość %s musi być prawidÅ‚owym offsetem " "w sekcji [%2d] „%sâ€\n" -#: src/elflint.c:1835 src/elflint.c:1863 +#: src/elflint.c:1836 src/elflint.c:1864 #, c-format msgid "section [%2d] '%s': contains %s entry but not %s\n" msgstr "sekcja [%2d] „%sâ€: zawiera wpis %s, ale nie %s\n" -#: src/elflint.c:1847 +#: src/elflint.c:1848 #, c-format msgid "section [%2d] '%s': mandatory tag %s not present\n" msgstr "sekcja [%2d] „%sâ€: brak obowiÄ…zkowego znacznika %s\n" -#: src/elflint.c:1856 +#: src/elflint.c:1857 #, c-format msgid "section [%2d] '%s': no hash section present\n" msgstr "sekcja [%2d] „%sâ€: brak sekcji skrótów\n" -#: src/elflint.c:1871 src/elflint.c:1878 +#: src/elflint.c:1872 src/elflint.c:1879 #, c-format msgid "section [%2d] '%s': not all of %s, %s, and %s are present\n" msgstr "sekcja [%2d] „%sâ€: nie wszystkie z %s, %s i %s sÄ… obecne\n" -#: src/elflint.c:1888 src/elflint.c:1892 +#: src/elflint.c:1889 src/elflint.c:1893 #, c-format msgid "section [%2d] '%s': %s tag missing in DSO marked during prelinking\n" msgstr "" "sekcja [%2d] „%sâ€: brak znacznika %s w DSO oznaczonym podczas wstÄ™pnej " "konsolidacji\n" -#: src/elflint.c:1898 +#: src/elflint.c:1899 #, c-format msgid "section [%2d] '%s': non-DSO file marked as dependency during prelink\n" msgstr "" "sekcja [%2d] „%sâ€: plik nie-DSO oznaczony jako zależność podczas wstÄ™pnej " "konsolidacji\n" -#: src/elflint.c:1909 src/elflint.c:1913 src/elflint.c:1917 src/elflint.c:1921 +#: src/elflint.c:1910 src/elflint.c:1914 src/elflint.c:1918 src/elflint.c:1922 #, c-format msgid "section [%2d] '%s': %s tag missing in prelinked executable\n" msgstr "" "sekcja [%2d] „%sâ€: brak znacznika %s we wstÄ™pnie konsolidowanym pliku " "wykonywalnym\n" -#: src/elflint.c:1933 +#: src/elflint.c:1934 #, c-format msgid "" "section [%2d] '%s': only relocatable files can have extended section index\n" @@ -2500,7 +2518,7 @@ msgstr "" "sekcja [%2d] „%sâ€: tylko pliki relokowalne mogÄ… mieć rozszerzonÄ… sekcjÄ™ " "indeksów\n" -#: src/elflint.c:1943 +#: src/elflint.c:1944 #, c-format msgid "" "section [%2d] '%s': extended section index section not for symbol table\n" @@ -2508,31 +2526,31 @@ msgstr "" "sekcja [%2d] „%sâ€: sekcja rozszerzonych indeksów sekcji nie dla tabeli " "symboli\n" -#: src/elflint.c:1947 +#: src/elflint.c:1948 #, c-format msgid "section [%2d] '%s': sh_link extended section index [%2d] is invalid\n" msgstr "" "sekcja [%2d] „%sâ€: rozszerzony indeks sekcji sh_link [%2d] jest " "nieprawidÅ‚owy\n" -#: src/elflint.c:1952 +#: src/elflint.c:1953 #, c-format msgid "cannot get data for symbol section\n" msgstr "nie można uzyskać danych dla sekcji symboli\n" -#: src/elflint.c:1955 +#: src/elflint.c:1956 #, c-format msgid "section [%2d] '%s': entry size does not match Elf32_Word\n" msgstr "sekcja [%2d] „%sâ€: rozmiar wpisu nie zgadza siÄ™ z Elf32_Word\n" -#: src/elflint.c:1964 +#: src/elflint.c:1965 #, c-format msgid "section [%2d] '%s': extended index table too small for symbol table\n" msgstr "" "sekcja [%2d] „%sâ€: tabela rozszerzonych indeksów jest za maÅ‚a dla tabeli " "symboli\n" -#: src/elflint.c:1979 +#: src/elflint.c:1980 #, c-format msgid "" "section [%2d] '%s': extended section index in section [%2zu] '%s' refers to " @@ -2541,24 +2559,24 @@ msgstr "" "sekcja [%2d] „%sâ€: rozszerzony indeks sekcji w sekcji [%2zu] „%s†odwoÅ‚uje " "siÄ™ do tej samej tabeli symboli\n" -#: src/elflint.c:1997 +#: src/elflint.c:1998 #, c-format msgid "symbol 0 should have zero extended section index\n" msgstr "symbol 0 musi mieć zerowy rozszerzony indeks sekcji\n" -#: src/elflint.c:2009 +#: src/elflint.c:2010 #, c-format msgid "cannot get data for symbol %zu\n" msgstr "nie można uzyskać danych dla symbolu %zu\n" -#: src/elflint.c:2014 +#: src/elflint.c:2015 #, c-format msgid "extended section index is %<PRIu32> but symbol index is not XINDEX\n" msgstr "" "rozszerzony indeks sekcji wynosi %<PRIu32>, ale indeks symbolu nie wynosi " "XINDEX\n" -#: src/elflint.c:2031 src/elflint.c:2088 +#: src/elflint.c:2032 src/elflint.c:2089 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected %ld)\n" @@ -2566,43 +2584,43 @@ msgstr "" "sekcja [%2d] „%sâ€: sekcja tabeli mieszajÄ…cej jest za maÅ‚a (%ld, oczekiwano " "%ld)\n" -#: src/elflint.c:2045 src/elflint.c:2102 +#: src/elflint.c:2046 src/elflint.c:2103 #, c-format msgid "section [%2d] '%s': chain array too large\n" msgstr "sekcja [%2d] „%sâ€: tabela Å‚aÅ„cuchowa jest za duża\n" -#: src/elflint.c:2059 src/elflint.c:2116 +#: src/elflint.c:2060 src/elflint.c:2117 #, c-format msgid "section [%2d] '%s': hash bucket reference %zu out of bounds\n" msgstr "" "sekcja [%2d] „%sâ€: odwoÅ‚anie do kubeÅ‚ka skrótu %zu jest spoza zakresu\n" -#: src/elflint.c:2069 +#: src/elflint.c:2070 #, c-format msgid "section [%2d] '%s': hash chain reference %zu out of bounds\n" msgstr "" "sekcja [%2d] „%sâ€: odwoÅ‚anie do Å‚aÅ„cucha skrótu %zu jest spoza zakresu\n" -#: src/elflint.c:2126 +#: src/elflint.c:2127 #, c-format msgid "section [%2d] '%s': hash chain reference %<PRIu64> out of bounds\n" msgstr "" "sekcja [%2d] „%sâ€: odwoÅ‚anie do Å‚aÅ„cucha skrótu %<PRIu64> jest spoza " "zakresu\n" -#: src/elflint.c:2139 +#: src/elflint.c:2140 #, c-format msgid "section [%2d] '%s': not enough data\n" msgstr "sekcja [%2d] „%sâ€: brak wystarczajÄ…cej iloÅ›ci danych\n" -#: src/elflint.c:2151 +#: src/elflint.c:2152 #, c-format msgid "section [%2d] '%s': bitmask size zero or not power of 2: %u\n" msgstr "" "sekcja [%2d] „%sâ€: rozmiar maski bitowej wynosi zero lub nie jest potÄ™gÄ… 2: " "%u\n" -#: src/elflint.c:2167 +#: src/elflint.c:2168 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected at " @@ -2611,13 +2629,13 @@ msgstr "" "sekcja [%2d] „%sâ€: sekcja tabeli mieszajÄ…cej jest za maÅ‚a (wynosi %ld, " "oczekiwano co najmniej %ld)\n" -#: src/elflint.c:2176 +#: src/elflint.c:2177 #, c-format msgid "section [%2d] '%s': 2nd hash function shift too big: %u\n" msgstr "" "sekcja [%2d] „%sâ€: drugie przesuniÄ™cie funkcji mieszajÄ…cej jest za duże: %u\n" -#: src/elflint.c:2210 +#: src/elflint.c:2211 #, c-format msgid "" "section [%2d] '%s': hash chain for bucket %zu lower than symbol index bias\n" @@ -2625,7 +2643,7 @@ msgstr "" "sekcja [%2d] „%sâ€: Å‚aÅ„cuch mieszajÄ…cy dla kubeÅ‚ka %zu jest mniejszy niż " "przesuniÄ™cie indeksu symboli\n" -#: src/elflint.c:2231 +#: src/elflint.c:2232 #, c-format msgid "" "section [%2d] '%s': symbol %u referenced in chain for bucket %zu is " @@ -2634,7 +2652,7 @@ msgstr "" "sekcja [%2d] „%sâ€: symbol %u wskazywany w łaÅ„cuchu dla kubeÅ‚ka %zu jest " "nieokreÅ›lony\n" -#: src/elflint.c:2244 +#: src/elflint.c:2245 #, c-format msgid "" "section [%2d] '%s': hash value for symbol %u in chain for bucket %zu wrong\n" @@ -2642,7 +2660,7 @@ msgstr "" "sekcja [%2d] „%sâ€: wartość skrótu dla symbolu %u w łaÅ„cuchu dla kubeÅ‚ka %zu " "jest bÅ‚Ä™dna\n" -#: src/elflint.c:2253 +#: src/elflint.c:2254 #, c-format msgid "" "section [%2d] '%s': mask index for symbol %u in chain for bucket %zu wrong\n" @@ -2650,12 +2668,12 @@ msgstr "" "sekcja [%2d] „%sâ€: indeks maski dla symbolu %u w łaÅ„cuchu dla kubeÅ‚ka %zu " "jest bÅ‚Ä™dny\n" -#: src/elflint.c:2283 +#: src/elflint.c:2284 #, c-format msgid "section [%2d] '%s': hash chain for bucket %zu out of bounds\n" msgstr "sekcja [%2d] „%sâ€: Å‚aÅ„cuch skrótu dla kubeÅ‚ka %zu jest spoza zakresu\n" -#: src/elflint.c:2288 +#: src/elflint.c:2289 #, c-format msgid "" "section [%2d] '%s': symbol reference in chain for bucket %zu out of bounds\n" @@ -2663,41 +2681,41 @@ msgstr "" "sekcja [%2d] „%sâ€: odwoÅ‚anie do symbolu w łaÅ„cuchu dla kubeÅ‚ka %zu jest " "spoza zakresu\n" -#: src/elflint.c:2294 +#: src/elflint.c:2295 #, c-format msgid "section [%2d] '%s': bitmask does not match names in the hash table\n" msgstr "" "sekcja [%2d] „%sâ€: maska bitowa nie pasuje do nazw w tabeli mieszajÄ…cej\n" -#: src/elflint.c:2307 +#: src/elflint.c:2308 #, c-format msgid "section [%2d] '%s': relocatable files cannot have hash tables\n" msgstr "" "sekcja [%2d] „%sâ€: pliki relokowalne nie mogÄ… mieć tabeli mieszajÄ…cych\n" -#: src/elflint.c:2325 +#: src/elflint.c:2326 #, c-format msgid "section [%2d] '%s': hash table not for dynamic symbol table\n" msgstr "" "sekcja [%2d] „%sâ€: tabela mieszajÄ…ca nie dla tabeli dynamicznych symboli\n" -#: src/elflint.c:2329 +#: src/elflint.c:2330 #, c-format msgid "section [%2d] '%s': invalid sh_link symbol table section index [%2d]\n" msgstr "" "sekcja [%2d] „%sâ€: nieprawidÅ‚owy indeks sekcji tabeli symboli sh_link [%2d]\n" -#: src/elflint.c:2339 +#: src/elflint.c:2340 #, c-format msgid "section [%2d] '%s': hash table entry size incorrect\n" msgstr "sekcja [%2d] „%sâ€: niepoprawny rozmiar wpisu tabeli mieszajÄ…cej\n" -#: src/elflint.c:2344 +#: src/elflint.c:2345 #, c-format msgid "section [%2d] '%s': not marked to be allocated\n" msgstr "sekcja [%2d] „%sâ€: nieoznaczona do przydzielenia\n" -#: src/elflint.c:2349 +#: src/elflint.c:2350 #, c-format msgid "" "section [%2d] '%s': hash table has not even room for initial administrative " @@ -2706,29 +2724,29 @@ msgstr "" "sekcja [%2d] „%sâ€: tabela mieszajÄ…ca nie ma miejsca nawet na poczÄ…tkowe " "wpisy administracyjne\n" -#: src/elflint.c:2398 +#: src/elflint.c:2399 #, c-format msgid "sh_link in hash sections [%2zu] '%s' and [%2zu] '%s' not identical\n" msgstr "" "sh_link w sekcjach skrótu [%2zu] „%s†i [%2zu] „%s†nie sÄ… identyczne\n" -#: src/elflint.c:2422 src/elflint.c:2487 src/elflint.c:2522 +#: src/elflint.c:2423 src/elflint.c:2488 src/elflint.c:2523 #, c-format msgid "hash section [%2zu] '%s' does not contain enough data\n" msgstr "" "sekcja mieszania [%2zu] „%s†nie zawiera wystarczajÄ…cej iloÅ›ci danych\n" -#: src/elflint.c:2443 +#: src/elflint.c:2444 #, c-format msgid "hash section [%2zu] '%s' has zero bit mask words\n" msgstr "sekcja mieszania [%2zu] „%s†ma zerowe sÅ‚owa maski bitów\n" -#: src/elflint.c:2454 src/elflint.c:2498 src/elflint.c:2535 +#: src/elflint.c:2455 src/elflint.c:2499 src/elflint.c:2536 #, c-format msgid "hash section [%2zu] '%s' uses too much data\n" msgstr "sekcja mieszania [%2zu] „%s†używa za dużo danych\n" -#: src/elflint.c:2469 +#: src/elflint.c:2470 #, c-format msgid "" "hash section [%2zu] '%s' invalid symbol index %<PRIu32> (max_nsyms: " @@ -2737,17 +2755,17 @@ msgstr "" "sekcja mieszajÄ…ca [%2zu] „%s†nieprawidÅ‚owy indeks symboli %<PRIu32> " "(max_nsyms: %<PRIu32>, nentries: %<PRIu32>\n" -#: src/elflint.c:2556 +#: src/elflint.c:2557 #, c-format msgid "hash section [%2zu] '%s' invalid sh_entsize\n" msgstr "sekcja mieszania [%2zu] „%s†nieprawidÅ‚owe sh_entsize\n" -#: src/elflint.c:2566 src/elflint.c:2570 +#: src/elflint.c:2567 src/elflint.c:2571 #, c-format msgid "section [%2zu] '%s': reference to symbol index 0\n" msgstr "sekcja [%2zu] „%sâ€: odwoÅ‚anie do symbolu o indeksie 0\n" -#: src/elflint.c:2577 +#: src/elflint.c:2578 #, c-format msgid "" "symbol %d referenced in new hash table in [%2zu] '%s' but not in old hash " @@ -2756,7 +2774,7 @@ msgstr "" "symbol %d wymieniony w nowej tabeli mieszajÄ…cej w [%2zu] „%sâ€, ale nie " "w poprzedniej tabeli mieszajÄ…cej [%2zu] „%sâ€\n" -#: src/elflint.c:2589 +#: src/elflint.c:2590 #, c-format msgid "" "symbol %d referenced in old hash table in [%2zu] '%s' but not in new hash " @@ -2765,12 +2783,12 @@ msgstr "" "symbol %d wymieniony w poprzedniej tabeli mieszajÄ…cej w [%2zu] „%sâ€, ale nie " "w nowej tabeli mieszajÄ…cej w [%2zu] „%sâ€\n" -#: src/elflint.c:2605 +#: src/elflint.c:2606 #, c-format msgid "section [%2d] '%s': nonzero sh_%s for NULL section\n" msgstr "sekcja [%2d] „%sâ€: niezerowe sh_%s dla sekcji NULL\n" -#: src/elflint.c:2625 +#: src/elflint.c:2626 #, c-format msgid "" "section [%2d] '%s': section groups only allowed in relocatable object files\n" @@ -2778,96 +2796,96 @@ msgstr "" "sekcja [%2d] „%sâ€: w plikach obiektów relokowalnych dozwolone sÄ… tylko grupy " "sekcji\n" -#: src/elflint.c:2636 +#: src/elflint.c:2637 #, c-format msgid "section [%2d] '%s': cannot get symbol table: %s\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać tabeli symboli: %s\n" -#: src/elflint.c:2641 +#: src/elflint.c:2642 #, c-format msgid "section [%2d] '%s': section reference in sh_link is no symbol table\n" msgstr "" "sekcja [%2d] „%sâ€: odwoÅ‚anie do sekcji w sh_link nie ma tabeli symboli\n" -#: src/elflint.c:2647 +#: src/elflint.c:2648 #, c-format msgid "section [%2d] '%s': invalid symbol index in sh_info\n" msgstr "sekcja [%2d] „%sâ€: nieprawidÅ‚owy indeks symbolu w sh_info\n" -#: src/elflint.c:2652 +#: src/elflint.c:2653 #, c-format msgid "section [%2d] '%s': sh_flags not zero\n" msgstr "sekcja [%2d] „%sâ€: niezerowe sh_flags\n" -#: src/elflint.c:2659 +#: src/elflint.c:2660 #, c-format msgid "section [%2d] '%s': cannot get symbol for signature\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać symbolu dla podpisu\n" -#: src/elflint.c:2663 +#: src/elflint.c:2664 #, c-format msgid "section [%2d] '%s': cannot get symbol name for signature\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać nazwy symbolu dla podpisu\n" -#: src/elflint.c:2668 +#: src/elflint.c:2669 #, c-format msgid "section [%2d] '%s': signature symbol cannot be empty string\n" msgstr "sekcja [%2d] „%sâ€: symbol podpisu nie można być pustym ciÄ…giem\n" -#: src/elflint.c:2674 +#: src/elflint.c:2675 #, c-format msgid "section [%2d] '%s': sh_flags not set correctly\n" msgstr "sekcja [%2d] „%sâ€: sh_flags nie ustawione poprawnie\n" -#: src/elflint.c:2680 +#: src/elflint.c:2681 #, c-format msgid "section [%2d] '%s': cannot get data: %s\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać danych: %s\n" -#: src/elflint.c:2689 +#: src/elflint.c:2690 #, c-format msgid "section [%2d] '%s': section size not multiple of sizeof(Elf32_Word)\n" msgstr "" "sekcja [%2d] „%sâ€: rozmiar sekcji nie jest wielokrotnoÅ›ciÄ… " "sizeof(Elf32_Word)\n" -#: src/elflint.c:2695 +#: src/elflint.c:2696 #, c-format msgid "section [%2d] '%s': section group without flags word\n" msgstr "sekcja [%2d] „%sâ€: grupa sekcji bez sÅ‚owa flag\n" -#: src/elflint.c:2703 +#: src/elflint.c:2704 #, c-format msgid "section [%2d] '%s': section group without member\n" msgstr "sekcja [%2d] „%sâ€: grupa sekcji bez elementów\n" -#: src/elflint.c:2707 +#: src/elflint.c:2708 #, c-format msgid "section [%2d] '%s': section group with only one member\n" msgstr "sekcja [%2d] „%sâ€: grupa sekcji z tylko jednym elementem\n" -#: src/elflint.c:2718 +#: src/elflint.c:2719 #, c-format msgid "section [%2d] '%s': unknown section group flags\n" msgstr "sekcja [%2d] „%sâ€: nieznane flagi grupy sekcji\n" -#: src/elflint.c:2730 +#: src/elflint.c:2731 #, c-format msgid "section [%2d] '%s': section index %zu out of range\n" msgstr "sekcja [%2d] „%sâ€: indeks sekcji %zu jest spoza zakresu\n" -#: src/elflint.c:2739 +#: src/elflint.c:2740 #, c-format msgid "section [%2d] '%s': cannot get section header for element %zu: %s\n" msgstr "" "sekcja [%2d] „%sâ€: nie można uzyskać nagłówka sekcji dla elementu %zu: %s\n" -#: src/elflint.c:2746 +#: src/elflint.c:2747 #, c-format msgid "section [%2d] '%s': section group contains another group [%2d] '%s'\n" msgstr "sekcja [%2d] „%sâ€: grupa sekcji zawiera innÄ… grupÄ™ [%2d] „%sâ€\n" -#: src/elflint.c:2752 +#: src/elflint.c:2753 #, c-format msgid "" "section [%2d] '%s': element %zu references section [%2d] '%s' without " @@ -2876,12 +2894,12 @@ msgstr "" "sekcja [%2d] „%sâ€: element %zu odwoÅ‚uje siÄ™ do sekcji [%2d] „%s†bez flagi " "SHF_GROUP\n" -#: src/elflint.c:2759 +#: src/elflint.c:2760 #, c-format msgid "section [%2d] '%s' is contained in more than one section group\n" msgstr "sekcja [%2d] „%s†jest zawarta w wiÄ™cej niż jednej grupie sekcji\n" -#: src/elflint.c:2956 +#: src/elflint.c:2957 #, c-format msgid "" "section [%2d] '%s' refers in sh_link to section [%2d] '%s' which is no " @@ -2890,7 +2908,7 @@ msgstr "" "sekcja [%2d] „%s†odwoÅ‚uje siÄ™ w sh_link do sekcji [%2d] „%sâ€, która nie " "jest tabelÄ… symboli dynamicznych\n" -#: src/elflint.c:2968 +#: src/elflint.c:2969 #, c-format msgid "" "section [%2d] '%s' has different number of entries than symbol table [%2d] " @@ -2898,76 +2916,76 @@ msgid "" msgstr "" "sekcja [%2d] „%s†ma innÄ… liczbÄ™ wpisów niż tabela symboli [%2d] „%sâ€\n" -#: src/elflint.c:2984 +#: src/elflint.c:2985 #, c-format msgid "section [%2d] '%s': symbol %d: cannot read version data\n" msgstr "sekcja [%2d] „%sâ€: symbol %d: nie można odczytać danych wersji\n" -#: src/elflint.c:3000 +#: src/elflint.c:3001 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with global scope\n" msgstr "sekcja [%2d] „%sâ€: symbol %d: symbol lokalny z zakresem globalnym\n" -#: src/elflint.c:3008 +#: src/elflint.c:3009 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with version\n" msgstr "sekcja [%2d] „%sâ€: symbol %d: symbol lokalny z wersjÄ…\n" -#: src/elflint.c:3022 +#: src/elflint.c:3023 #, c-format msgid "section [%2d] '%s': symbol %d: invalid version index %d\n" msgstr "sekcja [%2d] „%sâ€: symbol %d: nieprawidÅ‚owy indeks wersji %d\n" -#: src/elflint.c:3027 +#: src/elflint.c:3028 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for defined version\n" msgstr "" "sekcja [%2d] „%sâ€: symbol %d: indeks wersji %d jest dla wersji okreÅ›lonej\n" -#: src/elflint.c:3037 +#: src/elflint.c:3038 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for requested version\n" msgstr "" "sekcja [%2d] „%sâ€: symbol %d: indeks wersji %d jest dla wersji żądanej\n" -#: src/elflint.c:3090 +#: src/elflint.c:3091 #, c-format msgid "more than one version reference section present\n" msgstr "obecna jest wiÄ™cej niż jedna sekcja odniesienia wersji\n" -#: src/elflint.c:3098 src/elflint.c:3245 +#: src/elflint.c:3099 src/elflint.c:3246 #, c-format msgid "section [%2d] '%s': sh_link does not link to string table\n" msgstr "sekcja [%2d] „%sâ€: sh_link nie Å‚Ä…czy siÄ™ z tabelÄ… ciÄ…gów\n" -#: src/elflint.c:3123 src/elflint.c:3299 +#: src/elflint.c:3124 src/elflint.c:3300 #, c-format msgid "section [%2d] '%s': entry %d has wrong version %d\n" msgstr "sekcja [%2d] „%sâ€: wpis %d ma bÅ‚Ä™dnÄ… wersjÄ™ %d\n" -#: src/elflint.c:3130 src/elflint.c:3306 +#: src/elflint.c:3131 src/elflint.c:3307 #, c-format msgid "section [%2d] '%s': entry %d has wrong offset of auxiliary data\n" msgstr "sekcja [%2d] „%sâ€: wpis %d ma bÅ‚Ä™dny offset dla danych dodatkowych\n" -#: src/elflint.c:3140 +#: src/elflint.c:3141 #, c-format msgid "section [%2d] '%s': entry %d has invalid file reference\n" msgstr "sekcja [%2d] „%sâ€: symbol %d ma bÅ‚Ä™dne odniesienie do pliku\n" -#: src/elflint.c:3148 +#: src/elflint.c:3149 #, c-format msgid "section [%2d] '%s': entry %d references unknown dependency\n" msgstr "sekcja [%2d] „%sâ€: wpis %d odnosi siÄ™ do nieznanej zależnoÅ›ci\n" -#: src/elflint.c:3160 +#: src/elflint.c:3161 #, c-format msgid "section [%2d] '%s': auxiliary entry %d of entry %d has unknown flag\n" msgstr "sekcja [%2d] „%sâ€: wpis dodatkowy %d do wpisu %d ma nieznanÄ… flagÄ™\n" -#: src/elflint.c:3168 +#: src/elflint.c:3169 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has invalid name " @@ -2976,7 +2994,7 @@ msgstr "" "sekcja [%2d] „%sâ€: wpis dodatkowy %d do wpisu %d ma nieprawidÅ‚owe " "odniesienie do nazwy\n" -#: src/elflint.c:3177 +#: src/elflint.c:3178 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong hash value: " @@ -2985,7 +3003,7 @@ msgstr "" "sekcja [%2d] „%sâ€: wpis dodatkowy %d do wpisu %d ma bÅ‚Ä™dnÄ… wartość skrótu: " "%#x, oczekiwano %#x\n" -#: src/elflint.c:3186 +#: src/elflint.c:3187 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has duplicate version " @@ -2994,19 +3012,19 @@ msgstr "" "sekcja [%2d] „%sâ€: wpis dodatkowy %d do wpisu %d ma powtórzonÄ… nazwÄ™ wersji " "„%sâ€\n" -#: src/elflint.c:3197 +#: src/elflint.c:3198 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong next field\n" msgstr "" "sekcja [%2d] „%sâ€: wpis dodatkowy %d do wpisu %d ma bÅ‚Ä™dne nastÄ™pne pole\n" -#: src/elflint.c:3214 src/elflint.c:3390 +#: src/elflint.c:3215 src/elflint.c:3391 #, c-format msgid "section [%2d] '%s': entry %d has invalid offset to next entry\n" msgstr "sekcja [%2d] „%sâ€: wpis %d ma bÅ‚Ä™dny offset do nastÄ™pnego wpisu\n" -#: src/elflint.c:3222 src/elflint.c:3398 +#: src/elflint.c:3223 src/elflint.c:3399 #, c-format msgid "" "section [%2d] '%s': entry %d has zero offset to next entry, but sh_info says " @@ -3015,43 +3033,43 @@ msgstr "" "sekcja [%2d] „%sâ€: wpis %d ma zerowy offset do nastÄ™pnego wpisu, ale sh_info " "zawiera informacje o wiÄ™kszej liczbie wpisów\n" -#: src/elflint.c:3237 +#: src/elflint.c:3238 #, c-format msgid "more than one version definition section present\n" msgstr "obecna jest wiÄ™cej niż jedna sekcja definicji wersji\n" -#: src/elflint.c:3284 +#: src/elflint.c:3285 #, c-format msgid "section [%2d] '%s': more than one BASE definition\n" msgstr "sekcja [%2d] „%sâ€: jest wiÄ™cej niż jedna definicja BASE\n" -#: src/elflint.c:3288 +#: src/elflint.c:3289 #, c-format msgid "section [%2d] '%s': BASE definition must have index VER_NDX_GLOBAL\n" msgstr "sekcja [%2d] „%sâ€: definicja BASE musi mieć indeks VER_NDX_GLOBAL\n" -#: src/elflint.c:3294 +#: src/elflint.c:3295 #, c-format msgid "section [%2d] '%s': entry %d has unknown flag\n" msgstr "sekcja [%2d] „%sâ€: wpis %d ma nieznanÄ… flagÄ™\n" -#: src/elflint.c:3321 +#: src/elflint.c:3322 #, c-format msgid "section [%2d] '%s': entry %d has invalid name reference\n" msgstr "sekcja [%2d] „%sâ€: wpis %d ma nieprawidÅ‚owe odniesienie do nazwy\n" -#: src/elflint.c:3328 +#: src/elflint.c:3329 #, c-format msgid "section [%2d] '%s': entry %d has wrong hash value: %#x, expected %#x\n" msgstr "" "sekcja [%2d] „%sâ€: wpis %d ma bÅ‚Ä™dnÄ… wartość skrótu: %#x, oczekiwano %#x\n" -#: src/elflint.c:3336 +#: src/elflint.c:3337 #, c-format msgid "section [%2d] '%s': entry %d has duplicate version name '%s'\n" msgstr "sekcja [%2d] „%sâ€: wpis %d ma powtórzonÄ… nazwÄ™ wersji „%sâ€\n" -#: src/elflint.c:3356 +#: src/elflint.c:3357 #, c-format msgid "" "section [%2d] '%s': entry %d has invalid name reference in auxiliary data\n" @@ -3059,51 +3077,51 @@ msgstr "" "sekcja [%2d] „%sâ€: wpis %d ma nieprawidÅ‚owe odniesienie do nazwy w danych " "dodatkowych\n" -#: src/elflint.c:3373 +#: src/elflint.c:3374 #, c-format msgid "section [%2d] '%s': entry %d has wrong next field in auxiliary data\n" msgstr "" "sekcja [%2d] „%sâ€: wpis %d ma bÅ‚Ä™dne nastÄ™pne pole w danych dodatkowych\n" -#: src/elflint.c:3406 +#: src/elflint.c:3407 #, c-format msgid "section [%2d] '%s': no BASE definition\n" msgstr "sekcja [%2d] „%sâ€: brak definicji BASE\n" -#: src/elflint.c:3422 +#: src/elflint.c:3423 #, c-format msgid "section [%2d] '%s': unknown parent version '%s'\n" msgstr "sekcja [%2d] „%sâ€: nieznana wersja rodzica „%sâ€\n" -#: src/elflint.c:3447 +#: src/elflint.c:3448 #, c-format msgid "section [%2d] '%s': empty object attributes section\n" msgstr "sekcja [%2d] „%sâ€: pusta sekcja atrybutów obiektu\n" -#: src/elflint.c:3463 +#: src/elflint.c:3464 #, c-format msgid "section [%2d] '%s': unrecognized attribute format\n" msgstr "sekcja [%2d] „%sâ€: nierozpoznany format atrybutu\n" -#: src/elflint.c:3474 +#: src/elflint.c:3475 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute section\n" msgstr "" "sekcja [%2d] „%sâ€: offset %zu: pole o zerowej dÅ‚ugoÅ›ci w sekcji atrybutów\n" -#: src/elflint.c:3483 +#: src/elflint.c:3484 #, c-format msgid "section [%2d] '%s': offset %zu: invalid length in attribute section\n" msgstr "" "sekcja [%2d] „%sâ€: offset %zu: nieprawidÅ‚owa dÅ‚ugość w sekcji atrybutów\n" -#: src/elflint.c:3495 +#: src/elflint.c:3496 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated vendor name string\n" msgstr "sekcja [%2d] „%sâ€: offset %zu: niezakoÅ„czony ciÄ…g nazwy producenta\n" -#: src/elflint.c:3512 +#: src/elflint.c:3513 #, c-format msgid "" "section [%2d] '%s': offset %zu: endless ULEB128 in attribute subsection tag\n" @@ -3111,19 +3129,19 @@ msgstr "" "sekcja [%2d] „%sâ€: offset %zu: niekoÅ„czÄ…ce siÄ™ ULEB128 w znaczniku podsekcji " "atrybutów\n" -#: src/elflint.c:3521 +#: src/elflint.c:3522 #, c-format msgid "section [%2d] '%s': offset %zu: truncated attribute section\n" msgstr "sekcja [%2d] „%sâ€: offset %zu: skrócona sekcja atrybutów\n" -#: src/elflint.c:3530 +#: src/elflint.c:3531 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute subsection\n" msgstr "" "sekcja [%2d] „%sâ€: offset %zu: zerowej dÅ‚ugoÅ›ci pole w podsekcji atrybutów\n" -#: src/elflint.c:3545 +#: src/elflint.c:3546 #, c-format msgid "" "section [%2d] '%s': offset %zu: invalid length in attribute subsection\n" @@ -3131,7 +3149,7 @@ msgstr "" "sekcja [%2d] „%sâ€: offset %zu: nieprawidÅ‚owa dÅ‚ugość w podsekcji atrybutów\n" #. Tag_File -#: src/elflint.c:3556 +#: src/elflint.c:3557 #, c-format msgid "" "section [%2d] '%s': offset %zu: attribute subsection has unexpected tag %u\n" @@ -3139,23 +3157,23 @@ msgstr "" "sekcja [%2d] „%sâ€: offset %zu: podsekcja atrybutów ma nieoczekiwany znacznik " "%u\n" -#: src/elflint.c:3574 +#: src/elflint.c:3578 #, c-format msgid "section [%2d] '%s': offset %zu: endless ULEB128 in attribute tag\n" msgstr "" "sekcja [%2d] „%sâ€: offset %zu: niekoÅ„czÄ…ce siÄ™ ULEB128 w znaczniku atrybutu\n" -#: src/elflint.c:3585 +#: src/elflint.c:3589 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated string in attribute\n" msgstr "sekcja [%2d] „%sâ€: offset %zu: niezakoÅ„czony ciÄ…g w atrybucie\n" -#: src/elflint.c:3598 +#: src/elflint.c:3602 #, c-format msgid "section [%2d] '%s': offset %zu: unrecognized attribute tag %u\n" msgstr "sekcja [%2d] „%sâ€: offset %zu: nierozpoznany znacznik atrybutu %u\n" -#: src/elflint.c:3602 +#: src/elflint.c:3606 #, c-format msgid "" "section [%2d] '%s': offset %zu: unrecognized %s attribute value %<PRIu64>\n" @@ -3163,12 +3181,12 @@ msgstr "" "sekcja [%2d] „%sâ€: offset %zu: atrybut %s ma nierozpoznanÄ… wartość " "%<PRIu64>\n" -#: src/elflint.c:3612 +#: src/elflint.c:3616 #, c-format msgid "section [%2d] '%s': offset %zu: vendor '%s' unknown\n" msgstr "sekcja [%2d] „%sâ€: offset %zu: producent „%s†jest nieznany\n" -#: src/elflint.c:3618 +#: src/elflint.c:3622 #, c-format msgid "" "section [%2d] '%s': offset %zu: extra bytes after last attribute section\n" @@ -3176,47 +3194,47 @@ msgstr "" "sekcja [%2d] „%sâ€: offset %zu: dodatkowe bajty po ostatniej sekcji " "atrybutów\n" -#: src/elflint.c:3715 +#: src/elflint.c:3719 #, c-format msgid "cannot get section header of zeroth section\n" msgstr "nie można uzyskać nagłówka sekcji zerowej\n" -#: src/elflint.c:3719 +#: src/elflint.c:3723 #, c-format msgid "zeroth section has nonzero name\n" msgstr "sekcja zerowa ma niezerowÄ… nazwÄ™\n" -#: src/elflint.c:3721 +#: src/elflint.c:3725 #, c-format msgid "zeroth section has nonzero type\n" msgstr "sekcja zerowa ma niezerowy typ\n" -#: src/elflint.c:3723 +#: src/elflint.c:3727 #, c-format msgid "zeroth section has nonzero flags\n" msgstr "sekcja zerowa ma niezerowe flagi\n" -#: src/elflint.c:3725 +#: src/elflint.c:3729 #, c-format msgid "zeroth section has nonzero address\n" msgstr "sekcja zerowa ma niezerowy adres\n" -#: src/elflint.c:3727 +#: src/elflint.c:3731 #, c-format msgid "zeroth section has nonzero offset\n" msgstr "sekcja zerowa ma niezerowy offset\n" -#: src/elflint.c:3729 +#: src/elflint.c:3733 #, c-format msgid "zeroth section has nonzero align value\n" msgstr "sekcja zerowa ma niezerowÄ… wartość wyrównania\n" -#: src/elflint.c:3731 +#: src/elflint.c:3735 #, c-format msgid "zeroth section has nonzero entry size value\n" msgstr "sekcja zerowa ma niezerowÄ… wartość rozmiaru wpisu\n" -#: src/elflint.c:3734 +#: src/elflint.c:3738 #, c-format msgid "" "zeroth section has nonzero size value while ELF header has nonzero shnum " @@ -3225,7 +3243,7 @@ msgstr "" "sekcja zerowa ma niezerowÄ… wartość rozmiaru, a nagłówek ELF ma niezerowÄ… " "wartość shnum\n" -#: src/elflint.c:3738 +#: src/elflint.c:3742 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " @@ -3234,7 +3252,7 @@ msgstr "" "sekcja zerowa ma niezerowÄ… wartość dowiÄ…zaÅ„, a nagłówek ELF nie wskazuje " "przepeÅ‚nienia w shstrndx\n" -#: src/elflint.c:3742 +#: src/elflint.c:3746 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " @@ -3243,46 +3261,46 @@ msgstr "" "sekcja zerowa ma niezerowÄ… wartość dowiÄ…zaÅ„, a nagłówek ELF nie wskazuje " "przepeÅ‚nienia w phnum\n" -#: src/elflint.c:3760 +#: src/elflint.c:3764 #, c-format msgid "cannot get section header for section [%2zu] '%s': %s\n" msgstr "nie można uzyskać nagłówka sekcji dla sekcji [%2zu] „%sâ€: %s\n" -#: src/elflint.c:3769 +#: src/elflint.c:3773 #, c-format msgid "section [%2zu]: invalid name\n" msgstr "sekcja [%2zu]: nieprawidÅ‚owa nazwa\n" -#: src/elflint.c:3796 +#: src/elflint.c:3800 #, c-format msgid "section [%2d] '%s' has wrong type: expected %s, is %s\n" msgstr "sekcja [%2d] „%s†ma bÅ‚Ä™dny typ: oczekiwano %s, jest %s\n" -#: src/elflint.c:3813 +#: src/elflint.c:3817 #, c-format msgid "section [%2zu] '%s' has wrong flags: expected %s, is %s\n" msgstr "sekcja [%2zu] „%s†ma bÅ‚Ä™dne flagi: oczekiwano %s, jest %s\n" -#: src/elflint.c:3831 +#: src/elflint.c:3835 #, c-format msgid "" "section [%2zu] '%s' has wrong flags: expected %s and possibly %s, is %s\n" msgstr "" "sekcja [%2zu] „%s†ma bÅ‚Ä™dne flagi: oczekiwano %s i być może %s, jest %s\n" -#: src/elflint.c:3848 +#: src/elflint.c:3852 #, c-format msgid "section [%2zu] '%s' present in object file\n" msgstr "sekcja [%2zu] „%s†jest obecna w pliku obiektu\n" -#: src/elflint.c:3854 src/elflint.c:3886 +#: src/elflint.c:3858 src/elflint.c:3890 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag set but there is no loadable segment\n" msgstr "" "sekcja [%2zu] „%s†ma flagÄ™ SHF_ALLOC, ale nie ma segmentu wczytywalnego\n" -#: src/elflint.c:3859 src/elflint.c:3891 +#: src/elflint.c:3863 src/elflint.c:3895 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag not set but there are loadable " @@ -3290,7 +3308,7 @@ msgid "" msgstr "" "sekcja [%2zu] „%s†nie ma flagi SHF_ALLOC, ale sÄ… segmenty wczytywalne\n" -#: src/elflint.c:3867 +#: src/elflint.c:3871 #, c-format msgid "" "section [%2zu] '%s' is extension section index table in non-object file\n" @@ -3298,22 +3316,22 @@ msgstr "" "sekcja [%2zu] „%s†jest tabelÄ… indeksów sekcji rozszerzeÅ„ w pliku " "nieobiektowym\n" -#: src/elflint.c:3910 +#: src/elflint.c:3914 #, c-format msgid "section [%2zu] '%s': size not multiple of entry size\n" msgstr "sekcja [%2zu] „%sâ€: rozmiar nie jest wielokrotnoÅ›ciÄ… rozmiaru wpisu\n" -#: src/elflint.c:3915 +#: src/elflint.c:3919 #, c-format msgid "cannot get section header\n" msgstr "nie można uzyskać nagłówka sekcji\n" -#: src/elflint.c:3925 +#: src/elflint.c:3929 #, c-format msgid "section [%2zu] '%s' has unsupported type %d\n" msgstr "sekcja [%2zu] „%s†ma nieobsÅ‚ugiwany typ %d\n" -#: src/elflint.c:3945 +#: src/elflint.c:3949 #, c-format msgid "" "section [%2zu] '%s' contains invalid processor-specific flag(s) %#<PRIx64>\n" @@ -3321,74 +3339,74 @@ msgstr "" "sekcja [%2zu] „%s†zawiera nieprawidÅ‚owe flagi dla konkretnego procesora " "%#<PRIx64>\n" -#: src/elflint.c:3955 +#: src/elflint.c:3959 #, c-format msgid "section [%2zu] '%s' contains unknown flag(s) %#<PRIx64>\n" msgstr "sekcja [%2zu] „%s†zawiera nieznane flagi %#<PRIx64>\n" -#: src/elflint.c:3963 +#: src/elflint.c:3967 #, c-format msgid "section [%2zu] '%s': thread-local data sections address not zero\n" msgstr "" "sekcja [%2zu] „%sâ€: adres sekcji danych lokalnych dla wÄ…tków nie jest zerem\n" -#: src/elflint.c:3973 +#: src/elflint.c:3977 #, c-format msgid "section [%2zu] '%s': allocated section cannot be compressed\n" msgstr "sekcja [%2zu] „%sâ€: nie można skompresować przydzielonej sekcji\n" -#: src/elflint.c:3978 +#: src/elflint.c:3982 #, c-format msgid "section [%2zu] '%s': nobits section cannot be compressed\n" msgstr "sekcja [%2zu] „%sâ€: nie można skompresować sekcji „nobitsâ€\n" -#: src/elflint.c:3984 +#: src/elflint.c:3988 #, c-format msgid "" "section [%2zu] '%s': compressed section with no compression header: %s\n" msgstr "sekcja [%2zu] „%sâ€: skompresowana sekcja bez nagłówka kompresji: %s\n" -#: src/elflint.c:3990 +#: src/elflint.c:3994 #, c-format msgid "section [%2zu] '%s': invalid section reference in link value\n" msgstr "" "sekcja [%2zu] „%sâ€: nieprawidÅ‚owe odwoÅ‚anie do sekcji w wartoÅ›ci dowiÄ…zania\n" -#: src/elflint.c:3995 +#: src/elflint.c:3999 #, c-format msgid "section [%2zu] '%s': invalid section reference in info value\n" msgstr "" "sekcja [%2zu] „%sâ€: nieprawidÅ‚owe odwoÅ‚anie do sekcji w wartoÅ›ci " "informacyjnej\n" -#: src/elflint.c:4002 +#: src/elflint.c:4006 #, c-format msgid "section [%2zu] '%s': strings flag set without merge flag\n" msgstr "sekcja [%2zu] „%sâ€: flaga ciÄ…gów jest ustawiona bez flagi merge\n" -#: src/elflint.c:4007 +#: src/elflint.c:4011 #, c-format msgid "section [%2zu] '%s': merge flag set but entry size is zero\n" msgstr "" "sekcja [%2zu] „%sâ€: flaga merge jest ustawiona, ale rozmiar wpisu jest " "zerowy\n" -#: src/elflint.c:4026 +#: src/elflint.c:4030 #, c-format msgid "section [%2zu] '%s' has unexpected type %d for an executable section\n" msgstr "sekcja [%2zu] „%s†ma nieoczekiwany typ %d dla sekcji wykonywalnej\n" -#: src/elflint.c:4035 +#: src/elflint.c:4039 #, c-format msgid "section [%2zu] '%s' must be of type NOBITS in debuginfo files\n" msgstr "sekcja [%2zu] „%s†musi być typu NOBITS w plikach debuginfo\n" -#: src/elflint.c:4042 +#: src/elflint.c:4046 #, c-format msgid "section [%2zu] '%s' is both executable and writable\n" msgstr "sekcja [%2zu] „%s†jest wykonywalne i zapisywalne\n" -#: src/elflint.c:4073 +#: src/elflint.c:4077 #, c-format msgid "" "section [%2zu] '%s' not fully contained in segment of program header entry " @@ -3397,7 +3415,7 @@ msgstr "" "sekcja [%2zu] „%s†nie jest w caÅ‚oÅ›ci zawarta w segmencie wpisu %d nagłówka " "programu\n" -#: src/elflint.c:4083 +#: src/elflint.c:4087 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " @@ -3406,7 +3424,7 @@ msgstr "" "sekcja [%2zu] „%s†ma typ NOBITS, a jest odczytywana z pliku w segmencie " "wpisu %d nagłówka programu\n" -#: src/elflint.c:4109 +#: src/elflint.c:4113 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " @@ -3415,7 +3433,7 @@ msgstr "" "sekcja [%2zu] „%s†ma typ NOBITS, ale jest odczytywana z pliku w segmencie " "wpisu %d nagłówka programu, a zawartość pliku jest niezerowa\n" -#: src/elflint.c:4120 +#: src/elflint.c:4124 #, c-format msgid "" "section [%2zu] '%s' has not type NOBITS but is not read from the file in " @@ -3424,17 +3442,17 @@ msgstr "" "sekcja [%2zu] „%s†nie ma typu NOBITS, a nie jest odczytywana z pliku " "w segmencie wpisu %d nagłówka programu\n" -#: src/elflint.c:4131 +#: src/elflint.c:4135 #, c-format msgid "section [%2zu] '%s' is executable in nonexecutable segment %d\n" msgstr "sekcja [%2zu] „%s†jest wykonywalne w segmencie niewykonywalnym %d\n" -#: src/elflint.c:4141 +#: src/elflint.c:4145 #, c-format msgid "section [%2zu] '%s' is writable in unwritable segment %d\n" msgstr "sekcja [%2zu] „%s†jest zapisywalne w niezapisywalnym segmencie %d\n" -#: src/elflint.c:4151 +#: src/elflint.c:4155 #, c-format msgid "" "section [%2zu] '%s': alloc flag set but section not in any loaded segment\n" @@ -3442,7 +3460,7 @@ msgstr "" "sekcja [%2zu] „%sâ€: ma flagÄ™ alloc, ale sekcja nie jest w żadnym segmencie " "wczytywalnym\n" -#: src/elflint.c:4157 +#: src/elflint.c:4161 #, c-format msgid "" "section [%2zu] '%s': ELF header says this is the section header string table " @@ -3451,7 +3469,7 @@ msgstr "" "sekcja [%2zu] „%sâ€: wedÅ‚ug nagłówka ELF to jest tabela ciÄ…gów nagłówków " "sekcji, ale typ nie jest SHT_TYPE\n" -#: src/elflint.c:4165 +#: src/elflint.c:4169 #, c-format msgid "" "section [%2zu] '%s': relocatable files cannot have dynamic symbol tables\n" @@ -3459,17 +3477,17 @@ msgstr "" "sekcja [%2zu] „%sâ€: pliki relokowalne nie mogÄ… mieć tabeli symboli " "dynamicznych\n" -#: src/elflint.c:4216 +#: src/elflint.c:4220 #, c-format msgid "more than one version symbol table present\n" msgstr "obecna jest wiÄ™cej niż jedna tabela symboli wersji\n" -#: src/elflint.c:4239 +#: src/elflint.c:4243 #, c-format msgid "INTERP program header entry but no .interp section\n" msgstr "jest wpis nagłówka programu INTERP, ale nie ma sekcji .interp\n" -#: src/elflint.c:4250 +#: src/elflint.c:4254 #, c-format msgid "" "loadable segment [%u] is executable but contains no executable sections\n" @@ -3477,14 +3495,14 @@ msgstr "" "wczytywalny segment [%u] jest wykonywalny, ale nie zawiera wykonywalnych " "sekcji\n" -#: src/elflint.c:4256 +#: src/elflint.c:4260 #, c-format msgid "loadable segment [%u] is writable but contains no writable sections\n" msgstr "" "wczytywalny segment [%u] jest zapisywalny, ale nie zawiera zapisywalnych " "sekcji\n" -#: src/elflint.c:4267 +#: src/elflint.c:4271 #, c-format msgid "" "no .gnu.versym section present but .gnu.versym_d or .gnu.versym_r section " @@ -3493,23 +3511,23 @@ msgstr "" "brak sekcji .gnu.versym, ale istnieje sekcja .gnu.versym_d lub .gnu." "versym_r\n" -#: src/elflint.c:4280 +#: src/elflint.c:4284 #, c-format msgid "duplicate version index %d\n" msgstr "powtórzony indeks wersji %d\n" -#: src/elflint.c:4294 +#: src/elflint.c:4298 #, c-format msgid ".gnu.versym section present without .gnu.versym_d or .gnu.versym_r\n" msgstr "sekcja .gnu.versym istnieje bez .gnu.versym_d lub .gnu.versym_r\n" -#: src/elflint.c:4343 +#: src/elflint.c:4347 #, c-format msgid "phdr[%d]: unknown core file note type %<PRIu32> at offset %<PRIu64>\n" msgstr "" "phdr[%d]: nieznany typ notatki pliku core %<PRIu32> pod offsetem %<PRIu64>\n" -#: src/elflint.c:4347 +#: src/elflint.c:4351 #, c-format msgid "" "section [%2d] '%s': unknown core file note type %<PRIu32> at offset %zu\n" @@ -3517,7 +3535,7 @@ msgstr "" "sekcja [%2d]: „%sâ€: nieznany typ notatki pliku core %<PRIu32> pod offsetem " "%zu\n" -#: src/elflint.c:4403 +#: src/elflint.c:4407 #, c-format msgid "" "phdr[%d]: unknown object file note type %<PRIu32> with owner name '%s' at " @@ -3526,7 +3544,7 @@ msgstr "" "phdr[%d]: nieznany typ notatki pliku obiektu %<PRIu32> o nazwie wÅ‚aÅ›ciciela " "„%s†pod offsetem %zu\n" -#: src/elflint.c:4408 +#: src/elflint.c:4412 #, c-format msgid "" "section [%2d] '%s': unknown object file note type %<PRIu32> with owner name " @@ -3535,37 +3553,37 @@ msgstr "" "sekcja [%2d] „%sâ€: nieznany typ notatki pliku obiektu %<PRIu32> o nazwie " "wÅ‚aÅ›ciciela „%s†pod offsetem %zu\n" -#: src/elflint.c:4427 +#: src/elflint.c:4431 #, c-format msgid "phdr[%d]: no note entries defined for the type of file\n" msgstr "phdr[%d]: brak okreÅ›lonych wpisów notatek dla typu pliku\n" -#: src/elflint.c:4447 +#: src/elflint.c:4451 #, c-format msgid "phdr[%d]: cannot get content of note section: %s\n" msgstr "phdr[%d]: nie można uzyskać zawartoÅ›ci sekcji notatki: %s\n" -#: src/elflint.c:4450 +#: src/elflint.c:4454 #, c-format msgid "phdr[%d]: extra %<PRIu64> bytes after last note\n" msgstr "phdr[%d]: dodatkowe %<PRIu64> B po ostatniej notatce\n" -#: src/elflint.c:4471 +#: src/elflint.c:4475 #, c-format msgid "section [%2d] '%s': no note entries defined for the type of file\n" msgstr "sekcja [%2d] „%sâ€: brak okreÅ›lonych wpisów notatek dla typu pliku\n" -#: src/elflint.c:4478 +#: src/elflint.c:4482 #, c-format msgid "section [%2d] '%s': cannot get content of note section\n" msgstr "sekcja [%2d] „%sâ€: nie można uzyskać zawartoÅ›ci sekcji notatek\n" -#: src/elflint.c:4481 +#: src/elflint.c:4485 #, c-format msgid "section [%2d] '%s': extra %<PRIu64> bytes after last note\n" msgstr "sekcja [%2d] „%sâ€: dodatkowe %<PRIu64> B po ostatniej notatce\n" -#: src/elflint.c:4499 +#: src/elflint.c:4503 #, c-format msgid "" "only executables, shared objects, and core files can have program headers\n" @@ -3573,135 +3591,135 @@ msgstr "" "tylko pliki wykonywalne, obiekty współdzielone i pliki core mogÄ… mieć " "nagłówki programu\n" -#: src/elflint.c:4514 +#: src/elflint.c:4518 #, c-format msgid "cannot get program header entry %d: %s\n" msgstr "nie można uzyskać wpisu nagłówka programu %d: %s\n" -#: src/elflint.c:4524 +#: src/elflint.c:4528 #, c-format msgid "program header entry %d: unknown program header entry type %#<PRIx64>\n" msgstr "" "wpis nagłówka programu %d: nieznany typ wpisu nagłówka programu %#<PRIx64>\n" -#: src/elflint.c:4535 +#: src/elflint.c:4539 #, c-format msgid "more than one INTERP entry in program header\n" msgstr "wiÄ™cej niż jeden wpis INTERP w nagłówku programu\n" -#: src/elflint.c:4543 +#: src/elflint.c:4547 #, c-format msgid "more than one TLS entry in program header\n" msgstr "wiÄ™cej niż jeden wpis TLS w nagłówku programu\n" -#: src/elflint.c:4550 +#: src/elflint.c:4554 #, c-format msgid "static executable cannot have dynamic sections\n" msgstr "statyczny plik wykonywalny nie może mieć sekcji dynamicznych\n" -#: src/elflint.c:4564 +#: src/elflint.c:4568 #, c-format msgid "dynamic section reference in program header has wrong offset\n" msgstr "odniesienie sekcji dynamicznej w nagłówku programu ma bÅ‚Ä™dny offset\n" -#: src/elflint.c:4567 +#: src/elflint.c:4571 #, c-format msgid "dynamic section size mismatch in program and section header\n" msgstr "różne rozmiary sekcji dynamicznej w nagłówku programu i sekcji\n" -#: src/elflint.c:4577 +#: src/elflint.c:4581 #, c-format msgid "more than one GNU_RELRO entry in program header\n" msgstr "wiÄ™cej niż jeden wpis GNU_RELRO w nagłówku programu\n" -#: src/elflint.c:4598 +#: src/elflint.c:4602 #, c-format msgid "loadable segment GNU_RELRO applies to is not writable\n" msgstr "wczytywalny segment wskazywany przez GNU_RELRO nie jest zapisywalny\n" -#: src/elflint.c:4609 +#: src/elflint.c:4613 #, c-format msgid "loadable segment [%u] flags do not match GNU_RELRO [%u] flags\n" msgstr "flagi wczytywalnego segmentu [%u] nie pasujÄ… do flag GNU_RELRO [%u]\n" -#: src/elflint.c:4616 +#: src/elflint.c:4620 #, c-format msgid "" "GNU_RELRO [%u] flags are not a subset of the loadable segment [%u] flags\n" msgstr "" "flagi GNU_RELRO [%u] nie sÄ… podzbiorem flag wczytywalnego segmentu [%u]\n" -#: src/elflint.c:4625 src/elflint.c:4648 +#: src/elflint.c:4629 src/elflint.c:4652 #, c-format msgid "%s segment not contained in a loaded segment\n" msgstr "segment %s nie zawiera siÄ™ we wczytywalnym segmencie\n" -#: src/elflint.c:4654 +#: src/elflint.c:4658 #, c-format msgid "program header offset in ELF header and PHDR entry do not match" msgstr "" "offsety nagłówka programu w nagłówku ELF i wpisie PHDR nie zgadzajÄ… siÄ™" -#: src/elflint.c:4681 +#: src/elflint.c:4685 #, c-format msgid "call frame search table reference in program header has wrong offset\n" msgstr "" "odniesienie tabeli wyszukiwania ramki wywoÅ‚ania w nagłówku programu ma " "bÅ‚Ä™dny offset\n" -#: src/elflint.c:4684 +#: src/elflint.c:4688 #, c-format msgid "call frame search table size mismatch in program and section header\n" msgstr "" "różne rozmiary tabel wyszukiwania ramki wywoÅ‚ania w nagłówku programu " "i sekcji\n" -#: src/elflint.c:4697 +#: src/elflint.c:4701 #, c-format msgid "PT_GNU_EH_FRAME present but no .eh_frame_hdr section\n" msgstr "PT_GNU_EH_FRAME jest obecne, ale brak sekcji .eh_frame_hdr\n" -#: src/elflint.c:4705 +#: src/elflint.c:4709 #, c-format msgid "call frame search table must be allocated\n" msgstr "tabela wyszukiwania ramki wywoÅ‚ania musi być przydzielona\n" -#: src/elflint.c:4708 +#: src/elflint.c:4712 #, c-format msgid "section [%2zu] '%s' must be allocated\n" msgstr "sekcja [%2zu] „%sâ€: musi być przydzielona\n" -#: src/elflint.c:4712 +#: src/elflint.c:4716 #, c-format msgid "call frame search table must not be writable\n" msgstr "tabela wyszukiwania ramki wywoÅ‚ania nie może być zapisywalna\n" -#: src/elflint.c:4715 +#: src/elflint.c:4719 #, c-format msgid "section [%2zu] '%s' must not be writable\n" msgstr "sekcja [%2zu] „%s†nie może być zapisywalna\n" -#: src/elflint.c:4720 +#: src/elflint.c:4724 #, c-format msgid "call frame search table must not be executable\n" msgstr "tabela wyszukiwania ramki wywoÅ‚ania nie może być wykonywalna\n" -#: src/elflint.c:4723 +#: src/elflint.c:4727 #, c-format msgid "section [%2zu] '%s' must not be executable\n" msgstr "sekcja [%2zu] „%s†nie może być wykonywalna\n" -#: src/elflint.c:4737 +#: src/elflint.c:4741 #, c-format msgid "program header entry %d: file size greater than memory size\n" msgstr "wpis nagłówka programu %d: rozmiar pliku wiÄ™kszy niż rozmiar pamiÄ™ci\n" -#: src/elflint.c:4744 +#: src/elflint.c:4748 #, c-format msgid "program header entry %d: alignment not a power of 2\n" msgstr "wpis nagłówka programu %d: wyrównanie nie jest potÄ™gÄ… 2\n" -#: src/elflint.c:4747 +#: src/elflint.c:4751 #, c-format msgid "" "program header entry %d: file offset and virtual address not module of " @@ -3710,7 +3728,7 @@ msgstr "" "wpis nagłówka programu %d: offset w pliku i adres wirtualny nie sÄ… " "wielokrotnoÅ›ciÄ… wyrównania\n" -#: src/elflint.c:4760 +#: src/elflint.c:4764 #, c-format msgid "" "executable/DSO with .eh_frame_hdr section does not have a PT_GNU_EH_FRAME " @@ -3719,17 +3737,17 @@ msgstr "" "plik wykonywalny/DSO z sekcjÄ… .eh_frame_hdr nie ma wpisu nagłówka programu " "PT_GNU_EH_FRAME" -#: src/elflint.c:4794 +#: src/elflint.c:4798 #, c-format msgid "cannot read ELF header: %s\n" msgstr "nie można odczytać nagłówka ELF: %s\n" -#: src/elflint.c:4806 +#: src/elflint.c:4810 #, c-format msgid "cannot create backend for ELF file\n" msgstr "nie można utworzyć zaplecza dla pliku ELF\n" -#: src/elflint.c:4827 +#: src/elflint.c:4831 #, c-format msgid "text relocation flag set but not needed\n" msgstr "flaga relokacji tekstu jest ustawiona, ale niepotrzebna\n" @@ -3986,11 +4004,11 @@ msgid "cannot create search tree" msgstr "nie można utworzyć drzewa wyszukiwania" #: src/nm.c:742 src/nm.c:1234 src/objdump.c:778 src/readelf.c:663 -#: src/readelf.c:1471 src/readelf.c:1620 src/readelf.c:1847 src/readelf.c:2084 -#: src/readelf.c:2273 src/readelf.c:2451 src/readelf.c:2526 src/readelf.c:2791 -#: src/readelf.c:2866 src/readelf.c:2952 src/readelf.c:3547 src/readelf.c:3595 -#: src/readelf.c:3664 src/readelf.c:11581 src/readelf.c:12771 -#: src/readelf.c:12981 src/readelf.c:13049 src/size.c:396 src/size.c:467 +#: src/readelf.c:1484 src/readelf.c:1633 src/readelf.c:1860 src/readelf.c:2097 +#: src/readelf.c:2286 src/readelf.c:2466 src/readelf.c:2544 src/readelf.c:2809 +#: src/readelf.c:2884 src/readelf.c:2970 src/readelf.c:3565 src/readelf.c:3613 +#: src/readelf.c:3682 src/readelf.c:11620 src/readelf.c:12803 +#: src/readelf.c:13013 src/readelf.c:13081 src/size.c:396 src/size.c:467 #: src/strip.c:1093 #, c-format msgid "cannot get section header string table index" @@ -4109,11 +4127,11 @@ msgstr "Nie podano dziaÅ‚ania.\n" msgid "while close `%s'" msgstr "podczas zamykania „%sâ€" -#: src/objdump.c:362 src/readelf.c:2179 src/readelf.c:2370 +#: src/objdump.c:362 src/readelf.c:2192 src/readelf.c:2383 msgid "INVALID SYMBOL" msgstr "NIEPRAWIDÅOWY SYMBOL" -#: src/objdump.c:377 src/readelf.c:2213 src/readelf.c:2406 +#: src/objdump.c:377 src/readelf.c:2226 src/readelf.c:2419 msgid "INVALID SECTION" msgstr "NIEPRAWIDÅOWA SEKCJA" @@ -4336,12 +4354,12 @@ msgstr "nie można utworzyć deskryptora ELF: %s" msgid "cannot determine number of sections: %s" msgstr "nie można okreÅ›lić liczby sekcji: %s" -#: src/readelf.c:672 src/readelf.c:1287 src/readelf.c:1495 +#: src/readelf.c:672 src/readelf.c:1300 src/readelf.c:1508 #, c-format msgid "cannot get section: %s" msgstr "nie można uzyskać sekcji: %s" -#: src/readelf.c:681 src/readelf.c:1294 src/readelf.c:1502 src/readelf.c:13001 +#: src/readelf.c:681 src/readelf.c:1307 src/readelf.c:1515 src/readelf.c:13033 #: src/unstrip.c:396 src/unstrip.c:427 src/unstrip.c:490 src/unstrip.c:610 #: src/unstrip.c:631 src/unstrip.c:671 src/unstrip.c:887 src/unstrip.c:1222 #: src/unstrip.c:1349 src/unstrip.c:1373 src/unstrip.c:1429 src/unstrip.c:1470 @@ -4355,8 +4373,8 @@ msgstr "nie można uzyskać nagłówka sekcji: %s" msgid "cannot get section name" msgstr "nie można uzyskać nazwy sekcji" -#: src/readelf.c:698 src/readelf.c:6797 src/readelf.c:10854 src/readelf.c:10956 -#: src/readelf.c:11134 +#: src/readelf.c:698 src/readelf.c:6833 src/readelf.c:10887 src/readelf.c:10989 +#: src/readelf.c:11173 #, c-format msgid "cannot get %s content: %s" msgstr "nie można uzyskać zwartoÅ›ci %s: %s" @@ -4426,38 +4444,44 @@ msgstr "nie można okreÅ›lić liczby nagłówków programu: %s" msgid "cannot read ELF: %s" msgstr "nie można odczytać danych ELF: %s" -#: src/readelf.c:1078 +#: src/readelf.c:1050 +#, fuzzy +#| msgid "cannot get section: %s" +msgid "cannot find section" +msgstr "nie można uzyskać sekcji: %s" + +#: src/readelf.c:1087 msgid "NONE (None)" msgstr "NONE (żaden)" -#: src/readelf.c:1079 +#: src/readelf.c:1088 msgid "REL (Relocatable file)" msgstr "REL (plik relokowalny)" -#: src/readelf.c:1080 +#: src/readelf.c:1089 msgid "EXEC (Executable file)" msgstr "EXEC (plik wykonywalny)" -#: src/readelf.c:1081 +#: src/readelf.c:1090 msgid "DYN (Shared object file)" msgstr "DYN (plik obiektu współdzielonego)" -#: src/readelf.c:1082 +#: src/readelf.c:1091 msgid "CORE (Core file)" msgstr "CORE (plik core)" -#: src/readelf.c:1087 +#: src/readelf.c:1096 #, c-format msgid "OS Specific: (%x)\n" msgstr "Zależny od systemu: (%x)\n" #. && e_type <= ET_HIPROC always true -#: src/readelf.c:1089 +#: src/readelf.c:1098 #, c-format msgid "Processor Specific: (%x)\n" msgstr "Zależny od procesora: (%x)\n" -#: src/readelf.c:1099 +#: src/readelf.c:1108 msgid "" "ELF Header:\n" " Magic: " @@ -4465,7 +4489,7 @@ msgstr "" "Nagłówek ELF:\n" " Magic: " -#: src/readelf.c:1103 +#: src/readelf.c:1112 #, c-format msgid "" "\n" @@ -4474,123 +4498,123 @@ msgstr "" "\n" " Klasa: %s\n" -#: src/readelf.c:1108 +#: src/readelf.c:1117 #, c-format msgid " Data: %s\n" msgstr " Dane: %s\n" -#: src/readelf.c:1114 +#: src/readelf.c:1123 #, c-format msgid " Ident Version: %hhd %s\n" msgstr " Wersja Ident: %hhd %s\n" -#: src/readelf.c:1116 src/readelf.c:1138 +#: src/readelf.c:1125 src/readelf.c:1147 msgid "(current)" msgstr "(bieżąca)" -#: src/readelf.c:1120 +#: src/readelf.c:1129 #, c-format msgid " OS/ABI: %s\n" msgstr " System operacyjny/ABI: %s\n" -#: src/readelf.c:1123 +#: src/readelf.c:1132 #, c-format msgid " ABI Version: %hhd\n" msgstr " Wersja ABI: %hhd\n" -#: src/readelf.c:1126 +#: src/readelf.c:1135 msgid " Type: " msgstr " Typ: " -#: src/readelf.c:1131 +#: src/readelf.c:1140 #, c-format msgid " Machine: %s\n" msgstr " Komputer: %s\n" -#: src/readelf.c:1133 +#: src/readelf.c:1142 #, c-format msgid " Machine: <unknown>: 0x%x\n" msgstr " Komputer: <nieznany>: 0x%x\n" -#: src/readelf.c:1136 +#: src/readelf.c:1145 #, c-format msgid " Version: %d %s\n" msgstr " Wersja: %d %s\n" -#: src/readelf.c:1140 +#: src/readelf.c:1149 #, c-format msgid " Entry point address: %#<PRIx64>\n" msgstr " Adres punktu wejÅ›ciowego: %#<PRIx64>\n" -#: src/readelf.c:1143 +#: src/readelf.c:1152 #, c-format msgid " Start of program headers: %<PRId64> %s\n" msgstr " PoczÄ…tek nagłówków programu: %<PRId64> %s\n" -#: src/readelf.c:1144 src/readelf.c:1147 +#: src/readelf.c:1153 src/readelf.c:1156 msgid "(bytes into file)" msgstr "(bajtów w pliku)" -#: src/readelf.c:1146 +#: src/readelf.c:1155 #, c-format msgid " Start of section headers: %<PRId64> %s\n" msgstr " PoczÄ…tek nagłówków sekcji: %<PRId64> %s\n" -#: src/readelf.c:1149 +#: src/readelf.c:1158 #, c-format msgid " Flags: %s\n" msgstr " Flagi: %s\n" -#: src/readelf.c:1152 +#: src/readelf.c:1161 #, c-format msgid " Size of this header: %<PRId16> %s\n" msgstr " Rozmiar tego nagłówka: %<PRId16> %s\n" -#: src/readelf.c:1153 src/readelf.c:1156 src/readelf.c:1173 +#: src/readelf.c:1162 src/readelf.c:1165 src/readelf.c:1182 msgid "(bytes)" msgstr "(bajtów)" -#: src/readelf.c:1155 +#: src/readelf.c:1164 #, c-format msgid " Size of program header entries: %<PRId16> %s\n" msgstr " Rozmiar wpisów nagłówka programu: %<PRId16> %s\n" -#: src/readelf.c:1158 +#: src/readelf.c:1167 #, c-format msgid " Number of program headers entries: %<PRId16>" msgstr " Liczba wpisów nagłówków programu: %<PRId16>" -#: src/readelf.c:1165 +#: src/readelf.c:1174 #, c-format msgid " (%<PRIu32> in [0].sh_info)" msgstr " (%<PRIu32> w [0].sh_info)" -#: src/readelf.c:1168 src/readelf.c:1185 src/readelf.c:1199 +#: src/readelf.c:1177 src/readelf.c:1194 src/readelf.c:1208 msgid " ([0] not available)" msgstr " ([0] niedostÄ™pny)" -#: src/readelf.c:1172 +#: src/readelf.c:1181 #, c-format msgid " Size of section header entries: %<PRId16> %s\n" msgstr " Rozmiar wpisów nagłówka sekcji: %<PRId16> %s\n" -#: src/readelf.c:1175 +#: src/readelf.c:1184 #, c-format msgid " Number of section headers entries: %<PRId16>" msgstr " Liczba wpisów nagłówków sekcji: %<PRId16>" -#: src/readelf.c:1182 +#: src/readelf.c:1191 #, c-format msgid " (%<PRIu32> in [0].sh_size)" msgstr " (%<PRIu32> w [0].sh_size)" #. We managed to get the zeroth section. -#: src/readelf.c:1195 +#: src/readelf.c:1204 #, c-format msgid " (%<PRIu32> in [0].sh_link)" msgstr " (%<PRIu32> w [0].sh_link)" -#: src/readelf.c:1203 +#: src/readelf.c:1212 #, c-format msgid "" " Section header string table index: XINDEX%s\n" @@ -4599,7 +4623,7 @@ msgstr "" " Indeks tabeli ciÄ…gów nagłówków sekcji: XINDEX%s\n" "\n" -#: src/readelf.c:1207 +#: src/readelf.c:1216 #, c-format msgid "" " Section header string table index: %<PRId16>\n" @@ -4608,12 +4632,12 @@ msgstr "" " Indeks tabeli ciÄ…gów nagłówków sekcji: %<PRId16>\n" "\n" -#: src/readelf.c:1253 src/readelf.c:1461 +#: src/readelf.c:1266 src/readelf.c:1474 #, c-format msgid "cannot get number of sections: %s" msgstr "nie można uzyskać liczby sekcji: %s" -#: src/readelf.c:1256 +#: src/readelf.c:1269 #, c-format msgid "" "There are %zd section headers, starting at offset %#<PRIx64>:\n" @@ -4622,16 +4646,16 @@ msgstr "" "Liczba nagłówków sekcji: %zd, rozpoczynajÄ…cych siÄ™ od offsetu %#<PRIx64>:\n" "\n" -#: src/readelf.c:1264 +#: src/readelf.c:1277 #, c-format msgid "cannot get section header string table index: %s" msgstr "nie można uzyskać indeksu tabeli ciÄ…gów nagłówków sekcji: %s" -#: src/readelf.c:1267 +#: src/readelf.c:1280 msgid "Section Headers:" msgstr "Nagłówki sekcji:" -#: src/readelf.c:1270 +#: src/readelf.c:1283 msgid "" "[Nr] Name Type Addr Off Size ES Flags Lk " "Inf Al" @@ -4639,7 +4663,7 @@ msgstr "" "[Nr] Nazwa Typ Adres Offset Rozm. ES Flagi Lk " "Inf Al" -#: src/readelf.c:1272 +#: src/readelf.c:1285 msgid "" "[Nr] Name Type Addr Off Size ES " "Flags Lk Inf Al" @@ -4647,36 +4671,36 @@ msgstr "" "[Nr] Nazwa Typ Adres Offset Rozmiar ES " "Flagi Lk Inf Al" -#: src/readelf.c:1277 +#: src/readelf.c:1290 msgid " [Compression Size Al]" msgstr " [Kompresja Rozmiar Al]" -#: src/readelf.c:1279 +#: src/readelf.c:1292 msgid " [Compression Size Al]" msgstr " [Kompresja Rozmiar Al]" -#: src/readelf.c:1357 +#: src/readelf.c:1370 #, c-format msgid "bad compression header for section %zd: %s" msgstr "bÅ‚Ä™dny nagłówek kompresji dla sekcji %zd: %s" -#: src/readelf.c:1368 +#: src/readelf.c:1381 #, c-format msgid "bad gnu compressed size for section %zd: %s" msgstr "bÅ‚Ä™dny rozmiar kompresji gnu dla sekcji %zd: %s" -#: src/readelf.c:1386 +#: src/readelf.c:1399 msgid "Program Headers:" msgstr "Nagłówki programu:" -#: src/readelf.c:1388 +#: src/readelf.c:1401 msgid "" " Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align" msgstr "" " Typ Offset AdresWirt AdresFiz RozmPlik RozmPam Flg " "Wyrównanie" -#: src/readelf.c:1391 +#: src/readelf.c:1404 msgid "" " Type Offset VirtAddr PhysAddr FileSiz " "MemSiz Flg Align" @@ -4684,12 +4708,12 @@ msgstr "" " Typ Offset AdresWirtualny AdresFizyczny RozmPlik " "RozmPam Flg Wyrównanie" -#: src/readelf.c:1448 +#: src/readelf.c:1461 #, c-format msgid "\t[Requesting program interpreter: %s]\n" msgstr "\t[WywoÅ‚anie interpretera programu: %s]\n" -#: src/readelf.c:1473 +#: src/readelf.c:1486 msgid "" "\n" " Section to Segment mapping:\n" @@ -4699,12 +4723,12 @@ msgstr "" " Mapowanie sekcji do segmentów:\n" " Segment sekcji…" -#: src/readelf.c:1484 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 +#: src/readelf.c:1497 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 #, c-format msgid "cannot get program header: %s" msgstr "nie można uzyskać nagłówka programu: %s" -#: src/readelf.c:1628 +#: src/readelf.c:1641 #, c-format msgid "" "\n" @@ -4722,7 +4746,7 @@ msgstr[2] "" "\n" "Grupa sekcji COMDAT [%2zu] „%s†z podpisem „%s†zawiera %zu wpisów:\n" -#: src/readelf.c:1633 +#: src/readelf.c:1646 #, c-format msgid "" "\n" @@ -4740,31 +4764,32 @@ msgstr[2] "" "\n" "Grupa sekcji [%2zu] „%s†z podpisem „%s†zawiera %zu wpisów:\n" -#: src/readelf.c:1641 +#: src/readelf.c:1654 msgid "<INVALID SYMBOL>" msgstr "<NIEPRAWIDÅOWY SYMBOL>" -#: src/readelf.c:1655 +#: src/readelf.c:1668 msgid "<INVALID SECTION>" msgstr "<NIEPRAWIDÅOWY SEKCJA>" -#: src/readelf.c:1678 src/readelf.c:2461 src/readelf.c:3563 src/readelf.c:12873 -#: src/readelf.c:12880 src/readelf.c:12924 src/readelf.c:12931 +#: src/readelf.c:1691 src/readelf.c:2476 src/readelf.c:3581 src/readelf.c:3881 +#: src/readelf.c:12905 src/readelf.c:12912 src/readelf.c:12956 +#: src/readelf.c:12963 msgid "Couldn't uncompress section" msgstr "Nie można dekompresować sekcji" -#: src/readelf.c:1682 src/readelf.c:2466 src/readelf.c:3567 +#: src/readelf.c:1695 src/readelf.c:2481 src/readelf.c:3585 #, c-format msgid "cannot get section [%zd] header: %s" msgstr "nie można uzyskać nagłówka sekcji [%zd]: %s" -#: src/readelf.c:1851 src/readelf.c:2532 src/readelf.c:2797 src/readelf.c:2872 -#: src/readelf.c:3175 src/readelf.c:3249 src/readelf.c:5570 +#: src/readelf.c:1864 src/readelf.c:2550 src/readelf.c:2815 src/readelf.c:2890 +#: src/readelf.c:3193 src/readelf.c:3267 src/readelf.c:5619 #, c-format msgid "invalid sh_link value in section %zu" msgstr "nieprawidÅ‚owa wartość sh_link w sekcji %zu" -#: src/readelf.c:1854 +#: src/readelf.c:1867 #, c-format msgid "" "\n" @@ -4790,7 +4815,7 @@ msgstr[2] "" " Adres: %#0*<PRIx64> Offset: %#08<PRIx64> DowiÄ…zanie do sekcji: [%2u] " "'%s'\n" -#: src/readelf.c:1867 +#: src/readelf.c:1880 #, fuzzy, c-format #| msgid "" #| "\n" @@ -4824,42 +4849,42 @@ msgstr[2] "" " Adres: %#0*<PRIx64> Offset: %#08<PRIx64> DowiÄ…zanie do sekcji: [%2u] " "'%s'\n" -#: src/readelf.c:1877 +#: src/readelf.c:1890 msgid " Type Value\n" msgstr " Typ Wartość\n" -#: src/readelf.c:1886 +#: src/readelf.c:1899 #, fuzzy #| msgid "cannot get string section data: %s" msgid "cannot get string table by using dynamic segment" msgstr "nie można uzyskać danych sekcji ciÄ…gów: %s" -#: src/readelf.c:1925 +#: src/readelf.c:1938 #, c-format msgid "Shared library: [%s]\n" msgstr "Biblioteka współdzielona: [%s]\n" -#: src/readelf.c:1929 +#: src/readelf.c:1942 #, c-format msgid "Library soname: [%s]\n" msgstr "soname biblioteki: [%s]\n" -#: src/readelf.c:1933 +#: src/readelf.c:1946 #, c-format msgid "Library rpath: [%s]\n" msgstr "rpath biblioteki: [%s]\n" -#: src/readelf.c:1937 +#: src/readelf.c:1950 #, c-format msgid "Library runpath: [%s]\n" msgstr "runpath biblioteki: [%s]\n" -#: src/readelf.c:1956 +#: src/readelf.c:1969 #, c-format msgid "%<PRId64> (bytes)\n" msgstr "%<PRId64> (bajtów)\n" -#: src/readelf.c:2070 src/readelf.c:2259 +#: src/readelf.c:2083 src/readelf.c:2272 #, c-format msgid "" "\n" @@ -4868,7 +4893,7 @@ msgstr "" "\n" "NieprawidÅ‚owa tabela symboli pod offsetem %#0<PRIx64>\n" -#: src/readelf.c:2087 src/readelf.c:2276 +#: src/readelf.c:2100 src/readelf.c:2289 #, c-format msgid "" "\n" @@ -4897,7 +4922,7 @@ msgstr[2] "" #. The .rela.dyn section does not refer to a specific section but #. instead of section index zero. Do not try to print a section #. name. -#: src/readelf.c:2102 src/readelf.c:2291 +#: src/readelf.c:2115 src/readelf.c:2304 #, c-format msgid "" "\n" @@ -4915,30 +4940,30 @@ msgstr[2] "" "\n" "Sekcja relokacji [%2u] „%s†pod offsetem %#0<PRIx64> zawiera %d wpisów:\n" -#: src/readelf.c:2112 +#: src/readelf.c:2125 msgid " Offset Type Value Name\n" msgstr " Offset Typ Wartość Nazwa\n" -#: src/readelf.c:2114 +#: src/readelf.c:2127 msgid " Offset Type Value Name\n" msgstr " Offset Typ Wartość Nazwa\n" -#: src/readelf.c:2167 src/readelf.c:2178 src/readelf.c:2191 src/readelf.c:2212 -#: src/readelf.c:2224 src/readelf.c:2357 src/readelf.c:2369 src/readelf.c:2383 -#: src/readelf.c:2405 src/readelf.c:2418 +#: src/readelf.c:2180 src/readelf.c:2191 src/readelf.c:2204 src/readelf.c:2225 +#: src/readelf.c:2237 src/readelf.c:2370 src/readelf.c:2382 src/readelf.c:2396 +#: src/readelf.c:2418 src/readelf.c:2431 msgid "<INVALID RELOC>" msgstr "<NIEPRAWIDÅOWA RELOKACJA>" -#: src/readelf.c:2301 +#: src/readelf.c:2314 msgid " Offset Type Value Addend Name\n" msgstr " Offset Typ Wartość Koniec Nazwa\n" -#: src/readelf.c:2303 +#: src/readelf.c:2316 msgid " Offset Type Value Addend Name\n" msgstr "" " Offset Typ Wartość Koniec Nazwa\n" -#: src/readelf.c:2540 +#: src/readelf.c:2558 #, c-format msgid "" "\n" @@ -4956,7 +4981,7 @@ msgstr[2] "" "\n" "Tabela symboli [%2u] „%s†zawiera %u wpisów:\n" -#: src/readelf.c:2545 +#: src/readelf.c:2563 #, c-format msgid " %lu local symbol String table: [%2u] '%s'\n" msgid_plural " %lu local symbols String table: [%2u] '%s'\n" @@ -4964,33 +4989,33 @@ msgstr[0] " %lu symbol lokalny Tabela ciÄ…gów: [%2u] „%sâ€\n" msgstr[1] " %lu symbole lokalne Tabela ciÄ…gów: [%2u] „%sâ€\n" msgstr[2] " %lu symboli lokalnych Tabela ciÄ…gów: [%2u] „%sâ€\n" -#: src/readelf.c:2553 +#: src/readelf.c:2571 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr " Numer: Wartość Rozm Typ Bind Widoczność Ndx Nazwa\n" -#: src/readelf.c:2555 +#: src/readelf.c:2573 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr " Numer: Wartość Rozm Typ Bind Widoczność Ndx Nazwa\n" -#: src/readelf.c:2575 +#: src/readelf.c:2593 #, c-format msgid "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" msgstr "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" -#: src/readelf.c:2668 +#: src/readelf.c:2686 #, c-format msgid "bad dynamic symbol" msgstr "bÅ‚Ä™dny symbol dynamiczny" -#: src/readelf.c:2753 +#: src/readelf.c:2771 msgid "none" msgstr "brak" -#: src/readelf.c:2770 +#: src/readelf.c:2788 msgid "| <unknown>" msgstr "| <nieznany>" -#: src/readelf.c:2800 +#: src/readelf.c:2818 #, c-format msgid "" "\n" @@ -5016,17 +5041,17 @@ msgstr[2] "" " Adres: %#0*<PRIx64> Offset: %#08<PRIx64> DowiÄ…zanie do sekcji: [%2u] " "„%sâ€\n" -#: src/readelf.c:2821 +#: src/readelf.c:2839 #, c-format msgid " %#06x: Version: %hu File: %s Cnt: %hu\n" msgstr " %#06x: Wersja: %hu Plik: %s Licznik: %hu\n" -#: src/readelf.c:2834 +#: src/readelf.c:2852 #, c-format msgid " %#06x: Name: %s Flags: %s Version: %hu\n" msgstr " %#06x: Nazwa: %s Flagi: %s Wersja: %hu\n" -#: src/readelf.c:2876 +#: src/readelf.c:2894 #, c-format msgid "" "\n" @@ -5052,19 +5077,19 @@ msgstr[2] "" " Adres: %#0*<PRIx64> Offset: %#08<PRIx64> DowiÄ…zanie do sekcji: [%2u] " "„%sâ€\n" -#: src/readelf.c:2904 +#: src/readelf.c:2922 #, c-format msgid " %#06x: Version: %hd Flags: %s Index: %hd Cnt: %hd Name: %s\n" msgstr "" " %#06x: Wersja: %hd Flagi: %s Indeks: %hd Licznik: %hd Nazwa: %s\n" -#: src/readelf.c:2919 +#: src/readelf.c:2937 #, c-format msgid " %#06x: Parent %d: %s\n" msgstr " %#06x: Rodzic %d: %s\n" #. Print the header. -#: src/readelf.c:3179 +#: src/readelf.c:3197 #, c-format msgid "" "\n" @@ -5087,15 +5112,15 @@ msgstr[2] "" "Sekcja symboli wersji [%2u] „%s†zawiera %d wpisów:\n" " Adres: %#0*<PRIx64> Offset: %#08<PRIx64> DowiÄ…zanie do sekcji: [%2u] „%sâ€" -#: src/readelf.c:3207 +#: src/readelf.c:3225 msgid " 0 *local* " msgstr " 0 *lokalny* " -#: src/readelf.c:3212 +#: src/readelf.c:3230 msgid " 1 *global* " msgstr " 1 *globalny* " -#: src/readelf.c:3254 +#: src/readelf.c:3272 #, c-format msgid "" "\n" @@ -5126,22 +5151,22 @@ msgstr[2] "" " Adres: %#0*<PRIx64> Offset: %#08<PRIx64> DowiÄ…zanie do sekcji: [%2u] " "„%sâ€\n" -#: src/readelf.c:3276 +#: src/readelf.c:3294 #, no-c-format msgid " Length Number % of total Coverage\n" msgstr " DÅ‚ugość Liczba % caÅ‚oÅ›ci Pokrycie\n" -#: src/readelf.c:3278 +#: src/readelf.c:3296 #, c-format msgid " 0 %6<PRIu32> %5.1f%%\n" msgstr " 0 %6<PRIu32> %5.1f%%\n" -#: src/readelf.c:3285 +#: src/readelf.c:3303 #, c-format msgid "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" msgstr "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" -#: src/readelf.c:3298 +#: src/readelf.c:3316 #, c-format msgid "" " Average number of tests: successful lookup: %f\n" @@ -5150,37 +5175,37 @@ msgstr "" " Åšrednia liczba testów: udane wyszukania: %f\n" "\t\t\t nieudane wyszukania: %f\n" -#: src/readelf.c:3316 src/readelf.c:3380 src/readelf.c:3446 +#: src/readelf.c:3334 src/readelf.c:3398 src/readelf.c:3464 #, c-format msgid "cannot get data for section %d: %s" msgstr "nie można uzyskać danych dla sekcji %d: %s" -#: src/readelf.c:3324 +#: src/readelf.c:3342 #, c-format msgid "invalid data in sysv.hash section %d" msgstr "nieprawidÅ‚owe dane w sekcji sysv.hash %d" -#: src/readelf.c:3353 +#: src/readelf.c:3371 #, c-format msgid "invalid chain in sysv.hash section %d" msgstr "nieprawidÅ‚owy Å‚aÅ„cuch w sekcji sysv.hash %d" -#: src/readelf.c:3388 +#: src/readelf.c:3406 #, c-format msgid "invalid data in sysv.hash64 section %d" msgstr "nieprawidÅ‚owe dane w sekcji sysv.hash64 %d" -#: src/readelf.c:3419 +#: src/readelf.c:3437 #, c-format msgid "invalid chain in sysv.hash64 section %d" msgstr "nieprawidÅ‚owy Å‚aÅ„cuch w sekcji sysv.hash64 %d" -#: src/readelf.c:3455 +#: src/readelf.c:3473 #, c-format msgid "invalid data in gnu.hash section %d" msgstr "nieprawidÅ‚owe dane w sekcji gnu.hash %d" -#: src/readelf.c:3521 +#: src/readelf.c:3539 #, c-format msgid "" " Symbol Bias: %u\n" @@ -5190,7 +5215,7 @@ msgstr "" " Rozmiar maski bitowej: %zu B %<PRIuFAST32>%% b ustawionych drugie " "przesuniÄ™cie skrótu: %u\n" -#: src/readelf.c:3606 +#: src/readelf.c:3624 #, c-format msgid "" "\n" @@ -5211,7 +5236,7 @@ msgstr[2] "" "Sekcja listy bibliotek [%2zu] „%s†pod offsetem %#0<PRIx64> zawiera %d " "wpisów:\n" -#: src/readelf.c:3620 +#: src/readelf.c:3638 msgid "" " Library Time Stamp Checksum Version " "Flags" @@ -5219,7 +5244,7 @@ msgstr "" " Biblioteka Czas Suma k. Wersja " "Flagi" -#: src/readelf.c:3680 +#: src/readelf.c:3698 #, c-format msgid "" "\n" @@ -5229,101 +5254,107 @@ msgstr "" "\n" "Sekcja atrybutów obiektu [%2zu] „%s†%<PRIu64> B pod offsetem %#0<PRIx64>:\n" -#: src/readelf.c:3697 +#: src/readelf.c:3715 msgid " Owner Size\n" msgstr " WÅ‚aÅ›ciciel Rozmiar\n" -#: src/readelf.c:3721 +#: src/readelf.c:3739 #, c-format msgid " %-13s %4<PRIu32>\n" msgstr " %-13s %4<PRIu32>\n" #. Unknown subsection, print and skip. -#: src/readelf.c:3760 +#: src/readelf.c:3778 #, c-format msgid " %-4u %12<PRIu32>\n" msgstr " %-4u %12<PRIu32>\n" #. Tag_File -#: src/readelf.c:3765 +#: src/readelf.c:3783 #, c-format msgid " File: %11<PRIu32>\n" msgstr " Plik: %11<PRIu32>\n" -#: src/readelf.c:3814 +#: src/readelf.c:3833 #, c-format msgid " %s: %<PRId64>, %s\n" msgstr " %s: %<PRId64>, %s\n" -#: src/readelf.c:3817 +#: src/readelf.c:3836 #, c-format msgid " %s: %<PRId64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:3820 +#: src/readelf.c:3839 #, c-format msgid " %s: %s\n" msgstr " %s: %s\n" -#: src/readelf.c:3830 +#: src/readelf.c:3849 #, c-format msgid " %u: %<PRId64>\n" msgstr " %u: %<PRId64>\n" -#: src/readelf.c:3833 +#: src/readelf.c:3852 #, c-format msgid " %u: %s\n" msgstr " %u: %s\n" -#: src/readelf.c:3903 +#: src/readelf.c:3890 +#, fuzzy +#| msgid "couldn't get shdr for group section: %s" +msgid "Couldn't get data from section" +msgstr "nie można uzyskać shdr dla sekcji grupy: %s" + +#: src/readelf.c:3955 msgid "sprintf failure" msgstr "sprintf siÄ™ nie powiodÅ‚o" -#: src/readelf.c:4387 +#: src/readelf.c:4439 msgid "empty block" msgstr "pusty blok" -#: src/readelf.c:4390 +#: src/readelf.c:4442 #, c-format msgid "%zu byte block:" msgstr "blok o %zu B:" -#: src/readelf.c:4868 +#: src/readelf.c:4920 #, c-format msgid "%*s[%2<PRIuMAX>] %s <TRUNCATED>\n" msgstr "%*s[%2<PRIuMAX>] %s <SKRÓCONE>\n" -#: src/readelf.c:5028 +#: src/readelf.c:5080 #, c-format msgid "%s %#<PRIx64> used with different address sizes" msgstr "%s %#<PRIx64> zostaÅ‚o użyte z różnymi rozmiarami adresu" -#: src/readelf.c:5035 +#: src/readelf.c:5087 #, c-format msgid "%s %#<PRIx64> used with different offset sizes" msgstr "%s %#<PRIx64> zostaÅ‚o użyte z różnymi rozmiarami offsetu" -#: src/readelf.c:5042 +#: src/readelf.c:5094 #, c-format msgid "%s %#<PRIx64> used with different base addresses" msgstr "%s %#<PRIx64> zostaÅ‚o użyte z różnymi adresami podstawowymi" -#: src/readelf.c:5049 +#: src/readelf.c:5101 #, c-format msgid "%s %#<PRIx64> used with different attribute %s and %s" msgstr "%s %#<PRIx64> zostaÅ‚o użyte z różnymi atrybutami %s i %s" -#: src/readelf.c:5149 +#: src/readelf.c:5201 #, c-format msgid " [%6tx] <UNUSED GARBAGE IN REST OF SECTION>\n" msgstr " [%6tx] <NIEUÅ»YWANE ÅšMIECIE W RESZCIE SEKCJI>\n" -#: src/readelf.c:5157 +#: src/readelf.c:5209 #, c-format msgid " [%6tx] <UNUSED GARBAGE> ... %<PRIu64> bytes ...\n" msgstr " [%6tx] <NIEUÅ»YWANE ÅšMIECIE>… %<PRIu64> B…\n" -#: src/readelf.c:5260 +#: src/readelf.c:5315 #, c-format msgid "" "\n" @@ -5334,7 +5365,7 @@ msgstr "" "Sekcja DWARF [%2zu] „%s†pod offsetem %#<PRIx64>:\n" " [ Kod]\n" -#: src/readelf.c:5268 +#: src/readelf.c:5323 #, c-format msgid "" "\n" @@ -5343,20 +5374,20 @@ msgstr "" "\n" "Sekcja skrótów pod offsetem %<PRIu64>:\n" -#: src/readelf.c:5281 +#: src/readelf.c:5336 #, c-format msgid " *** error while reading abbreviation: %s\n" msgstr " *** bÅ‚Ä…d podczas odczytywania skrótu: %s\n" -#: src/readelf.c:5297 +#: src/readelf.c:5352 #, c-format msgid " [%5u] offset: %<PRId64>, children: %s, tag: %s\n" msgstr " [%5u] offset: %<PRId64>, potomek: %s, znacznik: %s\n" -#: src/readelf.c:5330 src/readelf.c:5639 src/readelf.c:5806 src/readelf.c:6191 -#: src/readelf.c:6807 src/readelf.c:8562 src/readelf.c:9308 src/readelf.c:9791 -#: src/readelf.c:10042 src/readelf.c:10208 src/readelf.c:10595 -#: src/readelf.c:10655 +#: src/readelf.c:5389 src/readelf.c:5682 src/readelf.c:5853 src/readelf.c:6224 +#: src/readelf.c:6850 src/readelf.c:8619 src/readelf.c:9361 src/readelf.c:9829 +#: src/readelf.c:10084 src/readelf.c:10246 src/readelf.c:10627 +#: src/readelf.c:10698 #, c-format msgid "" "\n" @@ -5365,52 +5396,47 @@ msgstr "" "\n" "Sekcja DWARF [%2zu] „%s†pod offsetem %#<PRIx64>:\n" -#: src/readelf.c:5343 -#, c-format -msgid "cannot get .debug_addr section data: %s" -msgstr "nie można uzyskać danych sekcji .debug_addr: %s" - -#: src/readelf.c:5443 src/readelf.c:5467 src/readelf.c:5851 src/readelf.c:9353 +#: src/readelf.c:5492 src/readelf.c:5516 src/readelf.c:5889 src/readelf.c:9397 #, c-format msgid " Length: %8<PRIu64>\n" msgstr " DÅ‚ugość: %8<PRIu64>\n" -#: src/readelf.c:5445 src/readelf.c:5482 src/readelf.c:5864 src/readelf.c:9366 +#: src/readelf.c:5494 src/readelf.c:5531 src/readelf.c:5902 src/readelf.c:9410 #, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " Wersja DWARF: %8<PRIu16>\n" -#: src/readelf.c:5446 src/readelf.c:5491 src/readelf.c:5873 src/readelf.c:9375 +#: src/readelf.c:5495 src/readelf.c:5540 src/readelf.c:5911 src/readelf.c:9419 #, c-format msgid " Address size: %8<PRIu64>\n" msgstr " Rozmiar adresu: %8<PRIu64>\n" -#: src/readelf.c:5448 src/readelf.c:5501 src/readelf.c:5883 src/readelf.c:9385 +#: src/readelf.c:5497 src/readelf.c:5550 src/readelf.c:5921 src/readelf.c:9429 #, c-format msgid " Segment size: %8<PRIu64>\n" msgstr " Rozmiar segmentu: %8<PRIu64>\n" -#: src/readelf.c:5486 src/readelf.c:5868 src/readelf.c:9370 src/readelf.c:10787 +#: src/readelf.c:5535 src/readelf.c:5906 src/readelf.c:9414 src/readelf.c:10820 #, c-format msgid "Unknown version" msgstr "Nieznana wersja" -#: src/readelf.c:5496 src/readelf.c:5709 src/readelf.c:5878 src/readelf.c:9380 +#: src/readelf.c:5545 src/readelf.c:5752 src/readelf.c:5916 src/readelf.c:9424 #, c-format msgid "unsupported address size" msgstr "nieobsÅ‚ugiwany rozmiar adresu" -#: src/readelf.c:5507 src/readelf.c:5720 src/readelf.c:5888 src/readelf.c:9390 +#: src/readelf.c:5556 src/readelf.c:5763 src/readelf.c:5926 src/readelf.c:9434 #, c-format msgid "unsupported segment size" msgstr "nieobsÅ‚ugiwany rozmiar segmentu" -#: src/readelf.c:5560 src/readelf.c:5634 +#: src/readelf.c:5609 #, c-format msgid "cannot get .debug_aranges content: %s" msgstr "nie można uzyskać zawartoÅ›ci .debug_aranges: %s" -#: src/readelf.c:5575 +#: src/readelf.c:5624 #, c-format msgid "" "\n" @@ -5428,12 +5454,12 @@ msgstr[2] "" "\n" "Sekcja DWARF [%2zu] „%s†pod offsetem %#<PRIx64> zawiera %zu wpisów:\n" -#: src/readelf.c:5606 +#: src/readelf.c:5655 #, c-format msgid " [%*zu] ???\n" msgstr " [%*zu] ???\n" -#: src/readelf.c:5608 +#: src/readelf.c:5657 #, c-format msgid "" " [%*zu] start: %0#*<PRIx64>, length: %5<PRIu64>, CU DIE offset: %6<PRId64>\n" @@ -5441,7 +5467,7 @@ msgstr "" " [%*zu] poczÄ…tek: %0#*<PRIx64>, dÅ‚ugość: %5<PRIu64>, offset CU DIE: " "%6<PRId64>\n" -#: src/readelf.c:5652 src/readelf.c:8589 +#: src/readelf.c:5695 src/readelf.c:8638 #, c-format msgid "" "\n" @@ -5450,13 +5476,13 @@ msgstr "" "\n" "Tabela pod offsetem %zu:\n" -#: src/readelf.c:5656 src/readelf.c:5832 src/readelf.c:6831 src/readelf.c:8600 -#: src/readelf.c:9334 +#: src/readelf.c:5699 src/readelf.c:5870 src/readelf.c:6874 src/readelf.c:8649 +#: src/readelf.c:9378 #, c-format msgid "invalid data in section [%zu] '%s'" msgstr "nieprawidÅ‚owe dane w sekcji [%zu] „%sâ€" -#: src/readelf.c:5672 +#: src/readelf.c:5715 #, c-format msgid "" "\n" @@ -5465,27 +5491,27 @@ msgstr "" "\n" " DÅ‚ugość: %6<PRIu64>\n" -#: src/readelf.c:5684 +#: src/readelf.c:5727 #, c-format msgid " DWARF version: %6<PRIuFAST16>\n" msgstr " Wersja DWARF: %6<PRIuFAST16>\n" -#: src/readelf.c:5688 +#: src/readelf.c:5731 #, c-format msgid "unsupported aranges version" msgstr "nieobsÅ‚ugiwana wersja aranges" -#: src/readelf.c:5699 +#: src/readelf.c:5742 #, c-format msgid " CU offset: %6<PRIx64>\n" msgstr " Offset CU: %6<PRIx64>\n" -#: src/readelf.c:5705 +#: src/readelf.c:5748 #, c-format msgid " Address size: %6<PRIu64>\n" msgstr " Offset adresu: %6<PRIu64>\n" -#: src/readelf.c:5716 +#: src/readelf.c:5759 #, c-format msgid "" " Segment size: %6<PRIu64>\n" @@ -5494,17 +5520,12 @@ msgstr "" " Rozmiar segmentu: %6<PRIu64>\n" "\n" -#: src/readelf.c:5771 +#: src/readelf.c:5814 #, c-format msgid " %zu padding bytes\n" msgstr " %zu B wypeÅ‚nienia\n" -#: src/readelf.c:5815 -#, c-format -msgid "cannot get .debug_rnglists content: %s" -msgstr "nie można uzyskać zawartoÅ›ci .debug_rnglists: %s" - -#: src/readelf.c:5838 src/readelf.c:9340 +#: src/readelf.c:5876 src/readelf.c:9384 #, c-format msgid "" "Table at Offset 0x%<PRIx64>:\n" @@ -5513,42 +5534,42 @@ msgstr "" "Tabela pod offsetem 0x%<PRIx64>:\n" "\n" -#: src/readelf.c:5893 src/readelf.c:9395 +#: src/readelf.c:5931 src/readelf.c:9439 #, c-format msgid " Offset entries: %8<PRIu64>\n" msgstr " Wpisy offsetu: %8<PRIu64>\n" -#: src/readelf.c:5909 src/readelf.c:9411 +#: src/readelf.c:5947 src/readelf.c:9455 #, c-format msgid " Unknown CU base: " msgstr " Nieznana podstawa CU: " -#: src/readelf.c:5911 src/readelf.c:9413 +#: src/readelf.c:5949 src/readelf.c:9457 #, c-format msgid " CU [%6<PRIx64>] base: " msgstr " Podstawa CU [%6<PRIx64>]: " -#: src/readelf.c:5917 src/readelf.c:9419 +#: src/readelf.c:5955 src/readelf.c:9463 #, c-format msgid " Not associated with a CU.\n" msgstr " Brak powiÄ…zania z CU.\n" -#: src/readelf.c:5928 src/readelf.c:9430 +#: src/readelf.c:5966 src/readelf.c:9474 #, c-format msgid "too many offset entries for unit length" msgstr "za dużo wpisów offsetu dla dÅ‚ugoÅ›ci jednostki" -#: src/readelf.c:5932 src/readelf.c:9434 +#: src/readelf.c:5970 src/readelf.c:9478 #, c-format msgid " Offsets starting at 0x%<PRIx64>:\n" msgstr " Offsety zaczynajÄ…ce siÄ™ w 0x%<PRIx64>:\n" -#: src/readelf.c:5984 +#: src/readelf.c:6022 #, c-format msgid "invalid range list data" msgstr "nieprawidÅ‚owe dane listy zakresów" -#: src/readelf.c:6169 src/readelf.c:9769 +#: src/readelf.c:6207 src/readelf.c:9813 #, c-format msgid "" " %zu padding bytes\n" @@ -5557,12 +5578,7 @@ msgstr "" " %zu B wypeÅ‚nienia\n" "\n" -#: src/readelf.c:6186 -#, c-format -msgid "cannot get .debug_ranges content: %s" -msgstr "nie można uzyskać zawartoÅ›ci .debug_ranges: %s" - -#: src/readelf.c:6222 src/readelf.c:9824 +#: src/readelf.c:6255 src/readelf.c:9862 #, c-format msgid "" "\n" @@ -5571,7 +5587,7 @@ msgstr "" "\n" " Nieznana podstawa CU: " -#: src/readelf.c:6224 src/readelf.c:9826 +#: src/readelf.c:6257 src/readelf.c:9864 #, c-format msgid "" "\n" @@ -5580,30 +5596,30 @@ msgstr "" "\n" " Podstawa CU [%6<PRIx64>]: " -#: src/readelf.c:6233 src/readelf.c:9852 src/readelf.c:9878 +#: src/readelf.c:6266 src/readelf.c:9890 src/readelf.c:9916 #, c-format msgid " [%6tx] <INVALID DATA>\n" msgstr " [%6tx] <NIEPRAWIDÅOWE DANE>\n" -#: src/readelf.c:6258 src/readelf.c:9962 +#: src/readelf.c:6291 src/readelf.c:10000 msgid "base address" msgstr "adres podstawowy" -#: src/readelf.c:6268 src/readelf.c:9972 +#: src/readelf.c:6301 src/readelf.c:10010 #, c-format msgid " [%6tx] empty list\n" msgstr " [%6tx] pusta lista\n" -#: src/readelf.c:6528 +#: src/readelf.c:6565 msgid " <INVALID DATA>\n" msgstr " <NIEPRAWIDÅOWE DANE>\n" -#: src/readelf.c:6785 +#: src/readelf.c:6822 #, c-format msgid "cannot get ELF: %s" msgstr "nie można uzyskać ELF: %s" -#: src/readelf.c:6803 +#: src/readelf.c:6846 #, c-format msgid "" "\n" @@ -5612,7 +5628,7 @@ msgstr "" "\n" "Sekcja informacji o ramce wywoÅ‚ania [%2zu] „%s†pod offsetem %#<PRIx64>:\n" -#: src/readelf.c:6853 +#: src/readelf.c:6896 #, c-format msgid "" "\n" @@ -5621,65 +5637,65 @@ msgstr "" "\n" " [%6tx] Zerowy koniec\n" -#: src/readelf.c:6954 src/readelf.c:7108 +#: src/readelf.c:7000 src/readelf.c:7154 #, c-format msgid "invalid augmentation length" msgstr "nieprawidÅ‚owa dÅ‚ugość powiÄ™kszenia" -#: src/readelf.c:6969 +#: src/readelf.c:7015 msgid "FDE address encoding: " msgstr "Kodowanie adresu FDE: " -#: src/readelf.c:6975 +#: src/readelf.c:7021 msgid "LSDA pointer encoding: " msgstr "Kodowanie wskaźnika LSDA: " -#: src/readelf.c:7085 +#: src/readelf.c:7131 #, c-format msgid " (offset: %#<PRIx64>)" msgstr " (offset: %#<PRIx64>)" -#: src/readelf.c:7092 +#: src/readelf.c:7138 #, c-format msgid " (end offset: %#<PRIx64>)" msgstr " (koÅ„czÄ…cy offset: %#<PRIx64>)" -#: src/readelf.c:7129 +#: src/readelf.c:7175 #, c-format msgid " %-26sLSDA pointer: %#<PRIx64>\n" msgstr " %-26sWskaźnik LSDA: %#<PRIx64>\n" -#: src/readelf.c:7214 +#: src/readelf.c:7260 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute code: %s" msgstr "DIE [%<PRIx64>] nie można uzyskać kodu atrybutu: %s" -#: src/readelf.c:7224 +#: src/readelf.c:7270 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute form: %s" msgstr "DIE [%<PRIx64>] nie można uzyskać formy atrybutu: %s" -#: src/readelf.c:7246 +#: src/readelf.c:7292 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute '%s' (%s) value: %s" msgstr "DIE [%<PRIx64>] nie można uzyskać wartoÅ›ci atrybutu „%s†(%s): %s" -#: src/readelf.c:7576 +#: src/readelf.c:7622 #, c-format msgid "invalid file (%<PRId64>): %s" msgstr "nieprawidÅ‚owy plik (%<PRId64>): %s" -#: src/readelf.c:7580 +#: src/readelf.c:7626 #, c-format msgid "no srcfiles for CU [%<PRIx64>]" msgstr "brak plików źródÅ‚owych dla CU [%<PRIx64>]" -#: src/readelf.c:7584 +#: src/readelf.c:7630 #, c-format msgid "couldn't get DWARF CU: %s" msgstr "nie można uzyskać CU DWARF: %s" -#: src/readelf.c:7899 +#: src/readelf.c:7952 #, c-format msgid "" "\n" @@ -5690,12 +5706,12 @@ msgstr "" "Sekcja DWARF [%2zu] „%s†pod offsetem %#<PRIx64>:\n" " [Offset]\n" -#: src/readelf.c:7949 +#: src/readelf.c:8002 #, c-format msgid "cannot get next unit: %s" msgstr "nie można uzyskać nastÄ™pnej jednostki: %s" -#: src/readelf.c:7969 +#: src/readelf.c:8022 #, c-format msgid "" " Type unit at offset %<PRIu64>:\n" @@ -5708,7 +5724,7 @@ msgstr "" "%<PRIu8>, rozmiar offsetu: %<PRIu8>\n" " Podpis typu: %#<PRIx64>, offset typu: %#<PRIx64> [%<PRIx64>]\n" -#: src/readelf.c:7981 +#: src/readelf.c:8034 #, c-format msgid "" " Compilation unit at offset %<PRIu64>:\n" @@ -5719,38 +5735,38 @@ msgstr "" " Wersja: %<PRIu16>, offset sekcji skrótów: %<PRIu64>, rozmiar adresu: " "%<PRIu8>, rozmiar offsetu: %<PRIu8>\n" -#: src/readelf.c:7991 src/readelf.c:8152 +#: src/readelf.c:8044 src/readelf.c:8205 #, c-format msgid " Unit type: %s (%<PRIu8>)" msgstr " Typ jednostki: %s (%<PRIu8>)" -#: src/readelf.c:8018 +#: src/readelf.c:8071 #, c-format msgid "unknown version (%d) or unit type (%d)" msgstr "nieznana wersja (%d) lub typ jednostki (%d)" -#: src/readelf.c:8047 +#: src/readelf.c:8100 #, c-format msgid "cannot get DIE offset: %s" msgstr "nie można uzyskać offsetu DIE: %s" -#: src/readelf.c:8056 +#: src/readelf.c:8109 #, c-format msgid "cannot get tag of DIE at offset [%<PRIx64>] in section '%s': %s" msgstr "" "nie można uzyskać znacznika DIE pod offsetem [%<PRIx64>] w sekcji „%sâ€: %s" -#: src/readelf.c:8092 +#: src/readelf.c:8145 #, c-format msgid "cannot get next DIE: %s\n" msgstr "nie można uzyskać nastÄ™pnego DIE: %s\n" -#: src/readelf.c:8100 +#: src/readelf.c:8153 #, c-format msgid "cannot get next DIE: %s" msgstr "nie można uzyskać nastÄ™pnego DIE: %s" -#: src/readelf.c:8144 +#: src/readelf.c:8197 #, c-format msgid "" " Split compilation unit at offset %<PRIu64>:\n" @@ -5761,7 +5777,7 @@ msgstr "" " Wersja: %<PRIu16>, offset sekcji skrótów: %<PRIu64>, rozmiar adresu: " "%<PRIu8>, rozmiar offsetu: %<PRIu8>\n" -#: src/readelf.c:8196 +#: src/readelf.c:8249 #, c-format msgid "" "\n" @@ -5772,18 +5788,13 @@ msgstr "" "Sekcja DWARF [%2zu] „%s†pod offsetem %#<PRIx64>:\n" "\n" -#: src/readelf.c:8528 +#: src/readelf.c:8581 #, c-format msgid "unknown form: %s" msgstr "nieznana forma: %s" -#: src/readelf.c:8576 -#, c-format -msgid "cannot get line data section data: %s" -msgstr "nie można uzyskać danych sekcji danych wiersza: %s" - #. Print what we got so far. -#: src/readelf.c:8680 +#: src/readelf.c:8729 #, c-format msgid "" "\n" @@ -5816,27 +5827,27 @@ msgstr "" "\n" "Instrukcje:\n" -#: src/readelf.c:8702 +#: src/readelf.c:8751 #, c-format msgid "cannot handle .debug_line version: %u\n" msgstr "nie można obsÅ‚użyć wersji .debug_line: %u\n" -#: src/readelf.c:8710 +#: src/readelf.c:8759 #, c-format msgid "cannot handle address size: %u\n" msgstr "nie można obsÅ‚użyć rozmiaru adresu: %u\n" -#: src/readelf.c:8718 +#: src/readelf.c:8767 #, c-format msgid "cannot handle segment selector size: %u\n" msgstr "nie można obsÅ‚użyć rozmiaru selektora segmentu: %u\n" -#: src/readelf.c:8728 +#: src/readelf.c:8777 #, c-format msgid "invalid data at offset %tu in section [%zu] '%s'" msgstr "nieprawidÅ‚owe dane pod offsetem %tu w sekcji [%zu] „%sâ€" -#: src/readelf.c:8743 +#: src/readelf.c:8792 #, c-format msgid " [%*<PRIuFAST8>] %hhu argument\n" msgid_plural " [%*<PRIuFAST8>] %hhu arguments\n" @@ -5844,7 +5855,7 @@ msgstr[0] " [%*<PRIuFAST8>] %hhu parametr\n" msgstr[1] " [%*<PRIuFAST8>] %hhu parametry\n" msgstr[2] " [%*<PRIuFAST8>] %hhu parametrów\n" -#: src/readelf.c:8754 +#: src/readelf.c:8803 msgid "" "\n" "Directory table:" @@ -5852,12 +5863,12 @@ msgstr "" "\n" "Tabela katalogu:" -#: src/readelf.c:8760 src/readelf.c:8837 +#: src/readelf.c:8809 src/readelf.c:8886 #, c-format msgid " [" msgstr " [" -#: src/readelf.c:8831 +#: src/readelf.c:8880 msgid "" "\n" "File name table:" @@ -5865,11 +5876,11 @@ msgstr "" "\n" "Tabela nazw plików:" -#: src/readelf.c:8892 +#: src/readelf.c:8941 msgid " Entry Dir Time Size Name" msgstr " Wpis Kat Czas Rozmiar Nazwa" -#: src/readelf.c:8938 +#: src/readelf.c:8987 msgid "" "\n" "No line number statements." @@ -5877,7 +5888,7 @@ msgstr "" "\n" "Brak instrukcji numerów wierszy." -#: src/readelf.c:8942 +#: src/readelf.c:8991 msgid "" "\n" "Line number statements:" @@ -5885,129 +5896,129 @@ msgstr "" "\n" "Instrukcje numerów wierszy:" -#: src/readelf.c:8957 +#: src/readelf.c:9006 #, c-format msgid "invalid maximum operations per instruction is zero" msgstr "nieprawidÅ‚owe maksimum operacji na instrukcjÄ™ wynosi zero" -#: src/readelf.c:8991 +#: src/readelf.c:9040 #, c-format msgid " special opcode %u: address+%u = " msgstr " instrukcja specjalna %u: adres+%u = " -#: src/readelf.c:8995 +#: src/readelf.c:9044 #, c-format msgid ", op_index = %u, line%+d = %zu\n" msgstr ", op_index = %u, wiersz%+d = %zu\n" -#: src/readelf.c:8998 +#: src/readelf.c:9047 #, c-format msgid ", line%+d = %zu\n" msgstr ", wiersz%+d = %zu\n" -#: src/readelf.c:9016 +#: src/readelf.c:9065 #, c-format msgid " extended opcode %u: " msgstr " instrukcja rozszerzona %u: " -#: src/readelf.c:9021 +#: src/readelf.c:9070 msgid " end of sequence" msgstr " koniec sekwencji" -#: src/readelf.c:9039 +#: src/readelf.c:9088 #, c-format msgid " set address to " msgstr " ustawienie adresu na " -#: src/readelf.c:9067 +#: src/readelf.c:9116 #, c-format msgid " define new file: dir=%u, mtime=%<PRIu64>, length=%<PRIu64>, name=%s\n" msgstr "" " definicja nowego pliku: dir=%u, mtime=%<PRIu64>, dÅ‚ugość=%<PRIu64>, " "nazwa=%s\n" -#: src/readelf.c:9081 +#: src/readelf.c:9130 #, c-format msgid " set discriminator to %u\n" msgstr " ustawienie dyskryminatora na %u\n" -#: src/readelf.c:9108 +#: src/readelf.c:9157 #, c-format msgid " set inlined context %u, function name %s (0x%x)\n" msgstr "" -#: src/readelf.c:9132 +#: src/readelf.c:9181 #, fuzzy, c-format #| msgid "Also show function names" msgid " set function name %s (0x%x)\n" msgstr "WyÅ›wietla także nazwy funkcji" #. Unknown, ignore it. -#: src/readelf.c:9139 +#: src/readelf.c:9188 msgid " unknown opcode" msgstr " nieznana instrukcja" #. Takes no argument. -#: src/readelf.c:9151 +#: src/readelf.c:9200 msgid " copy" msgstr " kopiowanie" -#: src/readelf.c:9162 +#: src/readelf.c:9211 #, c-format msgid " advance address by %u to " msgstr " zwiÄ™kszenie adresu o %u do " -#: src/readelf.c:9166 src/readelf.c:9227 +#: src/readelf.c:9215 src/readelf.c:9276 #, c-format msgid ", op_index to %u" msgstr ", op_index do %u" -#: src/readelf.c:9178 +#: src/readelf.c:9227 #, c-format msgid " advance line by constant %d to %<PRId64>\n" msgstr " zwiÄ™kszenie wiersza o staÅ‚Ä… %d do %<PRId64>\n" -#: src/readelf.c:9188 +#: src/readelf.c:9237 #, c-format msgid " set file to %<PRIu64>\n" msgstr " ustawienie pliku na %<PRIu64>\n" -#: src/readelf.c:9199 +#: src/readelf.c:9248 #, c-format msgid " set column to %<PRIu64>\n" msgstr " ustawienie kolumny na %<PRIu64>\n" -#: src/readelf.c:9206 +#: src/readelf.c:9255 #, c-format msgid " set '%s' to %<PRIuFAST8>\n" msgstr " ustawienie „%s†na %<PRIuFAST8>\n" #. Takes no argument. -#: src/readelf.c:9212 +#: src/readelf.c:9261 msgid " set basic block flag" msgstr " ustawienie podstawowej flagi bloku" -#: src/readelf.c:9223 +#: src/readelf.c:9272 #, c-format msgid " advance address by constant %u to " msgstr " zwiÄ™kszenie adresu o staÅ‚Ä… %u do " -#: src/readelf.c:9243 +#: src/readelf.c:9292 #, c-format msgid " advance address by fixed value %u to \n" msgstr " zwiÄ™kszenie adresu o staÅ‚Ä… wartość %u do \n" #. Takes no argument. -#: src/readelf.c:9253 +#: src/readelf.c:9302 msgid " set prologue end flag" msgstr " ustawienie flagi koÅ„ca prologu" #. Takes no argument. -#: src/readelf.c:9258 +#: src/readelf.c:9307 msgid " set epilogue begin flag" msgstr " ustawienie flagi poczÄ…tku epilogu" -#: src/readelf.c:9268 +#: src/readelf.c:9317 #, c-format msgid " set isa to %u\n" msgstr " ustawienie isa na %u\n" @@ -6015,7 +6026,7 @@ msgstr " ustawienie isa na %u\n" #. This is a new opcode the generator but not we know about. #. Read the parameters associated with it but then discard #. everything. Read all the parameters for this opcode. -#: src/readelf.c:9277 +#: src/readelf.c:9326 #, c-format msgid " unknown opcode with %<PRIu8> parameter:" msgid_plural " unknown opcode with %<PRIu8> parameters:" @@ -6023,101 +6034,86 @@ msgstr[0] " nieznana instrukcja z %<PRIu8> parametrem:" msgstr[1] " nieznana instrukcja z %<PRIu8> parametrami:" msgstr[2] " nieznana instrukcja z %<PRIu8> parametrami:" -#: src/readelf.c:9317 -#, c-format -msgid "cannot get .debug_loclists content: %s" -msgstr "nie można uzyskać zawartoÅ›ci .debug_loclists: %s" - -#: src/readelf.c:9483 +#: src/readelf.c:9527 #, c-format msgid " <INVALID DATA>\n" msgstr " <NIEPRAWIDÅOWE DANE>\n" -#: src/readelf.c:9523 +#: src/readelf.c:9567 #, c-format msgid "invalid loclists data" msgstr "nieprawidÅ‚owe dane loclists" -#: src/readelf.c:9786 -#, c-format -msgid "cannot get .debug_loc content: %s" -msgstr "nie można uzyskać zawartoÅ›ci .debug_log: %s" - -#: src/readelf.c:9999 src/readelf.c:11043 +#: src/readelf.c:10037 src/readelf.c:11082 msgid " <INVALID DATA>\n" msgstr " <NIEPRAWIDÅOWE DANE>\n" -#: src/readelf.c:10054 src/readelf.c:10217 -#, c-format -msgid "cannot get macro information section data: %s" -msgstr "nie można uzyskać danych sekcji informacji o makrach: %s" - -#: src/readelf.c:10134 +#: src/readelf.c:10168 #, c-format msgid "%*s*** non-terminated string at end of section" msgstr "%*s*** niezakoÅ„czony ciÄ…g na koÅ„cu sekcji" -#: src/readelf.c:10157 +#: src/readelf.c:10191 #, c-format msgid "%*s*** missing DW_MACINFO_start_file argument at end of section" msgstr "%*s*** brak parametru DW_MACINFO_start_file na koÅ„cu sekcji" -#: src/readelf.c:10258 +#: src/readelf.c:10286 #, c-format msgid " Offset: 0x%<PRIx64>\n" msgstr " Offset: 0x%<PRIx64>\n" -#: src/readelf.c:10270 +#: src/readelf.c:10298 #, c-format msgid " Version: %<PRIu16>\n" msgstr " Wersja: %<PRIu16>\n" -#: src/readelf.c:10276 src/readelf.c:11163 +#: src/readelf.c:10304 src/readelf.c:11202 #, c-format msgid " unknown version, cannot parse section\n" msgstr " nieznana wersja, nie można przetworzyć sekcji\n" -#: src/readelf.c:10283 +#: src/readelf.c:10311 #, c-format msgid " Flag: 0x%<PRIx8>" msgstr " Flaga: 0x%<PRIx8>" -#: src/readelf.c:10312 +#: src/readelf.c:10340 #, c-format msgid " Offset length: %<PRIu8>\n" msgstr " DÅ‚ugość offsetu: %<PRIu8>\n" -#: src/readelf.c:10320 +#: src/readelf.c:10348 #, c-format msgid " .debug_line offset: 0x%<PRIx64>\n" msgstr " Offset .debug_line: 0x%<PRIx64>\n" -#: src/readelf.c:10345 +#: src/readelf.c:10373 #, c-format msgid " extension opcode table, %<PRIu8> items:\n" msgstr " tabela instrukcji rozszerzenia, %<PRIu8> elementów:\n" -#: src/readelf.c:10352 +#: src/readelf.c:10380 #, c-format msgid " [%<PRIx8>]" msgstr " [%<PRIx8>]" -#: src/readelf.c:10364 +#: src/readelf.c:10392 #, c-format msgid " %<PRIu8> arguments:" msgstr " Parametry %<PRIu8>:" -#: src/readelf.c:10379 +#: src/readelf.c:10407 #, c-format msgid " no arguments." msgstr " brak parametrów." -#: src/readelf.c:10580 +#: src/readelf.c:10608 #, c-format msgid " [%5d] DIE offset: %6<PRId64>, CU DIE offset: %6<PRId64>, name: %s\n" msgstr " [%5d] offset DIE: %6<PRId64>, offset CU DIE: %6<PRId64>, nazwa: %s\n" -#: src/readelf.c:10624 +#: src/readelf.c:10663 #, c-format msgid "" "\n" @@ -6129,42 +6125,37 @@ msgstr "" " %*s CiÄ…g\n" #. TRANS: the debugstr| prefix makes the string unique. -#: src/readelf.c:10629 +#: src/readelf.c:10668 msgctxt "debugstr" msgid "Offset" msgstr "" -#: src/readelf.c:10639 +#: src/readelf.c:10678 #, c-format msgid " *** error, missing string terminator\n" msgstr " *** bÅ‚Ä…d, brak znaku koÅ„czÄ…cego ciÄ…g\n" -#: src/readelf.c:10668 -#, c-format -msgid "cannot get .debug_str_offsets section data: %s" -msgstr "nie można uzyskać danych sekcji .debug_str_offsets: %s" - -#: src/readelf.c:10767 +#: src/readelf.c:10800 #, c-format msgid " Length: %8<PRIu64>\n" msgstr " DÅ‚ugość: %8<PRIu64>\n" -#: src/readelf.c:10769 +#: src/readelf.c:10802 #, c-format msgid " Offset size: %8<PRIu8>\n" msgstr " Rozmiar offsetu: %8<PRIu8>\n" -#: src/readelf.c:10783 +#: src/readelf.c:10816 #, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " Wersja DWARF: %8<PRIu16>\n" -#: src/readelf.c:10792 +#: src/readelf.c:10825 #, c-format msgid " Padding: %8<PRIx16>\n" msgstr " WypeÅ‚nienie: %8<PRIx16>\n" -#: src/readelf.c:10846 +#: src/readelf.c:10879 #, c-format msgid "" "\n" @@ -6173,7 +6164,7 @@ msgstr "" "\n" "Sekcja tabeli wyszukiwania ramki wywoÅ‚ania [%2zu] „.eh_frame_hdrâ€:\n" -#: src/readelf.c:10948 +#: src/readelf.c:10981 #, c-format msgid "" "\n" @@ -6182,22 +6173,22 @@ msgstr "" "\n" "Sekcja tabeli obsÅ‚ugiwania wyjÄ…tków [%2zu] „.gcc_except_tableâ€:\n" -#: src/readelf.c:10971 +#: src/readelf.c:11004 #, c-format msgid " LPStart encoding: %#x " msgstr " Kodowanie LPStart: %#x " -#: src/readelf.c:10983 +#: src/readelf.c:11016 #, c-format msgid " TType encoding: %#x " msgstr " Kodowanie TType: %#x " -#: src/readelf.c:10998 +#: src/readelf.c:11033 #, c-format msgid " Call site encoding: %#x " msgstr " Kodowanie strony wywoÅ‚ania: %#x " -#: src/readelf.c:11011 +#: src/readelf.c:11048 msgid "" "\n" " Call site table:" @@ -6205,7 +6196,7 @@ msgstr "" "\n" " Tabela strony wywoÅ‚ania:" -#: src/readelf.c:11025 +#: src/readelf.c:11064 #, c-format msgid "" " [%4u] Call site start: %#<PRIx64>\n" @@ -6218,12 +6209,12 @@ msgstr "" " LÄ…dowisko: %#<PRIx64>\n" " DziaÅ‚anie: %u\n" -#: src/readelf.c:11098 +#: src/readelf.c:11137 #, c-format msgid "invalid TType encoding" msgstr "nieprawidÅ‚owe kodowanie TType" -#: src/readelf.c:11125 +#: src/readelf.c:11164 #, c-format msgid "" "\n" @@ -6232,37 +6223,37 @@ msgstr "" "\n" "Sekcja GDB [%2zu] „%s†pod offsetem %#<PRIx64> zawiera %<PRId64> B:\n" -#: src/readelf.c:11154 +#: src/readelf.c:11193 #, c-format msgid " Version: %<PRId32>\n" msgstr " Wersja: %<PRId32>\n" -#: src/readelf.c:11172 +#: src/readelf.c:11211 #, c-format msgid " CU offset: %#<PRIx32>\n" msgstr " offset CU: %#<PRIx32>\n" -#: src/readelf.c:11179 +#: src/readelf.c:11218 #, c-format msgid " TU offset: %#<PRIx32>\n" msgstr " offset TU: %#<PRIx32>\n" -#: src/readelf.c:11186 +#: src/readelf.c:11225 #, c-format msgid " address offset: %#<PRIx32>\n" msgstr " offset adresu: %#<PRIx32>\n" -#: src/readelf.c:11193 +#: src/readelf.c:11232 #, c-format msgid " symbol offset: %#<PRIx32>\n" msgstr " offset symbolu: %#<PRIx32>\n" -#: src/readelf.c:11200 +#: src/readelf.c:11239 #, c-format msgid " constant offset: %#<PRIx32>\n" msgstr " offset staÅ‚ej: %#<PRIx32>\n" -#: src/readelf.c:11214 +#: src/readelf.c:11253 #, c-format msgid "" "\n" @@ -6271,7 +6262,7 @@ msgstr "" "\n" " Lista CU pod offsetem %#<PRIx32> zawiera %zu wpisów:\n" -#: src/readelf.c:11239 +#: src/readelf.c:11278 #, c-format msgid "" "\n" @@ -6280,7 +6271,7 @@ msgstr "" "\n" " Lista TU pod offsetem %#<PRIx32> zawiera %zu wpisów:\n" -#: src/readelf.c:11268 +#: src/readelf.c:11307 #, c-format msgid "" "\n" @@ -6289,7 +6280,7 @@ msgstr "" "\n" " Lista adresów pod offsetem %#<PRIx32> zawiera %zu wpisów:\n" -#: src/readelf.c:11300 +#: src/readelf.c:11339 #, c-format msgid "" "\n" @@ -6298,18 +6289,18 @@ msgstr "" "\n" " Tabela symboli pod offsetem %#<PRIx32> zawiera %zu gniazd:\n" -#: src/readelf.c:11438 +#: src/readelf.c:11477 #, c-format msgid "cannot get debug context descriptor: %s" msgstr "nie można uzyskać deskryptora kontekstu debugowania: %s" -#: src/readelf.c:11804 src/readelf.c:12431 src/readelf.c:12541 -#: src/readelf.c:12598 +#: src/readelf.c:11843 src/readelf.c:12463 src/readelf.c:12573 +#: src/readelf.c:12630 #, c-format msgid "cannot convert core note data: %s" msgstr "nie można konwertować danych notatki core: %s" -#: src/readelf.c:12168 +#: src/readelf.c:12207 #, c-format msgid "" "\n" @@ -6318,21 +6309,21 @@ msgstr "" "\n" "%*s… <powtarza siÄ™ jeszcze %u razy>…" -#: src/readelf.c:12677 +#: src/readelf.c:12709 msgid " Owner Data size Type\n" msgstr " WÅ‚aÅ›ciciel Rozmiar danych Typ\n" -#: src/readelf.c:12705 +#: src/readelf.c:12737 #, c-format msgid " %-13.*s %9<PRId32> %s\n" msgstr " %-13.*s %9<PRId32> %s\n" -#: src/readelf.c:12757 +#: src/readelf.c:12789 #, c-format msgid "cannot get content of note: %s" msgstr "nie można uzyskać zawartoÅ›ci notatki: %s" -#: src/readelf.c:12790 +#: src/readelf.c:12822 #, c-format msgid "" "\n" @@ -6342,7 +6333,7 @@ msgstr "" "Segment notatki [%2zu] „%s†o dÅ‚ugoÅ›ci %<PRIu64> B pod offsetem " "%#0<PRIx64>:\n" -#: src/readelf.c:12813 +#: src/readelf.c:12845 #, c-format msgid "" "\n" @@ -6351,7 +6342,7 @@ msgstr "" "\n" "Segment notatki o dÅ‚ugoÅ›ci %<PRIu64> B pod offsetem %#0<PRIx64>:\n" -#: src/readelf.c:12860 +#: src/readelf.c:12892 #, c-format msgid "" "\n" @@ -6360,12 +6351,12 @@ msgstr "" "\n" "Sekcja [%zu] „%s†nie ma danych do zrzucenia.\n" -#: src/readelf.c:12887 src/readelf.c:12938 +#: src/readelf.c:12919 src/readelf.c:12970 #, c-format msgid "cannot get data for section [%zu] '%s': %s" msgstr "nie można uzyskać danych dla sekcji [%zu] „%sâ€: %s" -#: src/readelf.c:12892 +#: src/readelf.c:12924 #, c-format msgid "" "\n" @@ -6375,7 +6366,7 @@ msgstr "" "Segment zrzutu szesnastkowego [%zu] „%sâ€, %<PRIu64> B pod offsetem " "%#0<PRIx64>:\n" -#: src/readelf.c:12897 +#: src/readelf.c:12929 #, c-format msgid "" "\n" @@ -6386,7 +6377,7 @@ msgstr "" "Zrzut szesnastkowy sekcji [%zu] „%sâ€, %<PRIu64> B (%zd nieskompresowanych) " "pod offsetem %#0<PRIx64>:\n" -#: src/readelf.c:12911 +#: src/readelf.c:12943 #, c-format msgid "" "\n" @@ -6395,7 +6386,7 @@ msgstr "" "\n" "Sekcja [%zu] „%s†nie ma ciÄ…gów do zrzucenia.\n" -#: src/readelf.c:12943 +#: src/readelf.c:12975 #, c-format msgid "" "\n" @@ -6404,7 +6395,7 @@ msgstr "" "\n" "Sekcja ciÄ…gów [%zu] „%s†zawiera %<PRIu64> B pod offsetem %#0<PRIx64>:\n" -#: src/readelf.c:12948 +#: src/readelf.c:12980 #, c-format msgid "" "\n" @@ -6415,7 +6406,7 @@ msgstr "" "Sekcja ciÄ…gów [%zu] „%s†zawiera %<PRIu64> B (%zd nieskompresowanych) pod " "offsetem %#0<PRIx64>:\n" -#: src/readelf.c:12996 +#: src/readelf.c:13028 #, c-format msgid "" "\n" @@ -6424,7 +6415,7 @@ msgstr "" "\n" "sekcja [%lu] nie istnieje" -#: src/readelf.c:13026 +#: src/readelf.c:13058 #, c-format msgid "" "\n" @@ -6433,12 +6424,12 @@ msgstr "" "\n" "sekcja „%s†nie istnieje" -#: src/readelf.c:13081 +#: src/readelf.c:13113 #, c-format msgid "cannot get symbol index of archive '%s': %s" msgstr "nie można uzyskać indeksu symboli archiwum „%sâ€: %s" -#: src/readelf.c:13084 +#: src/readelf.c:13116 #, c-format msgid "" "\n" @@ -6447,7 +6438,7 @@ msgstr "" "\n" "Archiwum „%s†nie ma indeksu symboli\n" -#: src/readelf.c:13088 +#: src/readelf.c:13120 #, c-format msgid "" "\n" @@ -6456,12 +6447,12 @@ msgstr "" "\n" "Indeks archiwum „%s†ma %zu wpisów:\n" -#: src/readelf.c:13106 +#: src/readelf.c:13138 #, c-format msgid "cannot extract member at offset %zu in '%s': %s" msgstr "nie można wydobyć elementów pod offsetem %zu w „%sâ€: %s" -#: src/readelf.c:13111 +#: src/readelf.c:13143 #, c-format msgid "Archive member '%s' contains:\n" msgstr "Element archiwum „%s†zawiera:\n" @@ -7549,5 +7540,37 @@ msgid "Show instances of inlined functions" msgstr "WyÅ›wietla wystÄ…pienia wstawionych funkcji" #, c-format +#~ msgid "cannot get .debug_addr section data: %s" +#~ msgstr "nie można uzyskać danych sekcji .debug_addr: %s" + +#, c-format +#~ msgid "cannot get .debug_rnglists content: %s" +#~ msgstr "nie można uzyskać zawartoÅ›ci .debug_rnglists: %s" + +#, c-format +#~ msgid "cannot get .debug_ranges content: %s" +#~ msgstr "nie można uzyskać zawartoÅ›ci .debug_ranges: %s" + +#, c-format +#~ msgid "cannot get line data section data: %s" +#~ msgstr "nie można uzyskać danych sekcji danych wiersza: %s" + +#, c-format +#~ msgid "cannot get .debug_loclists content: %s" +#~ msgstr "nie można uzyskać zawartoÅ›ci .debug_loclists: %s" + +#, c-format +#~ msgid "cannot get .debug_loc content: %s" +#~ msgstr "nie można uzyskać zawartoÅ›ci .debug_log: %s" + +#, c-format +#~ msgid "cannot get macro information section data: %s" +#~ msgstr "nie można uzyskać danych sekcji informacji o makrach: %s" + +#, c-format +#~ msgid "cannot get .debug_str_offsets section data: %s" +#~ msgstr "nie można uzyskać danych sekcji .debug_str_offsets: %s" + +#, c-format #~ msgid "cannot allocate memory" #~ msgstr "nie można przydzielić pamiÄ™ci" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: elfutils\n" "Report-Msgid-Bugs-To: https://sourceware.org/bugzilla/\n" -"POT-Creation-Date: 2022-11-02 13:30+0100\n" +"POT-Creation-Date: 2023-03-03 16:09+0100\n" "PO-Revision-Date: 2020-03-28 14:59+0200\n" "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n" "Language-Team: Ukrainian <kde-i18n-uk@kde.org>\n" @@ -53,18 +53,18 @@ msgstr "" "початкових кодах. Умовами Ð»Ñ–Ñ†ÐµÐ½Ð·ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ ÐЕ передбачено жодних " "гарантій, зокрема гарантій працездатноÑÑ‚Ñ– або придатноÑÑ‚Ñ– Ð´Ð»Ñ Ð¿ÐµÐ²Ð½Ð¾Ñ— мети.\n" -#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11754 +#: lib/xmalloc.c:47 lib/xmalloc.c:60 lib/xmalloc.c:72 src/readelf.c:11793 #: src/unstrip.c:311 #, c-format msgid "memory exhausted" msgstr "пам’ÑÑ‚ÑŒ вичерпано" -#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:51 +#: libasm/asm_error.c:64 libdw/dwarf_error.c:57 libdwfl/libdwflP.h:47 #: libelf/elf_error.c:59 msgid "no error" msgstr "без помилок" -#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:53 +#: libasm/asm_error.c:65 libdw/dwarf_error.c:67 libdwfl/libdwflP.h:49 #: libelf/elf_error.c:90 msgid "out of memory" msgstr "неÑтача пам'ÑÑ‚Ñ–" @@ -101,7 +101,7 @@ msgstr "помилка під Ñ‡Ð°Ñ Ñпроби Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…" msgid "no backend support available" msgstr "підтримки Ñерверів не передбачено" -#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:52 +#: libasm/asm_error.c:82 libdw/dwarf_error.c:58 libdwfl/libdwflP.h:48 #: libelf/elf_error.c:62 msgid "unknown error" msgstr "невідома помилка" @@ -118,7 +118,7 @@ msgstr "некоректне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ Ñторінки « msgid "invalid character '\\%o' at line %d; ignored" msgstr "некоректне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ Ñторінки «%s»: проігноровано" -#: libcpu/i386_parse.y:553 +#: libcpu/i386_parse.y:555 #, fuzzy, c-format #| msgid "while reading linker script '%s': %s at line %d" msgid "while reading i386 CPU description: %s at line %d" @@ -232,7 +232,7 @@ msgstr "некоректна верÑÑ–Ñ DWARF" msgid "invalid directory index" msgstr "некоректний покажчик каталогу" -#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:73 +#: libdw/dwarf_error.c:87 libdwfl/libdwflP.h:69 msgid "address out of range" msgstr "некоректна адреÑа" @@ -260,7 +260,7 @@ msgstr "некоректний номер Ñ€Ñдка" msgid "invalid address range index" msgstr "некоректний Ñ–Ð½Ð´ÐµÐºÑ Ð´Ñ–Ð°Ð¿Ð°Ð·Ð¾Ð½Ñƒ адреÑ" -#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:74 +#: libdw/dwarf_error.c:94 libdwfl/libdwflP.h:70 msgid "no matching address range" msgstr "не виÑвлено відповідного діапазону адреÑ" @@ -371,166 +371,166 @@ msgstr "Бракує пам'ÑÑ‚Ñ–" msgid "No modules recognized in core file" msgstr "Ðе вдалоÑÑ Ð²Ð¸Ñвити модулі у файлі core" -#: libdwfl/libdwflP.h:54 +#: libdwfl/libdwflP.h:50 msgid "See errno" msgstr "Див. errno" -#: libdwfl/libdwflP.h:55 +#: libdwfl/libdwflP.h:51 msgid "See elf_errno" msgstr "Див. elf_errno" -#: libdwfl/libdwflP.h:56 +#: libdwfl/libdwflP.h:52 msgid "See dwarf_errno" msgstr "Див. dwarf_errno" -#: libdwfl/libdwflP.h:57 +#: libdwfl/libdwflP.h:53 msgid "See ebl_errno (XXX missing)" msgstr "Див. ebl_errno (не виÑвлено XXX)" -#: libdwfl/libdwflP.h:58 +#: libdwfl/libdwflP.h:54 msgid "gzip decompression failed" msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби Ð²Ð¸Ð´Ð¾Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð· gzip" -#: libdwfl/libdwflP.h:59 +#: libdwfl/libdwflP.h:55 msgid "bzip2 decompression failed" msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби Ð²Ð¸Ð´Ð¾Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð· bzip2" -#: libdwfl/libdwflP.h:60 +#: libdwfl/libdwflP.h:56 msgid "LZMA decompression failed" msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби Ð²Ð¸Ð´Ð¾Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð· LZMA" -#: libdwfl/libdwflP.h:61 +#: libdwfl/libdwflP.h:57 #, fuzzy msgid "zstd decompression failed" msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби Ð²Ð¸Ð´Ð¾Ð±ÑƒÐ²Ð°Ð½Ð½Ñ Ð· gzip" -#: libdwfl/libdwflP.h:62 +#: libdwfl/libdwflP.h:58 msgid "no support library found for machine" msgstr "у ÑиÑтемі не виÑвлено бібліотеки підтримки" -#: libdwfl/libdwflP.h:63 +#: libdwfl/libdwflP.h:59 msgid "Callbacks missing for ET_REL file" msgstr "Ðемає зворотних викликів Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð° ET_REL" -#: libdwfl/libdwflP.h:64 +#: libdwfl/libdwflP.h:60 msgid "Unsupported relocation type" msgstr "Ðепідтримуваний тип переÑуваннÑ" -#: libdwfl/libdwflP.h:65 +#: libdwfl/libdwflP.h:61 msgid "r_offset is bogus" msgstr "r_offset Ñ” фіктивним" -#: libdwfl/libdwflP.h:66 libelf/elf_error.c:114 libelf/elf_error.c:174 +#: libdwfl/libdwflP.h:62 libelf/elf_error.c:114 libelf/elf_error.c:174 msgid "offset out of range" msgstr "Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾Ð³Ð¾ зміщеннÑ" -#: libdwfl/libdwflP.h:67 +#: libdwfl/libdwflP.h:63 msgid "relocation refers to undefined symbol" msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÑилаєтьÑÑ Ð½Ð° невизначений Ñимвол." -#: libdwfl/libdwflP.h:68 +#: libdwfl/libdwflP.h:64 msgid "Callback returned failure" msgstr "Зворотним викликом повернуто помилку" -#: libdwfl/libdwflP.h:69 +#: libdwfl/libdwflP.h:65 msgid "No DWARF information found" msgstr "Ðе виÑвлено відомоÑтей DWARF" -#: libdwfl/libdwflP.h:70 +#: libdwfl/libdwflP.h:66 msgid "No symbol table found" msgstr "Ðе виÑвлено таблиці Ñимволів" -#: libdwfl/libdwflP.h:71 +#: libdwfl/libdwflP.h:67 msgid "No ELF program headers" msgstr "Ðемає заголовків програми ELF" -#: libdwfl/libdwflP.h:72 +#: libdwfl/libdwflP.h:68 msgid "address range overlaps an existing module" msgstr "діапазон Ð°Ð´Ñ€ÐµÑ Ð¿ÐµÑ€ÐµÐºÑ€Ð¸Ð²Ð°Ñ” Ñ–Ñнуючий модуль" -#: libdwfl/libdwflP.h:75 +#: libdwfl/libdwflP.h:71 msgid "image truncated" msgstr "образ обрізано" -#: libdwfl/libdwflP.h:76 +#: libdwfl/libdwflP.h:72 msgid "ELF file opened" msgstr "Відкритий файл ELF" -#: libdwfl/libdwflP.h:77 +#: libdwfl/libdwflP.h:73 msgid "not a valid ELF file" msgstr "не Ñ” коректним файлом ELF" -#: libdwfl/libdwflP.h:78 +#: libdwfl/libdwflP.h:74 msgid "cannot handle DWARF type description" msgstr "не вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ Ð¾Ð¿Ð¸Ñ Ñ‚Ð¸Ð¿Ñƒ DWARF" -#: libdwfl/libdwflP.h:79 +#: libdwfl/libdwflP.h:75 msgid "ELF file does not match build ID" msgstr "Файл ELF не відповідає ідентифікатору збираннÑ" -#: libdwfl/libdwflP.h:80 +#: libdwfl/libdwflP.h:76 msgid "corrupt .gnu.prelink_undo section data" msgstr "дані розділу «.gnu.prelink_undo» пошкоджено" -#: libdwfl/libdwflP.h:81 +#: libdwfl/libdwflP.h:77 msgid "Internal error due to ebl" msgstr "Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° через ebl" -#: libdwfl/libdwflP.h:82 +#: libdwfl/libdwflP.h:78 msgid "Missing data in core file" msgstr "У файлі Ñдра не виÑтачає даних" -#: libdwfl/libdwflP.h:83 +#: libdwfl/libdwflP.h:79 msgid "Invalid register" msgstr "Ðекоректний регіÑÑ‚Ñ€" -#: libdwfl/libdwflP.h:84 +#: libdwfl/libdwflP.h:80 #, fuzzy #| msgid "no reference value" msgid "Unknown register value" msgstr "немає Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¿Ð¾Ñ€Ñ–Ð²Ð½ÑннÑ" -#: libdwfl/libdwflP.h:85 +#: libdwfl/libdwflP.h:81 msgid "Error reading process memory" msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¿Ð°Ð¼â€™ÑÑ‚Ñ– процеÑу" -#: libdwfl/libdwflP.h:86 +#: libdwfl/libdwflP.h:82 msgid "Couldn't find architecture of any ELF" msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ хоч ÑкуÑÑŒ архітектуру ELF" -#: libdwfl/libdwflP.h:87 +#: libdwfl/libdwflP.h:83 msgid "Error parsing /proc filesystem" msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби обробки файлової ÑиÑтеми /proc" -#: libdwfl/libdwflP.h:88 +#: libdwfl/libdwflP.h:84 msgid "Invalid DWARF" msgstr "Ðекоректний Ð·Ð°Ð¿Ð¸Ñ DWARF" -#: libdwfl/libdwflP.h:89 +#: libdwfl/libdwflP.h:85 msgid "Unsupported DWARF" msgstr "Ðепідтримуваний Ð·Ð°Ð¿Ð¸Ñ DWARF" -#: libdwfl/libdwflP.h:90 +#: libdwfl/libdwflP.h:86 msgid "Unable to find more threads" msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ додаткові потоки" -#: libdwfl/libdwflP.h:91 +#: libdwfl/libdwflP.h:87 msgid "Dwfl already has attached state" msgstr "Dwfl уже перебуває у Ñтані Ð´Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ процеÑу" -#: libdwfl/libdwflP.h:92 +#: libdwfl/libdwflP.h:88 msgid "Dwfl has no attached state" msgstr "Dwfl не перебуває у Ñтані Ð´Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð´Ð¾ процеÑу" -#: libdwfl/libdwflP.h:93 +#: libdwfl/libdwflP.h:89 msgid "Unwinding not supported for this architecture" msgstr "Ð”Ð»Ñ Ñ†Ñ–Ñ”Ñ— архітектури Ñ€Ð¾Ð·Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ Ð½Ðµ передбачено" -#: libdwfl/libdwflP.h:94 +#: libdwfl/libdwflP.h:90 msgid "Invalid argument" msgstr "Ðекоректний аргумент" -#: libdwfl/libdwflP.h:95 +#: libdwfl/libdwflP.h:91 msgid "Not an ET_CORE ELF file" msgstr "Ðе Ñ” файлом ET_CORE ELF" @@ -635,7 +635,7 @@ msgstr "некоректна розмірніÑÑ‚ÑŒ вхідного парамРmsgid "invalid size of destination operand" msgstr "некоректна розмірніÑÑ‚ÑŒ вихідного параметра" -#: libelf/elf_error.c:86 src/readelf.c:6378 +#: libelf/elf_error.c:86 src/readelf.c:6415 #, c-format msgid "invalid encoding" msgstr "некоректне кодуваннÑ" @@ -720,8 +720,8 @@ msgstr "невідповідніÑÑ‚ÑŒ полів data/scn" msgid "invalid section header" msgstr "некоректний заголовок розділу" -#: libelf/elf_error.c:190 src/readelf.c:10266 src/readelf.c:10866 -#: src/readelf.c:10967 src/readelf.c:11149 +#: libelf/elf_error.c:190 src/readelf.c:10294 src/readelf.c:10899 +#: src/readelf.c:11000 src/readelf.c:11188 #, c-format msgid "invalid data" msgstr "некоректні дані" @@ -847,47 +847,53 @@ msgstr "" msgid "Show demangled symbols (ARG is always ignored)" msgstr "Виводити розшифровані Ñимволи (ÐРГ завжди ігноруєтьÑÑ)" -#: src/addr2line.c:77 +#: src/addr2line.c:76 +#, fuzzy +#| msgid "Show demangled symbols (ARG is always ignored)" +msgid "Show demangled symbols" +msgstr "Виводити розшифровані Ñимволи (ÐРГ завжди ігноруєтьÑÑ)" + +#: src/addr2line.c:78 msgid "Print all information on one line, and indent inlines" msgstr "ВивеÑти уÑÑ– дані у один Ñ€Ñдок Ñ– додати відÑтупи до перенеÑених Ñ€Ñдків" -#: src/addr2line.c:79 +#: src/addr2line.c:80 #, fuzzy #| msgid "Show absolute file names using compilation directory" msgid "Show relative file names without compilation directory" msgstr "Показувати абÑолютні назви файлів з викориÑтаннÑм каталогу збираннÑ" -#: src/addr2line.c:81 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 +#: src/addr2line.c:82 src/elfcmp.c:69 src/findtextrel.c:65 src/nm.c:99 #: src/strings.c:77 msgid "Miscellaneous:" msgstr "Інше:" #. Short description of program. -#: src/addr2line.c:89 +#: src/addr2line.c:90 msgid "" "Locate source files and line information for ADDRs (in a.out by default)." msgstr "Шукати ÐДРЕСИ у файлах кодів та даних про Ñ€Ñдки (типово, у a.out)." #. Strings for arguments in help texts. -#: src/addr2line.c:93 +#: src/addr2line.c:94 msgid "[ADDR...]" msgstr "[ÐДРЕСÐ...]" -#: src/addr2line.c:526 +#: src/addr2line.c:530 msgid "Section syntax requires exactly one module" msgstr "СинтакÑÐ¸Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñ–Ð² вимагає точного одного модулÑ" -#: src/addr2line.c:548 +#: src/addr2line.c:552 #, c-format msgid "offset %#<PRIxMAX> lies outside section '%s'" msgstr "Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %#<PRIxMAX> розташовано поза межами розділу «%s»" -#: src/addr2line.c:658 +#: src/addr2line.c:662 #, c-format msgid "cannot find symbol '%s'" msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñимвол «%s»" -#: src/addr2line.c:663 +#: src/addr2line.c:667 #, c-format msgid "offset %#<PRIxMAX> lies outside contents of '%s'" msgstr "Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %#<PRIxMAX> розташовано поза межами вміÑту «%s»" @@ -1378,7 +1384,7 @@ msgid "Suppress some error output (counterpart to --verbose)" msgstr "" #. Strings for arguments in help texts. -#: src/elfclassify.c:979 src/elfcompress.c:1358 src/elflint.c:76 +#: src/elfclassify.c:979 src/elfcompress.c:1433 src/elflint.c:76 #: src/readelf.c:160 msgid "FILE..." msgstr "ФÐЙЛ..." @@ -1647,48 +1653,59 @@ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ розділу %zu: %s" msgid "cannot get relocation: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ переÑуваннÑ: %s" -#: src/elfcompress.c:117 src/strip.c:305 src/unstrip.c:116 +#: src/elfcompress.c:128 src/strip.c:305 src/unstrip.c:116 #, c-format msgid "-o option specified twice" msgstr "параметр -o вказано двічі" -#: src/elfcompress.c:124 +#: src/elfcompress.c:135 #, c-format msgid "-t option specified twice" msgstr "параметр -t вказано двічі" -#: src/elfcompress.c:133 +#: src/elfcompress.c:147 +#, c-format +msgid "ZSTD support is not enabled" +msgstr "" + +#: src/elfcompress.c:150 #, c-format msgid "unknown compression type '%s'" msgstr "невідомий тип ÑтиÑÐ½ÐµÐ½Ð½Ñ Â«%s»" #. We need at least one input file. -#: src/elfcompress.c:145 src/elfcompress.c:1369 +#: src/elfcompress.c:162 src/elfcompress.c:1444 #, c-format msgid "No input file given" msgstr "Ðе надано файла вхідних даних" -#: src/elfcompress.c:151 src/elfcompress.c:1373 +#: src/elfcompress.c:168 src/elfcompress.c:1448 #, c-format msgid "Only one input file allowed together with '-o'" msgstr "З параметром «-o» можна викориÑтовувати лише один файл вхідних даних" -#: src/elfcompress.c:1331 +#: src/elfcompress.c:1405 msgid "Place (de)compressed output into FILE" msgstr "ПоміÑтити результати Ñ€Ð¾Ð·Ð¿Ð°ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ ÑтиÑÐºÐ°Ð½Ð½Ñ Ð´Ð¾ ФÐЙЛа" -#: src/elfcompress.c:1334 +#: src/elfcompress.c:1408 +#, fuzzy +#| msgid "" +#| "What type of compression to apply. TYPE can be 'none' (decompress), " +#| "'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias) or " +#| "'zlib-gnu' (.zdebug GNU style compression, 'gnu' is an alias)" msgid "" "What type of compression to apply. TYPE can be 'none' (decompress), " -"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias) or 'zlib-" -"gnu' (.zdebug GNU style compression, 'gnu' is an alias)" +"'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias), 'zlib-" +"gnu' (.zdebug GNU style compression, 'gnu' is an alias) or 'zstd' (ELF ZSTD " +"compression)" msgstr "" "Визначає тип ÑтиÑканнÑ, Ñкий Ñлід заÑтоÑувати. ТИПом може бути " "«none» (розпакувати), «zlib» (ÑтиÑÐºÐ°Ð½Ð½Ñ ELF ZLIB, типовий варіант, інша " "назва — «zlib-gabi») або «zlib-gnu» (ÑтиÑÐºÐ°Ð½Ð½Ñ Ñƒ Ñтилі GNU .zdebug, інша " "назва — «gnu»)" -#: src/elfcompress.c:1337 +#: src/elfcompress.c:1412 msgid "" "SECTION name to (de)compress, SECTION is an extended wildcard pattern " "(defaults to '.?(z)debug*')" @@ -1696,12 +1713,12 @@ msgstr "" "назва РОЗДІЛу Ð´Ð»Ñ Ñ€Ð¾Ð·Ð¿Ð°ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ ÑтиÑканнÑ, РОЗДІЛ Ñ” розширеним взірцем із " "замінниками (типове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ -- «.?(z)debug*»)" -#: src/elfcompress.c:1340 +#: src/elfcompress.c:1415 msgid "Print a message for each section being (de)compressed" msgstr "" "ВивеÑти Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾ розділу, Ñкий розпаковуєтьÑÑ Ñ‡Ð¸ ÑтиÑкаєтьÑÑ" -#: src/elfcompress.c:1343 +#: src/elfcompress.c:1418 msgid "" "Force compression of section even if it would become larger or update/" "rewrite the file even if no section would be (de)compressed" @@ -1709,16 +1726,16 @@ msgstr "" "ПримуÑове ÑтиÑÐºÐ°Ð½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ, навіть Ñкщо він Ñтане більшим, або Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‡Ð¸ " "Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð°, навіть Ñкщо жодного розділу не буде розпаковано або ÑтиÑнено" -#: src/elfcompress.c:1346 src/strip.c:92 +#: src/elfcompress.c:1421 src/strip.c:92 msgid "Relax a few rules to handle slightly broken ELF files" msgstr "" "Знехтувати декількома правилами Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ трохи пошкоджених файлів ELF" -#: src/elfcompress.c:1349 +#: src/elfcompress.c:1424 msgid "Be silent when a section cannot be compressed" msgstr "Ðе Ñповіщати, Ñкщо розділ неможливо ÑтиÑнути" -#: src/elfcompress.c:1359 +#: src/elfcompress.c:1434 msgid "Compress or decompress sections in an ELF file." msgstr "СтиÑнути або розпакувати розділи у файлі ELF." @@ -1782,134 +1799,134 @@ msgstr " помилка під Ñ‡Ð°Ñ Ñпроби Ð²Ð¸Ð²Ñ–Ð»ÑŒÐ½ÐµÐ½Ð½Ñ Ð´ÐµÑ msgid "Not an ELF file - it has the wrong magic bytes at the start\n" msgstr "Ðе Ñ” файлом ELF. ВиÑвлено помилкові магічні байти на початку файла\n" -#: src/elflint.c:356 +#: src/elflint.c:357 #, c-format msgid "e_ident[%d] == %d is no known class\n" msgstr "e_ident[%d] == %d не Ñ” відомим клаÑом\n" -#: src/elflint.c:361 +#: src/elflint.c:362 #, c-format msgid "e_ident[%d] == %d is no known data encoding\n" msgstr "e_ident[%d] == %d не Ñ” відомим кодуваннÑм даних\n" -#: src/elflint.c:365 +#: src/elflint.c:366 #, c-format msgid "unknown ELF header version number e_ident[%d] == %d\n" msgstr "невідомий номер верÑÑ–Ñ— заголовка ELF e_ident[%d] == %d\n" -#: src/elflint.c:373 +#: src/elflint.c:374 #, c-format msgid "unsupported OS ABI e_ident[%d] == '%s'\n" msgstr "непідтримуване ABI ОС e_ident[%d] == «%s»\n" -#: src/elflint.c:379 +#: src/elflint.c:380 #, c-format msgid "unsupported ABI version e_ident[%d] == %d\n" msgstr "непідтримувана верÑÑ–Ñ ABI e_ident[%d] == %d\n" -#: src/elflint.c:384 +#: src/elflint.c:385 #, c-format msgid "e_ident[%zu] is not zero\n" msgstr "e_ident[%zu] не дорівнює нулеві\n" -#: src/elflint.c:389 +#: src/elflint.c:390 #, c-format msgid "unknown object file type %d\n" msgstr "невідомий тип об’єктних файлів %d\n" -#: src/elflint.c:396 +#: src/elflint.c:397 #, c-format msgid "unknown machine type %d\n" msgstr "невідомий тип архітектури %d\n" -#: src/elflint.c:400 +#: src/elflint.c:401 #, c-format msgid "unknown object file version\n" msgstr "невідома верÑÑ–Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð½Ð¸Ñ… файлів\n" -#: src/elflint.c:406 +#: src/elflint.c:407 #, c-format msgid "invalid program header offset\n" msgstr "некоректне Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми\n" -#: src/elflint.c:408 +#: src/elflint.c:409 #, c-format msgid "executables and DSOs cannot have zero program header offset\n" msgstr "" "виконувані файли Ñ– DSO не можуть міÑтити заголовка програми з нульовим " "зміщеннÑм\n" -#: src/elflint.c:412 +#: src/elflint.c:413 #, c-format msgid "invalid number of program header entries\n" msgstr "некоректна кількіÑÑ‚ÑŒ запиÑів заголовків програми\n" -#: src/elflint.c:420 +#: src/elflint.c:421 #, c-format msgid "invalid section header table offset\n" msgstr "некоректне Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– заголовків розділів\n" -#: src/elflint.c:423 +#: src/elflint.c:424 #, c-format msgid "section header table must be present\n" msgstr "має бути вказано таблицю заголовків розділів\n" -#: src/elflint.c:437 +#: src/elflint.c:438 #, c-format msgid "invalid number of section header table entries\n" msgstr "некоректна кількіÑÑ‚ÑŒ запиÑів таблиці заголовків розділів\n" -#: src/elflint.c:454 +#: src/elflint.c:455 #, c-format msgid "invalid section header index\n" msgstr "некоректний Ñ–Ð½Ð´ÐµÐºÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° розділу\n" -#: src/elflint.c:472 +#: src/elflint.c:473 #, c-format msgid "Can only check %u headers, shnum was %u\n" msgstr "Можна перевірити лише %u заголовків, значеннÑм же shnum було %u\n" -#: src/elflint.c:486 +#: src/elflint.c:487 #, c-format msgid "invalid number of program header table entries\n" msgstr "некоректна кількіÑÑ‚ÑŒ запиÑів таблиці заголовків програми\n" -#: src/elflint.c:503 +#: src/elflint.c:504 #, c-format msgid "Can only check %u headers, phnum was %u\n" msgstr "Можна перевірити лише %u заголовків, значеннÑм же phnum було %u\n" -#: src/elflint.c:508 +#: src/elflint.c:509 #, c-format msgid "invalid machine flags: %s\n" msgstr "некоректні прапорці архітектури: %s\n" -#: src/elflint.c:515 src/elflint.c:532 +#: src/elflint.c:516 src/elflint.c:533 #, c-format msgid "invalid ELF header size: %hd\n" msgstr "некоректний розмір заголовка ELF: %hd\n" -#: src/elflint.c:518 src/elflint.c:535 +#: src/elflint.c:519 src/elflint.c:536 #, c-format msgid "invalid program header size: %hd\n" msgstr "некоректний розмір заголовка програми: %hd\n" -#: src/elflint.c:521 src/elflint.c:538 +#: src/elflint.c:522 src/elflint.c:539 #, c-format msgid "invalid program header position or size\n" msgstr "некоректне Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ розмір заголовка програми\n" -#: src/elflint.c:524 src/elflint.c:541 +#: src/elflint.c:525 src/elflint.c:542 #, c-format msgid "invalid section header size: %hd\n" msgstr "некоректний розмір заголовка розділу: %hd\n" -#: src/elflint.c:527 src/elflint.c:544 +#: src/elflint.c:528 src/elflint.c:545 #, c-format msgid "invalid section header position or size\n" msgstr "некоректне Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ розмір заголовка розділу\n" -#: src/elflint.c:589 +#: src/elflint.c:590 #, c-format msgid "" "section [%2d] '%s': section with SHF_GROUP flag set not part of a section " @@ -1918,7 +1935,7 @@ msgstr "" "розділ [%2d] «%s»: розділ з вÑтановленим прапорцем SHF_GROUP не Ñ” чаÑтиною " "групи розділів\n" -#: src/elflint.c:593 +#: src/elflint.c:594 #, c-format msgid "" "section [%2d] '%s': section group [%2zu] '%s' does not precede group member\n" @@ -1926,14 +1943,14 @@ msgstr "" "розділ [%2d] «%s»: групу розділів [%2zu] «%s» мало бути визначено до розділу-" "елемента цієї групи\n" -#: src/elflint.c:609 src/elflint.c:1497 src/elflint.c:1548 src/elflint.c:1654 -#: src/elflint.c:1990 src/elflint.c:2316 src/elflint.c:2942 src/elflint.c:3105 -#: src/elflint.c:3253 src/elflint.c:3455 src/elflint.c:4464 +#: src/elflint.c:610 src/elflint.c:1498 src/elflint.c:1549 src/elflint.c:1655 +#: src/elflint.c:1991 src/elflint.c:2317 src/elflint.c:2943 src/elflint.c:3106 +#: src/elflint.c:3254 src/elflint.c:3456 src/elflint.c:4468 #, c-format msgid "section [%2d] '%s': cannot get section data\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу\n" -#: src/elflint.c:622 src/elflint.c:1661 +#: src/elflint.c:623 src/elflint.c:1662 #, c-format msgid "" "section [%2d] '%s': referenced as string table for section [%2d] '%s' but " @@ -1942,7 +1959,7 @@ msgstr "" "розділ [%2d] «%s»: надано поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° таблицю Ñ€Ñдків розділу [%2d] «%s», " "але типом даних не Ñ” SHT_STRTAB\n" -#: src/elflint.c:645 +#: src/elflint.c:646 #, c-format msgid "" "section [%2d] '%s': symbol table cannot have more than one extended index " @@ -1951,12 +1968,12 @@ msgstr "" "розділ [%2d] «%s»: у таблиці Ñимволів не може бути більше одного розширеного " "розділу покажчика\n" -#: src/elflint.c:657 +#: src/elflint.c:658 #, c-format msgid "section [%2u] '%s': entry size is does not match ElfXX_Sym\n" msgstr "розділ [%2u] «%s»: розмірніÑÑ‚ÑŒ запиÑу не відповідає ElfXX_Sym\n" -#: src/elflint.c:661 +#: src/elflint.c:662 #, c-format msgid "" "section [%2u] '%s': number of local entries in 'st_info' larger than table " @@ -1965,33 +1982,33 @@ msgstr "" "розділ [%2u] «%s»: кількіÑÑ‚ÑŒ локальних запиÑів у «st_info» перевищує розмір " "таблиці\n" -#: src/elflint.c:670 +#: src/elflint.c:671 #, c-format msgid "section [%2d] '%s': cannot get symbol %d: %s\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ñимвол %d: %s\n" -#: src/elflint.c:675 src/elflint.c:678 src/elflint.c:681 src/elflint.c:684 -#: src/elflint.c:687 src/elflint.c:690 +#: src/elflint.c:676 src/elflint.c:679 src/elflint.c:682 src/elflint.c:685 +#: src/elflint.c:688 src/elflint.c:691 #, c-format msgid "section [%2d] '%s': '%s' in zeroth entry not zero\n" msgstr "розділ [%2d] «%s»: «%s» у нульовому запиÑÑ– не Ñ” нулем\n" -#: src/elflint.c:693 +#: src/elflint.c:694 #, c-format msgid "section [%2d] '%s': XINDEX for zeroth entry not zero\n" msgstr "розділ [%2d] «%s»: XINDEX Ð´Ð»Ñ Ð½ÑƒÐ»ÑŒÐ¾Ð²Ð¾Ð³Ð¾ запиÑу не Ñ” нулем\n" -#: src/elflint.c:703 +#: src/elflint.c:704 #, c-format msgid "section [%2d] '%s': cannot get symbol %zu: %s\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ñимвол %zu: %s\n" -#: src/elflint.c:712 +#: src/elflint.c:713 #, c-format msgid "section [%2d] '%s': symbol %zu: invalid name value\n" msgstr "розділ [%2d] «%s»: Ñимвол %zu: некоректне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð°Ð·Ð²Ð¸\n" -#: src/elflint.c:727 +#: src/elflint.c:728 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): too large section index but no extended " @@ -2000,7 +2017,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: занадто великий покажчик розділу за умови, що " "не визначено розділу розширеного покажчика розділів\n" -#: src/elflint.c:733 +#: src/elflint.c:734 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): XINDEX used for index which would fit " @@ -2010,29 +2027,29 @@ msgstr "" "відповідає st_shndx (%<PRIu32>)\n" #. || sym->st_shndx > SHN_HIRESERVE always false -#: src/elflint.c:745 +#: src/elflint.c:746 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): invalid section index\n" msgstr "розділ [%2d] «%s»: Ñимвол %zu: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ\n" -#: src/elflint.c:753 +#: src/elflint.c:754 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown type\n" msgstr "розділ [%2d] «%s»: Ñимвол %zu: невідомий тип\n" -#: src/elflint.c:759 +#: src/elflint.c:760 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown symbol binding\n" msgstr "розділ [%2d] «%s»: Ñимвол %zu: невідома прив’Ñзка Ñимволу\n" -#: src/elflint.c:764 +#: src/elflint.c:765 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unique symbol not of object type\n" msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: унікальний Ñимвол, що не належить до типу " "об’єктів\n" -#: src/elflint.c:772 +#: src/elflint.c:773 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): COMMON only allowed in relocatable " @@ -2041,7 +2058,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: COMMON можна викориÑтовувати лише у файлах, " "придатних до переÑуваннÑ\n" -#: src/elflint.c:776 +#: src/elflint.c:777 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local COMMON symbols are nonsense\n" @@ -2049,7 +2066,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: викориÑÑ‚Ð°Ð½Ð½Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¸Ñ… Ñимволів COMMON " "позбавлене ÑенÑу\n" -#: src/elflint.c:780 +#: src/elflint.c:781 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): function in COMMON section is nonsense\n" @@ -2057,13 +2074,13 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: викориÑÑ‚Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— у розділі COMMON " "позбавлене ÑенÑу\n" -#: src/elflint.c:831 +#: src/elflint.c:832 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): st_value out of bounds\n" msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ st_value поза можливим діапазоном\n" -#: src/elflint.c:837 src/elflint.c:862 src/elflint.c:911 +#: src/elflint.c:838 src/elflint.c:863 src/elflint.c:912 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s) does not fit completely in referenced " @@ -2072,7 +2089,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu не повніÑÑ‚ÑŽ відповідає розділу, на Ñкий " "поÑилаєтьÑÑ, [%2d] «%s»\n" -#: src/elflint.c:846 +#: src/elflint.c:847 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): referenced section [%2d] '%s' does not " @@ -2081,7 +2098,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ поÑÐ¸Ð»Ð°Ð½Ð½Ñ [%2d] «%s» не " "вÑтановлено прапорець SHF_TLS\n" -#: src/elflint.c:856 src/elflint.c:904 +#: src/elflint.c:857 src/elflint.c:905 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value out of bounds of referenced " @@ -2090,7 +2107,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ st_value поза межами розділу " "поÑиланнÑ, [%2d] «%s»\n" -#: src/elflint.c:883 +#: src/elflint.c:884 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but no TLS program header " @@ -2098,7 +2115,7 @@ msgid "" msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: Ñимвол TLS без запиÑу заголовка програми TLS\n" -#: src/elflint.c:889 +#: src/elflint.c:890 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): TLS symbol but couldn't get TLS program " @@ -2107,7 +2124,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: маємо Ñимвол TLS, але не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ " "Ð·Ð°Ð¿Ð¸Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми TLS\n" -#: src/elflint.c:897 +#: src/elflint.c:898 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): st_value short of referenced section " @@ -2116,7 +2133,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ st_value перед розділом поÑиланнÑ, " "[%2d] «%s»\n" -#: src/elflint.c:924 +#: src/elflint.c:925 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): local symbol outside range described in " @@ -2125,7 +2142,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: у sh_info опиÑано локальний Ñимвол поза " "діапазоном\n" -#: src/elflint.c:931 +#: src/elflint.c:932 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): non-local symbol outside range " @@ -2134,12 +2151,12 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: у sh_info опиÑано нелокальний Ñимвол поза " "діапазоном\n" -#: src/elflint.c:938 +#: src/elflint.c:939 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): non-local section symbol\n" msgstr "розділ [%2d] «%s»: Ñимвол %zu: нелокальний Ñимвол розділу\n" -#: src/elflint.c:988 +#: src/elflint.c:989 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to bad section " @@ -2148,7 +2165,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол _GLOBAL_OFFSET_TABLE_ поÑилаєтьÑÑ Ð½Ð° помилковий " "розділ, [%2d]\n" -#: src/elflint.c:995 +#: src/elflint.c:996 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol refers to section [%2d] " @@ -2160,7 +2177,7 @@ msgstr "" #. This test is more strict than the psABIs which #. usually allow the symbol to be in the middle of #. the .got section, allowing negative offsets. -#: src/elflint.c:1011 +#: src/elflint.c:1012 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol value %#<PRIx64> does not " @@ -2169,7 +2186,7 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñимволу _GLOBAL_OFFSET_TABLE_ %#<PRIx64> не " "відповідає адреÑÑ– розділу %s %#<PRIx64>\n" -#: src/elflint.c:1018 +#: src/elflint.c:1019 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol size %<PRIu64> does not " @@ -2178,7 +2195,7 @@ msgstr "" "розділ [%2d] «%s»: розмір Ñимволу _GLOBAL_OFFSET_TABLE_ %<PRIu64> не " "відповідає розміру розділу %s %<PRIu64>\n" -#: src/elflint.c:1026 +#: src/elflint.c:1027 #, c-format msgid "" "section [%2d] '%s': _GLOBAL_OFFSET_TABLE_ symbol present, but no .got " @@ -2187,7 +2204,7 @@ msgstr "" "розділ [%2d] «%s»: виÑвлено Ñимвол _GLOBAL_OFFSET_TABLE_, але не виÑвлено " "розділу .got\n" -#: src/elflint.c:1042 +#: src/elflint.c:1043 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC_ symbol value %#<PRIx64> does not match dynamic " @@ -2196,7 +2213,7 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñимволу _DYNAMIC_ %#<PRIx64> не відповідає " "адреÑÑ– динамічного Ñегмента %#<PRIx64>\n" -#: src/elflint.c:1049 +#: src/elflint.c:1050 #, c-format msgid "" "section [%2d] '%s': _DYNAMIC symbol size %<PRIu64> does not match dynamic " @@ -2205,7 +2222,7 @@ msgstr "" "розділ [%2d] «%s»: розмір Ñимволу _DYNAMIC %<PRIu64> не відповідає розміру " "динамічного Ñегмента %<PRIu64>\n" -#: src/elflint.c:1062 +#: src/elflint.c:1063 #, fuzzy, c-format msgid "" "section [%2d] '%s': symbol %zu (%s): symbol in dynamic symbol table with non-" @@ -2214,29 +2231,29 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %zu: Ñимвол у динамічній таблиці Ñимволів з " "нетиповою видиміÑÑ‚ÑŽ\n" -#: src/elflint.c:1066 +#: src/elflint.c:1067 #, fuzzy, c-format msgid "section [%2d] '%s': symbol %zu (%s): unknown bit set in st_other\n" msgstr "розділ [%2d] «%s»: Ñимвол %zu: невідомий набір бітів у st_other\n" -#: src/elflint.c:1104 +#: src/elflint.c:1105 #, c-format msgid "section [%2d] '%s': cannot get section data.\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу.\n" -#: src/elflint.c:1120 +#: src/elflint.c:1121 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT used for this RELA section\n" msgstr "розділ [%2d] «%s»: Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ розділу RELA викориÑтано DT_RELCOUNT\n" -#: src/elflint.c:1131 src/elflint.c:1184 +#: src/elflint.c:1132 src/elflint.c:1185 #, c-format msgid "section [%2d] '%s': DT_RELCOUNT value %d too high for this section\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ DT_RELCOUNT %d Ñ” занадто виÑоким Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ " "розділу\n" -#: src/elflint.c:1156 src/elflint.c:1209 +#: src/elflint.c:1157 src/elflint.c:1210 #, c-format msgid "" "section [%2d] '%s': relative relocations after index %d as specified by " @@ -2245,7 +2262,7 @@ msgstr "" "розділ [%2d] «%s»: відноÑні переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–ÑÐ»Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ— %d, вказаної за " "допомогою DT_RELCOUNT\n" -#: src/elflint.c:1162 src/elflint.c:1215 +#: src/elflint.c:1163 src/elflint.c:1216 #, c-format msgid "" "section [%2d] '%s': non-relative relocation at index %zu; DT_RELCOUNT " @@ -2254,27 +2271,27 @@ msgstr "" "розділ [%2d] «%s»: безвідноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð° позиції %zu; DT_RELCOUNT " "визначено %d відноÑних переÑуваннÑ\n" -#: src/elflint.c:1174 +#: src/elflint.c:1175 #, c-format msgid "section [%2d] '%s': DT_RELACOUNT used for this REL section\n" msgstr "розділ [%2d] «%s»: Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ розділу REL викориÑтано DT_RELACOUNT\n" -#: src/elflint.c:1257 +#: src/elflint.c:1258 #, c-format msgid "section [%2d] '%s': invalid destination section index\n" msgstr "розділ [%2d] «%s»: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ призначеннÑ\n" -#: src/elflint.c:1269 +#: src/elflint.c:1270 #, c-format msgid "section [%2d] '%s': invalid destination section type\n" msgstr "розділ [%2d] «%s»: некоректний тип розділу призначеннÑ\n" -#: src/elflint.c:1277 +#: src/elflint.c:1278 #, c-format msgid "section [%2d] '%s': sh_info should be zero\n" msgstr "розділ [%2d] «%s»: sh_info має бути нульовим\n" -#: src/elflint.c:1285 +#: src/elflint.c:1286 #, c-format msgid "" "section [%2d] '%s': no relocations for merge-able string sections possible\n" @@ -2282,25 +2299,25 @@ msgstr "" "розділ [%2d] «%s»: неможливі переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñ–Ð² Ñ€Ñдків, Ñкі непридатні " "до об'єднаннÑ\n" -#: src/elflint.c:1293 +#: src/elflint.c:1294 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Rela\n" msgstr "" "розділ [%2d] «%s»: розмірніÑÑ‚ÑŒ запиÑу розділу не відповідає ElfXX_Rela\n" -#: src/elflint.c:1353 +#: src/elflint.c:1354 #, c-format msgid "text relocation flag set but there is no read-only segment\n" msgstr "" "вÑтановлено прапорець переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту, але Ñегмент придатний лише до " "читаннÑ\n" -#: src/elflint.c:1380 +#: src/elflint.c:1381 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid type\n" msgstr "розділ [%2d] «%s»: переÑÑƒÐ²Ð°Ð½Ð½Ñ %zu: некоректний тип\n" -#: src/elflint.c:1388 +#: src/elflint.c:1389 #, c-format msgid "" "section [%2d] '%s': relocation %zu: relocation type invalid for the file " @@ -2309,12 +2326,12 @@ msgstr "" "розділ [%2d] «%s»: переÑÑƒÐ²Ð°Ð½Ð½Ñ %zu: некоректний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ñ‚Ð¸Ð¿Ñƒ " "файла\n" -#: src/elflint.c:1396 +#: src/elflint.c:1397 #, c-format msgid "section [%2d] '%s': relocation %zu: invalid symbol index\n" msgstr "розділ [%2d] «%s»: переÑÑƒÐ²Ð°Ð½Ð½Ñ %zu: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу\n" -#: src/elflint.c:1414 +#: src/elflint.c:1415 #, c-format msgid "" "section [%2d] '%s': relocation %zu: only symbol '_GLOBAL_OFFSET_TABLE_' can " @@ -2323,12 +2340,12 @@ msgstr "" "розділ [%2d] «%s»: переÑÑƒÐ²Ð°Ð½Ð½Ñ %zu: з %s можна викориÑтовувати лише Ñимвол " "«_GLOBAL_OFFSET_TABLE_»\n" -#: src/elflint.c:1431 +#: src/elflint.c:1432 #, c-format msgid "section [%2d] '%s': relocation %zu: offset out of bounds\n" msgstr "розділ [%2d] «%s»: переÑÑƒÐ²Ð°Ð½Ð½Ñ %zu: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð·Ð° межі діапазону\n" -#: src/elflint.c:1446 +#: src/elflint.c:1447 #, c-format msgid "" "section [%2d] '%s': relocation %zu: copy relocation against symbol of type " @@ -2337,7 +2354,7 @@ msgstr "" "розділ [%2d] «%s»: переÑÑƒÐ²Ð°Ð½Ð½Ñ %zu: переÑÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ñимволу типу " "%s\n" -#: src/elflint.c:1467 +#: src/elflint.c:1468 #, c-format msgid "" "section [%2d] '%s': relocation %zu: read-only section modified but text " @@ -2346,22 +2363,22 @@ msgstr "" "розділ [%2d] «%s»: переÑÑƒÐ²Ð°Ð½Ð½Ñ %zu: змінено придатний лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ " "розділ, але не вÑтановлено прапорець переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту\n" -#: src/elflint.c:1482 +#: src/elflint.c:1483 #, c-format msgid "section [%2d] '%s': relocations are against loaded and unloaded data\n" msgstr "розділ [%2d] «%s»: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð¸Ñ… Ñ– незавантажених даних\n" -#: src/elflint.c:1522 src/elflint.c:1573 +#: src/elflint.c:1523 src/elflint.c:1574 #, c-format msgid "section [%2d] '%s': cannot get relocation %zu: %s\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: %s\n" -#: src/elflint.c:1649 +#: src/elflint.c:1650 #, c-format msgid "more than one dynamic section present\n" msgstr "вказано більше одного динамічного розділу\n" -#: src/elflint.c:1667 +#: src/elflint.c:1668 #, c-format msgid "" "section [%2d]: referenced as string table for section [%2d] '%s' but section " @@ -2370,46 +2387,46 @@ msgstr "" "розділ [%2d]: надано поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° таблицю Ñ€Ñдків розділу [%2d] «%s», але " "Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾ÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° розділ Ñ” некоректним\n" -#: src/elflint.c:1675 +#: src/elflint.c:1676 #, c-format msgid "section [%2d] '%s': section entry size does not match ElfXX_Dyn\n" msgstr "" "розділ [%2d] «%s»: розмірніÑÑ‚ÑŒ запиÑу розділу не відповідає ElfXX_Dyn\n" -#: src/elflint.c:1680 src/elflint.c:1969 +#: src/elflint.c:1681 src/elflint.c:1970 #, c-format msgid "section [%2d] '%s': sh_info not zero\n" msgstr "розділ [%2d] «%s»: sh_info не Ñ” нульовим\n" -#: src/elflint.c:1690 +#: src/elflint.c:1691 #, c-format msgid "section [%2d] '%s': cannot get dynamic section entry %zu: %s\n" msgstr "" "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¸Ð½Ð°Ð¼Ñ–Ñ‡Ð½Ð¾Ð³Ð¾ розділу %zu: %s\n" -#: src/elflint.c:1698 +#: src/elflint.c:1699 #, c-format msgid "section [%2d] '%s': non-DT_NULL entries follow DT_NULL entry\n" msgstr "" "розділ [%2d] «%s»: за запиÑом DT_NULL вказано запиÑи, що не належать до " "DT_NULL\n" -#: src/elflint.c:1705 +#: src/elflint.c:1706 #, c-format msgid "section [%2d] '%s': entry %zu: unknown tag\n" msgstr "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %zu: невідома мітка\n" -#: src/elflint.c:1716 +#: src/elflint.c:1717 #, c-format msgid "section [%2d] '%s': entry %zu: more than one entry with tag %s\n" msgstr "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %zu: декілька запиÑів з міткою %s\n" -#: src/elflint.c:1726 +#: src/elflint.c:1727 #, c-format msgid "section [%2d] '%s': entry %zu: level 2 tag %s used\n" msgstr "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %zu: викориÑтано мітку Ñ€Ñ–Ð²Ð½Ñ 2 %s\n" -#: src/elflint.c:1744 +#: src/elflint.c:1745 #, c-format msgid "" "section [%2d] '%s': entry %zu: DT_PLTREL value must be DT_REL or DT_RELA\n" @@ -2417,7 +2434,7 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %zu: значеннÑм DT_PLTREL має бути DT_REL або " "DT_RELA\n" -#: src/elflint.c:1757 +#: src/elflint.c:1758 #, c-format msgid "" "section [%2d] '%s': entry %zu: pointer does not match address of section " @@ -2426,7 +2443,7 @@ msgstr "" "розділ [%2d] «%s»: розділ %zu: вказівник не відповідає адреÑÑ– розділу [%2d] " "«%s», на Ñку поÑилаєтьÑÑ sh_link\n" -#: src/elflint.c:1800 +#: src/elflint.c:1801 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must point into loaded segment\n" @@ -2434,7 +2451,7 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %zu: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %s має вказувати на завантажений " "Ñегмент\n" -#: src/elflint.c:1815 +#: src/elflint.c:1816 #, c-format msgid "" "section [%2d] '%s': entry %zu: %s value must be valid offset in section " @@ -2443,48 +2460,48 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %zu: значеннÑм %s має бути коректне Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñƒ " "розділі [%2d] «%s»\n" -#: src/elflint.c:1835 src/elflint.c:1863 +#: src/elflint.c:1836 src/elflint.c:1864 #, c-format msgid "section [%2d] '%s': contains %s entry but not %s\n" msgstr "розділ [%2d] «%s»: міÑтить Ð·Ð°Ð¿Ð¸Ñ %s, але не %s\n" -#: src/elflint.c:1847 +#: src/elflint.c:1848 #, c-format msgid "section [%2d] '%s': mandatory tag %s not present\n" msgstr "розділ [%2d] «%s»: немає обов’Ñзкової мітки %s\n" -#: src/elflint.c:1856 +#: src/elflint.c:1857 #, c-format msgid "section [%2d] '%s': no hash section present\n" msgstr "розділ [%2d] «%s»: не виÑвлено розділу хешів\n" -#: src/elflint.c:1871 src/elflint.c:1878 +#: src/elflint.c:1872 src/elflint.c:1879 #, c-format msgid "section [%2d] '%s': not all of %s, %s, and %s are present\n" msgstr "розділ [%2d] «%s»: вказано не вÑÑ– зі значень %s, %s Ñ– %s\n" -#: src/elflint.c:1888 src/elflint.c:1892 +#: src/elflint.c:1889 src/elflint.c:1893 #, c-format msgid "section [%2d] '%s': %s tag missing in DSO marked during prelinking\n" msgstr "" "розділ [%2d] «%s»: у DSO, позначеному на кроці попереднього компонуваннÑ, " "немає мітки %s\n" -#: src/elflint.c:1898 +#: src/elflint.c:1899 #, c-format msgid "section [%2d] '%s': non-DSO file marked as dependency during prelink\n" msgstr "" "розділ [%2d] «%s»: під Ñ‡Ð°Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½ÑŒÐ¾Ð³Ð¾ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñк залежніÑÑ‚ÑŒ позначено " "файл, Ñкий не Ñ” файлом DSO\n" -#: src/elflint.c:1909 src/elflint.c:1913 src/elflint.c:1917 src/elflint.c:1921 +#: src/elflint.c:1910 src/elflint.c:1914 src/elflint.c:1918 src/elflint.c:1922 #, c-format msgid "section [%2d] '%s': %s tag missing in prelinked executable\n" msgstr "" "розділ [%2d] «%s»: у попередньо Ñкомпонованому виконуваному файлі не " "міÑтитьÑÑ Ð¼Ñ–Ñ‚ÐºÐ¸ %s\n" -#: src/elflint.c:1933 +#: src/elflint.c:1934 #, c-format msgid "" "section [%2d] '%s': only relocatable files can have extended section index\n" @@ -2492,7 +2509,7 @@ msgstr "" "розділ [%2d] «%s»: розширений розділ покажчика можуть мати лише файли, " "придатні до переÑуваннÑ\n" -#: src/elflint.c:1943 +#: src/elflint.c:1944 #, c-format msgid "" "section [%2d] '%s': extended section index section not for symbol table\n" @@ -2500,29 +2517,29 @@ msgstr "" "розділ [%2d] «%s»: розділ розширеного покажчика розділів не призначено Ð´Ð»Ñ " "таблиць Ñимволів\n" -#: src/elflint.c:1947 +#: src/elflint.c:1948 #, c-format msgid "section [%2d] '%s': sh_link extended section index [%2d] is invalid\n" msgstr "" "розділ [%2d] «%s»: Ñ–Ð½Ð´ÐµÐºÑ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð¾Ð³Ð¾ розділу sh_link [%2d] Ñ” некоректним\n" -#: src/elflint.c:1952 +#: src/elflint.c:1953 #, c-format msgid "cannot get data for symbol section\n" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ Ñимволів\n" -#: src/elflint.c:1955 +#: src/elflint.c:1956 #, c-format msgid "section [%2d] '%s': entry size does not match Elf32_Word\n" msgstr "розділ [%2d] «%s»: розмірніÑÑ‚ÑŒ запиÑу не відповідає Elf32_Word\n" -#: src/elflint.c:1964 +#: src/elflint.c:1965 #, c-format msgid "section [%2d] '%s': extended index table too small for symbol table\n" msgstr "" "розділ [%2d] «%s»: розширена Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ð¾ÐºÐ°Ð¶Ñ‡Ð¸ÐºÐ° замала Ð´Ð»Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– Ñимволів\n" -#: src/elflint.c:1979 +#: src/elflint.c:1980 #, c-format msgid "" "section [%2d] '%s': extended section index in section [%2zu] '%s' refers to " @@ -2531,24 +2548,24 @@ msgstr "" "розділ [%2d] «%s»: розширений покажчик розділів у розділі [%2zu] «%s» " "поÑилаєтьÑÑ Ð½Ð° ту Ñаму таблицю розділів\n" -#: src/elflint.c:1997 +#: src/elflint.c:1998 #, c-format msgid "symbol 0 should have zero extended section index\n" msgstr "Ñимволу 0 має відповідати нульовий Ñ–Ð½Ð´ÐµÐºÑ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð¾Ð³Ð¾ розділу\n" -#: src/elflint.c:2009 +#: src/elflint.c:2010 #, c-format msgid "cannot get data for symbol %zu\n" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані Ð´Ð»Ñ Ñимволу %zu\n" -#: src/elflint.c:2014 +#: src/elflint.c:2015 #, c-format msgid "extended section index is %<PRIu32> but symbol index is not XINDEX\n" msgstr "" "Ñ–Ð½Ð´ÐµÐºÑ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð¾Ð³Ð¾ розділу дорівнює %<PRIu32>, але Ñ–Ð½Ð´ÐµÐºÑ Ñимволу не Ñ” " "XINDEX\n" -#: src/elflint.c:2031 src/elflint.c:2088 +#: src/elflint.c:2032 src/elflint.c:2089 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected %ld)\n" @@ -2556,43 +2573,43 @@ msgstr "" "розділ [%2d] «%s»: розділ таблиці хешів занадто малий (розмір %ld, мало бути " "— %ld)\n" -#: src/elflint.c:2045 src/elflint.c:2102 +#: src/elflint.c:2046 src/elflint.c:2103 #, c-format msgid "section [%2d] '%s': chain array too large\n" msgstr "розділ [%2d] «%s»: маÑив ланцюжка занадто великий\n" -#: src/elflint.c:2059 src/elflint.c:2116 +#: src/elflint.c:2060 src/elflint.c:2117 #, c-format msgid "section [%2d] '%s': hash bucket reference %zu out of bounds\n" msgstr "" "розділ [%2d] «%s»: поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° хеш блоку %zu лежить поза межами діапазону\n" -#: src/elflint.c:2069 +#: src/elflint.c:2070 #, c-format msgid "section [%2d] '%s': hash chain reference %zu out of bounds\n" msgstr "" "розділ [%2d] «%s»: поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð»Ð°Ð½Ñ†ÑŽÐ¶ÐºÐ° хешів %zu лежить поза межами " "діапазону\n" -#: src/elflint.c:2126 +#: src/elflint.c:2127 #, c-format msgid "section [%2d] '%s': hash chain reference %<PRIu64> out of bounds\n" msgstr "" "розділ [%2d] «%s»: поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð»Ð°Ð½Ñ†ÑŽÐ¶ÐºÐ° хешів %<PRIu64> лежить поза межами " "діапазону\n" -#: src/elflint.c:2139 +#: src/elflint.c:2140 #, c-format msgid "section [%2d] '%s': not enough data\n" msgstr "розділ [%2d] «%s»: недоÑтатньо даних\n" -#: src/elflint.c:2151 +#: src/elflint.c:2152 #, c-format msgid "section [%2d] '%s': bitmask size zero or not power of 2: %u\n" msgstr "" "розділ [%2d] «%s»: розмір бітової маÑки Ñ” нульовим або не Ñ” Ñтепенем 2: %u\n" -#: src/elflint.c:2167 +#: src/elflint.c:2168 #, c-format msgid "" "section [%2d] '%s': hash table section is too small (is %ld, expected at " @@ -2601,12 +2618,12 @@ msgstr "" "розділ [%2d] «%s»: розділ таблиці хешів Ñ” надто малим (маємо %ld, мало бути " "принаймні %ld)\n" -#: src/elflint.c:2176 +#: src/elflint.c:2177 #, c-format msgid "section [%2d] '%s': 2nd hash function shift too big: %u\n" msgstr "розділ [%2d] «%s»: зÑув 2-ої функції Ñ…ÐµÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð½Ð°Ð´Ñ‚Ð¾ великий: %u\n" -#: src/elflint.c:2210 +#: src/elflint.c:2211 #, c-format msgid "" "section [%2d] '%s': hash chain for bucket %zu lower than symbol index bias\n" @@ -2614,7 +2631,7 @@ msgstr "" "розділ [%2d] '%s': ланцюжок хешів Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÑƒ %zu розташовано нижче за позицію " "Ð²Ñ–Ð´Ñ…Ð¸Ð»ÐµÐ½Ð½Ñ Ñ–Ð½Ð´ÐµÐºÑу Ñимволу\n" -#: src/elflint.c:2231 +#: src/elflint.c:2232 #, c-format msgid "" "section [%2d] '%s': symbol %u referenced in chain for bucket %zu is " @@ -2623,7 +2640,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %u, на Ñкий поÑилаєтьÑÑ Ð»Ð°Ð½Ñ†ÑŽÐ¶Ð¾Ðº у блоці %zu не " "визначено\n" -#: src/elflint.c:2244 +#: src/elflint.c:2245 #, c-format msgid "" "section [%2d] '%s': hash value for symbol %u in chain for bucket %zu wrong\n" @@ -2631,7 +2648,7 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ…ÐµÑˆÑƒ Ð´Ð»Ñ Ñимволу %u у ланцюжку Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÑƒ %zu Ñ” " "помилковим\n" -#: src/elflint.c:2253 +#: src/elflint.c:2254 #, c-format msgid "" "section [%2d] '%s': mask index for symbol %u in chain for bucket %zu wrong\n" @@ -2639,14 +2656,14 @@ msgstr "" "розділ [%2d] «%s»: Ñ–Ð½Ð´ÐµÐºÑ Ð¼Ð°Ñки Ð´Ð»Ñ Ñимволу %u у ланцюжку Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÑƒ %zu Ñ” " "помилковим\n" -#: src/elflint.c:2283 +#: src/elflint.c:2284 #, c-format msgid "section [%2d] '%s': hash chain for bucket %zu out of bounds\n" msgstr "" "розділ [%2d] «%s»: ланцюжок хешів Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÑƒ %zu лежить поза межами " "діапазону\n" -#: src/elflint.c:2288 +#: src/elflint.c:2289 #, c-format msgid "" "section [%2d] '%s': symbol reference in chain for bucket %zu out of bounds\n" @@ -2654,43 +2671,43 @@ msgstr "" "розділ [%2d] «%s»: поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° Ñимвол у ланцюжку Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÑƒ %zu лежить поза " "межами діапазону\n" -#: src/elflint.c:2294 +#: src/elflint.c:2295 #, c-format msgid "section [%2d] '%s': bitmask does not match names in the hash table\n" msgstr "розділ [%2d] «%s»: бітова маÑка не відповідає назвам у таблиці хешів\n" -#: src/elflint.c:2307 +#: src/elflint.c:2308 #, c-format msgid "section [%2d] '%s': relocatable files cannot have hash tables\n" msgstr "" "розділ [%2d] «%s»: придатні до переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð¸ не можуть міÑтити таблиць " "хешів\n" -#: src/elflint.c:2325 +#: src/elflint.c:2326 #, c-format msgid "section [%2d] '%s': hash table not for dynamic symbol table\n" msgstr "" "розділ [%2d] «%s»: таблицю хешів не призначено Ð´Ð»Ñ Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– " "динамічних Ñимволів\n" -#: src/elflint.c:2329 +#: src/elflint.c:2330 #, c-format msgid "section [%2d] '%s': invalid sh_link symbol table section index [%2d]\n" msgstr "" "розділ [%2d] «%s»: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ таблиці Ñимволів sh_link " "[%2d]\n" -#: src/elflint.c:2339 +#: src/elflint.c:2340 #, c-format msgid "section [%2d] '%s': hash table entry size incorrect\n" msgstr "розділ [%2d] «%s»: розмірніÑÑ‚ÑŒ запиÑу таблиці хешів Ñ” некоректною\n" -#: src/elflint.c:2344 +#: src/elflint.c:2345 #, c-format msgid "section [%2d] '%s': not marked to be allocated\n" msgstr "розділ [%2d] «%s»: не позначено Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑуваннÑ\n" -#: src/elflint.c:2349 +#: src/elflint.c:2350 #, c-format msgid "" "section [%2d] '%s': hash table has not even room for initial administrative " @@ -2699,27 +2716,27 @@ msgstr "" "розділ [%2d] «%s»: у таблиці хешів виÑвлено незвичайне Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ " "початкових адмініÑтративних запиÑів\n" -#: src/elflint.c:2398 +#: src/elflint.c:2399 #, c-format msgid "sh_link in hash sections [%2zu] '%s' and [%2zu] '%s' not identical\n" msgstr "sh_link у розділах хешів [%2zu] «%s» Ñ– [%2zu] «%s» не збігаютьÑÑ\n" -#: src/elflint.c:2422 src/elflint.c:2487 src/elflint.c:2522 +#: src/elflint.c:2423 src/elflint.c:2488 src/elflint.c:2523 #, c-format msgid "hash section [%2zu] '%s' does not contain enough data\n" msgstr "розділ хешу [%2zu] «%s» міÑтить недоÑтатньо даних\n" -#: src/elflint.c:2443 +#: src/elflint.c:2444 #, c-format msgid "hash section [%2zu] '%s' has zero bit mask words\n" msgstr "розділ хешу [%2zu] «%s» міÑтить нульові Ñлова бітової маÑки\n" -#: src/elflint.c:2454 src/elflint.c:2498 src/elflint.c:2535 +#: src/elflint.c:2455 src/elflint.c:2499 src/elflint.c:2536 #, c-format msgid "hash section [%2zu] '%s' uses too much data\n" msgstr "розділ хешу [%2zu] «%s» викориÑтовує надто багато даних\n" -#: src/elflint.c:2469 +#: src/elflint.c:2470 #, c-format msgid "" "hash section [%2zu] '%s' invalid symbol index %<PRIu32> (max_nsyms: " @@ -2728,17 +2745,17 @@ msgstr "" "розділ хешу [%2zu] «%s» некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу %<PRIu32> (макÑ. к-Ñ‚ÑŒ " "Ñимволів: %<PRIu32>, кількіÑÑ‚ÑŒ запиÑів: %<PRIu32>\n" -#: src/elflint.c:2556 +#: src/elflint.c:2557 #, c-format msgid "hash section [%2zu] '%s' invalid sh_entsize\n" msgstr "розділ хешу [%2zu] «%s» некоректне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ sh_entsize\n" -#: src/elflint.c:2566 src/elflint.c:2570 +#: src/elflint.c:2567 src/elflint.c:2571 #, c-format msgid "section [%2zu] '%s': reference to symbol index 0\n" msgstr "розділ [%2zu] «%s»: поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° Ñ–Ð½Ð´ÐµÐºÑ Ñимволів 0\n" -#: src/elflint.c:2577 +#: src/elflint.c:2578 #, c-format msgid "" "symbol %d referenced in new hash table in [%2zu] '%s' but not in old hash " @@ -2747,7 +2764,7 @@ msgstr "" "виÑвлено поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° Ñимвол %d у новій таблиці хешів у [%2zu] «%s», але " "його немає у Ñтарій таблиці хешів у [%2zu] «%s»\n" -#: src/elflint.c:2589 +#: src/elflint.c:2590 #, c-format msgid "" "symbol %d referenced in old hash table in [%2zu] '%s' but not in new hash " @@ -2756,12 +2773,12 @@ msgstr "" "виÑвлено поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° Ñимвол %d у Ñтарій таблиці хешів у [%2zu] «%s», але " "його немає у новій таблиці хешів у [%2zu] «%s»\n" -#: src/elflint.c:2605 +#: src/elflint.c:2606 #, c-format msgid "section [%2d] '%s': nonzero sh_%s for NULL section\n" msgstr "розділ [%2d] «%s»: ненульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ sh_%s Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ NULL\n" -#: src/elflint.c:2625 +#: src/elflint.c:2626 #, c-format msgid "" "section [%2d] '%s': section groups only allowed in relocatable object files\n" @@ -2769,95 +2786,95 @@ msgstr "" "розділ [%2d] «%s»: групи розділів передбачено лише Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð´Ð°Ñ‚Ð½Ð¸Ñ… до " "переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð½Ð¸Ñ… файлах\n" -#: src/elflint.c:2636 +#: src/elflint.c:2637 #, c-format msgid "section [%2d] '%s': cannot get symbol table: %s\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ таблицю Ñимволів: %s\n" -#: src/elflint.c:2641 +#: src/elflint.c:2642 #, c-format msgid "section [%2d] '%s': section reference in sh_link is no symbol table\n" msgstr "" "розділ [%2d] «%s»: поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° розділ у sh_link не має таблиці Ñимволів\n" -#: src/elflint.c:2647 +#: src/elflint.c:2648 #, c-format msgid "section [%2d] '%s': invalid symbol index in sh_info\n" msgstr "розділ [%2d] «%s»: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу у sh_info\n" -#: src/elflint.c:2652 +#: src/elflint.c:2653 #, c-format msgid "section [%2d] '%s': sh_flags not zero\n" msgstr "розділ [%2d] «%s»: sh_flags не Ñ” нульовим\n" -#: src/elflint.c:2659 +#: src/elflint.c:2660 #, c-format msgid "section [%2d] '%s': cannot get symbol for signature\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ñимвол Ð´Ð»Ñ Ð¿Ñ–Ð´Ð¿Ð¸Ñу\n" -#: src/elflint.c:2663 +#: src/elflint.c:2664 #, c-format msgid "section [%2d] '%s': cannot get symbol name for signature\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ назву Ñимволу Ð´Ð»Ñ Ð¿Ñ–Ð´Ð¿Ð¸Ñу\n" -#: src/elflint.c:2668 +#: src/elflint.c:2669 #, c-format msgid "section [%2d] '%s': signature symbol cannot be empty string\n" msgstr "розділ [%2d] «%s»: Ñимвол підпиÑу не може бути порожнім Ñ€Ñдком\n" -#: src/elflint.c:2674 +#: src/elflint.c:2675 #, c-format msgid "section [%2d] '%s': sh_flags not set correctly\n" msgstr "розділ [%2d] «%s»: Ð´Ð»Ñ sh_flags вÑтановлено помилкове значеннÑ\n" -#: src/elflint.c:2680 +#: src/elflint.c:2681 #, c-format msgid "section [%2d] '%s': cannot get data: %s\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані: %s\n" -#: src/elflint.c:2689 +#: src/elflint.c:2690 #, c-format msgid "section [%2d] '%s': section size not multiple of sizeof(Elf32_Word)\n" msgstr "розділ [%2d] «%s»: розмір розділу не Ñ” кратним до sizeof(Elf32_Word)\n" -#: src/elflint.c:2695 +#: src/elflint.c:2696 #, c-format msgid "section [%2d] '%s': section group without flags word\n" msgstr "розділ [%2d] «%s»: група розділів без Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ word прапорців\n" -#: src/elflint.c:2703 +#: src/elflint.c:2704 #, c-format msgid "section [%2d] '%s': section group without member\n" msgstr "розділ [%2d] «%s»: група розділів без елементів\n" -#: src/elflint.c:2707 +#: src/elflint.c:2708 #, c-format msgid "section [%2d] '%s': section group with only one member\n" msgstr "розділ [%2d] «%s»: група розділів, що міÑтить лише один елемент\n" -#: src/elflint.c:2718 +#: src/elflint.c:2719 #, c-format msgid "section [%2d] '%s': unknown section group flags\n" msgstr "розділ [%2d] «%s»: невідомі прапорці групи розділів\n" -#: src/elflint.c:2730 +#: src/elflint.c:2731 #, c-format msgid "section [%2d] '%s': section index %zu out of range\n" msgstr "розділ [%2d] «%s»: Ñ–Ð½Ð´ÐµÐºÑ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %zu поза межами діапазону\n" -#: src/elflint.c:2739 +#: src/elflint.c:2740 #, c-format msgid "section [%2d] '%s': cannot get section header for element %zu: %s\n" msgstr "" "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ заголовок розділу Ð´Ð»Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ð° %zu: " "%s\n" -#: src/elflint.c:2746 +#: src/elflint.c:2747 #, c-format msgid "section [%2d] '%s': section group contains another group [%2d] '%s'\n" msgstr "розділ [%2d] «%s»: група розділів міÑтить іншу групу [%2d] «%s»\n" -#: src/elflint.c:2752 +#: src/elflint.c:2753 #, c-format msgid "" "section [%2d] '%s': element %zu references section [%2d] '%s' without " @@ -2866,12 +2883,12 @@ msgstr "" "розділ [%2d] «%s»: елемент %zu поÑилаєтьÑÑ Ð½Ð° розділ [%2d] «%s» без " "вÑтановленого Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ SHF_GROUP\n" -#: src/elflint.c:2759 +#: src/elflint.c:2760 #, c-format msgid "section [%2d] '%s' is contained in more than one section group\n" msgstr "розділ [%2d] «%s» міÑтитьÑÑ Ñƒ більше ніж одній групі розділів\n" -#: src/elflint.c:2956 +#: src/elflint.c:2957 #, c-format msgid "" "section [%2d] '%s' refers in sh_link to section [%2d] '%s' which is no " @@ -2880,7 +2897,7 @@ msgstr "" "розділ [%2d] «%s» поÑилаєтьÑÑ Ñƒ sh_link на розділ [%2d] «%s», Ñкий не має " "динамічної таблиці Ñимволів\n" -#: src/elflint.c:2968 +#: src/elflint.c:2969 #, c-format msgid "" "section [%2d] '%s' has different number of entries than symbol table [%2d] " @@ -2889,28 +2906,28 @@ msgstr "" "кількіÑÑ‚ÑŒ запиÑів у розділі [%2d] «%s» відрізнÑєтьÑÑ Ð²Ñ–Ð´ кількоÑÑ‚Ñ– у таблиці " "Ñимволів [%2d] «%s»\n" -#: src/elflint.c:2984 +#: src/elflint.c:2985 #, c-format msgid "section [%2d] '%s': symbol %d: cannot read version data\n" msgstr "розділ [%2d] «%s»: Ñимвол %d: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ дані щодо верÑÑ–Ñ—\n" -#: src/elflint.c:3000 +#: src/elflint.c:3001 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with global scope\n" msgstr "" "розділ [%2d] «%s»: Ñимвол %d: локальний Ñимвол у загальному контекÑÑ‚Ñ–\n" -#: src/elflint.c:3008 +#: src/elflint.c:3009 #, c-format msgid "section [%2d] '%s': symbol %d: local symbol with version\n" msgstr "розділ [%2d] «%s»: Ñимвол %d: локальний Ñимвол з верÑією\n" -#: src/elflint.c:3022 +#: src/elflint.c:3023 #, c-format msgid "section [%2d] '%s': symbol %d: invalid version index %d\n" msgstr "розділ [%2d] «%s»: Ñимвол %d: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ð²ÐµÑ€ÑÑ–Ñ— %d\n" -#: src/elflint.c:3027 +#: src/elflint.c:3028 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for defined version\n" @@ -2918,7 +2935,7 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %d: індекÑи верÑÑ–Ñ— %d призначено до визначеної " "верÑÑ–Ñ—\n" -#: src/elflint.c:3037 +#: src/elflint.c:3038 #, c-format msgid "" "section [%2d] '%s': symbol %d: version index %d is for requested version\n" @@ -2926,45 +2943,45 @@ msgstr "" "розділ [%2d] «%s»: Ñимвол %d: Ñ–Ð½Ð´ÐµÐºÑ Ð²ÐµÑ€ÑÑ–Ñ— %d призначено Ð´Ð»Ñ Ð²ÐµÑ€ÑÑ–Ñ—, на Ñку " "надійшов запит\n" -#: src/elflint.c:3090 +#: src/elflint.c:3091 #, c-format msgid "more than one version reference section present\n" msgstr "виÑвлено більше за один розділ поÑилань на верÑÑ–Ñ—\n" -#: src/elflint.c:3098 src/elflint.c:3245 +#: src/elflint.c:3099 src/elflint.c:3246 #, c-format msgid "section [%2d] '%s': sh_link does not link to string table\n" msgstr "розділ [%2d] «%s»: sh_link не поÑилаєтьÑÑ Ð½Ð° таблицю Ñ€Ñдків\n" -#: src/elflint.c:3123 src/elflint.c:3299 +#: src/elflint.c:3124 src/elflint.c:3300 #, c-format msgid "section [%2d] '%s': entry %d has wrong version %d\n" msgstr "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d має помилкову верÑÑ–ÑŽ %d\n" -#: src/elflint.c:3130 src/elflint.c:3306 +#: src/elflint.c:3131 src/elflint.c:3307 #, c-format msgid "section [%2d] '%s': entry %d has wrong offset of auxiliary data\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d міÑтить помилкове Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñƒ допоміжних даних\n" -#: src/elflint.c:3140 +#: src/elflint.c:3141 #, c-format msgid "section [%2d] '%s': entry %d has invalid file reference\n" msgstr "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d міÑтить некоректне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° файл\n" -#: src/elflint.c:3148 +#: src/elflint.c:3149 #, c-format msgid "section [%2d] '%s': entry %d references unknown dependency\n" msgstr "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d поÑилаєтьÑÑ Ð½Ð° невідому залежніÑÑ‚ÑŒ\n" -#: src/elflint.c:3160 +#: src/elflint.c:3161 #, c-format msgid "section [%2d] '%s': auxiliary entry %d of entry %d has unknown flag\n" msgstr "" "розділ [%2d] «%s»: допоміжний Ð·Ð°Ð¿Ð¸Ñ %d запиÑу %d позначено невідомим " "прапорцем\n" -#: src/elflint.c:3168 +#: src/elflint.c:3169 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has invalid name " @@ -2973,7 +2990,7 @@ msgstr "" "розділ [%2d] «%s»: допоміжний Ð·Ð°Ð¿Ð¸Ñ %d запиÑу %d міÑтить некоректне " "поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° назву\n" -#: src/elflint.c:3177 +#: src/elflint.c:3178 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong hash value: " @@ -2982,7 +2999,7 @@ msgstr "" "розділ [%2d] «%s»: допоміжний Ð·Ð°Ð¿Ð¸Ñ %d запиÑу %d має помилкове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ " "хешу: %#x, мало бути %#x\n" -#: src/elflint.c:3186 +#: src/elflint.c:3187 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has duplicate version " @@ -2991,7 +3008,7 @@ msgstr "" "розділ [%2d] «%s»: допоміжний Ð·Ð°Ð¿Ð¸Ñ %d запиÑу %d міÑтить дублікати назви " "верÑÑ–Ñ— «%s»\n" -#: src/elflint.c:3197 +#: src/elflint.c:3198 #, c-format msgid "" "section [%2d] '%s': auxiliary entry %d of entry %d has wrong next field\n" @@ -2999,13 +3016,13 @@ msgstr "" "розділ [%2d] «%s»: допоміжний Ð·Ð°Ð¿Ð¸Ñ %d запиÑу %d має помилкове наÑтупне " "поле\n" -#: src/elflint.c:3214 src/elflint.c:3390 +#: src/elflint.c:3215 src/elflint.c:3391 #, c-format msgid "section [%2d] '%s': entry %d has invalid offset to next entry\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d має некоректне Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ наÑтупного запиÑу\n" -#: src/elflint.c:3222 src/elflint.c:3398 +#: src/elflint.c:3223 src/elflint.c:3399 #, c-format msgid "" "section [%2d] '%s': entry %d has zero offset to next entry, but sh_info says " @@ -3014,44 +3031,44 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d має нульове Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ наÑтупного запиÑу, але " "за sh_info можна зрозуміти, що запиÑів більше\n" -#: src/elflint.c:3237 +#: src/elflint.c:3238 #, c-format msgid "more than one version definition section present\n" msgstr "виÑвлено більше за один розділ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²ÐµÑ€Ñій\n" -#: src/elflint.c:3284 +#: src/elflint.c:3285 #, c-format msgid "section [%2d] '%s': more than one BASE definition\n" msgstr "розділ [%2d] «%s»: повторне Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ BASE\n" -#: src/elflint.c:3288 +#: src/elflint.c:3289 #, c-format msgid "section [%2d] '%s': BASE definition must have index VER_NDX_GLOBAL\n" msgstr "" "розділ [%2d] «%s»: Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ BASE повинно мати Ñ–Ð½Ð´ÐµÐºÑ VER_NDX_GLOBAL\n" -#: src/elflint.c:3294 +#: src/elflint.c:3295 #, c-format msgid "section [%2d] '%s': entry %d has unknown flag\n" msgstr "розділ [%2d] «%s»: невідомий прапорець запиÑу %d\n" -#: src/elflint.c:3321 +#: src/elflint.c:3322 #, c-format msgid "section [%2d] '%s': entry %d has invalid name reference\n" msgstr "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d міÑтить некоректне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° назву\n" -#: src/elflint.c:3328 +#: src/elflint.c:3329 #, c-format msgid "section [%2d] '%s': entry %d has wrong hash value: %#x, expected %#x\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d має помилкове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ…ÐµÑˆÑƒ: %#x, мало бути %#x\n" -#: src/elflint.c:3336 +#: src/elflint.c:3337 #, c-format msgid "section [%2d] '%s': entry %d has duplicate version name '%s'\n" msgstr "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d міÑтить дублікати назви верÑÑ–Ñ— «%s»\n" -#: src/elflint.c:3356 +#: src/elflint.c:3357 #, c-format msgid "" "section [%2d] '%s': entry %d has invalid name reference in auxiliary data\n" @@ -3059,53 +3076,53 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð°Ð¿Ð¸Ñ %d міÑтить некоректне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° назву у " "допоміжних даних\n" -#: src/elflint.c:3373 +#: src/elflint.c:3374 #, c-format msgid "section [%2d] '%s': entry %d has wrong next field in auxiliary data\n" msgstr "" "розділ [%2d] «%s»: у допоміжних даних запиÑу %d міÑтитьÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¾Ð²Ðµ поле " "наÑтупного запиÑу\n" -#: src/elflint.c:3406 +#: src/elflint.c:3407 #, c-format msgid "section [%2d] '%s': no BASE definition\n" msgstr "розділ [%2d] «%s»: немає Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ BASE\n" -#: src/elflint.c:3422 +#: src/elflint.c:3423 #, c-format msgid "section [%2d] '%s': unknown parent version '%s'\n" msgstr "розділ [%2d] «%s»: невідома оÑновна верÑÑ–Ñ Â«%s»\n" -#: src/elflint.c:3447 +#: src/elflint.c:3448 #, c-format msgid "section [%2d] '%s': empty object attributes section\n" msgstr "розділ [%2d] «%s»: порожній розділ атрибутів об’єкта\n" -#: src/elflint.c:3463 +#: src/elflint.c:3464 #, c-format msgid "section [%2d] '%s': unrecognized attribute format\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ формат атрибутів\n" -#: src/elflint.c:3474 +#: src/elflint.c:3475 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute section\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: поле нульового розміру у розділі атрибутів\n" -#: src/elflint.c:3483 +#: src/elflint.c:3484 #, c-format msgid "section [%2d] '%s': offset %zu: invalid length in attribute section\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: некоректна довжина у розділі атрибутів\n" -#: src/elflint.c:3495 +#: src/elflint.c:3496 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated vendor name string\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: незавершений Ñ€Ñдок назви поÑтачальника\n" -#: src/elflint.c:3512 +#: src/elflint.c:3513 #, c-format msgid "" "section [%2d] '%s': offset %zu: endless ULEB128 in attribute subsection tag\n" @@ -3113,12 +3130,12 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: незавершене поле ULEB128 у тезі підрозділу " "атрибутів\n" -#: src/elflint.c:3521 +#: src/elflint.c:3522 #, c-format msgid "section [%2d] '%s': offset %zu: truncated attribute section\n" msgstr "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: обрізаний розділ атрибутів\n" -#: src/elflint.c:3530 +#: src/elflint.c:3531 #, c-format msgid "" "section [%2d] '%s': offset %zu: zero length field in attribute subsection\n" @@ -3126,7 +3143,7 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: поле нульового розміру у підрозділі " "атрибутів\n" -#: src/elflint.c:3545 +#: src/elflint.c:3546 #, c-format msgid "" "section [%2d] '%s': offset %zu: invalid length in attribute subsection\n" @@ -3134,7 +3151,7 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: некоректна довжина у підрозділі атрибутів\n" #. Tag_File -#: src/elflint.c:3556 +#: src/elflint.c:3557 #, c-format msgid "" "section [%2d] '%s': offset %zu: attribute subsection has unexpected tag %u\n" @@ -3142,35 +3159,35 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: підрозділ атрибутів міÑтить неочікуваний " "теґ %u\n" -#: src/elflint.c:3574 +#: src/elflint.c:3578 #, c-format msgid "section [%2d] '%s': offset %zu: endless ULEB128 in attribute tag\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: незавершене поле ULEB128 у тезі атрибуту\n" -#: src/elflint.c:3585 +#: src/elflint.c:3589 #, c-format msgid "section [%2d] '%s': offset %zu: unterminated string in attribute\n" msgstr "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: незавершений Ñ€Ñдок у атрибуті\n" -#: src/elflint.c:3598 +#: src/elflint.c:3602 #, c-format msgid "section [%2d] '%s': offset %zu: unrecognized attribute tag %u\n" msgstr "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: незавершений теґ атрибуту %u\n" -#: src/elflint.c:3602 +#: src/elflint.c:3606 #, c-format msgid "" "section [%2d] '%s': offset %zu: unrecognized %s attribute value %<PRIu64>\n" msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: невідоме Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %s атрибуту %<PRIu64>\n" -#: src/elflint.c:3612 +#: src/elflint.c:3616 #, c-format msgid "section [%2d] '%s': offset %zu: vendor '%s' unknown\n" msgstr "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: невідомий поÑтачальник «%s»\n" -#: src/elflint.c:3618 +#: src/elflint.c:3622 #, c-format msgid "" "section [%2d] '%s': offset %zu: extra bytes after last attribute section\n" @@ -3178,47 +3195,47 @@ msgstr "" "розділ [%2d] «%s»: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %zu: зайві байти піÑÐ»Ñ Ð¾Ñтаннього розділу " "атрибутів\n" -#: src/elflint.c:3715 +#: src/elflint.c:3719 #, c-format msgid "cannot get section header of zeroth section\n" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ заголовок нульового розділу\n" -#: src/elflint.c:3719 +#: src/elflint.c:3723 #, c-format msgid "zeroth section has nonzero name\n" msgstr "нульовий розділ має ненульову назву\n" -#: src/elflint.c:3721 +#: src/elflint.c:3725 #, c-format msgid "zeroth section has nonzero type\n" msgstr "нульовий розділ має ненульовий тип\n" -#: src/elflint.c:3723 +#: src/elflint.c:3727 #, c-format msgid "zeroth section has nonzero flags\n" msgstr "нульовий розділ має ненульові прапорці\n" -#: src/elflint.c:3725 +#: src/elflint.c:3729 #, c-format msgid "zeroth section has nonzero address\n" msgstr "нульовий розділ має ненульову адреÑу\n" -#: src/elflint.c:3727 +#: src/elflint.c:3731 #, c-format msgid "zeroth section has nonzero offset\n" msgstr "нульовий розділ має ненульове зміщеннÑ\n" -#: src/elflint.c:3729 +#: src/elflint.c:3733 #, c-format msgid "zeroth section has nonzero align value\n" msgstr "нульовий розділ має ненульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ\n" -#: src/elflint.c:3731 +#: src/elflint.c:3735 #, c-format msgid "zeroth section has nonzero entry size value\n" msgstr "нульовий розділ має ненульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ запиÑу\n" -#: src/elflint.c:3734 +#: src/elflint.c:3738 #, c-format msgid "" "zeroth section has nonzero size value while ELF header has nonzero shnum " @@ -3227,7 +3244,7 @@ msgstr "" "нульовий розділ має ненульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ, хоча заголовок ELF ман " "ненульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ shnum\n" -#: src/elflint.c:3738 +#: src/elflint.c:3742 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " @@ -3236,7 +3253,7 @@ msgstr "" "нульовий розділ має ненульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ, хоча у заголовку ELF " "немає Ñигналу Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñƒ shstrndx\n" -#: src/elflint.c:3742 +#: src/elflint.c:3746 #, c-format msgid "" "zeroth section has nonzero link value while ELF header does not signal " @@ -3245,28 +3262,28 @@ msgstr "" "нульовий розділ має ненульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ, хоча у заголовку ELF " "немає Ñигналу Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñƒ phnum\n" -#: src/elflint.c:3760 +#: src/elflint.c:3764 #, c-format msgid "cannot get section header for section [%2zu] '%s': %s\n" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ заголовок розділу [%2zu] «%s»: %s\n" -#: src/elflint.c:3769 +#: src/elflint.c:3773 #, c-format msgid "section [%2zu]: invalid name\n" msgstr "розділ [%2zu]: некоректна назва\n" -#: src/elflint.c:3796 +#: src/elflint.c:3800 #, c-format msgid "section [%2d] '%s' has wrong type: expected %s, is %s\n" msgstr "" "розділ [%2d] «%s» належить до помилкового типу: мав бути %s, маємо %s\n" -#: src/elflint.c:3813 +#: src/elflint.c:3817 #, c-format msgid "section [%2zu] '%s' has wrong flags: expected %s, is %s\n" msgstr "розділ [%2zu] «%s» має помилкові прапорці: мало бути %s, маємо %s\n" -#: src/elflint.c:3831 +#: src/elflint.c:3835 #, c-format msgid "" "section [%2zu] '%s' has wrong flags: expected %s and possibly %s, is %s\n" @@ -3274,12 +3291,12 @@ msgstr "" "розділ [%2zu] «%s» має помилкові прапорці: мало бути %s, можливо, %s, але " "маємо %s\n" -#: src/elflint.c:3848 +#: src/elflint.c:3852 #, c-format msgid "section [%2zu] '%s' present in object file\n" msgstr "у об’єктному файлі виÑвлено розділ [%2zu] «%s»\n" -#: src/elflint.c:3854 src/elflint.c:3886 +#: src/elflint.c:3858 src/elflint.c:3890 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag set but there is no loadable segment\n" @@ -3287,7 +3304,7 @@ msgstr "" "у розділ [%2zu] «%s» вÑтановлено прапорець SHF_ALLOC, але немає придатного " "до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñегмента\n" -#: src/elflint.c:3859 src/elflint.c:3891 +#: src/elflint.c:3863 src/elflint.c:3895 #, c-format msgid "" "section [%2zu] '%s' has SHF_ALLOC flag not set but there are loadable " @@ -3296,7 +3313,7 @@ msgstr "" "у розділі [%2zu] «%s» не вÑтановлено прапорець SHF_ALLOC, але Ñ” придатні до " "Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñегменти\n" -#: src/elflint.c:3867 +#: src/elflint.c:3871 #, c-format msgid "" "section [%2zu] '%s' is extension section index table in non-object file\n" @@ -3304,22 +3321,22 @@ msgstr "" "розділ [%2zu] «%s» Ñ” таблицею-покажчиком розділу розширень у файлі, Ñкий не " "Ñ” об’єктним\n" -#: src/elflint.c:3910 +#: src/elflint.c:3914 #, c-format msgid "section [%2zu] '%s': size not multiple of entry size\n" msgstr "розділ [%2zu] «%s»: розмір не Ñ” кратним до розміру запиÑу\n" -#: src/elflint.c:3915 +#: src/elflint.c:3919 #, c-format msgid "cannot get section header\n" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ заголовок розділу\n" -#: src/elflint.c:3925 +#: src/elflint.c:3929 #, c-format msgid "section [%2zu] '%s' has unsupported type %d\n" msgstr "розділ [%2zu] «%s» належить до непідтримуваного типу %d\n" -#: src/elflint.c:3945 +#: src/elflint.c:3949 #, c-format msgid "" "section [%2zu] '%s' contains invalid processor-specific flag(s) %#<PRIx64>\n" @@ -3327,74 +3344,74 @@ msgstr "" "розділ [%2zu] «%s» міÑтить некоректні Ñпецифічні Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑора прапорці " "%#<PRIx64>\n" -#: src/elflint.c:3955 +#: src/elflint.c:3959 #, c-format msgid "section [%2zu] '%s' contains unknown flag(s) %#<PRIx64>\n" msgstr "розділ [%2zu] «%s» міÑтить невідомі прапорці %#<PRIx64>\n" -#: src/elflint.c:3963 +#: src/elflint.c:3967 #, c-format msgid "section [%2zu] '%s': thread-local data sections address not zero\n" msgstr "" "розділ [%2zu] «%s»: адреÑа розділів локальних даних потоків не Ñ” нульовою\n" -#: src/elflint.c:3973 +#: src/elflint.c:3977 #, c-format msgid "section [%2zu] '%s': allocated section cannot be compressed\n" msgstr "" "розділ [%2zu] «%s»: розміщений у пам'ÑÑ‚Ñ– розділ не може бути ÑтиÑнений\n" -#: src/elflint.c:3978 +#: src/elflint.c:3982 #, c-format msgid "section [%2zu] '%s': nobits section cannot be compressed\n" msgstr "розділ [%2zu] «%s»: розділ nobits не може бути ÑтиÑнений\n" -#: src/elflint.c:3984 +#: src/elflint.c:3988 #, c-format msgid "" "section [%2zu] '%s': compressed section with no compression header: %s\n" msgstr "розділ [%2zu] «%s»: ÑтиÑнений розділ без заголовка ÑтиÑненнÑ: %s\n" -#: src/elflint.c:3990 +#: src/elflint.c:3994 #, c-format msgid "section [%2zu] '%s': invalid section reference in link value\n" msgstr "" "розділ [%2zu] «%s»: некоректне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° розділ у значенні компонуваннÑ\n" -#: src/elflint.c:3995 +#: src/elflint.c:3999 #, c-format msgid "section [%2zu] '%s': invalid section reference in info value\n" msgstr "" "розділ [%2zu] «%s»: некоректне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° розділ у значенні відомоÑтей\n" -#: src/elflint.c:4002 +#: src/elflint.c:4006 #, c-format msgid "section [%2zu] '%s': strings flag set without merge flag\n" msgstr "розділ [%2zu] «%s»: вÑтановлено прапорець strings без Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ merge\n" -#: src/elflint.c:4007 +#: src/elflint.c:4011 #, c-format msgid "section [%2zu] '%s': merge flag set but entry size is zero\n" msgstr "" "розділ [%2zu] «%s»: вÑтановлено прапорець merge, але розмір запиÑу Ñ” " "нульовим\n" -#: src/elflint.c:4026 +#: src/elflint.c:4030 #, c-format msgid "section [%2zu] '%s' has unexpected type %d for an executable section\n" msgstr "розділ [%2zu] «%s» має неочікуваний тип %d Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ð½ÑƒÐ²Ð°Ð½Ð¾Ð³Ð¾ розділу\n" -#: src/elflint.c:4035 +#: src/elflint.c:4039 #, c-format msgid "section [%2zu] '%s' must be of type NOBITS in debuginfo files\n" msgstr "розділ [%2zu] «%s» у файлах debuginfo має належати до типу NOBITS\n" -#: src/elflint.c:4042 +#: src/elflint.c:4046 #, c-format msgid "section [%2zu] '%s' is both executable and writable\n" msgstr "розділ [%2zu] «%s» Ñ” одночаÑно виконуваним Ñ– придатним до запиÑу\n" -#: src/elflint.c:4073 +#: src/elflint.c:4077 #, c-format msgid "" "section [%2zu] '%s' not fully contained in segment of program header entry " @@ -3403,7 +3420,7 @@ msgstr "" "розділ [%2zu] «%s» не повніÑÑ‚ÑŽ міÑтитьÑÑ Ñƒ Ñегменті запиÑу заголовка " "програми %d\n" -#: src/elflint.c:4083 +#: src/elflint.c:4087 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " @@ -3412,7 +3429,7 @@ msgstr "" "розділ [%2zu] «%s» належить до типу NOBITS, але його Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½ÑƒÑ”Ñ‚ÑŒÑÑ Ð· " "файла у Ñегментів запиÑу заголовка програми %d\n" -#: src/elflint.c:4109 +#: src/elflint.c:4113 #, c-format msgid "" "section [%2zu] '%s' has type NOBITS but is read from the file in segment of " @@ -3421,7 +3438,7 @@ msgstr "" "розділ [%2zu] «%s» належить до типу NOBITS, але його Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½ÑƒÑ”Ñ‚ÑŒÑÑ Ð· " "файла у Ñегментів запиÑу заголовка програми %d, а вміÑÑ‚ файла Ñ” ненульовим\n" -#: src/elflint.c:4120 +#: src/elflint.c:4124 #, c-format msgid "" "section [%2zu] '%s' has not type NOBITS but is not read from the file in " @@ -3430,19 +3447,19 @@ msgstr "" "розділ [%2zu] «%s» не належить до типу NOBITS, але його Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð½Ðµ " "виконуєтьÑÑ Ð· файла у Ñегментів запиÑу заголовка програми %d\n" -#: src/elflint.c:4131 +#: src/elflint.c:4135 #, c-format msgid "section [%2zu] '%s' is executable in nonexecutable segment %d\n" msgstr "розділ [%2zu] «%s» Ñ” виконуваним у невиконуваному Ñегменті %d\n" -#: src/elflint.c:4141 +#: src/elflint.c:4145 #, c-format msgid "section [%2zu] '%s' is writable in unwritable segment %d\n" msgstr "" "розділ [%2zu] «%s» Ñ” придатним до запиÑу у непридатному до запиÑу Ñегменті " "%d\n" -#: src/elflint.c:4151 +#: src/elflint.c:4155 #, c-format msgid "" "section [%2zu] '%s': alloc flag set but section not in any loaded segment\n" @@ -3450,7 +3467,7 @@ msgstr "" "розділ [%2zu] «%s»: вÑтановлено прапорець alloc, але розділ не перебуває у " "жодному завантаженому Ñегменті\n" -#: src/elflint.c:4157 +#: src/elflint.c:4161 #, c-format msgid "" "section [%2zu] '%s': ELF header says this is the section header string table " @@ -3459,7 +3476,7 @@ msgstr "" "розділ [%2zu] «%s»: заголовок ELF повідомлÑÑ” про те, що це Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñ€Ñдків " "заголовка розділу, але Ñ†Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð½Ðµ належить до типу SHT_TYPE\n" -#: src/elflint.c:4165 +#: src/elflint.c:4169 #, c-format msgid "" "section [%2zu] '%s': relocatable files cannot have dynamic symbol tables\n" @@ -3467,17 +3484,17 @@ msgstr "" "розділ [%2zu] «%s»: придатні до переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð¸ не можуть міÑтити " "динамічних таблиць Ñимволів\n" -#: src/elflint.c:4216 +#: src/elflint.c:4220 #, c-format msgid "more than one version symbol table present\n" msgstr "виÑвлено більше за одну таблицю Ñимволів верÑій\n" -#: src/elflint.c:4239 +#: src/elflint.c:4243 #, c-format msgid "INTERP program header entry but no .interp section\n" msgstr "Ñ–Ñнує Ð·Ð°Ð¿Ð¸Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми INTERP, але не розділ .interp\n" -#: src/elflint.c:4250 +#: src/elflint.c:4254 #, c-format msgid "" "loadable segment [%u] is executable but contains no executable sections\n" @@ -3485,14 +3502,14 @@ msgstr "" "придатний до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñегмент [%u] Ñ” виконуваним, але не міÑтить " "виконуваних розділів\n" -#: src/elflint.c:4256 +#: src/elflint.c:4260 #, c-format msgid "loadable segment [%u] is writable but contains no writable sections\n" msgstr "" "придатний до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð» [%u] Ñ” придатним до запиÑу, але не міÑтить " "придатних до запиÑу розділів\n" -#: src/elflint.c:4267 +#: src/elflint.c:4271 #, c-format msgid "" "no .gnu.versym section present but .gnu.versym_d or .gnu.versym_r section " @@ -3501,24 +3518,24 @@ msgstr "" "немає розділу .gnu.versym, хоча Ñ–Ñнує розділ .gnu.versym_d або .gnu." "versym_r\n" -#: src/elflint.c:4280 +#: src/elflint.c:4284 #, c-format msgid "duplicate version index %d\n" msgstr "дублікат індекÑу верÑÑ–Ñ— %d\n" -#: src/elflint.c:4294 +#: src/elflint.c:4298 #, c-format msgid ".gnu.versym section present without .gnu.versym_d or .gnu.versym_r\n" msgstr "" "Ñ–Ñнує розділ .gnu.versym, але немає розділу .gnu.versym_d або .gnu.versym_r\n" -#: src/elflint.c:4343 +#: src/elflint.c:4347 #, c-format msgid "phdr[%d]: unknown core file note type %<PRIu32> at offset %<PRIu64>\n" msgstr "" "phdr[%d]: невідомий тип нотатки файла core %<PRIu32> за зміщеннÑм %<PRIu64>\n" -#: src/elflint.c:4347 +#: src/elflint.c:4351 #, c-format msgid "" "section [%2d] '%s': unknown core file note type %<PRIu32> at offset %zu\n" @@ -3526,7 +3543,7 @@ msgstr "" "розділ [%2d] «%s»: невідомий тип нотатки файла core %<PRIu32> за зміщеннÑм " "%zu\n" -#: src/elflint.c:4403 +#: src/elflint.c:4407 #, c-format msgid "" "phdr[%d]: unknown object file note type %<PRIu32> with owner name '%s' at " @@ -3535,7 +3552,7 @@ msgstr "" "phdr[%d]: невідомий тип нотатки у файлі об'єктів, %<PRIu32>, із іменем " "влаÑника «%s» за зміщеннÑм %zu\n" -#: src/elflint.c:4408 +#: src/elflint.c:4412 #, c-format msgid "" "section [%2d] '%s': unknown object file note type %<PRIu32> with owner name " @@ -3544,39 +3561,39 @@ msgstr "" "розділ [%2d] «%s»: невідомий тип нотатки у файлі об'єктів, %<PRIu32>, із " "іменем влаÑника «%s» за зміщеннÑм %zu\n" -#: src/elflint.c:4427 +#: src/elflint.c:4431 #, c-format msgid "phdr[%d]: no note entries defined for the type of file\n" msgstr "phdr[%d]: Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ типу файлів не визначено запиÑів нотаток\n" -#: src/elflint.c:4447 +#: src/elflint.c:4451 #, c-format msgid "phdr[%d]: cannot get content of note section: %s\n" msgstr "phdr[%d]: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ розділу нотаток: %s\n" -#: src/elflint.c:4450 +#: src/elflint.c:4454 #, c-format msgid "phdr[%d]: extra %<PRIu64> bytes after last note\n" msgstr "phdr[%d]: зайві %<PRIu64> байтів піÑÐ»Ñ Ð¾Ñтаннього запиÑу нотатки\n" -#: src/elflint.c:4471 +#: src/elflint.c:4475 #, c-format msgid "section [%2d] '%s': no note entries defined for the type of file\n" msgstr "" "розділ [%2d] «%s»: Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ типу файлів не визначено запиÑів нотаток\n" -#: src/elflint.c:4478 +#: src/elflint.c:4482 #, c-format msgid "section [%2d] '%s': cannot get content of note section\n" msgstr "розділ [%2d] «%s»: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ розділу нотаток\n" -#: src/elflint.c:4481 +#: src/elflint.c:4485 #, c-format msgid "section [%2d] '%s': extra %<PRIu64> bytes after last note\n" msgstr "" "розділ [%2d] «%s»: додаткові %<PRIu64> байтів піÑÐ»Ñ Ð¾Ñтанньої нотатки\n" -#: src/elflint.c:4499 +#: src/elflint.c:4503 #, c-format msgid "" "only executables, shared objects, and core files can have program headers\n" @@ -3584,66 +3601,66 @@ msgstr "" "заголовки програм можуть бути лише у виконуваних файлів, об’єктних файлів " "Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ файлів core\n" -#: src/elflint.c:4514 +#: src/elflint.c:4518 #, c-format msgid "cannot get program header entry %d: %s\n" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми %d: %s\n" -#: src/elflint.c:4524 +#: src/elflint.c:4528 #, c-format msgid "program header entry %d: unknown program header entry type %#<PRIx64>\n" msgstr "" "Ð·Ð°Ð¿Ð¸Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми %d: невідомий тип запиÑу заголовка програми " "%#<PRIx64>\n" -#: src/elflint.c:4535 +#: src/elflint.c:4539 #, c-format msgid "more than one INTERP entry in program header\n" msgstr "більше за один Ð·Ð°Ð¿Ð¸Ñ INTERP у заголовку програми\n" -#: src/elflint.c:4543 +#: src/elflint.c:4547 #, c-format msgid "more than one TLS entry in program header\n" msgstr "більше за один Ð·Ð°Ð¿Ð¸Ñ TLS у заголовку програми\n" -#: src/elflint.c:4550 +#: src/elflint.c:4554 #, c-format msgid "static executable cannot have dynamic sections\n" msgstr "у Ñтатичному виконуваному файлі не може бути динамічних розділів\n" -#: src/elflint.c:4564 +#: src/elflint.c:4568 #, c-format msgid "dynamic section reference in program header has wrong offset\n" msgstr "" "поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° динамічний розділ у заголовку програми має помилкове зміщеннÑ\n" -#: src/elflint.c:4567 +#: src/elflint.c:4571 #, c-format msgid "dynamic section size mismatch in program and section header\n" msgstr "" "розміри динамічного розділу у заголовку програми та у заголовку розділу не " "збігаютьÑÑ\n" -#: src/elflint.c:4577 +#: src/elflint.c:4581 #, c-format msgid "more than one GNU_RELRO entry in program header\n" msgstr "більше за один Ð·Ð°Ð¿Ð¸Ñ GNU_RELRO у заголовку програми\n" -#: src/elflint.c:4598 +#: src/elflint.c:4602 #, c-format msgid "loadable segment GNU_RELRO applies to is not writable\n" msgstr "" "придатний до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñегмент, до Ñкого звертаєтьÑÑ GNU_RELRO, " "непридатний до запиÑу\n" -#: src/elflint.c:4609 +#: src/elflint.c:4613 #, c-format msgid "loadable segment [%u] flags do not match GNU_RELRO [%u] flags\n" msgstr "" "прапорці придатного до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñегмента [%u] не відповідають прапорцÑм " "GNU_RELRO [%u]\n" -#: src/elflint.c:4616 +#: src/elflint.c:4620 #, c-format msgid "" "GNU_RELRO [%u] flags are not a subset of the loadable segment [%u] flags\n" @@ -3651,76 +3668,76 @@ msgstr "" "прапорці GNU_RELRO [%u] не Ñ” підмножиною прапорців завантажуваного Ñегмента " "[%u]\n" -#: src/elflint.c:4625 src/elflint.c:4648 +#: src/elflint.c:4629 src/elflint.c:4652 #, c-format msgid "%s segment not contained in a loaded segment\n" msgstr "Ñегмент %s не міÑтитьÑÑ Ñƒ завантаженому Ñегменті\n" -#: src/elflint.c:4654 +#: src/elflint.c:4658 #, c-format msgid "program header offset in ELF header and PHDR entry do not match" msgstr "Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми у заголовку ELF Ñ– Ð·Ð°Ð¿Ð¸Ñ PHDR не збігаютьÑÑ" -#: src/elflint.c:4681 +#: src/elflint.c:4685 #, c-format msgid "call frame search table reference in program header has wrong offset\n" msgstr "" "поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° таблицю вікон викликів у заголовку програми має помилкове " "зміщеннÑ\n" -#: src/elflint.c:4684 +#: src/elflint.c:4688 #, c-format msgid "call frame search table size mismatch in program and section header\n" msgstr "" "розміри таблиці пошуку вікон виклику у заголовку програми та у заголовку " "розділу не збігаютьÑÑ\n" -#: src/elflint.c:4697 +#: src/elflint.c:4701 #, c-format msgid "PT_GNU_EH_FRAME present but no .eh_frame_hdr section\n" msgstr "Ñ–Ñнує PT_GNU_EH_FRAME, хоча немає розділу .eh_frame_hdr\n" -#: src/elflint.c:4705 +#: src/elflint.c:4709 #, c-format msgid "call frame search table must be allocated\n" msgstr "таблицю пошуку вікон викликів має бути розміщено у пам’ÑÑ‚Ñ–\n" -#: src/elflint.c:4708 +#: src/elflint.c:4712 #, c-format msgid "section [%2zu] '%s' must be allocated\n" msgstr "розділ [%2zu] «%s» має бути розміщено у пам’ÑÑ‚Ñ–\n" -#: src/elflint.c:4712 +#: src/elflint.c:4716 #, c-format msgid "call frame search table must not be writable\n" msgstr "Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ вікон викликів не повинна бути придатною до запиÑу\n" -#: src/elflint.c:4715 +#: src/elflint.c:4719 #, c-format msgid "section [%2zu] '%s' must not be writable\n" msgstr "розділ [%2zu] «%s» не повинен бути придатним до запиÑу\n" -#: src/elflint.c:4720 +#: src/elflint.c:4724 #, c-format msgid "call frame search table must not be executable\n" msgstr "Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ вікон викликів не повинна бути придатною до виконаннÑ\n" -#: src/elflint.c:4723 +#: src/elflint.c:4727 #, c-format msgid "section [%2zu] '%s' must not be executable\n" msgstr "розділ [%2zu] «%s» не повинен бути придатним до виконаннÑ\n" -#: src/elflint.c:4737 +#: src/elflint.c:4741 #, c-format msgid "program header entry %d: file size greater than memory size\n" msgstr "Ð·Ð°Ð¿Ð¸Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми %d: розмір файла перевищує об’єм пам’ÑÑ‚Ñ–\n" -#: src/elflint.c:4744 +#: src/elflint.c:4748 #, c-format msgid "program header entry %d: alignment not a power of 2\n" msgstr "Ð·Ð°Ð¿Ð¸Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми %d: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ Ð½Ðµ Ñ” Ñтепенем 2\n" -#: src/elflint.c:4747 +#: src/elflint.c:4751 #, c-format msgid "" "program header entry %d: file offset and virtual address not module of " @@ -3729,7 +3746,7 @@ msgstr "" "Ð·Ð°Ð¿Ð¸Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° програми %d: Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñƒ файлі Ñ– віртуальна адреÑа не " "ÑпіввідноÑÑÑ‚ÑŒÑÑ Ð· вирівнюваннÑм\n" -#: src/elflint.c:4760 +#: src/elflint.c:4764 #, c-format msgid "" "executable/DSO with .eh_frame_hdr section does not have a PT_GNU_EH_FRAME " @@ -3738,17 +3755,17 @@ msgstr "" "виконуваний модуль/DSO з розділом .eh_frame_hdr не міÑтить запиÑу заголовка " "програми PT_GNU_EH_FRAME" -#: src/elflint.c:4794 +#: src/elflint.c:4798 #, c-format msgid "cannot read ELF header: %s\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ заголовок ELF: %s\n" -#: src/elflint.c:4806 +#: src/elflint.c:4810 #, fuzzy, c-format msgid "cannot create backend for ELF file\n" msgstr "не вдалоÑÑ Ñтворити файл" -#: src/elflint.c:4827 +#: src/elflint.c:4831 #, c-format msgid "text relocation flag set but not needed\n" msgstr "" @@ -4009,11 +4026,11 @@ msgid "cannot create search tree" msgstr "не вдалоÑÑ Ñтворити дерево пошуку" #: src/nm.c:742 src/nm.c:1234 src/objdump.c:778 src/readelf.c:663 -#: src/readelf.c:1471 src/readelf.c:1620 src/readelf.c:1847 src/readelf.c:2084 -#: src/readelf.c:2273 src/readelf.c:2451 src/readelf.c:2526 src/readelf.c:2791 -#: src/readelf.c:2866 src/readelf.c:2952 src/readelf.c:3547 src/readelf.c:3595 -#: src/readelf.c:3664 src/readelf.c:11581 src/readelf.c:12771 -#: src/readelf.c:12981 src/readelf.c:13049 src/size.c:396 src/size.c:467 +#: src/readelf.c:1484 src/readelf.c:1633 src/readelf.c:1860 src/readelf.c:2097 +#: src/readelf.c:2286 src/readelf.c:2466 src/readelf.c:2544 src/readelf.c:2809 +#: src/readelf.c:2884 src/readelf.c:2970 src/readelf.c:3565 src/readelf.c:3613 +#: src/readelf.c:3682 src/readelf.c:11620 src/readelf.c:12803 +#: src/readelf.c:13013 src/readelf.c:13081 src/size.c:396 src/size.c:467 #: src/strip.c:1093 #, c-format msgid "cannot get section header string table index" @@ -4132,11 +4149,11 @@ msgstr "Ðе вказано дії.\n" msgid "while close `%s'" msgstr "під Ñ‡Ð°Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Â«%s»" -#: src/objdump.c:362 src/readelf.c:2179 src/readelf.c:2370 +#: src/objdump.c:362 src/readelf.c:2192 src/readelf.c:2383 msgid "INVALID SYMBOL" msgstr "ÐЕКОРЕКТÐИЙ СИМВОЛ" -#: src/objdump.c:377 src/readelf.c:2213 src/readelf.c:2406 +#: src/objdump.c:377 src/readelf.c:2226 src/readelf.c:2419 msgid "INVALID SECTION" msgstr "ÐЕКОРЕКТÐИЙ РОЗДІЛ" @@ -4359,12 +4376,12 @@ msgstr "не вдалоÑÑ Ñтворити деÑкриптор Elf: %s" msgid "cannot determine number of sections: %s" msgstr "не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ кількіÑÑ‚ÑŒ розділів: %s" -#: src/readelf.c:672 src/readelf.c:1287 src/readelf.c:1495 +#: src/readelf.c:672 src/readelf.c:1300 src/readelf.c:1508 #, c-format msgid "cannot get section: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ розділ: %s" -#: src/readelf.c:681 src/readelf.c:1294 src/readelf.c:1502 src/readelf.c:13001 +#: src/readelf.c:681 src/readelf.c:1307 src/readelf.c:1515 src/readelf.c:13033 #: src/unstrip.c:396 src/unstrip.c:427 src/unstrip.c:490 src/unstrip.c:610 #: src/unstrip.c:631 src/unstrip.c:671 src/unstrip.c:887 src/unstrip.c:1222 #: src/unstrip.c:1349 src/unstrip.c:1373 src/unstrip.c:1429 src/unstrip.c:1470 @@ -4378,8 +4395,8 @@ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ заголовок розділу: msgid "cannot get section name" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ назву розділу" -#: src/readelf.c:698 src/readelf.c:6797 src/readelf.c:10854 src/readelf.c:10956 -#: src/readelf.c:11134 +#: src/readelf.c:698 src/readelf.c:6833 src/readelf.c:10887 src/readelf.c:10989 +#: src/readelf.c:11173 #, c-format msgid "cannot get %s content: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані %s: %s" @@ -4449,38 +4466,44 @@ msgstr "не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ кількіÑÑ‚ÑŒ заголов msgid "cannot read ELF: %s" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ ELF: %s" -#: src/readelf.c:1078 +#: src/readelf.c:1050 +#, fuzzy +#| msgid "cannot get section: %s" +msgid "cannot find section" +msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ розділ: %s" + +#: src/readelf.c:1087 msgid "NONE (None)" msgstr "NONE (Ðемає)" -#: src/readelf.c:1079 +#: src/readelf.c:1088 msgid "REL (Relocatable file)" msgstr "REL (Придатний до переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»)" -#: src/readelf.c:1080 +#: src/readelf.c:1089 msgid "EXEC (Executable file)" msgstr "EXEC (Виконуваний файл)" -#: src/readelf.c:1081 +#: src/readelf.c:1090 msgid "DYN (Shared object file)" msgstr "DYN (Файл об’єктів Ñпільного викориÑтаннÑ)" -#: src/readelf.c:1082 +#: src/readelf.c:1091 msgid "CORE (Core file)" msgstr "CORE (Файл Ñдра)" -#: src/readelf.c:1087 +#: src/readelf.c:1096 #, c-format msgid "OS Specific: (%x)\n" msgstr "ОС-Ñпецифічне: (%x)\n" #. && e_type <= ET_HIPROC always true -#: src/readelf.c:1089 +#: src/readelf.c:1098 #, c-format msgid "Processor Specific: (%x)\n" msgstr "Специфічне Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑора: (%x)\n" -#: src/readelf.c:1099 +#: src/readelf.c:1108 msgid "" "ELF Header:\n" " Magic: " @@ -4488,7 +4511,7 @@ msgstr "" "Заголовок ELF:\n" " Magic: " -#: src/readelf.c:1103 +#: src/readelf.c:1112 #, c-format msgid "" "\n" @@ -4497,123 +4520,123 @@ msgstr "" "\n" " КлаÑ: %s\n" -#: src/readelf.c:1108 +#: src/readelf.c:1117 #, c-format msgid " Data: %s\n" msgstr " Дані: %s\n" -#: src/readelf.c:1114 +#: src/readelf.c:1123 #, c-format msgid " Ident Version: %hhd %s\n" msgstr " ВерÑÑ–Ñ Ident: %hhd %s\n" -#: src/readelf.c:1116 src/readelf.c:1138 +#: src/readelf.c:1125 src/readelf.c:1147 msgid "(current)" msgstr "(поточний)" -#: src/readelf.c:1120 +#: src/readelf.c:1129 #, c-format msgid " OS/ABI: %s\n" msgstr " ОС/ABI: %s\n" -#: src/readelf.c:1123 +#: src/readelf.c:1132 #, c-format msgid " ABI Version: %hhd\n" msgstr " ВерÑÑ–Ñ ABI: %hhd\n" -#: src/readelf.c:1126 +#: src/readelf.c:1135 msgid " Type: " msgstr " Тип: " -#: src/readelf.c:1131 +#: src/readelf.c:1140 #, c-format msgid " Machine: %s\n" msgstr " Ðрхітектура: %s\n" -#: src/readelf.c:1133 +#: src/readelf.c:1142 #, c-format msgid " Machine: <unknown>: 0x%x\n" msgstr " Ðрхітектура: <невідома>: 0x%x\n" -#: src/readelf.c:1136 +#: src/readelf.c:1145 #, c-format msgid " Version: %d %s\n" msgstr " ВерÑÑ–Ñ: %d %s\n" -#: src/readelf.c:1140 +#: src/readelf.c:1149 #, c-format msgid " Entry point address: %#<PRIx64>\n" msgstr " ÐдреÑа вхідної точки: %#<PRIx64>\n" -#: src/readelf.c:1143 +#: src/readelf.c:1152 #, c-format msgid " Start of program headers: %<PRId64> %s\n" msgstr " Початок заголовків програм: %<PRId64> %s\n" -#: src/readelf.c:1144 src/readelf.c:1147 +#: src/readelf.c:1153 src/readelf.c:1156 msgid "(bytes into file)" msgstr "(байтів у файл)" -#: src/readelf.c:1146 +#: src/readelf.c:1155 #, c-format msgid " Start of section headers: %<PRId64> %s\n" msgstr " Початок заголовків розділів: %<PRId64> %s\n" -#: src/readelf.c:1149 +#: src/readelf.c:1158 #, c-format msgid " Flags: %s\n" msgstr " Прапорці: %s\n" -#: src/readelf.c:1152 +#: src/readelf.c:1161 #, c-format msgid " Size of this header: %<PRId16> %s\n" msgstr " Розмір цього заголовка: %<PRId16> %s\n" -#: src/readelf.c:1153 src/readelf.c:1156 src/readelf.c:1173 +#: src/readelf.c:1162 src/readelf.c:1165 src/readelf.c:1182 msgid "(bytes)" msgstr "(байтів)" -#: src/readelf.c:1155 +#: src/readelf.c:1164 #, c-format msgid " Size of program header entries: %<PRId16> %s\n" msgstr " Розмір запиÑів заголовка програми: %<PRId16> %s\n" -#: src/readelf.c:1158 +#: src/readelf.c:1167 #, c-format msgid " Number of program headers entries: %<PRId16>" msgstr " КількіÑÑ‚ÑŒ запиÑів заголовків програми: %<PRId16>" -#: src/readelf.c:1165 +#: src/readelf.c:1174 #, c-format msgid " (%<PRIu32> in [0].sh_info)" msgstr " (%<PRIu32> у [0].sh_info)" -#: src/readelf.c:1168 src/readelf.c:1185 src/readelf.c:1199 +#: src/readelf.c:1177 src/readelf.c:1194 src/readelf.c:1208 msgid " ([0] not available)" msgstr " ([0] недоÑтупний)" -#: src/readelf.c:1172 +#: src/readelf.c:1181 #, c-format msgid " Size of section header entries: %<PRId16> %s\n" msgstr " Розмір запиÑів заголовків розділів: %<PRId16> %s\n" -#: src/readelf.c:1175 +#: src/readelf.c:1184 #, c-format msgid " Number of section headers entries: %<PRId16>" msgstr " КількіÑÑ‚ÑŒ запиÑів заголовків розділів: %<PRId16>" -#: src/readelf.c:1182 +#: src/readelf.c:1191 #, c-format msgid " (%<PRIu32> in [0].sh_size)" msgstr " (%<PRIu32> у [0].sh_size)" #. We managed to get the zeroth section. -#: src/readelf.c:1195 +#: src/readelf.c:1204 #, c-format msgid " (%<PRIu32> in [0].sh_link)" msgstr " (%<PRIu32> у [0].sh_link)" -#: src/readelf.c:1203 +#: src/readelf.c:1212 #, c-format msgid "" " Section header string table index: XINDEX%s\n" @@ -4622,7 +4645,7 @@ msgstr "" " Ð†Ð½Ð´ÐµÐºÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° розділу у таблиці Ñ€Ñдків: XINDEX%s\n" "\n" -#: src/readelf.c:1207 +#: src/readelf.c:1216 #, c-format msgid "" " Section header string table index: %<PRId16>\n" @@ -4631,12 +4654,12 @@ msgstr "" " Ð†Ð½Ð´ÐµÐºÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° розділу у таблиці Ñ€Ñдків: %<PRId16>\n" "\n" -#: src/readelf.c:1253 src/readelf.c:1461 +#: src/readelf.c:1266 src/readelf.c:1474 #, c-format msgid "cannot get number of sections: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ кількіÑÑ‚ÑŒ розділів: %s" -#: src/readelf.c:1256 +#: src/readelf.c:1269 #, c-format msgid "" "There are %zd section headers, starting at offset %#<PRIx64>:\n" @@ -4645,16 +4668,16 @@ msgstr "" "ВиÑвлено %zd заголовків розділів, Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÑƒ — %#<PRIx64>:\n" "\n" -#: src/readelf.c:1264 +#: src/readelf.c:1277 #, c-format msgid "cannot get section header string table index: %s" msgstr "не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ Ñ–Ð½Ð´ÐµÐºÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° розділу у таблиці Ñ€Ñдків: %s" -#: src/readelf.c:1267 +#: src/readelf.c:1280 msgid "Section Headers:" msgstr "Заголовки розділів:" -#: src/readelf.c:1270 +#: src/readelf.c:1283 msgid "" "[Nr] Name Type Addr Off Size ES Flags Lk " "Inf Al" @@ -4662,7 +4685,7 @@ msgstr "" "[â„– ] Ðазва Тип Ðдр Змі Розмір ES Прап Lk " "Інф Al" -#: src/readelf.c:1272 +#: src/readelf.c:1285 msgid "" "[Nr] Name Type Addr Off Size ES " "Flags Lk Inf Al" @@ -4670,35 +4693,35 @@ msgstr "" "[â„– ] Ðазва Тип Ðдр Змі Розмір ES " "Прап Lk Інф Al" -#: src/readelf.c:1277 +#: src/readelf.c:1290 msgid " [Compression Size Al]" msgstr " [СтиÑÐºÐ°Ð½Ð½Ñ Ð Ð¾Ð·Ð¼Ñ–Ñ€ Ðл]" -#: src/readelf.c:1279 +#: src/readelf.c:1292 msgid " [Compression Size Al]" msgstr " [СтиÑÐºÐ°Ð½Ð½Ñ Ð Ð¾Ð·Ð¼Ñ–Ñ€ Ðл]" -#: src/readelf.c:1357 +#: src/readelf.c:1370 #, c-format msgid "bad compression header for section %zd: %s" msgstr "помилковий заголовок ÑтиÑÐ½ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %zd: %s" -#: src/readelf.c:1368 +#: src/readelf.c:1381 #, c-format msgid "bad gnu compressed size for section %zd: %s" msgstr "помилкове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÑтиÑненого розміру gnu Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %zd: %s" -#: src/readelf.c:1386 +#: src/readelf.c:1399 msgid "Program Headers:" msgstr "Заголовки програми:" -#: src/readelf.c:1388 +#: src/readelf.c:1401 msgid "" " Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align" msgstr "" " Тип Зміщен ВіртÐдр ФізÐдр РозмФайл РозмПам Пра Вирів" -#: src/readelf.c:1391 +#: src/readelf.c:1404 msgid "" " Type Offset VirtAddr PhysAddr FileSiz " "MemSiz Flg Align" @@ -4706,12 +4729,12 @@ msgstr "" " Тип Зміщен ВіртÐдр ФізÐдр " "РозмФайлРозмПам Пра Вирів" -#: src/readelf.c:1448 +#: src/readelf.c:1461 #, c-format msgid "\t[Requesting program interpreter: %s]\n" msgstr "\t[Запит щодо інтерпретатора програми: %s]\n" -#: src/readelf.c:1473 +#: src/readelf.c:1486 msgid "" "\n" " Section to Segment mapping:\n" @@ -4721,12 +4744,12 @@ msgstr "" " Ð’Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñ–Ð² на Ñегмент:\n" " Розділи Ñегмента..." -#: src/readelf.c:1484 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 +#: src/readelf.c:1497 src/unstrip.c:2114 src/unstrip.c:2156 src/unstrip.c:2163 #, c-format msgid "cannot get program header: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ заголовок програми: %s" -#: src/readelf.c:1628 +#: src/readelf.c:1641 #, c-format msgid "" "\n" @@ -4744,7 +4767,7 @@ msgstr[2] "" "\n" "Група розділів COMDAT [%2zu] «%s» з підпиÑом «%s» міÑтить %zu запиÑів:\n" -#: src/readelf.c:1633 +#: src/readelf.c:1646 #, c-format msgid "" "\n" @@ -4762,31 +4785,32 @@ msgstr[2] "" "\n" "Група розділів [%2zu] «%s» з підпиÑом «%s» міÑтить %zu запиÑів:\n" -#: src/readelf.c:1641 +#: src/readelf.c:1654 msgid "<INVALID SYMBOL>" msgstr "<ÐЕКОРЕКТÐИЙ СИМВОЛ>" -#: src/readelf.c:1655 +#: src/readelf.c:1668 msgid "<INVALID SECTION>" msgstr "<ÐЕКОРЕКТÐИЙ РОЗДІЛ>" -#: src/readelf.c:1678 src/readelf.c:2461 src/readelf.c:3563 src/readelf.c:12873 -#: src/readelf.c:12880 src/readelf.c:12924 src/readelf.c:12931 +#: src/readelf.c:1691 src/readelf.c:2476 src/readelf.c:3581 src/readelf.c:3881 +#: src/readelf.c:12905 src/readelf.c:12912 src/readelf.c:12956 +#: src/readelf.c:12963 msgid "Couldn't uncompress section" msgstr "Ðе вдалоÑÑ Ñ€Ð¾Ð·Ð¿Ð°ÐºÑƒÐ²Ð°Ñ‚Ð¸ розділ" -#: src/readelf.c:1682 src/readelf.c:2466 src/readelf.c:3567 +#: src/readelf.c:1695 src/readelf.c:2481 src/readelf.c:3585 #, c-format msgid "cannot get section [%zd] header: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ заголовок розділу [%zd]: %s" -#: src/readelf.c:1851 src/readelf.c:2532 src/readelf.c:2797 src/readelf.c:2872 -#: src/readelf.c:3175 src/readelf.c:3249 src/readelf.c:5570 +#: src/readelf.c:1864 src/readelf.c:2550 src/readelf.c:2815 src/readelf.c:2890 +#: src/readelf.c:3193 src/readelf.c:3267 src/readelf.c:5619 #, c-format msgid "invalid sh_link value in section %zu" msgstr "некоректне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ sh_link у розділі %zu" -#: src/readelf.c:1854 +#: src/readelf.c:1867 #, c-format msgid "" "\n" @@ -4809,7 +4833,7 @@ msgstr[2] "" "Динамічний Ñегмент міÑтить %lu запиÑів:\n" " Ðдр: %#0*<PRIx64> ЗміщеннÑ: %#08<PRIx64> ПоÑ. на розділ: [%2u] '%s'\n" -#: src/readelf.c:1867 +#: src/readelf.c:1880 #, fuzzy, c-format #| msgid "" #| "\n" @@ -4840,42 +4864,42 @@ msgstr[2] "" "Динамічний Ñегмент міÑтить %lu запиÑів:\n" " Ðдр: %#0*<PRIx64> ЗміщеннÑ: %#08<PRIx64> ПоÑ. на розділ: [%2u] '%s'\n" -#: src/readelf.c:1877 +#: src/readelf.c:1890 msgid " Type Value\n" msgstr " Тип ЗначеннÑ\n" -#: src/readelf.c:1886 +#: src/readelf.c:1899 #, fuzzy #| msgid "cannot get string section data: %s" msgid "cannot get string table by using dynamic segment" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу Ñ€Ñдків: %s" -#: src/readelf.c:1925 +#: src/readelf.c:1938 #, c-format msgid "Shared library: [%s]\n" msgstr "Спільна бібліотека: [%s]\n" -#: src/readelf.c:1929 +#: src/readelf.c:1942 #, c-format msgid "Library soname: [%s]\n" msgstr "Ðазва so бібліотеки: [%s]\n" -#: src/readelf.c:1933 +#: src/readelf.c:1946 #, c-format msgid "Library rpath: [%s]\n" msgstr "Rpath бібліотеки: [%s]\n" -#: src/readelf.c:1937 +#: src/readelf.c:1950 #, c-format msgid "Library runpath: [%s]\n" msgstr "Runpath бібліотеки: [%s]\n" -#: src/readelf.c:1956 +#: src/readelf.c:1969 #, c-format msgid "%<PRId64> (bytes)\n" msgstr "%<PRId64> (байт)\n" -#: src/readelf.c:2070 src/readelf.c:2259 +#: src/readelf.c:2083 src/readelf.c:2272 #, c-format msgid "" "\n" @@ -4884,7 +4908,7 @@ msgstr "" "\n" "Ðекоректна Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів за зміщеннÑм %#0<PRIx64>\n" -#: src/readelf.c:2087 src/readelf.c:2276 +#: src/readelf.c:2100 src/readelf.c:2289 #, c-format msgid "" "\n" @@ -4913,7 +4937,7 @@ msgstr[2] "" #. The .rela.dyn section does not refer to a specific section but #. instead of section index zero. Do not try to print a section #. name. -#: src/readelf.c:2102 src/readelf.c:2291 +#: src/readelf.c:2115 src/readelf.c:2304 #, c-format msgid "" "\n" @@ -4931,30 +4955,30 @@ msgstr[2] "" "\n" "Розділ переÑÑƒÐ²Ð°Ð½Ð½Ñ [%2u] «%s» за зміщеннÑм %#0<PRIx64> міÑтить %d запиÑів:\n" -#: src/readelf.c:2112 +#: src/readelf.c:2125 msgid " Offset Type Value Name\n" msgstr " Ð—Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¢Ð¸Ð¿ Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ðазва\n" -#: src/readelf.c:2114 +#: src/readelf.c:2127 msgid " Offset Type Value Name\n" msgstr " Ð—Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¢Ð¸Ð¿ Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ðазва\n" -#: src/readelf.c:2167 src/readelf.c:2178 src/readelf.c:2191 src/readelf.c:2212 -#: src/readelf.c:2224 src/readelf.c:2357 src/readelf.c:2369 src/readelf.c:2383 -#: src/readelf.c:2405 src/readelf.c:2418 +#: src/readelf.c:2180 src/readelf.c:2191 src/readelf.c:2204 src/readelf.c:2225 +#: src/readelf.c:2237 src/readelf.c:2370 src/readelf.c:2382 src/readelf.c:2396 +#: src/readelf.c:2418 src/readelf.c:2431 msgid "<INVALID RELOC>" msgstr "<ÐЕКОРЕКТÐЕ ПЕРЕМІЩЕÐÐЯ>" -#: src/readelf.c:2301 +#: src/readelf.c:2314 msgid " Offset Type Value Addend Name\n" msgstr " Ð—Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¢Ð¸Ð¿ Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ðазва додатка\n" -#: src/readelf.c:2303 +#: src/readelf.c:2316 msgid " Offset Type Value Addend Name\n" msgstr "" " Ð—Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð¢Ð¸Ð¿ Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ðазва додатка\n" -#: src/readelf.c:2540 +#: src/readelf.c:2558 #, c-format msgid "" "\n" @@ -4972,7 +4996,7 @@ msgstr[2] "" "\n" "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів [%2u] «%s» міÑтить %u запиÑів:\n" -#: src/readelf.c:2545 +#: src/readelf.c:2563 #, c-format msgid " %lu local symbol String table: [%2u] '%s'\n" msgid_plural " %lu local symbols String table: [%2u] '%s'\n" @@ -4980,33 +5004,33 @@ msgstr[0] " %lu лок. Ñимвол Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів: [%2u] « msgstr[1] " %lu лок. Ñимволи Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів: [%2u] «%s»\n" msgstr[2] " %lu лок. Ñимволів Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів: [%2u] «%s»\n" -#: src/readelf.c:2553 +#: src/readelf.c:2571 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr " â„–â„– Знач. Роз. Тип Зв’Ñз Вид. Інд Ðазва\n" -#: src/readelf.c:2555 +#: src/readelf.c:2573 msgid " Num: Value Size Type Bind Vis Ndx Name\n" msgstr " â„–â„– Знач. Роз. Тип Зв’Ñз Вид. Інд Ðазва\n" -#: src/readelf.c:2575 +#: src/readelf.c:2593 #, c-format msgid "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" msgstr "%5u: %0*<PRIx64> %6<PRId64> %-7s %-6s %-9s %6s %s" -#: src/readelf.c:2668 +#: src/readelf.c:2686 #, c-format msgid "bad dynamic symbol" msgstr "помилковий динамічний Ñимвол" -#: src/readelf.c:2753 +#: src/readelf.c:2771 msgid "none" msgstr "немає" -#: src/readelf.c:2770 +#: src/readelf.c:2788 msgid "| <unknown>" msgstr "| <невідомо>" -#: src/readelf.c:2800 +#: src/readelf.c:2818 #, c-format msgid "" "\n" @@ -5029,17 +5053,17 @@ msgstr[2] "" "Розділ потреби у верÑÑ–ÑÑ… [%2u] «%s», що міÑтить %d запиÑів:\n" " Ðдр.: %#0*<PRIx64> Зміщ.: %#08<PRIx64> ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° розділ: [%2u] «%s»\n" -#: src/readelf.c:2821 +#: src/readelf.c:2839 #, c-format msgid " %#06x: Version: %hu File: %s Cnt: %hu\n" msgstr " %#06x: ВерÑÑ–Ñ: %hu Файл: %s Кть: %hu\n" -#: src/readelf.c:2834 +#: src/readelf.c:2852 #, c-format msgid " %#06x: Name: %s Flags: %s Version: %hu\n" msgstr " %#06x: Ðазва: %s Прап: %s ВерÑÑ–Ñ: %hu\n" -#: src/readelf.c:2876 +#: src/readelf.c:2894 #, c-format msgid "" "\n" @@ -5062,18 +5086,18 @@ msgstr[2] "" "Розділ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²ÐµÑ€ÑÑ–Ñ— [%2u] «%s», що міÑтить %d запиÑів:\n" " Ðдр.: %#0*<PRIx64> Зміщ.: %#08<PRIx64> ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° розділ: [%2u] «%s»\n" -#: src/readelf.c:2904 +#: src/readelf.c:2922 #, c-format msgid " %#06x: Version: %hd Flags: %s Index: %hd Cnt: %hd Name: %s\n" msgstr " %#06x: ВерÑÑ–Ñ: %hd Прап.: %s ІндекÑ: %hd К-Ñ‚ÑŒ: %hd Ðазва: %s\n" -#: src/readelf.c:2919 +#: src/readelf.c:2937 #, c-format msgid " %#06x: Parent %d: %s\n" msgstr " %#06x: батьківÑький %d: %s\n" #. Print the header. -#: src/readelf.c:3179 +#: src/readelf.c:3197 #, c-format msgid "" "\n" @@ -5096,15 +5120,15 @@ msgstr[2] "" "Розділ Ñимволів верÑій [%2u] «%s», що міÑтить %d запиÑів:\n" " Ðдр.: %#0*<PRIx64> Зміщ.: %#08<PRIx64> ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° розділ: [%2u] «%s»" -#: src/readelf.c:3207 +#: src/readelf.c:3225 msgid " 0 *local* " msgstr " 0 *локальний* " -#: src/readelf.c:3212 +#: src/readelf.c:3230 msgid " 1 *global* " msgstr " 1 *загальний* " -#: src/readelf.c:3254 +#: src/readelf.c:3272 #, c-format msgid "" "\n" @@ -5132,22 +5156,22 @@ msgstr[2] "" "блоками):\n" " Ðдр.: %#0*<PRIx64> Зміщ.: %#08<PRIx64> ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° розділ: [%2u] «%s»\n" -#: src/readelf.c:3276 +#: src/readelf.c:3294 #, no-c-format msgid " Length Number % of total Coverage\n" msgstr " Довжина Ðомер % від загал. ПокриттÑ\n" -#: src/readelf.c:3278 +#: src/readelf.c:3296 #, c-format msgid " 0 %6<PRIu32> %5.1f%%\n" msgstr " 0 %6<PRIu32> %5.1f%%\n" -#: src/readelf.c:3285 +#: src/readelf.c:3303 #, c-format msgid "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" msgstr "%7d %6<PRIu32> %5.1f%% %5.1f%%\n" -#: src/readelf.c:3298 +#: src/readelf.c:3316 #, c-format msgid "" " Average number of tests: successful lookup: %f\n" @@ -5156,37 +5180,37 @@ msgstr "" " Ð¡ÐµÑ€ÐµÐ´Ð½Ñ ÐºÑ–Ð»ÑŒÐºÑ–ÑÑ‚ÑŒ теÑтів: уÑпішний пошук: %f\n" "\t\t\t неуÑпішний пошук: %f\n" -#: src/readelf.c:3316 src/readelf.c:3380 src/readelf.c:3446 +#: src/readelf.c:3334 src/readelf.c:3398 src/readelf.c:3464 #, c-format msgid "cannot get data for section %d: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %d: %s" -#: src/readelf.c:3324 +#: src/readelf.c:3342 #, c-format msgid "invalid data in sysv.hash section %d" msgstr "некоректні дані у розділі sysv.hash %d" -#: src/readelf.c:3353 +#: src/readelf.c:3371 #, c-format msgid "invalid chain in sysv.hash section %d" msgstr "некоректний ланцюжок у розділі sysv.hash %d" -#: src/readelf.c:3388 +#: src/readelf.c:3406 #, c-format msgid "invalid data in sysv.hash64 section %d" msgstr "некоректні дані у розділі sysv.hash64 %d" -#: src/readelf.c:3419 +#: src/readelf.c:3437 #, c-format msgid "invalid chain in sysv.hash64 section %d" msgstr "некоректний ланцюжок у розділі sysv.hash64 %d" -#: src/readelf.c:3455 +#: src/readelf.c:3473 #, c-format msgid "invalid data in gnu.hash section %d" msgstr "некоректні дані у розділі gnu.hash %d" -#: src/readelf.c:3521 +#: src/readelf.c:3539 #, c-format msgid "" " Symbol Bias: %u\n" @@ -5196,7 +5220,7 @@ msgstr "" " Розмір бітової маÑки: %zu байтів %<PRIuFAST32>%% вÑтановлених бітів зÑув " "2-го хешу: %u\n" -#: src/readelf.c:3606 +#: src/readelf.c:3624 #, c-format msgid "" "\n" @@ -5217,7 +5241,7 @@ msgstr[2] "" "Розділ ÑпиÑку бібліотек [%2zu] «%s» за зміщеннÑм %#0<PRIx64> міÑтить %d " "запиÑів:\n" -#: src/readelf.c:3620 +#: src/readelf.c:3638 msgid "" " Library Time Stamp Checksum Version " "Flags" @@ -5225,7 +5249,7 @@ msgstr "" " Бібліотека ЧаÑовий штамп ВерÑÑ–Ñ Ñуми " "Прапорці" -#: src/readelf.c:3680 +#: src/readelf.c:3698 #, c-format msgid "" "\n" @@ -5236,101 +5260,107 @@ msgstr "" "Розділ атрибутів об’єктів [%2zu] «%s» з %<PRIu64> байтів за зміщеннÑм " "%#0<PRIx64>:\n" -#: src/readelf.c:3697 +#: src/readelf.c:3715 msgid " Owner Size\n" msgstr " ВлаÑник Розмір\n" -#: src/readelf.c:3721 +#: src/readelf.c:3739 #, c-format msgid " %-13s %4<PRIu32>\n" msgstr " %-13s %4<PRIu32>\n" #. Unknown subsection, print and skip. -#: src/readelf.c:3760 +#: src/readelf.c:3778 #, c-format msgid " %-4u %12<PRIu32>\n" msgstr " %-4u %12<PRIu32>\n" #. Tag_File -#: src/readelf.c:3765 +#: src/readelf.c:3783 #, c-format msgid " File: %11<PRIu32>\n" msgstr " Файл: %11<PRIu32>\n" -#: src/readelf.c:3814 +#: src/readelf.c:3833 #, c-format msgid " %s: %<PRId64>, %s\n" msgstr " %s: %<PRId64>, %s\n" -#: src/readelf.c:3817 +#: src/readelf.c:3836 #, c-format msgid " %s: %<PRId64>\n" msgstr " %s: %<PRId64>\n" -#: src/readelf.c:3820 +#: src/readelf.c:3839 #, c-format msgid " %s: %s\n" msgstr " %s: %s\n" -#: src/readelf.c:3830 +#: src/readelf.c:3849 #, c-format msgid " %u: %<PRId64>\n" msgstr " %u: %<PRId64>\n" -#: src/readelf.c:3833 +#: src/readelf.c:3852 #, c-format msgid " %u: %s\n" msgstr " %u: %s\n" -#: src/readelf.c:3903 +#: src/readelf.c:3890 +#, fuzzy +#| msgid "couldn't get shdr for group section: %s" +msgid "Couldn't get data from section" +msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ shdr Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ груп: %s" + +#: src/readelf.c:3955 msgid "sprintf failure" msgstr "помилка sprintf" -#: src/readelf.c:4387 +#: src/readelf.c:4439 msgid "empty block" msgstr "порожній блок" -#: src/readelf.c:4390 +#: src/readelf.c:4442 #, c-format msgid "%zu byte block:" msgstr "%zu-байтовий блок:" -#: src/readelf.c:4868 +#: src/readelf.c:4920 #, c-format msgid "%*s[%2<PRIuMAX>] %s <TRUNCATED>\n" msgstr "%*s[%2<PRIuMAX>] %s <ОБРІЗÐÐО>\n" -#: src/readelf.c:5028 +#: src/readelf.c:5080 #, c-format msgid "%s %#<PRIx64> used with different address sizes" msgstr "%s %#<PRIx64> викориÑтано з різними розмірами адреÑ" -#: src/readelf.c:5035 +#: src/readelf.c:5087 #, c-format msgid "%s %#<PRIx64> used with different offset sizes" msgstr "%s %#<PRIx64> викориÑтано з різними розмірами зміщень" -#: src/readelf.c:5042 +#: src/readelf.c:5094 #, c-format msgid "%s %#<PRIx64> used with different base addresses" msgstr "%s %#<PRIx64> викориÑтано з різними базовими адреÑами" -#: src/readelf.c:5049 +#: src/readelf.c:5101 #, c-format msgid "%s %#<PRIx64> used with different attribute %s and %s" msgstr "%s %#<PRIx64> викориÑтано з різними атрибутами, %s Ñ– %s" -#: src/readelf.c:5149 +#: src/readelf.c:5201 #, c-format msgid " [%6tx] <UNUSED GARBAGE IN REST OF SECTION>\n" msgstr " [%6tx] <ÐЕВИКОРИСТОВУВÐÐІ ДÐÐІ У РЕШТІ РОЗДІЛУ>\n" -#: src/readelf.c:5157 +#: src/readelf.c:5209 #, c-format msgid " [%6tx] <UNUSED GARBAGE> ... %<PRIu64> bytes ...\n" msgstr " [%6tx] <ÐЕВИКОРИСТОВУВÐÐІ ДÐÐІ> ... %<PRIu64> байтів ...\n" -#: src/readelf.c:5260 +#: src/readelf.c:5315 #, c-format msgid "" "\n" @@ -5341,7 +5371,7 @@ msgstr "" "Розділ DWARF [%2zu] «%s» зі зміщеннÑм %#<PRIx64>:\n" " [ Код]\n" -#: src/readelf.c:5268 +#: src/readelf.c:5323 #, c-format msgid "" "\n" @@ -5350,20 +5380,20 @@ msgstr "" "\n" "Розділ Ñкорочень за зміщеннÑм %<PRIu64>:\n" -#: src/readelf.c:5281 +#: src/readelf.c:5336 #, c-format msgid " *** error while reading abbreviation: %s\n" msgstr " *** помилка під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ ÑкороченнÑ: %s\n" -#: src/readelf.c:5297 +#: src/readelf.c:5352 #, c-format msgid " [%5u] offset: %<PRId64>, children: %s, tag: %s\n" msgstr " [%5u] зміщеннÑ: %<PRId64>, дочірній: %s, мітка: %s\n" -#: src/readelf.c:5330 src/readelf.c:5639 src/readelf.c:5806 src/readelf.c:6191 -#: src/readelf.c:6807 src/readelf.c:8562 src/readelf.c:9308 src/readelf.c:9791 -#: src/readelf.c:10042 src/readelf.c:10208 src/readelf.c:10595 -#: src/readelf.c:10655 +#: src/readelf.c:5389 src/readelf.c:5682 src/readelf.c:5853 src/readelf.c:6224 +#: src/readelf.c:6850 src/readelf.c:8619 src/readelf.c:9361 src/readelf.c:9829 +#: src/readelf.c:10084 src/readelf.c:10246 src/readelf.c:10627 +#: src/readelf.c:10698 #, c-format msgid "" "\n" @@ -5372,54 +5402,49 @@ msgstr "" "\n" "Розділ DWARF [%2zu] «%s» зі зміщеннÑм %#<PRIx64>:\n" -#: src/readelf.c:5343 -#, c-format -msgid "cannot get .debug_addr section data: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу .debug_addr: %s" - -#: src/readelf.c:5443 src/readelf.c:5467 src/readelf.c:5851 src/readelf.c:9353 +#: src/readelf.c:5492 src/readelf.c:5516 src/readelf.c:5889 src/readelf.c:9397 #, c-format msgid " Length: %8<PRIu64>\n" msgstr " Довжина: %8<PRIu64>\n" -#: src/readelf.c:5445 src/readelf.c:5482 src/readelf.c:5864 src/readelf.c:9366 +#: src/readelf.c:5494 src/readelf.c:5531 src/readelf.c:5902 src/readelf.c:9410 #, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " верÑÑ–Ñ DWARF: %8<PRIu16>\n" -#: src/readelf.c:5446 src/readelf.c:5491 src/readelf.c:5873 src/readelf.c:9375 +#: src/readelf.c:5495 src/readelf.c:5540 src/readelf.c:5911 src/readelf.c:9419 #, c-format msgid " Address size: %8<PRIu64>\n" msgstr " Розмір адреÑи: %8<PRIu64>\n" -#: src/readelf.c:5448 src/readelf.c:5501 src/readelf.c:5883 src/readelf.c:9385 +#: src/readelf.c:5497 src/readelf.c:5550 src/readelf.c:5921 src/readelf.c:9429 #, c-format msgid " Segment size: %8<PRIu64>\n" msgstr "" " Розмір Ñегмента: %8<PRIu64>\n" "\n" -#: src/readelf.c:5486 src/readelf.c:5868 src/readelf.c:9370 src/readelf.c:10787 +#: src/readelf.c:5535 src/readelf.c:5906 src/readelf.c:9414 src/readelf.c:10820 #, c-format msgid "Unknown version" msgstr "Ðевідома верÑÑ–Ñ" -#: src/readelf.c:5496 src/readelf.c:5709 src/readelf.c:5878 src/readelf.c:9380 +#: src/readelf.c:5545 src/readelf.c:5752 src/readelf.c:5916 src/readelf.c:9424 #, c-format msgid "unsupported address size" msgstr "непідтримуваний розмір адреÑи" -#: src/readelf.c:5507 src/readelf.c:5720 src/readelf.c:5888 src/readelf.c:9390 +#: src/readelf.c:5556 src/readelf.c:5763 src/readelf.c:5926 src/readelf.c:9434 #, c-format msgid "unsupported segment size" msgstr "непідтримуваний розмір Ñегмента" -#: src/readelf.c:5560 src/readelf.c:5634 +#: src/readelf.c:5609 #, c-format msgid "cannot get .debug_aranges content: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані get .debug_aranges: %s" -#: src/readelf.c:5575 +#: src/readelf.c:5624 #, c-format msgid "" "\n" @@ -5437,12 +5462,12 @@ msgstr[2] "" "\n" "Розділ DWARF [%2zu] «%s» за зміщеннÑм %#<PRIx64> міÑтить %zu запиÑів:\n" -#: src/readelf.c:5606 +#: src/readelf.c:5655 #, c-format msgid " [%*zu] ???\n" msgstr " [%*zu] ???\n" -#: src/readelf.c:5608 +#: src/readelf.c:5657 #, c-format msgid "" " [%*zu] start: %0#*<PRIx64>, length: %5<PRIu64>, CU DIE offset: %6<PRId64>\n" @@ -5450,7 +5475,7 @@ msgstr "" " [%*zu] початок: %0#*<PRIx64>, довжина: %5<PRIu64>, Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ CU DIE: " "%6<PRId64>\n" -#: src/readelf.c:5652 src/readelf.c:8589 +#: src/readelf.c:5695 src/readelf.c:8638 #, c-format msgid "" "\n" @@ -5459,13 +5484,13 @@ msgstr "" "\n" "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð·Ð° зміщеннÑм %zu:\n" -#: src/readelf.c:5656 src/readelf.c:5832 src/readelf.c:6831 src/readelf.c:8600 -#: src/readelf.c:9334 +#: src/readelf.c:5699 src/readelf.c:5870 src/readelf.c:6874 src/readelf.c:8649 +#: src/readelf.c:9378 #, c-format msgid "invalid data in section [%zu] '%s'" msgstr "некоректні дані у розділі [%zu] «%s»" -#: src/readelf.c:5672 +#: src/readelf.c:5715 #, c-format msgid "" "\n" @@ -5474,27 +5499,27 @@ msgstr "" "\n" " Довжина: %6<PRIu64>\n" -#: src/readelf.c:5684 +#: src/readelf.c:5727 #, c-format msgid " DWARF version: %6<PRIuFAST16>\n" msgstr " верÑÑ–Ñ DWARF: %6<PRIuFAST16>\n" -#: src/readelf.c:5688 +#: src/readelf.c:5731 #, c-format msgid "unsupported aranges version" msgstr "непідтримувана верÑÑ–Ñ aranges" -#: src/readelf.c:5699 +#: src/readelf.c:5742 #, c-format msgid " CU offset: %6<PRIx64>\n" msgstr " Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ CU: %6<PRIx64>\n" -#: src/readelf.c:5705 +#: src/readelf.c:5748 #, c-format msgid " Address size: %6<PRIu64>\n" msgstr " Розмір адреÑи: %6<PRIu64>\n" -#: src/readelf.c:5716 +#: src/readelf.c:5759 #, c-format msgid "" " Segment size: %6<PRIu64>\n" @@ -5503,17 +5528,12 @@ msgstr "" " Розмір Ñегмента: %6<PRIu64>\n" "\n" -#: src/readelf.c:5771 +#: src/readelf.c:5814 #, c-format msgid " %zu padding bytes\n" msgstr " %zu байтів доповненнÑ\n" -#: src/readelf.c:5815 -#, c-format -msgid "cannot get .debug_rnglists content: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ .debug_rnglists: %s" - -#: src/readelf.c:5838 src/readelf.c:9340 +#: src/readelf.c:5876 src/readelf.c:9384 #, c-format msgid "" "Table at Offset 0x%<PRIx64>:\n" @@ -5522,42 +5542,42 @@ msgstr "" "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð·Ð° зміщеннÑм 0x%<PRIx64>:\n" "\n" -#: src/readelf.c:5893 src/readelf.c:9395 +#: src/readelf.c:5931 src/readelf.c:9439 #, c-format msgid " Offset entries: %8<PRIu64>\n" msgstr " ЗапиÑи зміщеннÑ: %8<PRIu64>\n" -#: src/readelf.c:5909 src/readelf.c:9411 +#: src/readelf.c:5947 src/readelf.c:9455 #, c-format msgid " Unknown CU base: " msgstr " Ðевідома оÑнова CU: " -#: src/readelf.c:5911 src/readelf.c:9413 +#: src/readelf.c:5949 src/readelf.c:9457 #, c-format msgid " CU [%6<PRIx64>] base: " msgstr " ОÑнова CU [%6<PRIx64>]: " -#: src/readelf.c:5917 src/readelf.c:9419 +#: src/readelf.c:5955 src/readelf.c:9463 #, c-format msgid " Not associated with a CU.\n" msgstr " Ðе пов'Ñзано із CU.\n" -#: src/readelf.c:5928 src/readelf.c:9430 +#: src/readelf.c:5966 src/readelf.c:9474 #, c-format msgid "too many offset entries for unit length" msgstr "забагато запиÑів зÑуву Ð´Ð»Ñ Ð´Ð¾Ð²Ð¶Ð¸Ð½Ð¸ модулÑ" -#: src/readelf.c:5932 src/readelf.c:9434 +#: src/readelf.c:5970 src/readelf.c:9478 #, c-format msgid " Offsets starting at 0x%<PRIx64>:\n" msgstr " ЗміщеннÑ, що починаютьÑÑ Ð· 0x%<PRIx64>:\n" -#: src/readelf.c:5984 +#: src/readelf.c:6022 #, c-format msgid "invalid range list data" msgstr "некоректні дані ÑпиÑку діапазонів" -#: src/readelf.c:6169 src/readelf.c:9769 +#: src/readelf.c:6207 src/readelf.c:9813 #, c-format msgid "" " %zu padding bytes\n" @@ -5566,12 +5586,7 @@ msgstr "" " %zu байтів доповненнÑ\n" "\n" -#: src/readelf.c:6186 -#, c-format -msgid "cannot get .debug_ranges content: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані .debug_ranges: %s" - -#: src/readelf.c:6222 src/readelf.c:9824 +#: src/readelf.c:6255 src/readelf.c:9862 #, c-format msgid "" "\n" @@ -5580,7 +5595,7 @@ msgstr "" "\n" " Ðевідома оÑнова CU: " -#: src/readelf.c:6224 src/readelf.c:9826 +#: src/readelf.c:6257 src/readelf.c:9864 #, c-format msgid "" "\n" @@ -5589,31 +5604,31 @@ msgstr "" "\n" " ОÑнова CU [%6<PRIx64>]: " -#: src/readelf.c:6233 src/readelf.c:9852 src/readelf.c:9878 +#: src/readelf.c:6266 src/readelf.c:9890 src/readelf.c:9916 #, c-format msgid " [%6tx] <INVALID DATA>\n" msgstr " [%6tx] <ÐЕКОРЕКТÐІ ДÐÐІ>\n" -#: src/readelf.c:6258 src/readelf.c:9962 +#: src/readelf.c:6291 src/readelf.c:10000 #, fuzzy msgid "base address" msgstr " вÑтановити адреÑу у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ " -#: src/readelf.c:6268 src/readelf.c:9972 +#: src/readelf.c:6301 src/readelf.c:10010 #, c-format msgid " [%6tx] empty list\n" msgstr " [%6tx] порожній ÑпиÑок\n" -#: src/readelf.c:6528 +#: src/readelf.c:6565 msgid " <INVALID DATA>\n" msgstr " <ÐЕКОРЕКТÐІ ДÐÐІ>\n" -#: src/readelf.c:6785 +#: src/readelf.c:6822 #, c-format msgid "cannot get ELF: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ ELF: %s" -#: src/readelf.c:6803 +#: src/readelf.c:6846 #, c-format msgid "" "\n" @@ -5622,7 +5637,7 @@ msgstr "" "\n" "Розділ відомоÑтей щодо вікна викликів [%2zu] «%s» за зміщеннÑм %#<PRIx64>:\n" -#: src/readelf.c:6853 +#: src/readelf.c:6896 #, c-format msgid "" "\n" @@ -5631,65 +5646,65 @@ msgstr "" "\n" " [%6tx] нульовий переривач\n" -#: src/readelf.c:6954 src/readelf.c:7108 +#: src/readelf.c:7000 src/readelf.c:7154 #, c-format msgid "invalid augmentation length" msgstr "некоректна довжина збільшеннÑ" -#: src/readelf.c:6969 +#: src/readelf.c:7015 msgid "FDE address encoding: " msgstr "ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð´Ñ€ÐµÑи FDE: " -#: src/readelf.c:6975 +#: src/readelf.c:7021 msgid "LSDA pointer encoding: " msgstr "ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð²ÐºÐ°Ð·Ñ–Ð²Ð½Ð¸ÐºÐ° LSDA: " -#: src/readelf.c:7085 +#: src/readelf.c:7131 #, c-format msgid " (offset: %#<PRIx64>)" msgstr " (зміщеннÑ: %#<PRIx64>)" -#: src/readelf.c:7092 +#: src/readelf.c:7138 #, c-format msgid " (end offset: %#<PRIx64>)" msgstr " (Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ кінцÑ: %#<PRIx64>)" -#: src/readelf.c:7129 +#: src/readelf.c:7175 #, c-format msgid " %-26sLSDA pointer: %#<PRIx64>\n" msgstr " %-26sвказівник LSDA: %#<PRIx64>\n" -#: src/readelf.c:7214 +#: src/readelf.c:7260 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute code: %s" msgstr "DIE [%<PRIx64>] не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ код атрибута: %s" -#: src/readelf.c:7224 +#: src/readelf.c:7270 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute form: %s" msgstr "DIE [%<PRIx64>] не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ форму атрибута: %s" -#: src/readelf.c:7246 +#: src/readelf.c:7292 #, c-format msgid "DIE [%<PRIx64>] cannot get attribute '%s' (%s) value: %s" msgstr "DIE [%<PRIx64>] не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð° «%s» (%s): %s" -#: src/readelf.c:7576 +#: src/readelf.c:7622 #, c-format msgid "invalid file (%<PRId64>): %s" msgstr "некоректний файл (%<PRId64>): %s" -#: src/readelf.c:7580 +#: src/readelf.c:7626 #, c-format msgid "no srcfiles for CU [%<PRIx64>]" msgstr "немає srcfiles Ð´Ð»Ñ CU [%<PRIx64>]" -#: src/readelf.c:7584 +#: src/readelf.c:7630 #, c-format msgid "couldn't get DWARF CU: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ CU DWARF: %s" -#: src/readelf.c:7899 +#: src/readelf.c:7952 #, c-format msgid "" "\n" @@ -5700,12 +5715,12 @@ msgstr "" "Розділ DWARF [%2zu] «%s» за зміщеннÑм %#<PRIx64>:\n" " [ЗміщеннÑ]\n" -#: src/readelf.c:7949 +#: src/readelf.c:8002 #, c-format msgid "cannot get next unit: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ наÑтупний модуль: %s" -#: src/readelf.c:7969 +#: src/readelf.c:8022 #, c-format msgid "" " Type unit at offset %<PRIu64>:\n" @@ -5718,7 +5733,7 @@ msgstr "" "%<PRIu8>, Розмір зміщеннÑ: %<PRIu8>\n" " ÐŸÑ–Ð´Ð¿Ð¸Ñ Ñ‚Ð¸Ð¿Ñƒ: %#<PRIx64>, Ð—Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ: %#<PRIx64> [%<PRIx64>]\n" -#: src/readelf.c:7981 +#: src/readelf.c:8034 #, c-format msgid "" " Compilation unit at offset %<PRIu64>:\n" @@ -5729,38 +5744,38 @@ msgstr "" " ВерÑÑ–Ñ: %<PRIu16>, Ð—Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ Ñкорочень: %<PRIu64>, ÐдреÑа: %<PRIu8>, " "ЗміщеннÑ: %<PRIu8>\n" -#: src/readelf.c:7991 src/readelf.c:8152 +#: src/readelf.c:8044 src/readelf.c:8205 #, c-format msgid " Unit type: %s (%<PRIu8>)" msgstr " Тип модулÑ: %s (%<PRIu8>)" -#: src/readelf.c:8018 +#: src/readelf.c:8071 #, c-format msgid "unknown version (%d) or unit type (%d)" msgstr "невідома верÑÑ–Ñ (%d) або тип Ð¼Ð¾Ð´ÑƒÐ»Ñ (%d)" -#: src/readelf.c:8047 +#: src/readelf.c:8100 #, c-format msgid "cannot get DIE offset: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ DIE: %s" -#: src/readelf.c:8056 +#: src/readelf.c:8109 #, c-format msgid "cannot get tag of DIE at offset [%<PRIx64>] in section '%s': %s" msgstr "" "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ мітку DIE за зміщеннÑм [%<PRIu64>] у розділі «%s»: %s" -#: src/readelf.c:8092 +#: src/readelf.c:8145 #, c-format msgid "cannot get next DIE: %s\n" msgstr "не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ наÑтупний DIE: %s\n" -#: src/readelf.c:8100 +#: src/readelf.c:8153 #, c-format msgid "cannot get next DIE: %s" msgstr "не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ наÑтупний DIE: %s" -#: src/readelf.c:8144 +#: src/readelf.c:8197 #, c-format msgid "" " Split compilation unit at offset %<PRIu64>:\n" @@ -5771,7 +5786,7 @@ msgstr "" " ВерÑÑ–Ñ: %<PRIu16>, Ð—Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ Ñкорочень: %<PRIu64>, ÐдреÑа: %<PRIu8>, " "ЗміщеннÑ: %<PRIu8>\n" -#: src/readelf.c:8196 +#: src/readelf.c:8249 #, c-format msgid "" "\n" @@ -5782,18 +5797,13 @@ msgstr "" "Розділ DWARF [%2zu] «%s» зі зміщеннÑм %#<PRIx64>:\n" "\n" -#: src/readelf.c:8528 +#: src/readelf.c:8581 #, c-format msgid "unknown form: %s" msgstr "невідома форма: %s" -#: src/readelf.c:8576 -#, c-format -msgid "cannot get line data section data: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу лінійних даних: %s" - #. Print what we got so far. -#: src/readelf.c:8680 +#: src/readelf.c:8729 #, c-format msgid "" "\n" @@ -5826,27 +5836,27 @@ msgstr "" "\n" "Коди операцій:\n" -#: src/readelf.c:8702 +#: src/readelf.c:8751 #, c-format msgid "cannot handle .debug_line version: %u\n" msgstr "не вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ верÑÑ–ÑŽ .debug_line: %u\n" -#: src/readelf.c:8710 +#: src/readelf.c:8759 #, c-format msgid "cannot handle address size: %u\n" msgstr "не вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ розмір адреÑи: %u\n" -#: src/readelf.c:8718 +#: src/readelf.c:8767 #, c-format msgid "cannot handle segment selector size: %u\n" msgstr "не вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ розмір Ñелектора Ñегментів: %u\n" -#: src/readelf.c:8728 +#: src/readelf.c:8777 #, c-format msgid "invalid data at offset %tu in section [%zu] '%s'" msgstr "некоректні дані зі зміщеннÑм %tu у розділі [%zu] «%s»" -#: src/readelf.c:8743 +#: src/readelf.c:8792 #, c-format msgid " [%*<PRIuFAST8>] %hhu argument\n" msgid_plural " [%*<PRIuFAST8>] %hhu arguments\n" @@ -5854,7 +5864,7 @@ msgstr[0] " [%*<PRIuFAST8>] %hhu аргумент\n" msgstr[1] " [%*<PRIuFAST8>] %hhu аргументи\n" msgstr[2] " [%*<PRIuFAST8>] %hhu аргументів\n" -#: src/readelf.c:8754 +#: src/readelf.c:8803 msgid "" "\n" "Directory table:" @@ -5862,12 +5872,12 @@ msgstr "" "\n" "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ñƒ:" -#: src/readelf.c:8760 src/readelf.c:8837 +#: src/readelf.c:8809 src/readelf.c:8886 #, c-format msgid " [" msgstr " [" -#: src/readelf.c:8831 +#: src/readelf.c:8880 msgid "" "\n" "File name table:" @@ -5875,11 +5885,11 @@ msgstr "" "\n" " Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð½Ð°Ð·Ð² файлів:" -#: src/readelf.c:8892 +#: src/readelf.c:8941 msgid " Entry Dir Time Size Name" msgstr " Ð—Ð°Ð¿Ð¸Ñ ÐšÐ°Ñ‚ Ð§Ð°Ñ Ð Ð¾Ð·Ð¼Ñ–Ñ€ Ðазва" -#: src/readelf.c:8938 +#: src/readelf.c:8987 #, fuzzy msgid "" "\n" @@ -5888,7 +5898,7 @@ msgstr "" "\n" "Оператори номерів Ñ€Ñдків:" -#: src/readelf.c:8942 +#: src/readelf.c:8991 msgid "" "\n" "Line number statements:" @@ -5896,129 +5906,129 @@ msgstr "" "\n" "Оператори номерів Ñ€Ñдків:" -#: src/readelf.c:8957 +#: src/readelf.c:9006 #, c-format msgid "invalid maximum operations per instruction is zero" msgstr "некоректну кількіÑÑ‚ÑŒ операцій на інÑтрукцію прирівнÑно до нулÑ" -#: src/readelf.c:8991 +#: src/readelf.c:9040 #, c-format msgid " special opcode %u: address+%u = " msgstr " Ñпеціальний код операції %u: адреÑа+%u = " -#: src/readelf.c:8995 +#: src/readelf.c:9044 #, c-format msgid ", op_index = %u, line%+d = %zu\n" msgstr ", індекÑ_оп = %u, Ñ€Ñдок%+d = %zu\n" -#: src/readelf.c:8998 +#: src/readelf.c:9047 #, c-format msgid ", line%+d = %zu\n" msgstr ", Ñ€Ñдок%+d = %zu\n" -#: src/readelf.c:9016 +#: src/readelf.c:9065 #, c-format msgid " extended opcode %u: " msgstr " розширений код операції %u: " -#: src/readelf.c:9021 +#: src/readelf.c:9070 msgid " end of sequence" msgstr " кінець поÑлідовноÑÑ‚Ñ–" -#: src/readelf.c:9039 +#: src/readelf.c:9088 #, c-format msgid " set address to " msgstr " вÑтановити адреÑу у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ " -#: src/readelf.c:9067 +#: src/readelf.c:9116 #, c-format msgid " define new file: dir=%u, mtime=%<PRIu64>, length=%<PRIu64>, name=%s\n" msgstr "" " Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ файла: dir=%u, mtime=%<PRIu64>, довжина=%<PRIu64>, " "назва=%s\n" -#: src/readelf.c:9081 +#: src/readelf.c:9130 #, c-format msgid " set discriminator to %u\n" msgstr " вÑтановити Ñ€Ð¾Ð·Ñ€Ñ–Ð·Ð½ÐµÐ½Ð½Ñ Ð´Ð»Ñ %u\n" -#: src/readelf.c:9108 +#: src/readelf.c:9157 #, c-format msgid " set inlined context %u, function name %s (0x%x)\n" msgstr "" -#: src/readelf.c:9132 +#: src/readelf.c:9181 #, fuzzy, c-format #| msgid "Also show function names" msgid " set function name %s (0x%x)\n" msgstr "Показувати також назви функцій" #. Unknown, ignore it. -#: src/readelf.c:9139 +#: src/readelf.c:9188 msgid " unknown opcode" msgstr " невідомий код операції" #. Takes no argument. -#: src/readelf.c:9151 +#: src/readelf.c:9200 msgid " copy" msgstr " копіÑ" -#: src/readelf.c:9162 +#: src/readelf.c:9211 #, c-format msgid " advance address by %u to " msgstr " Ð·Ð±Ñ–Ð»ÑŒÑˆÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑи на %u до " -#: src/readelf.c:9166 src/readelf.c:9227 +#: src/readelf.c:9215 src/readelf.c:9276 #, c-format msgid ", op_index to %u" msgstr ", op_index до %u" -#: src/readelf.c:9178 +#: src/readelf.c:9227 #, c-format msgid " advance line by constant %d to %<PRId64>\n" msgstr " проÑувати Ñ€Ñдок на Ñталу %d до %<PRId64>\n" -#: src/readelf.c:9188 +#: src/readelf.c:9237 #, c-format msgid " set file to %<PRIu64>\n" msgstr " вÑтановити файл у %<PRIu64>\n" -#: src/readelf.c:9199 +#: src/readelf.c:9248 #, c-format msgid " set column to %<PRIu64>\n" msgstr " вÑтановити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñтовпчика %<PRIu64>\n" -#: src/readelf.c:9206 +#: src/readelf.c:9255 #, c-format msgid " set '%s' to %<PRIuFAST8>\n" msgstr " вÑтановити «%s» у %<PRIuFAST8>\n" #. Takes no argument. -#: src/readelf.c:9212 +#: src/readelf.c:9261 msgid " set basic block flag" msgstr " вÑтановити прапорець базового блоку" -#: src/readelf.c:9223 +#: src/readelf.c:9272 #, c-format msgid " advance address by constant %u to " msgstr " збільшити адреÑу на Ñталу величину %u до " -#: src/readelf.c:9243 +#: src/readelf.c:9292 #, c-format msgid " advance address by fixed value %u to \n" msgstr " збільшити адреÑу на фікÑовану величину %u до \n" #. Takes no argument. -#: src/readelf.c:9253 +#: src/readelf.c:9302 msgid " set prologue end flag" msgstr " вÑтановити прапорець ÐºÑ–Ð½Ñ†Ñ Ð²Ñтупу" #. Takes no argument. -#: src/readelf.c:9258 +#: src/readelf.c:9307 msgid " set epilogue begin flag" msgstr " вÑтановити прапорець початку епілогу" -#: src/readelf.c:9268 +#: src/readelf.c:9317 #, c-format msgid " set isa to %u\n" msgstr " вÑтановити isa у %u\n" @@ -6026,7 +6036,7 @@ msgstr " вÑтановити isa у %u\n" #. This is a new opcode the generator but not we know about. #. Read the parameters associated with it but then discard #. everything. Read all the parameters for this opcode. -#: src/readelf.c:9277 +#: src/readelf.c:9326 #, c-format msgid " unknown opcode with %<PRIu8> parameter:" msgid_plural " unknown opcode with %<PRIu8> parameters:" @@ -6034,102 +6044,87 @@ msgstr[0] " невідомий код операції з %<PRIu8> Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ msgstr[1] " невідомий код операції з %<PRIu8> параметрами:" msgstr[2] " невідомий код операції з %<PRIu8> параметрами:" -#: src/readelf.c:9317 -#, c-format -msgid "cannot get .debug_loclists content: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ .debug_loclists: %s" - -#: src/readelf.c:9483 +#: src/readelf.c:9527 #, fuzzy, c-format msgid " <INVALID DATA>\n" msgstr " <ÐЕКОРЕКТÐІ ДÐÐІ>\n" -#: src/readelf.c:9523 +#: src/readelf.c:9567 #, c-format msgid "invalid loclists data" msgstr "некоректні дані loclists" -#: src/readelf.c:9786 -#, c-format -msgid "cannot get .debug_loc content: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ .debug_loc: %s" - -#: src/readelf.c:9999 src/readelf.c:11043 +#: src/readelf.c:10037 src/readelf.c:11082 msgid " <INVALID DATA>\n" msgstr " <ÐЕКОРЕКТÐІ ДÐÐІ>\n" -#: src/readelf.c:10054 src/readelf.c:10217 -#, c-format -msgid "cannot get macro information section data: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу відомоÑтей щодо макроÑів: %s" - -#: src/readelf.c:10134 +#: src/readelf.c:10168 #, c-format msgid "%*s*** non-terminated string at end of section" msgstr "%*s*** незавершений Ñ€Ñдок наприкінці розділу" -#: src/readelf.c:10157 +#: src/readelf.c:10191 #, c-format msgid "%*s*** missing DW_MACINFO_start_file argument at end of section" msgstr "%*s*** пропущено аргумент DW_MACINFO_start_file наприкінці розділу" -#: src/readelf.c:10258 +#: src/readelf.c:10286 #, c-format msgid " Offset: 0x%<PRIx64>\n" msgstr " ЗміщеннÑ: 0x%<PRIx64>\n" -#: src/readelf.c:10270 +#: src/readelf.c:10298 #, c-format msgid " Version: %<PRIu16>\n" msgstr " ВерÑÑ–Ñ: %<PRIu16>\n" -#: src/readelf.c:10276 src/readelf.c:11163 +#: src/readelf.c:10304 src/readelf.c:11202 #, c-format msgid " unknown version, cannot parse section\n" msgstr " невідома верÑÑ–Ñ, не вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ розділ\n" -#: src/readelf.c:10283 +#: src/readelf.c:10311 #, c-format msgid " Flag: 0x%<PRIx8>" msgstr " Прапорець: 0x%<PRIx8>" -#: src/readelf.c:10312 +#: src/readelf.c:10340 #, c-format msgid " Offset length: %<PRIu8>\n" msgstr " Довжина зміщеннÑ: %<PRIu8>\n" -#: src/readelf.c:10320 +#: src/readelf.c:10348 #, c-format msgid " .debug_line offset: 0x%<PRIx64>\n" msgstr " Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ .debug_line: 0x%<PRIx64>\n" -#: src/readelf.c:10345 +#: src/readelf.c:10373 #, c-format msgid " extension opcode table, %<PRIu8> items:\n" msgstr " Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ ÐºÐ¾Ð´Ñ–Ð² операцій розширень, запиÑів — %<PRIu8>:\n" -#: src/readelf.c:10352 +#: src/readelf.c:10380 #, c-format msgid " [%<PRIx8>]" msgstr " [%<PRIx8>]" -#: src/readelf.c:10364 +#: src/readelf.c:10392 #, c-format msgid " %<PRIu8> arguments:" msgstr " %<PRIu8> аргументів:" -#: src/readelf.c:10379 +#: src/readelf.c:10407 #, c-format msgid " no arguments." msgstr " немає аргументів." -#: src/readelf.c:10580 +#: src/readelf.c:10608 #, c-format msgid " [%5d] DIE offset: %6<PRId64>, CU DIE offset: %6<PRId64>, name: %s\n" msgstr "" " [%5d] Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ DIE: %6<PRId64>, Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ CU DIE: %6<PRId64>, назва: %s\n" -#: src/readelf.c:10624 +#: src/readelf.c:10663 #, c-format msgid "" "\n" @@ -6141,42 +6136,37 @@ msgstr "" " %*s Ð Ñдок\n" #. TRANS: the debugstr| prefix makes the string unique. -#: src/readelf.c:10629 +#: src/readelf.c:10668 msgctxt "debugstr" msgid "Offset" msgstr "" -#: src/readelf.c:10639 +#: src/readelf.c:10678 #, c-format msgid " *** error, missing string terminator\n" msgstr " *** помилка, пропущено роздільник Ñ€Ñдків\n" -#: src/readelf.c:10668 -#, c-format -msgid "cannot get .debug_str_offsets section data: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу .debug_str_offsets: %s" - -#: src/readelf.c:10767 +#: src/readelf.c:10800 #, c-format msgid " Length: %8<PRIu64>\n" msgstr " Довжина: %8<PRIu64>\n" -#: src/readelf.c:10769 +#: src/readelf.c:10802 #, c-format msgid " Offset size: %8<PRIu8>\n" msgstr " Розмір зÑуву: %8<PRIu8>\n" -#: src/readelf.c:10783 +#: src/readelf.c:10816 #, c-format msgid " DWARF version: %8<PRIu16>\n" msgstr " верÑÑ–Ñ DWARF: %8<PRIu16>\n" -#: src/readelf.c:10792 +#: src/readelf.c:10825 #, c-format msgid " Padding: %8<PRIx16>\n" msgstr " ЗаповненнÑ: %8<PRIx16>\n" -#: src/readelf.c:10846 +#: src/readelf.c:10879 #, c-format msgid "" "\n" @@ -6185,7 +6175,7 @@ msgstr "" "\n" "Розділ таблиці пошуку вікон виклику [%2zu] '.eh_frame_hdr':\n" -#: src/readelf.c:10948 +#: src/readelf.c:10981 #, c-format msgid "" "\n" @@ -6194,22 +6184,22 @@ msgstr "" "\n" "Розділ таблиці обробки виключень [%2zu] '.gcc_except_table':\n" -#: src/readelf.c:10971 +#: src/readelf.c:11004 #, c-format msgid " LPStart encoding: %#x " msgstr " ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ LPStart: %#x " -#: src/readelf.c:10983 +#: src/readelf.c:11016 #, c-format msgid " TType encoding: %#x " msgstr " ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ TType: %#x " -#: src/readelf.c:10998 +#: src/readelf.c:11033 #, c-format msgid " Call site encoding: %#x " msgstr " ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ñ–ÑÑ†Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑƒ:%#x " -#: src/readelf.c:11011 +#: src/readelf.c:11048 msgid "" "\n" " Call site table:" @@ -6217,7 +6207,7 @@ msgstr "" "\n" " Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¼Ñ–ÑÑ†Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑƒ:" -#: src/readelf.c:11025 +#: src/readelf.c:11064 #, c-format msgid "" " [%4u] Call site start: %#<PRIx64>\n" @@ -6230,12 +6220,12 @@ msgstr "" " МіÑце заÑтоÑуваннÑ: %#<PRIx64>\n" " ДіÑ: %u\n" -#: src/readelf.c:11098 +#: src/readelf.c:11137 #, c-format msgid "invalid TType encoding" msgstr "некоректне ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ TType" -#: src/readelf.c:11125 +#: src/readelf.c:11164 #, c-format msgid "" "\n" @@ -6244,37 +6234,37 @@ msgstr "" "\n" "Розділ GDB [%2zu] «%s» за зміщеннÑм %#<PRIx64> міÑтить %<PRId64> байтів:\n" -#: src/readelf.c:11154 +#: src/readelf.c:11193 #, c-format msgid " Version: %<PRId32>\n" msgstr " ВерÑÑ–Ñ: %<PRId32>\n" -#: src/readelf.c:11172 +#: src/readelf.c:11211 #, c-format msgid " CU offset: %#<PRIx32>\n" msgstr " Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ CU: %#<PRIx32>\n" -#: src/readelf.c:11179 +#: src/readelf.c:11218 #, c-format msgid " TU offset: %#<PRIx32>\n" msgstr " Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ TU: %#<PRIx32>\n" -#: src/readelf.c:11186 +#: src/readelf.c:11225 #, c-format msgid " address offset: %#<PRIx32>\n" msgstr " Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑи: %#<PRIx32>\n" -#: src/readelf.c:11193 +#: src/readelf.c:11232 #, c-format msgid " symbol offset: %#<PRIx32>\n" msgstr " Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñимволу: %#<PRIx32>\n" -#: src/readelf.c:11200 +#: src/readelf.c:11239 #, c-format msgid " constant offset: %#<PRIx32>\n" msgstr " Ñтале зміщеннÑ: %#<PRIx32>\n" -#: src/readelf.c:11214 +#: src/readelf.c:11253 #, c-format msgid "" "\n" @@ -6283,7 +6273,7 @@ msgstr "" "\n" " СпиÑок CU зі зміщеннÑм %#<PRIx32> міÑтить %zu запиÑів:\n" -#: src/readelf.c:11239 +#: src/readelf.c:11278 #, c-format msgid "" "\n" @@ -6292,7 +6282,7 @@ msgstr "" "\n" " СпиÑок TU зі зміщеннÑм %#<PRIx32> міÑтить %zu запиÑів:\n" -#: src/readelf.c:11268 +#: src/readelf.c:11307 #, c-format msgid "" "\n" @@ -6301,7 +6291,7 @@ msgstr "" "\n" " СпиÑок Ð°Ð´Ñ€ÐµÑ Ð·Ñ– зміщеннÑм %#<PRIx32> міÑтить %zu запиÑів:\n" -#: src/readelf.c:11300 +#: src/readelf.c:11339 #, c-format msgid "" "\n" @@ -6310,18 +6300,18 @@ msgstr "" "\n" " Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів за зміщеннÑм %#<PRIx32> міÑтить %zu позицій:\n" -#: src/readelf.c:11438 +#: src/readelf.c:11477 #, c-format msgid "cannot get debug context descriptor: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ деÑкриптор контекÑту зневаджуваннÑ: %s" -#: src/readelf.c:11804 src/readelf.c:12431 src/readelf.c:12541 -#: src/readelf.c:12598 +#: src/readelf.c:11843 src/readelf.c:12463 src/readelf.c:12573 +#: src/readelf.c:12630 #, c-format msgid "cannot convert core note data: %s" msgstr "не вдалоÑÑ Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€Ð¸Ñ‚Ð¸ дані запиÑу Ñдра: %s" -#: src/readelf.c:12168 +#: src/readelf.c:12207 #, c-format msgid "" "\n" @@ -6330,21 +6320,21 @@ msgstr "" "\n" "%*s... <повторюєтьÑÑ %u разів> ..." -#: src/readelf.c:12677 +#: src/readelf.c:12709 msgid " Owner Data size Type\n" msgstr " ВлаÑник Розм. даних Тип\n" -#: src/readelf.c:12705 +#: src/readelf.c:12737 #, c-format msgid " %-13.*s %9<PRId32> %s\n" msgstr " %-13.*s %9<PRId32> %s\n" -#: src/readelf.c:12757 +#: src/readelf.c:12789 #, c-format msgid "cannot get content of note: %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ нотатки: %s" -#: src/readelf.c:12790 +#: src/readelf.c:12822 #, c-format msgid "" "\n" @@ -6354,7 +6344,7 @@ msgstr "" "Розділ запиÑів (note) [%2zu] «%s» з %<PRIu64> байтів за зміщеннÑм " "%#0<PRIx64>:\n" -#: src/readelf.c:12813 +#: src/readelf.c:12845 #, c-format msgid "" "\n" @@ -6363,7 +6353,7 @@ msgstr "" "\n" "Сегмент запиÑів з %<PRIu64> байтів за зміщеннÑм %#0<PRIx64>:\n" -#: src/readelf.c:12860 +#: src/readelf.c:12892 #, c-format msgid "" "\n" @@ -6372,12 +6362,12 @@ msgstr "" "\n" "У розділі [%zu] «%s» не міÑтитьÑÑ Ð´Ð°Ð½Ð¸Ñ… Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð´Ð°Ð¼Ð¿Ñƒ.\n" -#: src/readelf.c:12887 src/readelf.c:12938 +#: src/readelf.c:12919 src/readelf.c:12970 #, c-format msgid "cannot get data for section [%zu] '%s': %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ [%zu] «%s»: %s" -#: src/readelf.c:12892 +#: src/readelf.c:12924 #, c-format msgid "" "\n" @@ -6386,7 +6376,7 @@ msgstr "" "\n" "ШіÑÑ‚. дамп розділу [%zu] «%s», %<PRIu64> байтів за зміщеннÑм %#0<PRIx64>:\n" -#: src/readelf.c:12897 +#: src/readelf.c:12929 #, c-format msgid "" "\n" @@ -6397,7 +6387,7 @@ msgstr "" "ШіÑÑ‚. дамп розділу [%zu] «%s», %<PRIu64> байтів (%zd неÑтиÑнено) за " "зміщеннÑм %#0<PRIx64>:\n" -#: src/readelf.c:12911 +#: src/readelf.c:12943 #, c-format msgid "" "\n" @@ -6406,7 +6396,7 @@ msgstr "" "\n" "У розділі [%zu] «%s» не міÑтитьÑÑ Ñ€Ñдків Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð´Ð°Ð¼Ð¿Ñƒ.\n" -#: src/readelf.c:12943 +#: src/readelf.c:12975 #, c-format msgid "" "\n" @@ -6415,7 +6405,7 @@ msgstr "" "\n" "Розділ Ñ€Ñдків [%zu] «%s» міÑтить %<PRIu64> байтів за зміщеннÑм %#0<PRIx64>:\n" -#: src/readelf.c:12948 +#: src/readelf.c:12980 #, c-format msgid "" "\n" @@ -6426,7 +6416,7 @@ msgstr "" "Ð Ñдок розділу [%zu] «%s» міÑтить %<PRIu64> байти (%zd неÑтиÑнено) на " "зміщенні %#0<PRIx64>:\n" -#: src/readelf.c:12996 +#: src/readelf.c:13028 #, c-format msgid "" "\n" @@ -6435,7 +6425,7 @@ msgstr "" "\n" "розділу [%lu] не Ñ–Ñнує" -#: src/readelf.c:13026 +#: src/readelf.c:13058 #, c-format msgid "" "\n" @@ -6444,12 +6434,12 @@ msgstr "" "\n" "розділу «%s» не Ñ–Ñнує" -#: src/readelf.c:13081 +#: src/readelf.c:13113 #, c-format msgid "cannot get symbol index of archive '%s': %s" msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ покажчик Ñимволів архіву «%s»: %s" -#: src/readelf.c:13084 +#: src/readelf.c:13116 #, c-format msgid "" "\n" @@ -6458,7 +6448,7 @@ msgstr "" "\n" "У архіві «%s» немає покажчика Ñимволів\n" -#: src/readelf.c:13088 +#: src/readelf.c:13120 #, c-format msgid "" "\n" @@ -6467,12 +6457,12 @@ msgstr "" "\n" "Покажчик архіву «%s» міÑтить %zu запиÑів:\n" -#: src/readelf.c:13106 +#: src/readelf.c:13138 #, c-format msgid "cannot extract member at offset %zu in '%s': %s" msgstr "не вдалоÑÑ Ð²Ð¸Ð´Ð¾Ð±ÑƒÑ‚Ð¸ елемент за зміщеннÑм %zu у «%s»: %s" -#: src/readelf.c:13111 +#: src/readelf.c:13143 #, c-format msgid "Archive member '%s' contains:\n" msgstr "Елемент архіву «%s» міÑтить:\n" @@ -7565,6 +7555,38 @@ msgid "Show instances of inlined functions" msgstr "ВивеÑти екземплÑри вбудованих функцій" #, c-format +#~ msgid "cannot get .debug_addr section data: %s" +#~ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу .debug_addr: %s" + +#, c-format +#~ msgid "cannot get .debug_rnglists content: %s" +#~ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ .debug_rnglists: %s" + +#, c-format +#~ msgid "cannot get .debug_ranges content: %s" +#~ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані .debug_ranges: %s" + +#, c-format +#~ msgid "cannot get line data section data: %s" +#~ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу лінійних даних: %s" + +#, c-format +#~ msgid "cannot get .debug_loclists content: %s" +#~ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ .debug_loclists: %s" + +#, c-format +#~ msgid "cannot get .debug_loc content: %s" +#~ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ вміÑÑ‚ .debug_loc: %s" + +#, c-format +#~ msgid "cannot get macro information section data: %s" +#~ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу відомоÑтей щодо макроÑів: %s" + +#, c-format +#~ msgid "cannot get .debug_str_offsets section data: %s" +#~ msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані розділу .debug_str_offsets: %s" + +#, c-format #~ msgid "cannot allocate memory" #~ msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¿Ð¾Ð´Ñ–Ð»Ð¸Ñ‚Ð¸ пам’ÑÑ‚ÑŒ" diff --git a/src/ChangeLog b/src/ChangeLog index d3399a5c..c26dafdd 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,62 @@ +2023-03-03 Mark Wielaard <mark@klomp.org> + + * readelf (process_elf_file): ebl_closebackend only after + comparing ebl pointer. + +2023-02-12 Mark Wielaard <mark@klomp.org> + + * readelf.c (print_attributes): Add comment about check. + (read_encoded): Check readp >= endp before reading + DW_EH_PE_uleb128 and DW_EH_PE_sleb128. + * elflint.c (check_attributes): Check r >= q before reading + uleb128. + (print_debug_frame_section): Check augmentation length can be read + as uleb128. + (print_debug_exception_table): Likewise for ttype_base_offset, + call_site_table_len and action. + +2023-01-22 Mark Wielaard <mark@klomp.org> + + * addr2line.c (options): Separate --demangle and -C. + (parse_opt): Ignore 'b'. + +2023-01-10 Mark Wielaard <mark@klomp.org> + + * readelf.c (get_debug_elf_data): New function. + (print_debug_abbrev_section): Use get_debug_elf_data. + (print_debug_addr_section): Likewise. + (print_debug_aranges_section): Likewise. + (print_debug_rnglists_section): Likewise. + (print_debug_ranges_section): Likewise. + (print_debug_frame_section): Likewise. + (print_debug_units): Likewise. + (print_debug_line_section): Likewise. + (print_debug_loclists_section): Likewise. + (print_debug_loc_section): Likewise. + (print_debug_macinfo_section): Likewise. + (print_debug_macro_section): Likewise. + (print_debug_str_section): Likewise. + (print_debug_str_offsets_section): Likewise. + (print_debug_pubnames_section): Likewise. + +2022-12-21 Shahab Vahedi <shahab@synopsys.email> + + * elflint.c (valid_e_machine): Add EM_ARCV2. + +2022-12-02 Hengqi Chen <hengqi.chen@gmail.com> + + * elflint.c (valid_e_machine): Add EM_LOONGARCH. + +2022-11-03 Mark Wielaard <mark@klomp.org> + + * readelf.c (get_dynscn_addrs): Check gelf_getdyn doesn't + return NULL. + +2022-11-03 Mark Wielaard <mark@klomp.org> + + * readelf.c (handle_dynamic): Check phdr != NULL when + use_dynamic_segment, otherwise check shdr != NULL. + 2022-10-28 Arsen Arsenović <arsen@aarsen.me> * readelf.c (options): Add Binutils-style --syms alias. diff --git a/src/addr2line.c b/src/addr2line.c index 7768b266..d902d791 100644 --- a/src/addr2line.c +++ b/src/addr2line.c @@ -1,6 +1,6 @@ /* Locate source files and line information for given addresses Copyright (C) 2005-2010, 2012, 2013, 2015 Red Hat, Inc. - Copyright (C) 2022 Mark J. Wielaard <mark@klomp.org> + Copyright (C) 2022, 2023 Mark J. Wielaard <mark@klomp.org> This file is part of elfutils. Written by Ulrich Drepper <drepper@redhat.com>, 2005. @@ -71,8 +71,9 @@ static const struct argp_option options[] = { "inlines", 'i', NULL, 0, N_("Show all source locations that caused inline expansion of subroutines at the address."), 0 }, - { "demangle", 'C', "ARG", OPTION_ARG_OPTIONAL, + { "demangle", OPT_DEMANGLER, "ARG", OPTION_ARG_OPTIONAL, N_("Show demangled symbols (ARG is always ignored)"), 0 }, + { NULL, 'C', NULL, 0, N_("Show demangled symbols"), 0 }, { "pretty-print", OPT_PRETTY, NULL, 0, N_("Print all information on one line, and indent inlines"), 0 }, { "relative", OPT_RELATIVE, NULL, 0, @@ -225,7 +226,10 @@ parse_opt (int key, char *arg, struct argp_state *state) print_addresses = true; break; + /* Ignore --target=bfdname. */ case 'b': + break; + case 'C': case OPT_DEMANGLER: demangle = true; diff --git a/src/elfcompress.c b/src/elfcompress.c index 6f18e47d..18ade66f 100644 --- a/src/elfcompress.c +++ b/src/elfcompress.c @@ -48,13 +48,24 @@ static bool force = false; static bool permissive = false; static const char *foutput = NULL; -#define T_UNSET 0 -#define T_DECOMPRESS 1 /* none */ -#define T_COMPRESS_ZLIB 2 /* zlib */ -#define T_COMPRESS_GNU 3 /* zlib-gnu */ +/* Compression algorithm, where all legal values for ch_type + (compression algorithm) do match the following enum. */ +enum ch_type +{ + UNSET = -1, + NONE, + ZLIB, + ZSTD, + + /* Maximal supported ch_type. */ + MAXIMAL_CH_TYPE = ZSTD, + + ZLIB_GNU = 1 << 16 +}; + #define WORD_BITS (8U * sizeof (unsigned int)) -static int type = T_UNSET; +static enum ch_type type = UNSET; struct section_pattern { @@ -120,22 +131,28 @@ parse_opt (int key, char *arg __attribute__ ((unused)), break; case 't': - if (type != T_UNSET) + if (type != UNSET) argp_error (state, N_("-t option specified twice")); if (strcmp ("none", arg) == 0) - type = T_DECOMPRESS; + type = NONE; else if (strcmp ("zlib", arg) == 0 || strcmp ("zlib-gabi", arg) == 0) - type = T_COMPRESS_ZLIB; + type = ZLIB; else if (strcmp ("zlib-gnu", arg) == 0 || strcmp ("gnu", arg) == 0) - type = T_COMPRESS_GNU; + type = ZLIB_GNU; + else if (strcmp ("zstd", arg) == 0) +#ifdef USE_ZSTD_COMPRESS + type = ZSTD; +#else + argp_error (state, N_("ZSTD support is not enabled")); +#endif else argp_error (state, N_("unknown compression type '%s'"), arg); break; case ARGP_KEY_SUCCESS: - if (type == T_UNSET) - type = T_COMPRESS_ZLIB; + if (type == UNSET) + type = ZLIB; if (patterns == NULL) add_pattern (".?(z)debug*"); break; @@ -198,17 +215,23 @@ setshdrstrndx (Elf *elf, GElf_Ehdr *ehdr, size_t ndx) static int compress_section (Elf_Scn *scn, size_t orig_size, const char *name, const char *newname, size_t ndx, - bool gnu, bool compress, bool report_verbose) + enum ch_type schtype, enum ch_type dchtype, + bool report_verbose) { + /* We either compress or decompress. */ + assert (schtype == NONE || dchtype == NONE); + bool compress = dchtype != NONE; + int res; unsigned int flags = compress && force ? ELF_CHF_FORCE : 0; - if (gnu) + if (schtype == ZLIB_GNU || dchtype == ZLIB_GNU) res = elf_compress_gnu (scn, compress ? 1 : 0, flags); else - res = elf_compress (scn, compress ? ELFCOMPRESS_ZLIB : 0, flags); + res = elf_compress (scn, dchtype, flags); if (res < 0) - error (0, 0, "Couldn't decompress section [%zd] %s: %s", + error (0, 0, "Couldn't %s section [%zd] %s: %s", + compress ? "compress" : "decompress", ndx, name, elf_errmsg (-1)); else { @@ -266,6 +289,44 @@ get_sections (unsigned int *sections, size_t shnum) return s; } +/* Return compression type of a given section SHDR. */ + +static enum ch_type +get_section_chtype (Elf_Scn *scn, GElf_Shdr *shdr, const char *sname, + size_t ndx) +{ + enum ch_type chtype = UNSET; + if ((shdr->sh_flags & SHF_COMPRESSED) != 0) + { + GElf_Chdr chdr; + if (gelf_getchdr (scn, &chdr) != NULL) + { + chtype = (enum ch_type)chdr.ch_type; + if (chtype == NONE) + { + error (0, 0, "Compression type for section %zd" + " can't be zero ", ndx); + chtype = UNSET; + } + else if (chtype > MAXIMAL_CH_TYPE) + { + error (0, 0, "Compression type (%d) for section %zd" + " is unsupported ", chtype, ndx); + chtype = UNSET; + } + } + else + error (0, 0, "Couldn't get chdr for section %zd", ndx); + } + /* Set ZLIB_GNU compression manually for .zdebug* sections. */ + else if (startswith (sname, ".zdebug")) + chtype = ZLIB_GNU; + else + chtype = NONE; + + return chtype; +} + static int process_file (const char *fname) { @@ -446,34 +507,37 @@ process_file (const char *fname) if (section_name_matches (sname)) { - if (!force && type == T_DECOMPRESS - && (shdr->sh_flags & SHF_COMPRESSED) == 0 - && !startswith (sname, ".zdebug")) + enum ch_type schtype = get_section_chtype (scn, shdr, sname, ndx); + if (!force && verbose > 0) { - if (verbose > 0) - printf ("[%zd] %s already decompressed\n", ndx, sname); - } - else if (!force && type == T_COMPRESS_ZLIB - && (shdr->sh_flags & SHF_COMPRESSED) != 0) - { - if (verbose > 0) - printf ("[%zd] %s already compressed\n", ndx, sname); + /* The current compression matches the final one. */ + if (type == schtype) + switch (type) + { + case NONE: + printf ("[%zd] %s already decompressed\n", ndx, sname); + break; + case ZLIB: + case ZSTD: + printf ("[%zd] %s already compressed\n", ndx, sname); + break; + case ZLIB_GNU: + printf ("[%zd] %s already GNU compressed\n", ndx, sname); + break; + default: + abort (); + } } - else if (!force && type == T_COMPRESS_GNU - && startswith (sname, ".zdebug")) - { - if (verbose > 0) - printf ("[%zd] %s already GNU compressed\n", ndx, sname); - } - else if (shdr->sh_type != SHT_NOBITS + + if (shdr->sh_type != SHT_NOBITS && (shdr->sh_flags & SHF_ALLOC) == 0) { set_section (sections, ndx); /* Check if we might want to change this section name. */ if (! adjust_names - && ((type != T_COMPRESS_GNU + && ((type != ZLIB_GNU && startswith (sname, ".zdebug")) - || (type == T_COMPRESS_GNU + || (type == ZLIB_GNU && startswith (sname, ".debug")))) adjust_names = true; @@ -634,11 +698,11 @@ process_file (const char *fname) and keep track of whether or not to compress them (later in the fixup pass). Also record the original size, so we can report the difference later when we do compress. */ - int shstrtab_compressed = T_UNSET; + enum ch_type shstrtab_compressed = UNSET; size_t shstrtab_size = 0; char *shstrtab_name = NULL; char *shstrtab_newname = NULL; - int symtab_compressed = T_UNSET; + enum ch_type symtab_compressed = UNSET; size_t symtab_size = 0; char *symtab_name = NULL; char *symtab_newname = NULL; @@ -677,6 +741,13 @@ process_file (const char *fname) (de)compressed, invalidating the string pointers. */ sname = xstrdup (sname); + + /* Detect source compression that is how is the section compressed + now. */ + enum ch_type schtype = get_section_chtype (scn, shdr, sname, ndx); + if (schtype == UNSET) + goto cleanup; + /* We might want to decompress (and rename), but not compress during this pass since we might need the section data in later passes. Skip those sections for now and @@ -687,35 +758,32 @@ process_file (const char *fname) switch (type) { - case T_DECOMPRESS: - if ((shdr->sh_flags & SHF_COMPRESSED) != 0) + case NONE: + if (schtype != NONE) { + if (schtype == ZLIB_GNU) + { + snamebuf[0] = '.'; + strcpy (&snamebuf[1], &sname[2]); + newname = snamebuf; + } if (compress_section (scn, size, sname, NULL, ndx, - false, false, verbose > 0) < 0) - goto cleanup; - } - else if (startswith (sname, ".zdebug")) - { - snamebuf[0] = '.'; - strcpy (&snamebuf[1], &sname[2]); - newname = snamebuf; - if (compress_section (scn, size, sname, newname, ndx, - true, false, verbose > 0) < 0) + schtype, NONE, verbose > 0) < 0) goto cleanup; } else if (verbose > 0) printf ("[%zd] %s already decompressed\n", ndx, sname); break; - case T_COMPRESS_GNU: + case ZLIB_GNU: if (startswith (sname, ".debug")) { - if ((shdr->sh_flags & SHF_COMPRESSED) != 0) + if (schtype == ZLIB || schtype == ZSTD) { /* First decompress to recompress GNU style. Don't report even when verbose. */ if (compress_section (scn, size, sname, NULL, ndx, - false, false, false) < 0) + schtype, NONE, false) < 0) goto cleanup; } @@ -729,7 +797,7 @@ process_file (const char *fname) if (ndx == shdrstrndx) { shstrtab_size = size; - shstrtab_compressed = T_COMPRESS_GNU; + shstrtab_compressed = ZLIB_GNU; if (shstrtab_name != NULL || shstrtab_newname != NULL) { @@ -745,7 +813,7 @@ process_file (const char *fname) else { symtab_size = size; - symtab_compressed = T_COMPRESS_GNU; + symtab_compressed = ZLIB_GNU; symtab_name = xstrdup (sname); symtab_newname = xstrdup (newname); } @@ -753,7 +821,7 @@ process_file (const char *fname) else { int result = compress_section (scn, size, sname, newname, - ndx, true, true, + ndx, NONE, type, verbose > 0); if (result < 0) goto cleanup; @@ -764,8 +832,8 @@ process_file (const char *fname) } else if (verbose >= 0) { - if (startswith (sname, ".zdebug")) - printf ("[%zd] %s unchanged, already GNU compressed", + if (schtype == ZLIB_GNU) + printf ("[%zd] %s unchanged, already GNU compressed\n", ndx, sname); else printf ("[%zd] %s cannot GNU compress section not starting with .debug\n", @@ -773,20 +841,23 @@ process_file (const char *fname) } break; - case T_COMPRESS_ZLIB: - if ((shdr->sh_flags & SHF_COMPRESSED) == 0) + case ZLIB: + case ZSTD: + if (schtype != type) { - if (startswith (sname, ".zdebug")) + if (schtype != NONE) { - /* First decompress to recompress zlib style. - Don't report even when verbose. */ + /* Decompress first. */ if (compress_section (scn, size, sname, NULL, ndx, - true, false, false) < 0) + schtype, NONE, false) < 0) goto cleanup; - snamebuf[0] = '.'; - strcpy (&snamebuf[1], &sname[2]); - newname = snamebuf; + if (schtype == ZLIB_GNU) + { + snamebuf[0] = '.'; + strcpy (&snamebuf[1], &sname[2]); + newname = snamebuf; + } } if (skip_compress_section) @@ -794,7 +865,7 @@ process_file (const char *fname) if (ndx == shdrstrndx) { shstrtab_size = size; - shstrtab_compressed = T_COMPRESS_ZLIB; + shstrtab_compressed = type; if (shstrtab_name != NULL || shstrtab_newname != NULL) { @@ -811,19 +882,22 @@ process_file (const char *fname) else { symtab_size = size; - symtab_compressed = T_COMPRESS_ZLIB; + symtab_compressed = type; symtab_name = xstrdup (sname); symtab_newname = (newname == NULL ? NULL : xstrdup (newname)); } } else if (compress_section (scn, size, sname, newname, ndx, - false, true, verbose > 0) < 0) + NONE, type, verbose > 0) < 0) goto cleanup; } else if (verbose > 0) printf ("[%zd] %s already compressed\n", ndx, sname); break; + + case UNSET: + break; } free (sname); @@ -903,28 +977,28 @@ process_file (const char *fname) /* If the section is (still) compressed we'll need to uncompress it first to adjust the data, then recompress it in the fixup pass. */ - if (symtab_compressed == T_UNSET) + if (symtab_compressed == UNSET) { size_t size = shdr->sh_size; if ((shdr->sh_flags == SHF_COMPRESSED) != 0) { /* Don't report the (internal) uncompression. */ if (compress_section (newscn, size, sname, NULL, ndx, - false, false, false) < 0) + ZLIB, NONE, false) < 0) goto cleanup; symtab_size = size; - symtab_compressed = T_COMPRESS_ZLIB; + symtab_compressed = ZLIB; } else if (startswith (name, ".zdebug")) { /* Don't report the (internal) uncompression. */ if (compress_section (newscn, size, sname, NULL, ndx, - true, false, false) < 0) + ZLIB_GNU, NONE, false) < 0) goto cleanup; symtab_size = size; - symtab_compressed = T_COMPRESS_GNU; + symtab_compressed = ZLIB_GNU; } } @@ -1037,7 +1111,7 @@ process_file (const char *fname) or if the section was already compressed (and the user didn't ask for decompression). Note somewhat identical code for symtab below. */ - if (shstrtab_compressed == T_UNSET) + if (shstrtab_compressed == UNSET) { /* The user didn't ask for compression, but maybe it was compressed in the original ELF file. */ @@ -1067,18 +1141,18 @@ process_file (const char *fname) shstrtab_size = shdr->sh_size; if ((shdr->sh_flags & SHF_COMPRESSED) != 0) - shstrtab_compressed = T_COMPRESS_ZLIB; + shstrtab_compressed = ZLIB; else if (startswith (shstrtab_name, ".zdebug")) - shstrtab_compressed = T_COMPRESS_GNU; + shstrtab_compressed = ZLIB_GNU; } /* Should we (re)compress? */ - if (shstrtab_compressed != T_UNSET) + if (shstrtab_compressed != UNSET) { if (compress_section (scn, shstrtab_size, shstrtab_name, shstrtab_newname, shdrstrndx, - shstrtab_compressed == T_COMPRESS_GNU, - true, verbose > 0) < 0) + NONE, shstrtab_compressed, + verbose > 0) < 0) goto cleanup; } } @@ -1178,7 +1252,7 @@ process_file (const char *fname) us to, or if the section was already compressed (and the user didn't ask for decompression). Note somewhat identical code for shstrtab above. */ - if (symtab_compressed == T_UNSET) + if (symtab_compressed == UNSET) { /* The user didn't ask for compression, but maybe it was compressed in the original ELF file. */ @@ -1208,18 +1282,18 @@ process_file (const char *fname) symtab_size = shdr->sh_size; if ((shdr->sh_flags & SHF_COMPRESSED) != 0) - symtab_compressed = T_COMPRESS_ZLIB; + symtab_compressed = ZLIB; else if (startswith (symtab_name, ".zdebug")) - symtab_compressed = T_COMPRESS_GNU; + symtab_compressed = ZLIB_GNU; } /* Should we (re)compress? */ - if (symtab_compressed != T_UNSET) + if (symtab_compressed != UNSET) { if (compress_section (scn, symtab_size, symtab_name, symtab_newname, symtabndx, - symtab_compressed == T_COMPRESS_GNU, - true, verbose > 0) < 0) + NONE, symtab_compressed, + verbose > 0) < 0) goto cleanup; } } @@ -1331,7 +1405,8 @@ main (int argc, char **argv) N_("Place (de)compressed output into FILE"), 0 }, { "type", 't', "TYPE", 0, - N_("What type of compression to apply. TYPE can be 'none' (decompress), 'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias) or 'zlib-gnu' (.zdebug GNU style compression, 'gnu' is an alias)"), + N_("What type of compression to apply. TYPE can be 'none' (decompress), 'zlib' (ELF ZLIB compression, the default, 'zlib-gabi' is an alias), " + "'zlib-gnu' (.zdebug GNU style compression, 'gnu' is an alias) or 'zstd' (ELF ZSTD compression)"), 0 }, { "name", 'n', "SECTION", 0, N_("SECTION name to (de)compress, SECTION is an extended wildcard pattern (defaults to '.?(z)debug*')"), diff --git a/src/elflint.c b/src/elflint.c index 565cffdc..dd42dcb4 100644 --- a/src/elflint.c +++ b/src/elflint.c @@ -329,7 +329,8 @@ static const int valid_e_machine[] = EM_CRIS, EM_JAVELIN, EM_FIREPATH, EM_ZSP, EM_MMIX, EM_HUANY, EM_PRISM, EM_AVR, EM_FR30, EM_D10V, EM_D30V, EM_V850, EM_M32R, EM_MN10300, EM_MN10200, EM_PJ, EM_OPENRISC, EM_ARC_A5, EM_XTENSA, EM_ALPHA, - EM_TILEGX, EM_TILEPRO, EM_AARCH64, EM_BPF, EM_RISCV, EM_CSKY + EM_TILEGX, EM_TILEPRO, EM_AARCH64, EM_BPF, EM_RISCV, EM_CSKY, EM_LOONGARCH, + EM_ARCV2 }; #define nvalid_e_machine \ (sizeof (valid_e_machine) / sizeof (valid_e_machine[0])) @@ -3568,9 +3569,12 @@ section [%2d] '%s': offset %zu: attribute subsection has unexpected tag %u\n"), const unsigned char *r = chunk; if (tag == 32 || (tag & 1) == 0) { + if (r >= q) + goto invalid_uleb; get_uleb128 (value, r, q); if (r > q) { + invalid_uleb: ERROR (_("\ section [%2d] '%s': offset %zu: endless ULEB128 in attribute tag\n"), idx, section_name (ebl, idx), buffer_pos (data, chunk)); @@ -829,7 +829,7 @@ show_symbols_sysv (Ebl *ebl, GElf_Word strndx, const char *fullname, putchar_unlocked (':'); } - /* Covert the address. */ + /* Convert the address. */ if (syms[cnt].sym.st_shndx == SHN_UNDEF) { sprintf (addressbuf, "%*c", digits, ' '); diff --git a/src/readelf.c b/src/readelf.c index 0e0b05c4..6950204e 100644 --- a/src/readelf.c +++ b/src/readelf.c @@ -306,7 +306,7 @@ static void handle_relocs_rel (Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, GElf_Shdr *shdr); static void handle_relocs_rela (Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, GElf_Shdr *shdr); -static void print_symtab (Ebl *ebl, int type); +static bool print_symtab (Ebl *ebl, int type); static void handle_symtab (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr); static void print_verinfo (Ebl *ebl); static void handle_verneed (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr); @@ -1022,6 +1022,8 @@ process_elf_file (Dwfl_Module *dwflmod, int fd) goto ebl_error; } + bool symtab_printed = false; + if (print_file_header) print_ehdr (ebl, ehdr); if (print_section_header) @@ -1037,11 +1039,17 @@ process_elf_file (Dwfl_Module *dwflmod, int fd) if (print_histogram) handle_hash (ebl); if (print_symbol_table || print_dynsym_table) - print_symtab (ebl, SHT_DYNSYM); + symtab_printed |= print_symtab (ebl, SHT_DYNSYM); if (print_version_info) print_verinfo (ebl); if (print_symbol_table) - print_symtab (ebl, SHT_SYMTAB); + symtab_printed |= print_symtab (ebl, SHT_SYMTAB); + + if ((print_symbol_table || print_dynsym_table) + && !symtab_printed && symbol_table_section != NULL) + printf ("WARNING: %s: '%s'\n", _("cannot find section"), + symbol_table_section); + if (print_arch) print_liblist (ebl); if (print_arch) @@ -1057,13 +1065,14 @@ process_elf_file (Dwfl_Module *dwflmod, int fd) if (print_string_sections) print_strings (ebl); - ebl_closebackend (ebl); - if (pure_ebl != ebl) { + ebl_closebackend (ebl); ebl_closebackend (pure_ebl); elf_end (pure_elf); } + else + ebl_closebackend (ebl); } @@ -1230,13 +1239,17 @@ get_visibility_type (int value) static const char * elf_ch_type_name (unsigned int code) { - if (code == 0) - return "NONE"; - - if (code == ELFCOMPRESS_ZLIB) - return "ZLIB"; - - return "UNKNOWN"; + switch (code) + { + case 0: + return "NONE"; + case ELFCOMPRESS_ZLIB: + return "ZLIB"; + case ELFCOMPRESS_ZSTD: + return "ZSTD"; + default: + return "UNKNOWN"; + } } /* Print the section headers. */ @@ -1828,7 +1841,7 @@ handle_dynamic (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr, GElf_Phdr *phdr) size_t dyn_ents; /* Get the data of the section. */ - if (use_dynamic_segment) + if (use_dynamic_segment && phdr != NULL) data = elf_getdata_rawchunk(ebl->elf, phdr->p_offset, phdr->p_filesz, ELF_T_DYN); else @@ -1840,7 +1853,7 @@ handle_dynamic (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr, GElf_Phdr *phdr) /* Get the dynamic section entry number */ dyn_ents = get_dyn_ents (data); - if (!use_dynamic_segment) + if (!use_dynamic_segment && shdr != NULL) { /* Get the section header string table index. */ if (unlikely (elf_getshdrstrndx (ebl->elf, &shstrndx) < 0)) @@ -1862,7 +1875,7 @@ handle_dynamic (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr, GElf_Phdr *phdr) (int) shdr->sh_link, elf_strptr (ebl->elf, shstrndx, glink->sh_name)); } - else + else if (phdr != NULL) { printf (ngettext ("\ \nDynamic segment contains %lu entry:\n Addr: %#0*" PRIx64 " Offset: %#08" PRIx64 "\n", @@ -1879,7 +1892,7 @@ handle_dynamic (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr, GElf_Phdr *phdr) /* if --use-dynamic option is enabled, use the string table to get the related library info. */ Elf_Data *strtab_data = NULL; - if (use_dynamic_segment) + if (use_dynamic_segment && phdr != NULL) { strtab_data = get_dynscn_strtab(ebl->elf, phdr); if (strtab_data == NULL) @@ -1903,7 +1916,7 @@ handle_dynamic (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr, GElf_Phdr *phdr) || dyn->d_tag == DT_RPATH || dyn->d_tag == DT_RUNPATH) { - if (! use_dynamic_segment) + if (! use_dynamic_segment && shdr != NULL) name = elf_strptr (ebl->elf, shdr->sh_link, dyn->d_un.d_val); else if (dyn->d_un.d_val < strtab_data->d_size && memrchr (strtab_data->d_buf + dyn->d_un.d_val, '\0', @@ -2425,13 +2438,15 @@ handle_relocs_rela (Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, GElf_Shdr *shdr) } -/* Print the program header. */ -static void +/* Print the program header. Return true if a symtab is printed, + false otherwise. */ +static bool print_symtab (Ebl *ebl, int type) { /* Find the symbol table(s). For this we have to search through the section table. */ Elf_Scn *scn = NULL; + bool symtab_printed = false; while ((scn = elf_nextscn (ebl->elf, scn)) != NULL) { @@ -2467,8 +2482,11 @@ print_symtab (Ebl *ebl, int type) elf_ndxscn (scn), elf_errmsg (-1)); } handle_symtab (ebl, scn, shdr); + symtab_printed = true; } } + + return symtab_printed; } @@ -3785,6 +3803,7 @@ print_attributes (Ebl *ebl, const GElf_Ehdr *ehdr) if (tag == 32 || (tag & 1) == 0 || (! gnu_vendor && (tag > 5 && tag < 32))) { + // Note r >= q check above. get_uleb128 (value, r, q); if (r > q) break; @@ -3840,6 +3859,39 @@ print_attributes (Ebl *ebl, const GElf_Ehdr *ehdr) } } +/* Returns either the (relocated) data from the Dwarf, or tries to get + the "raw" (uncompressed) data from the Elf section. Produces a + warning if the data cannot be found (or decompressed). */ +static Elf_Data * +get_debug_elf_data (Dwarf *dbg, Ebl *ebl, int idx, Elf_Scn *scn) +{ + /* We prefer to get the section data from the Dwarf because that + might have been relocated already. Note this is subtly wrong if + there are multiple sections with the same .debug name. */ + if (dbg->sectiondata[idx] != NULL) + return dbg->sectiondata[idx]; + + GElf_Shdr shdr_mem; + GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem); + if (shdr != NULL && (shdr->sh_flags & SHF_COMPRESSED) != 0) + { + if (elf_compress (scn, 0, 0) < 0) + { + error (0, 0, "%s [%zd] '%s'\n", + _("Couldn't uncompress section"), + elf_ndxscn (scn), section_name (ebl, shdr)); + return NULL; + } + } + + Elf_Data *data = elf_getdata (scn, NULL); + if (data == NULL) + error (0, 0, "%s [%zd] '%s': %s\n", + _("Couldn't get data from section"), + elf_ndxscn (scn), section_name (ebl, shdr), elf_errmsg (-1)); + + return elf_getdata (scn, NULL); +} void print_dwarf_addr (Dwfl_Module *dwflmod, @@ -4910,7 +4962,7 @@ get_dynscn_addrs(Elf *elf, GElf_Phdr *phdr, GElf_Addr addrs[i_max]) GElf_Dyn dyn_mem; GElf_Dyn *dyn = gelf_getdyn(data, dyn_idx, &dyn_mem); /* DT_NULL Marks end of dynamic section. */ - if (dyn->d_tag == DT_NULL) + if (dyn == NULL || dyn->d_tag == DT_NULL) break; switch (dyn->d_tag) { @@ -5254,8 +5306,11 @@ print_debug_abbrev_section (Dwfl_Module *dwflmod __attribute__ ((unused)), Ebl *ebl, GElf_Ehdr *ehdr __attribute__ ((unused)), Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { - const size_t sh_size = (dbg->sectiondata[IDX_debug_abbrev] ? - dbg->sectiondata[IDX_debug_abbrev]->d_size : 0); + Elf_Data *elf_data = get_debug_elf_data (dbg, ebl, IDX_debug_abbrev, scn); + if (elf_data == NULL) + return; + + const size_t sh_size = elf_data->d_size; printf (_("\nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n" " [ Code]\n"), @@ -5327,6 +5382,10 @@ print_debug_addr_section (Dwfl_Module *dwflmod __attribute__ ((unused)), Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_addr, scn); + if (data == NULL) + return; + printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), elf_ndxscn (scn), section_name (ebl, shdr), @@ -5335,16 +5394,6 @@ print_debug_addr_section (Dwfl_Module *dwflmod __attribute__ ((unused)), if (shdr->sh_size == 0) return; - /* We like to get the section from libdw to make sure they are relocated. */ - Elf_Data *data = (dbg->sectiondata[IDX_debug_addr] - ?: elf_rawdata (scn, NULL)); - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get .debug_addr section data: %s"), - elf_errmsg (-1)); - return; - } - size_t idx = 0; sort_listptr (&known_addrbases, "addr_base"); @@ -5626,15 +5675,9 @@ print_debug_aranges_section (Dwfl_Module *dwflmod __attribute__ ((unused)), return; } - Elf_Data *data = (dbg->sectiondata[IDX_debug_aranges] - ?: elf_rawdata (scn, NULL)); - - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get .debug_aranges content: %s"), - elf_errmsg (-1)); - return; - } + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_aranges, scn); + if (data == NULL) + return; printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), @@ -5803,20 +5846,15 @@ print_debug_rnglists_section (Dwfl_Module *dwflmod, Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg __attribute__((unused))) { + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_rnglists, scn); + if (data == NULL) + return; + printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), elf_ndxscn (scn), section_name (ebl, shdr), (uint64_t) shdr->sh_offset); - Elf_Data *data =(dbg->sectiondata[IDX_debug_rnglists] - ?: elf_rawdata (scn, NULL)); - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get .debug_rnglists content: %s"), - elf_errmsg (-1)); - return; - } - /* For the listptr to get the base address/CU. */ sort_listptr (&known_rnglistptr, "rnglistptr"); size_t listptr_idx = 0; @@ -6179,14 +6217,9 @@ print_debug_ranges_section (Dwfl_Module *dwflmod, Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { - Elf_Data *data = (dbg->sectiondata[IDX_debug_ranges] - ?: elf_rawdata (scn, NULL)); - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get .debug_ranges content: %s"), - elf_errmsg (-1)); - return; - } + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_ranges, scn); + if (data == NULL) + return; printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), @@ -6337,9 +6370,13 @@ read_encoded (unsigned int encoding, const unsigned char *readp, switch (encoding & 0xf) { case DW_EH_PE_uleb128: + if (readp >= endp) + goto invalid; get_uleb128 (*res, readp, endp); break; case DW_EH_PE_sleb128: + if (readp >= endp) + goto invalid; get_sleb128 (*res, readp, endp); break; case DW_EH_PE_udata2: @@ -6787,16 +6824,22 @@ print_debug_frame_section (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr, } bool is_eh_frame = strcmp (scnname, ".eh_frame") == 0; - Elf_Data *data = (is_eh_frame - ? elf_rawdata (scn, NULL) - : (dbg->sectiondata[IDX_debug_frame] - ?: elf_rawdata (scn, NULL))); - - if (unlikely (data == NULL)) + Elf_Data *data; + if (is_eh_frame) { - error (0, 0, _("cannot get %s content: %s"), - scnname, elf_errmsg (-1)); - return; + data = elf_rawdata (scn, NULL); + if (data == NULL) + { + error (0, 0, _("cannot get %s content: %s"), + scnname, elf_errmsg (-1)); + return; + } + } + else + { + data = get_debug_elf_data (dbg, ebl, IDX_debug_frame, scn); + if (data == NULL) + return; } if (is_eh_frame) @@ -6946,6 +6989,9 @@ print_debug_frame_section (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr, if (augmentation[0] == 'z') { + if (cieend - readp < 1) + goto invalid_data; + unsigned int augmentationlen; get_uleb128 (augmentationlen, readp, cieend); @@ -7895,6 +7941,13 @@ print_debug_units (Dwfl_Module *dwflmod, const bool silent = !(print_debug_sections & section_info) && !debug_types; const char *secname = section_name (ebl, shdr); + /* Check section actually exists. */ + if (!silent) + if (get_debug_elf_data (dbg, ebl, + debug_types ? IDX_debug_types : IDX_debug_info, + scn) == NULL) + return; + if (!silent) printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n [Offset]\n"), @@ -8559,6 +8612,10 @@ print_debug_line_section (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr, return; } + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_line, scn); + if (data == NULL) + return; + printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), elf_ndxscn (scn), section_name (ebl, shdr), @@ -8569,14 +8626,6 @@ print_debug_line_section (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr, /* There is no functionality in libdw to read the information in the way it is represented here. Hardcode the decoder. */ - Elf_Data *data = (dbg->sectiondata[IDX_debug_line] - ?: elf_rawdata (scn, NULL)); - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get line data section data: %s"), - elf_errmsg (-1)); - return; - } const unsigned char *linep = (const unsigned char *) data->d_buf; const unsigned char *lineendp; @@ -9305,20 +9354,15 @@ print_debug_loclists_section (Dwfl_Module *dwflmod, Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_loclists, scn); + if (data == NULL) + return; + printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), elf_ndxscn (scn), section_name (ebl, shdr), (uint64_t) shdr->sh_offset); - Elf_Data *data = (dbg->sectiondata[IDX_debug_loclists] - ?: elf_rawdata (scn, NULL)); - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get .debug_loclists content: %s"), - elf_errmsg (-1)); - return; - } - /* For the listptr to get the base address/CU. */ sort_listptr (&known_loclistsptr, "loclistsptr"); size_t listptr_idx = 0; @@ -9778,15 +9822,9 @@ print_debug_loc_section (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { - Elf_Data *data = (dbg->sectiondata[IDX_debug_loc] - ?: elf_rawdata (scn, NULL)); - - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get .debug_loc content: %s"), - elf_errmsg (-1)); - return; - } + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_loc, scn); + if (data == NULL) + return; printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), @@ -10039,6 +10077,10 @@ print_debug_macinfo_section (Dwfl_Module *dwflmod __attribute__ ((unused)), GElf_Ehdr *ehdr __attribute__ ((unused)), Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_macinfo, scn); + if (data == NULL) + return; + printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), elf_ndxscn (scn), section_name (ebl, shdr), @@ -10047,14 +10089,6 @@ print_debug_macinfo_section (Dwfl_Module *dwflmod __attribute__ ((unused)), /* There is no function in libdw to iterate over the raw content of the section but it is easy enough to do. */ - Elf_Data *data = (dbg->sectiondata[IDX_debug_macinfo] - ?: elf_rawdata (scn, NULL)); - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get macro information section data: %s"), - elf_errmsg (-1)); - return; - } /* Get the source file information for all CUs. */ Dwarf_Off offset; @@ -10205,20 +10239,16 @@ print_debug_macro_section (Dwfl_Module *dwflmod __attribute__ ((unused)), GElf_Ehdr *ehdr __attribute__ ((unused)), Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_macro, scn); + if (data == NULL) + return; + printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), elf_ndxscn (scn), section_name (ebl, shdr), (uint64_t) shdr->sh_offset); putc_unlocked ('\n', stdout); - Elf_Data *data = elf_getdata (scn, NULL); - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get macro information section data: %s"), - elf_errmsg (-1)); - return; - } - /* Get the source file information for all CUs. Uses same datastructure as macinfo. But uses offset field to directly match .debug_line offset. And just stored in a list. */ @@ -10226,7 +10256,6 @@ print_debug_macro_section (Dwfl_Module *dwflmod __attribute__ ((unused)), Dwarf_Off ncu = 0; size_t hsize; struct mac_culist *culist = NULL; - size_t nculist = 0; while (dwarf_nextcu (dbg, offset = ncu, &ncu, &hsize, NULL, NULL, NULL) == 0) { Dwarf_Die cudie; @@ -10247,7 +10276,6 @@ print_debug_macro_section (Dwfl_Module *dwflmod __attribute__ ((unused)), newp->files = NULL; newp->next = culist; culist = newp; - ++nculist; } const unsigned char *readp = (const unsigned char *) data->d_buf; @@ -10592,6 +10620,10 @@ print_debug_pubnames_section (Dwfl_Module *dwflmod __attribute__ ((unused)), GElf_Ehdr *ehdr __attribute__ ((unused)), Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { + /* Check section actually exists. */ + if (get_debug_elf_data (dbg, ebl, IDX_debug_pubnames, scn) == NULL) + return; + printf (_("\nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), elf_ndxscn (scn), section_name (ebl, shdr), (uint64_t) shdr->sh_offset); @@ -10600,7 +10632,8 @@ print_debug_pubnames_section (Dwfl_Module *dwflmod __attribute__ ((unused)), (void) dwarf_getpubnames (dbg, print_pubnames, &n, 0); } -/* Print the content of the DWARF string section '.debug_str'. */ +/* Print the content of the DWARF string section '.debug_str' + or 'debug_line_str'. */ static void print_debug_str_section (Dwfl_Module *dwflmod __attribute__ ((unused)), Ebl *ebl, @@ -10608,8 +10641,14 @@ print_debug_str_section (Dwfl_Module *dwflmod __attribute__ ((unused)), Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg __attribute__ ((unused))) { - Elf_Data *data = elf_rawdata (scn, NULL); - const size_t sh_size = data ? data->d_size : 0; + const char *name = section_name (ebl, shdr); + int idx = ((name != NULL && strstr (name, "debug_line_str") != NULL) + ? IDX_debug_line_str : IDX_debug_str); + Elf_Data *data = get_debug_elf_data (dbg, ebl, idx, scn); + if (data == NULL) + return; + + const size_t sh_size = data->d_size; /* Compute floor(log16(shdr->sh_size)). */ GElf_Addr tmp = sh_size; @@ -10652,6 +10691,10 @@ print_debug_str_offsets_section (Dwfl_Module *dwflmod __attribute__ ((unused)), GElf_Ehdr *ehdr __attribute__ ((unused)), Elf_Scn *scn, GElf_Shdr *shdr, Dwarf *dbg) { + Elf_Data *data = get_debug_elf_data (dbg, ebl, IDX_debug_str_offsets, scn); + if (data == NULL) + return; + printf (_("\ \nDWARF section [%2zu] '%s' at offset %#" PRIx64 ":\n"), elf_ndxscn (scn), section_name (ebl, shdr), @@ -10660,16 +10703,6 @@ print_debug_str_offsets_section (Dwfl_Module *dwflmod __attribute__ ((unused)), if (shdr->sh_size == 0) return; - /* We like to get the section from libdw to make sure they are relocated. */ - Elf_Data *data = (dbg->sectiondata[IDX_debug_str_offsets] - ?: elf_rawdata (scn, NULL)); - if (unlikely (data == NULL)) - { - error (0, 0, _("cannot get .debug_str_offsets section data: %s"), - elf_errmsg (-1)); - return; - } - size_t idx = 0; sort_listptr (&known_stroffbases, "str_offsets"); @@ -10986,6 +11019,8 @@ print_debug_exception_table (Dwfl_Module *dwflmod __attribute__ ((unused)), if (ttype_encoding != DW_EH_PE_omit) { unsigned int ttype_base_offset; + if (readp >= dataend) + goto invalid_data; get_uleb128 (ttype_base_offset, readp, dataend); printf (" TType base offset: %#x\n", ttype_base_offset); if ((size_t) (dataend - readp) > ttype_base_offset) @@ -10998,6 +11033,8 @@ print_debug_exception_table (Dwfl_Module *dwflmod __attribute__ ((unused)), printf (_(" Call site encoding: %#x "), call_site_encoding); print_encoding_base ("", call_site_encoding); unsigned int call_site_table_len; + if (readp >= dataend) + goto invalid_data; get_uleb128 (call_site_table_len, readp, dataend); const unsigned char *const action_table = readp + call_site_table_len; @@ -11020,6 +11057,8 @@ print_debug_exception_table (Dwfl_Module *dwflmod __attribute__ ((unused)), readp = read_encoded (call_site_encoding, readp, dataend, &landing_pad, dbg); unsigned int action; + if (readp >= dataend) + goto invalid_data; get_uleb128 (action, readp, dataend); max_action = MAX (action, max_action); printf (_(" [%4u] Call site start: %#" PRIx64 "\n" @@ -12176,23 +12215,16 @@ handle_core_items (Elf *core, const void *desc, size_t descsz, } static unsigned int -handle_bit_registers (const Ebl_Register_Location *regloc, const void *desc, - unsigned int colno) -{ - desc += regloc->offset; - - abort (); /* XXX */ - return colno; -} - - -static unsigned int handle_core_register (Ebl *ebl, Elf *core, int maxregname, const Ebl_Register_Location *regloc, const void *desc, unsigned int colno) { if (regloc->bits % 8 != 0) - return handle_bit_registers (regloc, desc, colno); + { + error (0, 0, "Warning: Cannot handle register with %" PRIu8 "bits\n", + regloc->bits); + return colno; + } desc += regloc->offset; diff --git a/src/strings.c b/src/strings.c index 55b047be..69d09ccf 100644 --- a/src/strings.c +++ b/src/strings.c @@ -364,7 +364,7 @@ process_chunk_mb (const char *fname, const unsigned char *buf, off_t to, /* There is no sane way of printing the string. If we assume the file data is encoded in UCS-2/UTF-16 or - UCS-4/UTF-32 respectively we could covert the string. + UCS-4/UTF-32 respectively we could convert the string. But there is no such guarantee. */ fwrite_unlocked (start, 1, buf - start, stdout); putc_unlocked ('\n', stdout); diff --git a/tests/.gitignore b/tests/.gitignore index 99d04819..b9aa22ba 100644 --- a/tests/.gitignore +++ b/tests/.gitignore @@ -47,6 +47,7 @@ /dwfl-bug-report /dwfl-proc-attach /dwfl-report-elf-align +/dwfl-report-offline-memory /dwfl-report-segment-contiguous /dwfllines /dwflmodtest @@ -65,6 +66,7 @@ /fillfile /find-prologues /funcretval +/funcretval_test++11 /funcscopes /get-aranges /get-files diff --git a/tests/ChangeLog b/tests/ChangeLog index b656029f..eb3e1118 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,39 @@ +2023-02-10 Mark Wielaard <mark@klomp.org> + + * varlocs.c (print_expr): Handle DW_OP_GNU_uninit. + +2023-02-07 Mark Wielaard <mark@klomp.org> + + * tests/funcretval.c (handle_function): Check for + DW_TAG_unspecified_type. + +2023-02-03 Mark Wielaard <mark@klomp.org> + + * run-addr2line-C-test.sh: Check ELFUTILS_DISABLE_DEMANGLE. + +2023-01-22 Mark Wielaard <mark@klomp.org> + + * testfile-inlines-lto.bz2: New testfile. + * run-addr2line-i-test.sh: Add new lto inlines test. + * Makefile.am (EXTRA_DIST): Add testfile-inlines-lto.bz2. + +2023-01-19 Mark Wielaard <mark@klomp.org> + + * run-addr2line-C-test.sh: New test. + * Makefile.am (TESTS): Add run-addr2line-C-test.sh. + (EXTRA_DIST): Likewise. + +2023-01-19 Mark Wielaard <mark@klomp.org> + + * run-debuginfod-query-retry.sh: Use libdebuginfod.so.1 instead + of /bin/sh as test file. + +2022-12-21 Shahab Vahedi <shahab@synopsys.email> + + * hello_arc_hs4.ko.bz2: New testfile. + * run-strip-reloc.sh: Add ARC HS4 test. + * Makefile.am (EXTRA_DIST): Add hello_arc_hs4.ko.bz2. + 2022-11-01 Aaron Merey <amerey@redhat.com> * run-debuginfod-section.sh (RPM_BUILDID): Use buildid from non-zstd diff --git a/tests/Makefile.am b/tests/Makefile.am index 356b3fbf..fd58bf84 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -88,12 +88,16 @@ endif # test_nlist checks its own symbol table, and expects various symbols # to be in the order as specified in the source file. Explicitly set -# minimal CFLAGS. But add address sanitizer if in use. +# minimal CFLAGS. But add sanitizers if in use. if USE_ADDRESS_SANITIZER EXTRA_NLIST_CFLAGS=-fsanitize=address else +if USE_MEMORY_SANITIZER +EXTRA_NLIST_CFLAGS=-fsanitize=memory -fsanitize-memory-track-origins +else EXTRA_NLIST_CFLAGS= endif +endif test-nlist$(EXEEXT): test-nlist.c $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -151,6 +155,7 @@ TESTS = run-arextract.sh run-arsymtest.sh run-ar.sh newfile test-nlist \ run-readelf-variant.sh run-readelf-fat-lto.sh \ run-dwfl-report-elf-align.sh run-addr2line-test.sh \ run-dwfl-report-offline-memory.sh \ + run-addr2line-C-test.sh \ run-addr2line-i-test.sh run-addr2line-i-lex-test.sh \ run-addr2line-i-demangle-test.sh run-addr2line-alt-debugpath.sh \ run-varlocs.sh run-exprlocs.sh run-varlocs-vars.sh run-funcretval.sh \ @@ -220,6 +225,14 @@ if HAVE_ZSTD TESTS += run-readelf-compressed-zstd.sh endif +if USE_ZSTD_COMPRESS +export ELFUTILS_ZSTD = 1 +endif + +if USE_MEMORY_SANITIZER +export ELFUTILS_MEMORY_SANITIZER = 1 +endif + if DEBUGINFOD check_PROGRAMS += debuginfod_build_id_find # With the dummy delegation doesn't work @@ -257,6 +270,12 @@ TESTS += run-debuginfod-federation-metrics.sh endif endif +if HAVE_CXX11 +check_PROGRAMS += funcretval_test++11 +funcretval_test__11_SOURCES = funcretval_test++11.cxx +TESTS += run-funcretval++11.sh +endif + EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \ run-ar-N.sh \ run-show-die-info.sh run-get-files.sh run-get-lines.sh \ @@ -285,6 +304,7 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \ run-strip-reloc.sh hello_i386.ko.bz2 hello_x86_64.ko.bz2 \ hello_ppc64.ko.bz2 hello_s390.ko.bz2 hello_aarch64.ko.bz2 \ hello_m68k.ko.bz2 hello_riscv64.ko.bz2 hello_csky.ko.bz2 \ + hello_arc_hs4.ko.bz2 \ run-unstrip-test.sh run-unstrip-test2.sh \ testfile-info-link.bz2 testfile-info-link.debuginfo.bz2 \ testfile-info-link.stripped.bz2 run-unstrip-test3.sh \ @@ -420,7 +440,9 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \ testfile-dwfl-report-elf-align-shlib.so.bz2 \ testfilenolines.bz2 test-core-lib.so.bz2 test-core.core.bz2 \ test-core.exec.bz2 run-addr2line-test.sh \ + run-addr2line-C-test.sh \ run-addr2line-i-test.sh testfile-inlines.bz2 \ + testfile-inlines-lto.bz2 \ run-addr2line-i-lex-test.sh testfile-lex-inlines.bz2 \ run-addr2line-i-demangle-test.sh run-addr2line-alt-debugpath.sh \ testfileppc32.bz2 testfileppc64.bz2 \ @@ -596,7 +618,8 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \ run-readelf-dw-form-indirect.sh testfile-dw-form-indirect.bz2 \ run-nvidia-extended-linemap-libdw.sh run-nvidia-extended-linemap-readelf.sh \ testfile_nvidia_linemap.bz2 \ - testfile-largealign.o.bz2 run-strip-largealign.sh + testfile-largealign.o.bz2 run-strip-largealign.sh \ + run-funcretval++11.sh if USE_VALGRIND diff --git a/tests/dwfl-report-offline-memory.c b/tests/dwfl-report-offline-memory.c index e6cb0a51..b3b4d9bd 100644 --- a/tests/dwfl-report-offline-memory.c +++ b/tests/dwfl-report-offline-memory.c @@ -77,8 +77,13 @@ main (int argc, char **argv) Dwfl *dwfl = dwfl_begin (&offline_callbacks); assert (dwfl != NULL); - Dwfl_Module *mod = - dwfl_report_offline_memory (dwfl, argv[1], argv[1], data, size); + Dwfl_Module *mod; + + /* Check error handling by suppling zero data */ + mod = dwfl_report_offline_memory(dwfl, argv[1], argv[1], NULL, 0); + assert(mod == NULL); + + mod = dwfl_report_offline_memory(dwfl, argv[1], argv[1], data, size); assert (mod != NULL); dwfl_report_end (dwfl, NULL, NULL); diff --git a/tests/elfstrmerge.c b/tests/elfstrmerge.c index 197c6a5d..56350bb9 100644 --- a/tests/elfstrmerge.c +++ b/tests/elfstrmerge.c @@ -157,7 +157,7 @@ newsecndx (size_t secndx, size_t shdrstrndx, size_t shdrnum, if (unlikely (secndx == 0 || secndx == shdrstrndx || secndx >= shdrnum)) { /* Don't use fail... too specialized messages. Call release - outselves and then error. Ignores midx if widx is + ourselves and then error. Ignores midx if widx is zero. */ release (); if (widx == 0) diff --git a/tests/funcretval.c b/tests/funcretval.c index 16cd1a44..41198ab7 100644 --- a/tests/funcretval.c +++ b/tests/funcretval.c @@ -1,5 +1,6 @@ /* Test program for dwfl_module_return_value_location. Copyright (C) 2005 Red Hat, Inc. + Copyright (C) 2023 Mark J. Wielaard <mark@klomp.org> This file is part of elfutils. This file is free software; you can redistribute it and/or modify @@ -67,7 +68,18 @@ handle_function (Dwarf_Die *funcdie, void *arg) error (EXIT_FAILURE, 0, "dwfl_module_return_value_location: %s", dwfl_errmsg (-1)); else if (nlocops == 0) - puts ("returns no value"); + { + // Check if this is the special unspecified type + // https://sourceware.org/bugzilla/show_bug.cgi?id=30047 + Dwarf_Die die_mem, *typedie = &die_mem; + Dwarf_Attribute attr_mem, *attr; + attr = dwarf_attr_integrate (funcdie, DW_AT_type, &attr_mem); + if (dwarf_formref_die (attr, typedie) != NULL + && dwarf_tag (typedie) == DW_TAG_unspecified_type) + puts ("returns unspecified type"); + else + puts ("returns no value"); + } else { printf ("return value location:"); diff --git a/tests/funcretval_test++11.cxx b/tests/funcretval_test++11.cxx new file mode 100644 index 00000000..69e25bfb --- /dev/null +++ b/tests/funcretval_test++11.cxx @@ -0,0 +1,37 @@ +/* Copyright (C) 2023 IBM Corporation + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + elfutils is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. */ + +#include <utility> + +int & +foo () +{ + static int tmp; + return tmp; +} + +int && +bar () +{ + static int tmp; + return std::move(tmp); +} + +int +main () +{ + return 0; +} diff --git a/tests/hello_arc_hs4.ko.bz2 b/tests/hello_arc_hs4.ko.bz2 Binary files differnew file mode 100644 index 00000000..56ccb3c4 --- /dev/null +++ b/tests/hello_arc_hs4.ko.bz2 diff --git a/tests/leb128.c b/tests/leb128.c index 47b57c0d..03090d80 100644 --- a/tests/leb128.c +++ b/tests/leb128.c @@ -118,6 +118,19 @@ test_sleb (void) } static int +test_sleb_safety (void) +{ + const int64_t expected_error = INT64_MAX; + int64_t value; + const unsigned char *test = NULL; + get_sleb128 (value, test, test); + if (value != expected_error) + return FAIL; + + return OK; +} + +static int test_one_uleb (const unsigned char *data, size_t len, uint64_t expect) { uint64_t value; @@ -166,8 +179,22 @@ test_uleb (void) return OK; } +static int +test_uleb_safety (void) +{ + const uint64_t expected_error = UINT64_MAX; + uint64_t value; + const unsigned char *test = NULL; + get_uleb128 (value, test, test); + if (value != expected_error) + return FAIL; + + return OK; +} + int main (void) { - return test_sleb () || test_uleb (); + return test_sleb () || test_sleb_safety () || test_uleb () + || test_uleb_safety (); } diff --git a/tests/run-addr2line-C-test.sh b/tests/run-addr2line-C-test.sh new file mode 100755 index 00000000..1780157d --- /dev/null +++ b/tests/run-addr2line-C-test.sh @@ -0,0 +1,96 @@ +#! /bin/sh +# Copyright (C) 2013 Red Hat, Inc. +# Copyright (C) 2023 Mark J. Wielaard <mark@klomp.org> +# This file is part of elfutils. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# elfutils is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +. $srcdir/test-subr.sh + +if test -n "$ELFUTILS_DISABLE_DEMANGLE"; then + echo "demangler unsupported" + exit 77 +fi + +# See run-addr2line-i-test.sh +testfiles testfile-inlines + +# Three variants -Cfi, -fCi -fiC all the same (with demangle) +testrun_compare ${abs_top_builddir}/src/addr2line --pretty-print -a -Cfi -e testfile-inlines 0x00000000000005a0 0x00000000000005a1 0x00000000000005b0 0x00000000000005b1 0x00000000000005c0 0x00000000000005d0 0x00000000000005e0 0x00000000000005e1 0x00000000000005f0 0x00000000000005f1 0x00000000000005f2 <<\EOF +0x00000000000005a0: foobar at /tmp/x.cpp:5 +0x00000000000005a1: foobar at /tmp/x.cpp:6 +0x00000000000005b0: fubar at /tmp/x.cpp:10 +0x00000000000005b1: fubar at /tmp/x.cpp:11 +0x00000000000005c0: foobar at /tmp/x.cpp:5 + (inlined by) bar at /tmp/x.cpp:15 +0x00000000000005d0: fubar at /tmp/x.cpp:10 + (inlined by) baz at /tmp/x.cpp:20 +0x00000000000005e0: foobar at /tmp/x.cpp:5 + (inlined by) bar at /tmp/x.cpp:15 + (inlined by) foo() at /tmp/x.cpp:25 +0x00000000000005e1: fubar at /tmp/x.cpp:10 + (inlined by) baz at /tmp/x.cpp:20 + (inlined by) foo() at /tmp/x.cpp:26 +0x00000000000005f0: fu() at /tmp/x.cpp:31 +0x00000000000005f1: fubar at /tmp/x.cpp:10 + (inlined by) fu() at /tmp/x.cpp:32 +0x00000000000005f2: foobar at /tmp/x.cpp:5 + (inlined by) fu() at /tmp/x.cpp:33 +EOF + +testrun_compare ${abs_top_builddir}/src/addr2line --pretty-print -a -fCi -e testfile-inlines 0x00000000000005a0 0x00000000000005a1 0x00000000000005b0 0x00000000000005b1 0x00000000000005c0 0x00000000000005d0 0x00000000000005e0 0x00000000000005e1 0x00000000000005f0 0x00000000000005f1 0x00000000000005f2 <<\EOF +0x00000000000005a0: foobar at /tmp/x.cpp:5 +0x00000000000005a1: foobar at /tmp/x.cpp:6 +0x00000000000005b0: fubar at /tmp/x.cpp:10 +0x00000000000005b1: fubar at /tmp/x.cpp:11 +0x00000000000005c0: foobar at /tmp/x.cpp:5 + (inlined by) bar at /tmp/x.cpp:15 +0x00000000000005d0: fubar at /tmp/x.cpp:10 + (inlined by) baz at /tmp/x.cpp:20 +0x00000000000005e0: foobar at /tmp/x.cpp:5 + (inlined by) bar at /tmp/x.cpp:15 + (inlined by) foo() at /tmp/x.cpp:25 +0x00000000000005e1: fubar at /tmp/x.cpp:10 + (inlined by) baz at /tmp/x.cpp:20 + (inlined by) foo() at /tmp/x.cpp:26 +0x00000000000005f0: fu() at /tmp/x.cpp:31 +0x00000000000005f1: fubar at /tmp/x.cpp:10 + (inlined by) fu() at /tmp/x.cpp:32 +0x00000000000005f2: foobar at /tmp/x.cpp:5 + (inlined by) fu() at /tmp/x.cpp:33 +EOF + +testrun_compare ${abs_top_builddir}/src/addr2line --pretty-print -a -fiC -e testfile-inlines 0x00000000000005a0 0x00000000000005a1 0x00000000000005b0 0x00000000000005b1 0x00000000000005c0 0x00000000000005d0 0x00000000000005e0 0x00000000000005e1 0x00000000000005f0 0x00000000000005f1 0x00000000000005f2 <<\EOF +0x00000000000005a0: foobar at /tmp/x.cpp:5 +0x00000000000005a1: foobar at /tmp/x.cpp:6 +0x00000000000005b0: fubar at /tmp/x.cpp:10 +0x00000000000005b1: fubar at /tmp/x.cpp:11 +0x00000000000005c0: foobar at /tmp/x.cpp:5 + (inlined by) bar at /tmp/x.cpp:15 +0x00000000000005d0: fubar at /tmp/x.cpp:10 + (inlined by) baz at /tmp/x.cpp:20 +0x00000000000005e0: foobar at /tmp/x.cpp:5 + (inlined by) bar at /tmp/x.cpp:15 + (inlined by) foo() at /tmp/x.cpp:25 +0x00000000000005e1: fubar at /tmp/x.cpp:10 + (inlined by) baz at /tmp/x.cpp:20 + (inlined by) foo() at /tmp/x.cpp:26 +0x00000000000005f0: fu() at /tmp/x.cpp:31 +0x00000000000005f1: fubar at /tmp/x.cpp:10 + (inlined by) fu() at /tmp/x.cpp:32 +0x00000000000005f2: foobar at /tmp/x.cpp:5 + (inlined by) fu() at /tmp/x.cpp:33 +EOF + +exit 0 diff --git a/tests/run-addr2line-i-test.sh b/tests/run-addr2line-i-test.sh index d08f3cba..e7b89083 100755 --- a/tests/run-addr2line-i-test.sh +++ b/tests/run-addr2line-i-test.sh @@ -220,4 +220,47 @@ testrun_compare ${abs_top_builddir}/src/addr2line --pretty-print -a -f -i -e tes (inlined by) _Z2fuv at /tmp/x.cpp:33 EOF +# == x.cpp == +# g++ x.cpp -g -fPIC -olibx.so -shared -O0 -flto +# +# __attribute__((always_inline)) inline +# int foobar(int i) +# { +# return i + 1; +# } +# +# __attribute__((always_inline)) inline +# int fubar(int i) +# { +# return i + 1; +# } +# +# __attribute__((always_inline)) inline +# int bar(int i) +# { +# return fubar(i++); +# } +# +# __attribute__((always_inline)) inline +# int foo(int i) +# { +# return foobar(i++); +# } +# +# int fu(int i) +# { +# return foo(i++) + bar(i++); +# } + +testfiles testfile-inlines-lto + +testrun_compare ${abs_top_builddir}/src/addr2line --pretty -fi -e testfile-inlines-lto 0x1118 0x1137 <<\EOF +_Z6foobari at /tmp/x.cpp:4:14 + (inlined by) _Z3fooi at /tmp/x.cpp:22:16 + (inlined by) _Z2fui at /tmp/x.cpp:27:13 +_Z5fubari at /tmp/x.cpp:10:14 + (inlined by) _Z3bari at /tmp/x.cpp:16:15 + (inlined by) _Z2fui at /tmp/x.cpp:27:24 +EOF + exit 0 diff --git a/tests/run-compress-test.sh b/tests/run-compress-test.sh index a6a298f5..2d4eebd6 100755 --- a/tests/run-compress-test.sh +++ b/tests/run-compress-test.sh @@ -61,6 +61,34 @@ testrun_elfcompress_file() echo "uncompress $elfcompressedfile -> $elfuncompressedfile" testrun ${abs_top_builddir}/src/elfcompress -v -t none -o ${elfuncompressedfile} ${elfcompressedfile} testrun ${abs_top_builddir}/src/elfcmp ${uncompressedfile} ${elfuncompressedfile} + + if test -z "$ELFUTILS_ZSTD"; then + return; + fi + + outputfile="${infile}.gabi.zstd" + tempfiles "$outputfile" + echo "zstd compress $elfcompressedfile -> $outputfile" + testrun ${abs_top_builddir}/src/elfcompress -v -t zstd -o ${outputfile} ${elfcompressedfile} + testrun ${abs_top_builddir}/src/elfcmp ${uncompressedfile} ${outputfile} + echo "checking compressed section header" $outputfile + testrun ${abs_top_builddir}/src/readelf -Sz ${outputfile} | grep "ELF ZSTD" >/dev/null + + zstdfile="${infile}.zstd" + tempfiles "$zstdfile" + echo "zstd compress $uncompressedfile -> $zstdfile" + testrun ${abs_top_builddir}/src/elfcompress -v -t zstd -o ${zstdfile} ${elfuncompressedfile} + testrun ${abs_top_builddir}/src/elfcmp ${uncompressedfile} ${zstdfile} + echo "checking compressed section header" $zstdfile + testrun ${abs_top_builddir}/src/readelf -Sz ${zstdfile} | grep "ELF ZSTD" >/dev/null + + zstdgnufile="${infile}.zstd.gnu" + tempfiles "$zstdgnufile" + echo "zstd re-compress to GNU ZLIB $zstdfile -> $zstdgnufile" + testrun ${abs_top_builddir}/src/elfcompress -v -t zlib-gnu -o ${zstdgnufile} ${zstdfile} + testrun ${abs_top_builddir}/src/elfcmp ${uncompressedfile} ${zstdgnufile} + echo "checking .zdebug section name" $zstdgnufile + testrun ${abs_top_builddir}/src/readelf -S ${zstdgnufile} | grep ".zdebug" >/dev/null } testrun_elfcompress() diff --git a/tests/run-debuginfod-extraction.sh b/tests/run-debuginfod-extraction.sh index a3722c90..3ca31b8a 100755 --- a/tests/run-debuginfod-extraction.sh +++ b/tests/run-debuginfod-extraction.sh @@ -45,7 +45,7 @@ ps -q $PID1 -e -L -o '%p %c %a' | grep scan ps -q $PID1 -e -L -o '%p %c %a' | grep traverse # Make sure the initial scan has finished before copying the new files in -# We might remove some, which we don't want to be accidentially scanned. +# We might remove some, which we don't want to be accidentally scanned. wait_ready $PORT1 'thread_work_total{role="traverse"}' 1 cp -rvp ${abs_srcdir}/debuginfod-rpms R diff --git a/tests/run-debuginfod-fd-prefetch-caches.sh b/tests/run-debuginfod-fd-prefetch-caches.sh index a538cd48..3db78ade 100755 --- a/tests/run-debuginfod-fd-prefetch-caches.sh +++ b/tests/run-debuginfod-fd-prefetch-caches.sh @@ -50,7 +50,7 @@ export DEBUGINFOD_CACHE_PATH=${PWD}/.client_cache rm -rf $DEBUGINFOD_CACHE_PATH rm -rf $DB # Testing prefetch fd maximum (Set mb maximums to be beyond consideration) -# Set --fdcache-mintmp=0 so we don't accidentially trigger an fdcache +# Set --fdcache-mintmp=0 so we don't accidentally trigger an fdcache # emergency flush for filling tmpdir env LD_LIBRARY_PATH=$ldpath DEBUGINFOD_URLS= ${abs_builddir}/../debuginfod/debuginfod $VERBOSE -p $PORT1 -d $DB \ --fdcache-fds=$FDCACHE_FDS --fdcache-prefetch-fds=$PREFETCH_FDS -vvvvv -g 0 -t 0 \ diff --git a/tests/run-debuginfod-query-retry.sh b/tests/run-debuginfod-query-retry.sh index 0cfdba92..2f551ffb 100755 --- a/tests/run-debuginfod-query-retry.sh +++ b/tests/run-debuginfod-query-retry.sh @@ -25,8 +25,9 @@ unset VALGRIND_CMD ######################################################################## # set up tests for retrying failed queries. retry_attempts=`(testrun env DEBUGINFOD_URLS=http://255.255.255.255/JUNKJUNK DEBUGINFOD_RETRY_LIMIT=10 DEBUGINFOD_VERBOSE=1 DEBUGINFOD_CACHE_PATH=${PWD}/.client_cache \ - ${abs_top_builddir}/debuginfod/debuginfod-find debuginfo /bin/sh || true) 2>&1 >/dev/null \ - | grep -c 'Retry failed query'` + ${abs_top_builddir}/debuginfod/debuginfod-find debuginfo \ + ${abs_top_builddir}/debuginfod/libdebuginfod.so.1 || true) \ + 2>&1 >/dev/null | grep -c 'Retry failed query'` if [ $retry_attempts -ne 10 ]; then echo "retry mechanism failed." exit 1; diff --git a/tests/run-funcretval++11.sh b/tests/run-funcretval++11.sh new file mode 100755 index 00000000..fcfefe19 --- /dev/null +++ b/tests/run-funcretval++11.sh @@ -0,0 +1,21 @@ +#! /bin/sh +# Copyright (C) 2023 IBM Corporation +# This file is part of elfutils. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# elfutils is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +. $srcdir/test-subr.sh + +testrun $abs_builddir/funcretval -e $abs_builddir/funcretval_test++11 \ + > /dev/null diff --git a/tests/run-readelf-s.sh b/tests/run-readelf-s.sh index ee1c0e82..6b218f10 100755 --- a/tests/run-readelf-s.sh +++ b/tests/run-readelf-s.sh @@ -395,4 +395,7 @@ Symbol table [27] '.symtab' contains 42 entries: 41: 00000000004003a8 0 FUNC GLOBAL DEFAULT 11 _init EOF +testrun ${abs_top_builddir}/src/readelf --elf-section -sW testfilebaxmin 2>&1 \ + | grep "WARNING: cannot find section: 'W'" >/dev/null || exit 2 + exit 0 diff --git a/tests/run-readelf-self.sh b/tests/run-readelf-self.sh index 7ffb3577..f5984597 100755 --- a/tests/run-readelf-self.sh +++ b/tests/run-readelf-self.sh @@ -17,5 +17,10 @@ . $srcdir/test-subr.sh +if test -n "$ELFUTILS_MEMORY_SANITIZER"; then + echo "binaries linked with memory sanitizer are too big" + exit 77 +fi + # Just makes sure readelf doesn't crash testrun_on_self_quiet ${abs_top_builddir}/src/readelf -a -w diff --git a/tests/run-strip-reloc.sh b/tests/run-strip-reloc.sh index b7ec1420..02e626af 100755 --- a/tests/run-strip-reloc.sh +++ b/tests/run-strip-reloc.sh @@ -17,8 +17,14 @@ . $srcdir/test-subr.sh +if test -n "$ELFUTILS_MEMORY_SANITIZER"; then + echo "binaries linked with memory sanitizer are too big" + exit 77 +fi + testfiles hello_i386.ko hello_x86_64.ko hello_ppc64.ko hello_s390.ko \ - hello_aarch64.ko hello_m68k.ko hello_riscv64.ko hello_csky.ko + hello_aarch64.ko hello_m68k.ko hello_riscv64.ko hello_csky.ko \ + hello_arc_hs4.ko tempfiles readelf.out readelf.out1 readelf.out2 tempfiles out.stripped1 out.debug1 out.stripped2 out.debug2 @@ -120,6 +126,7 @@ runtest hello_aarch64.ko 1 runtest hello_m68k.ko 1 runtest hello_riscv64.ko 1 runtest hello_csky.ko 1 +runtest hello_arc_hs4.ko 1 # self test, shouldn't impact non-ET_REL files at all. runtest ${abs_top_builddir}/src/strip 0 diff --git a/tests/run-varlocs-self.sh b/tests/run-varlocs-self.sh index 5454fc70..760fe4d7 100755 --- a/tests/run-varlocs-self.sh +++ b/tests/run-varlocs-self.sh @@ -17,6 +17,11 @@ . $srcdir/test-subr.sh +if test -n "$ELFUTILS_MEMORY_SANITIZER"; then + echo "binaries linked with memory sanitizer are too big" + exit 77 +fi + # Make sure varlocs doesn't crash, doesn't trigger self-check/asserts # or leaks running under valgrind. testrun_on_self_exe ${abs_top_builddir}/tests/varlocs -e diff --git a/tests/testfile-inlines-lto.bz2 b/tests/testfile-inlines-lto.bz2 Binary files differnew file mode 100755 index 00000000..7e2e2bfd --- /dev/null +++ b/tests/testfile-inlines-lto.bz2 diff --git a/tests/varlocs.c b/tests/varlocs.c index d2c13767..8e563fd3 100644 --- a/tests/varlocs.c +++ b/tests/varlocs.c @@ -251,6 +251,12 @@ print_expr (Dwarf_Attribute *attr, Dwarf_Op *expr, Dwarf_Addr addr, int depth) printf ("%s", opname); break; + case DW_OP_GNU_uninit: + /* No arguments. Special. It means the expression describes + an value which hasn't been initialized (yet). */ + printf ("%s", opname); + break; + case DW_OP_call_frame_cfa: /* No arguments. Special. Pushes Call Frame Address as computed by CFI data (dwarf_cfi_addrframe will fetch that info (either from @@ -30,7 +30,7 @@ #ifndef _ELFUTILS_VERSION_H #define _ELFUTILS_VERSION_H 1 -#define _ELFUTILS_VERSION 188 +#define _ELFUTILS_VERSION 189 #define _ELFUTILS_PREREQ(major, minor) \ (_ELFUTILS_VERSION >= ((major) * 1000 + (minor))) |