Age | Commit message (Collapse) | Author |
|
Found during code inspection, other paths check for both 32 and 64 bit
TLS PLT relocs on EM_MIPS, except this path. So it should be reasonable
to make this change, even without a reproducer...
2010-07-23 Mark Hatle <mark.hatle@windriver.com>
* src/ld-libs.c: (reloc_type_class) Handle MIPS64 TLS PLT relocs
|
|
|
|
Get rid of the dso-readonly.c by adding the conditional to dso.c.
2010-07-22 Mark Hatle <mark.hatle@windriver.com>
* src/dso.c: Add DSO_READONLY conditionals
* src/dso-readonly.c: remove
* src/Makefile.am: switch RTLD dep to dso.c, pass DSO_READONLY
* configure.in: Add AM_PROG_CC_C_O
|
|
2010-07-22 Mark Hatle <mark.hatle@windriver.com>
* Merge to upstream r185
* Resync dso-readonly.c from dso.c
|
|
Conflicts:
trunk/src/dso.c
|
|
|
|
2010-06-18 Mark Hatle <mark.hatle@windriver.com>
* Sync src/dso-readonly.c and ...
* Integrate patch from
2010-05-06 Andrew Stubbs <ams@codesourcery.com>
* src/dso.c (adjust_dso): Support MIPS debug sections.
* src/prelink.h (SHT_MIPS_DWARF): New define.
|
|
Hi all,
Prelink currently fails to relocate the debug info in MIPS libraries
because they use a custom section type.
Here is an example section from PPC:
[29] .debug_frame PROGBITS 00000000 0021b0 00002c 00
0 0 4
The type is "PROGBITS", which is what prelink likes, so it works correctly.
Now, here is an example from an equivalent MIPS binary:
[28] .debug_frame MIPS_DWARF 00000000 000ee8 00002c 00
0 0 4
Here the type is "MIPS_DWARF", a type not handled by prelink.
Please accept the attached patch to fix this.
Thanks
Andrew
2010-05-06 Andrew Stubbs <ams@codesourcery.com>
* src/dso.c (adjust_dso): Support MIPS debug sections.
* src/prelink.h (SHT_MIPS_DWARF): New define.
|
|
2009-06-15 Mark Hatle <mark.hatle@windriver.com>
* Merge to upstream r184
* Resync dso-readonly.c from dso.c
* Cleanup ChangeLog.cross
|
|
Conflicts:
trunk/src/dso.c
trunk/testsuite/reloc8.sh
trunk/testsuite/reloc9.sh
|
|
2009-09-01 Maciej W. Rozycki <macro@codesourcery.com>
Issue #5273
* src/arch-mips.c (mips_prelink_reloc): Resolve
R_MIPS_TLS_DTPMOD32 and R_MIPS_TLS_DTPMOD64 relocations in
executables.
|
|
2009-04-27 Maciej W. Rozycki <macro@codesourcery.com>
Issue #5165
* src/ld-libs.c (load_ld_so_conf): Fix a buffer overrun. Don't
record empty paths.
|
|
2009-04-23 Maciej W. Rozycki <macro@codesourcery.com>
Issue #5165
* src/ld-lookup.c (rtld_elf_hash): Handle an initial NULL
character correctly. Reformat for consistency with
rtld_elf_gnu_hash().
2009-04-23 Maciej W. Rozycki <macro@codesourcery.com>
Issue #5165
* src/ld-do-lookup.h (FCT): Remove the hash argument and
calculate the value within the function. Call
do_lookup_get_first() and do_lookup_get_next() to iterate over
symbols.
* src/prelink.h (dynamic_info_is_set): Convert macro to a
function. Return 1 for success rather than the bit set.
* src/ld-libs.h (ldlibs_link_map): Add l_gnu_hash, l_maskword64,
l_nmaskwords, l_shift and l_maskwords members.
* src/ld-libs.c (create_ldlibs_link_map): Handle the GNU hash.
* src/ld-lookup.c (rtld_elf_gnu_hash): New function.
(rtld_elf_any_hash): Likewise.
(rtld_elf_hash): Move above "ld-do-lookup.h" inclusions.
(do_lookup_get_first, do_lookup_get_next): New functions.
(rtld_lookup_symbol): Remove hash calculation.
(rtld_lookup_symbol_versioned): Likewise.
Add missing chunk
Conflicts:
trunk/ChangeLog.csl
|
|
2009-04-23 Maciej W. Rozycki <macro@codesourcery.com>
Issue #5165
* src/execle_open.c (execve_open): Add missing pid
initialisation.
|
|
2010-06-15 Mark Hatle <mark.hatle@windriver.com>
* Merge to upstream r174
* src/arch-mips.c, src/conflict.c, src/cxx.c, src/main.c, src/verify.c:
fix items missed in the merge
* Resync dso-readonly.c from dso.c
|
|
Conflicts:
trunk/doc/prelink.8
trunk/src/Makefile.am
trunk/src/arch-arm.c
trunk/src/arch-mips.c
trunk/src/arch-sparc64.c
trunk/src/conflict.c
trunk/src/cxx.c
trunk/src/prelink.h
trunk/src/space.c
trunk/testsuite/cxx1.sh
trunk/testsuite/shuffle2.c
|
|
This patch fixes an incorrect shift by 58 instead of 56 when computing the
most significant byte when prelink adjusts debug info. Please commit if
OK.
This problem manifests itself as test failures for SPARC64 but not other
platforms I've tested, probably because the mmap_base setting for that
platform has a nonzero MSB and most others don't.
2009-08-06 Joseph Myers <joseph@codesourcery.com>
* src/dwarf2.c (dwarf2_write_le64, dwarf2_write_be64): Shift by 56
not 58 for MSB.
|
|
2009-03-19 Joseph Myers <joseph@codesourcery.com>
Issue #4626
* src/cache.c, src/dso-readonly.c, src/dso.c, src/execstack.c,
src/gather.c, src/layout.c, src/mapfile.c, src/verify.c: fsync
file descriptors before closing them.
Mark Hatle <mark.hatle@windriver.com>
* src/dso-readonly.c: sync with changes above
|
|
2008-09-23 Joseph Myers <joseph@codesourcery.com>
* src/arch-arm.c (arm_prelink_conflict_rela): Correct
R_ARM_TLS_TPOFF32 handling.
Conflicts:
trunk/ChangeLog.csl
|
|
2008-09-18 Joseph Myers <joseph@codesourcery.com>
* src/ld-libs.c (reloc_type_class, determine_tlsoffsets): Handle
SPARC.
* src/arch-sparc64.c (sparc64_prelink_rela,
sparc64_prelink_conflict_rela, sparc64_undo_prelink_rela,
sparc64_reloc_class): Handle TLS relocations.
(PL_ARCH(sparc64)): Update mmap_base and mmap_end for
TASK_UNMAPPED_BASE change to 0xfffff80100000000.
|
|
This patch adds TLS support to SPARC64 prelink - largely
cut-and-pasted from the 32-bit SPARC support - and updates it to work
with kernels postdating the patch
8bcd17411643beb9a601e032d0cf1016909a81d3 "[SPARC64]: Do not allow
mapping pages within 4GB of 64-bit VA hole." (March 2006), which
changed TASK_UNMAPPED_BASE causing anything prelinked at the old
address to segfault on startup. Please commit if OK.
2008-09-29 Joseph Myers <joseph@codesourcery.com>
* src/arch-sparc64.c (sparc64_prelink_rela,
sparc64_prelink_conflict_rela, sparc64_undo_prelink_rela,
sparc64_reloc_class): Handle TLS relocations.
(PL_ARCH): Update mmap_base and mmap_end for TASK_UNMAPPED_BASE
change to 0xfffff80100000000.
|
|
2008-10-02 Maciej W. Rozycki <macro@codesourcery.com>
* src/arch-mips.c (mips_prelink_reloc): Do not complain about
TLS_DTPMOD32 or TLS_DTPMOD64 relocations found in executables.
2008-09-03 Maciej W. Rozycki <macro@codesourcery.com>
* src/prelink.h (Elf64_Byte): New definition.
(R_MIPS_TLS_DTPMOD64): New macro.
(R_MIPS_TLS_DTPREL64): Likewise.
(R_MIPS_TLS_TPREL64): Likewise.
(RSS_UNDEF): Likewise.
(PL_ARCH): Use plarch_##F as the name of the struct in all
variants.
* src/reloc-info.c: New file.
* src/reloc-info.h: Likewise.
* src/arch-mips.c (mips_buf_read_addr): New function.
(mips_buf_write_addr): Likewise.
(mips_arch_adjust): Replace calls to buf_read_une32() and
buf_write_ne32() with ones to mips_buf_read_addr() and
mips_buf_write_addr() respectively.
(mips_read_addend): Rename to...
(mips_read_32bit_addend): ... this.
(mips_write_addend): Rename to...
(mips_write_32bit_addend): ... this.
(mips_read_64bit_addend): New function.
(mips_write_64bit_addend): Likewise.
(mips_adjust_reloc): Handle 64-bit REL relocations. Use
reloc_r_sym() and reloc_r_type() in place of GELF_R_SYM() and
GELF_R_TYPE() respectively.
(mips_prelink_64bit_reloc): New function.
(mips_prelink_reloc): Handle 64-bit REL and GLOB_DAT relocations.
Handle TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations.
Use reloc_r_sym() and reloc_r_type().
(mips_prelink_rel): Handle 64-bit REL relocations. Use
reloc_r_sym(), reloc_r_type() and reloc_r_info_ext() (replacing
GELF_R_INFO()).
(mips_prelink_conflict_reloc): Handle 64-bit REL relocations.
Handle TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations.
Use reloc_r_sym(), reloc_r_type() and reloc_r_info_ext().
(mips_arch_prelink_conflict): Use mips_buf_read_addr(). Use
reloc_r_info_ext().
(mips_apply_conflict_rela): Handle 64-bit REL relocations. Use
reloc_r_type(). Use mips_buf_read_addr() and
mips_buf_write_addr().
(mips_apply_reloc): Handle 64-bit REL relocations. Use
reloc_r_sym() and reloc_r_type().
(mips_rel_to_rela): Handle 64-bit REL relocations. Handle
TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations. Use
reloc_r_sym() and reloc_r_type().
(mips_rela_to_rel): Handle 64-bit REL and GLOB_DAT relocations.
Handle TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations.
Use reloc_r_sym() and reloc_r_type().
(mips_need_rel_to_rela): Use data obtained with gelfx_getshdr() to
determine the size of a relocation entry. Use gelfx_getrel() to
retrieve them. Handle 64-bit REL relocations. Handle
TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations. Use
reloc_r_sym() and reloc_r_type() instead of ELF32_R_SYM() and
ELF32_R_TYPE() respectively.
(mips_reloc_class): Handle TLS_DTPMOD64, TLS_DTPREL64 and
TLS_TPREL64 relocations.
(mips_arch_prelink): Use mips_buf_read_addr() and
mips_buf_write_addr().
(mips_arch_undo_prelink): Likewise.
(mips_undo_prelink_rel): Handle 64-bit GLOB_DAT relocations. Use
reloc_r_sym(), reloc_r_type() and reloc_r_info_ext().
(mips64): New PL_ARCH.
* src/prelink.c (prelink_prepare): Handle SHT_MIPS_OPTIONS.
* src/conflict.c (conflict_rela_cmp_dso): New variable.
(conflict_rela_cmp): Use conflict_rela_cmp_dso and reloc_r_sym().
(get_relocated_mem): Use reloc_r_type().
(prelink_add_copy_rel): Use reloc_r_sym() and reloc_r_type().
(prelink_build_conflicts): Use reloc_r_sym(), reloc_r_type() and
reloc_r_info(). Pass dso to conflict_rela_cmp() through
conflict_rela_cmp_dso.
(prelink_find_copy_rela): Use reloc_r_type().
* src/cxx.c (remove_redundant_cxx_conflicts): Use reloc_r_sym(),
reloc_r_type() and reloc_r_info().
* src/ld-libs.c (do_rel_section): Use reloc_r_sym() and
reloc_r_type().
* src/Makefile.am (common_SOURCES): Add reloc-info.c and
reloc-info.h.
(prelink_rtld_SOURCES): Likewise.
* src/Makefile.in: Regenerate.
* configure.in: Check for the Elf64_Byte type. Require autoconf
2.50.
* configure: Regenerate.
2008-09-03 Maciej W. Rozycki <macro@codesourcery.com>
* src/arch-mips.c (mips_undo_prelink_rel): Fix formatting.
2008-09-03 Maciej W. Rozycki <macro@codesourcery.com>
* src/arch-mips.c (mips_init_local_got_iterator): Use ELF_T_ADDR
to determine the width of GOT entries.
(mips_init_global_got_iterator): Likewise.
200?-??-?? CodeSourcery, LLC.
* src/prelink.h: define PL_ARCH(arch) macro
* update each arch-<arch>.c file to use the new macro
Add attribution
|
|
2008-09-03 Maciej W. Rozycki <macro@codesourcery.com>
* src/data.c (buf_read_une##nn): Fix the width of the data
transfer used.
|
|
2008-03-06 Daniel Jacobowitz <dan@codesourcery.com>
* src/ld-do-lookup.h: Check for STO_MIPS_PLT on MIPS.
* src/ld-libs.c (reloc_type_class): Handle copy and PLT relocs.
* src/prelink.h (R_MIPS_TLS_DTPMOD32, R_MIPS_TLS_DTPREL32)
(R_MIPS_TLS_TPREL32, R_MIPS_GLOB_DAT): Remove duplicate definitions.
(R_MIPS_COPY, R_MIPS_JUMP_SLOT, STO_MIPS_PLT, DT_MIPS_PLTGOT)
(DT_MIPS_PLTNO, DT_MIPS_RWPLT): Define.
(DSO): Add info_DT_MIPS_PLTGOT.
* src/arch-mips.c (mips_prelink_reloc): Handle R_MIPS_JUMP_SLOT and
R_MIPS_COPY.
(mips_prelink_conflict_reloc): Handle R_MIPS_COPY.
(mips_apply_conflict_rela): Handle R_MIPS_JUMP_SLOT.
(mips_apply_reloc): Handle R_MIPS_JUMP_SLOT and R_MIPS_COPY.
(mips_rel_to_rela, mips_rela_to_rel): Handle R_MIPS_COPY.
(mips_need_rel_to_rela): Handle R_MIPS_COPY and R_MIPS_JUMP_SLOT.
Correct error message.
(mips_reloc_class): Handle R_MIPS_COPY and R_MIPS_JUMP_SLOT. Use
RTYPE_CLASS_VALID by default.
(mips_arch_prelink): Save .plt in gotplt[1].
(mips_arch_undo_prelink): Clear gotplt[1].
(mips_undo_prelink_rel): Undo R_MIPS_JUMP_SLOT relocations.
(PL_ARCH): Set R_COPY and R_JMP_SLOT.
* src/dso.c (read_dynamic): Save DT_MIPS_PLTGOT.
Conflicts:
trunk/ChangeLog.csl
|
|
2007-07-09 Daniel Jacobowitz <dan@codesourcery.com>
Issue #1816
* src/wrap-file.c (chroot_canon): Delete.
(sysroot_file_name): Use canon_filename.
(unsysroot_file_name): Make global.
(wrap_canonicalize_file_name): Delete.
* src/ld-libs.c (load_dsos): Use prelink_canonicalize.
* src/canonicalize.c (canon_filename): Make global. Add chroot,
allow_last_link, allow_missing arguments. Handle links inside
a chroot. Handle canonicalizing the current directory. Remove
debugging output.
(prelink_canonicalize): Update. Use unsysroot_file_name.
* src/prelink.h (wrap_canonicalize_file_name): Delete prototype.
|
|
2007-03-02 Sandra Loosemore <sandra@codesourcery.com>
* doc/prelink.8: Copy edit. Add entry for --root option. Update
list of unsupported systems.
|
|
2007-02-16 Daniel Jacobowitz <dan@codesourcery.com>
* src/prelink.h (sysroot_file_name): Declare.
* src/wrap-file.c (sysroot_file_name): match declaration
* src/ld-libs.c (load_dsos): Take host_paths argument. Do not attempt
to canonicalize host filenames within the sysroot. Always set
canon_filename.
(process_one_dso): Update call to load_dsos. Do not redo call to
wrap_canonicalize_file_name.
|
|
2006-11-30 Mark Shinwell <shinwell@codesourcery.com>
* configure.in: Recognize --with-pkgversion and ---with-bugurl.
* src/Makefile.am: Pass package version and bug URL through
AM_CFLAGS, together with the new EXECSTACK_PROG.
* src/main.c: Use PKGVERSION and REPORT_BUGS_TO.
* src/execstack.c: Likewise. Also use EXECSTACK_PROG.
Mark Hatle <mark.hatle@windriver.com>
* src/ld-libs.c: Use PRELINK_RTLD_PROG, PKGVERSION and REPORT_BUGS_TO
* src/execstack.c: Use EXECSTACK_PROG in (argp_doc)
|
|
2006-11-30 Mark Shinwell <shinwell@codesourcery.com>
* wrap-file.c (wrap_stat_body): New.
(wrap_lstat64, wrap_stat64): Use wrap_stat_body.
* gather.c (add_to_blacklist): Add missing wrap_stat64
|
|
2006-11-28 Mark Shinwell <shinwell@codesourcery.com>
* src/layout.c (layout_libs): Add assertion to check for buffer
overflow.
* src/ld-libs.c (find_lib_in_path): Add "machine" argument.
Skip libraries whose ELF machine type field does not match
that argument.
(find_lib_by_soname): Add "machine" argument. Pass it to
find_lib_in_path.
(load_dsos): Determine machine type of input DSO. Pass it
to find_lib_by_soname.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Conflicts:
trunk/ChangeLog.csl
|
|
2006-11-28 Mark Shinwell <shinwell@codesourcery.com>
* src/gather.c (maybe_pie): New.
(gather_func): Use it.
|
|
2006-11-28 Mark Shinwell <shinwell@codesourcery.com>
* src/canonicalize.c: Add prelink.h include directive.
Use wrap_readlink and wrap_lstat64.
* src/prelink.h: Declare wrap_readlink.
* src/wrap-file.c (wrap_readlink): New.
|
|
2006-10-13 Daniel Jacobowitz <dan@codesourcery.com>
* src/execle_open.c (execve_open): Add an error message if execve
fails.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
|
|
2006-10-03 Richard Sandiford <richard@codesourcery.com>
* configure.in (AC_CANONICAL_HOST): Remove in favour of...
(AC_CANONICAL_SYSTEM): ...this new directive.
(AC_ARG_PROGRAM): New directive.
* src/Makefile.am (AM_CFLAGS): Define PRELINK_PROG, PRELINK_RTLD_PROG
and EXEEXT.
(execstack_LDADD): Add -liberty.
* src/execstack.c (program_path, prelink_path): New variables.
(execstack_make_rdwr): Initialize prelink_path if it has not
been set yet. Use make_relative_prefix, PRELINK_PROG and EXEEXT
to get the full pathname of the prelink executable. Pass this path
to execl() as the name of executable file.
(main): Initialize program_path.
* src/main.c (argp_program_version, argp_doc): Use PRELINK_PROG as
the program name.
(main): Handle empty --rtld= arguments first. Always use
make_relative_prefix to work out the path of the defalt rtld
executable. Also use PRELINK_RTLD and EXEEXT for this purpose.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
|
|
Add --disable-selinux. Also remove static linking as many modern
components do not support static linking.
|
|
* src/arch-mips.c: add /lib32/ld.so.1 as an alternative 32-bit linker
* src/ld-libs.c: add a check for MIPS n32, and adjust ld_dirs as
necessary
|
|
My original binutils patches for MIPS prelink support were against 2.17,
and reserved room for a program header without actually creating one.
The mainline (now 2.18) binutils patches ended up adding a PT_NULL
header instead. This was needed because of mainline's SIZEOF_HEADER
relaxation and was probably a better idea anyway.
The patch below therefore teaches the prelinker to remove a PT_NULL
header if it needs to find room for a PT_LOAD header. Tested on the
MIPS port, where it allows a sysroot built with the mainline binutils
to be fully prelinked. Also tested on x86.
The patch involves a lot of reidentation, so for reference, I've
attached two versions: first the real patch, then the -b form.
Richard
200x-xx-xx Richard Sandiford <richard@codesourcery.com>
* src/space.c (find_readonly_space): If a new PT_LOAD header is needed,
first try removing a PT_NULL header.
|
|
2006-09-27 Richard Sandiford <richard@codesourcery.com>
* src/ld-libs.c (reloc_type_class): Handle EM_MIPS.
(do_mips_global_relocs): New function.
(handle_relocs_in_entry): Call it.
(determine_tlsoffsets): Handle EM_MIPS.
2006-09-27 Richard Sandiford <richard@codesourcery.com>
* src/ld-libs.c (do_reloc): New function, split out from
do_rel_section. Take the symbol and relocation type as arguments.
(do_rel_section): Call it.
(handle_relocs_in_entry): New function.
(handle_relocs): Call it.
|
|
Update to the latest version of elf.h that includes MIPS prelink.
|
|
Conflicts:
src/data.c
trunk/src/dso.c
trunk/src/prelink.h
trunk/testsuite/reloc5.c
trunk/testsuite/shuffle2.c
Updated versioning in:
trunk/src/execstack.c
trunk/src/ld-libs.c
trunk/src/main.c
* src/arch-arm.c: remove read_une32, write_ne32, buf_write_ne32,
buf_read_une32
* src/dso-readonly.c: sync to changes in src/dso.c
|
|
* src/undo.c (prelink_undo): If undo_output and .gnu.prelink_undo
section is not present, don't reopen_dso, just return 0.
* src/main.c (main): If dso isn't writable with undo_output,
copy_fd_to_file dso->fd.
* src/dso.c (copy_fd_to_file): New function.
(update_dso): Use it.
git-svn-id: http://sourceware.org/svn/prelink@185 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
sparc64.
* testsuite/reloc9.sh: Likewise.
git-svn-id: http://sourceware.org/svn/prelink@184 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
(debug_sections): Add .debug_types entry.
(read_abbrev): Handle new DWARF4 forms.
(adjust_attributes): DW_AT_segment can be a loclistptr.
DW_AT_byte_size, DW_AT_bit_offset, DW_AT_bit_size,
DW_AT_string_length, DW_AT_lower_bound, DW_AT_return_addr,
DW_AT_bit_stride, DW_AT_upper_bound, DW_AT_count,
DW_AT_segment, DW_AT_static_link, DW_AT_use_location,
DW_AT_allocated, DW_AT_associated, DW_AT_data_location
and DW_AT_byte_stride can be exprloc. Handle new DWARF4 forms.
(adjust_dwarf2_line): Handle adjusting DWARF4 .debug_line
sections.
(adjust_dwarf2_frame): Handle adjusting DWARF4 .debug_frame
section.
(adjust_dwarf2_info): New function, moved from adjust_dwarf2.
Handle DWARF4 .debug_info and handle .debug_types too.
(adjust_dwarf2): Call it for .debug_info and .debug_types
sections.
* src/dwarf2.h (DW_TAG_type_unit, DW_TAG_rvalue_reference_type,
DW_TAG_template_alias, DW_FORM_sec_offset, DW_FORM_exprloc,
DW_FORM_flag_present, DW_FORM_ref_sig8, DW_AT_bit_stride,
DW_AT_byte_stride, DW_AT_description, DW_AT_binary_scale,
DW_AT_decimal_scale, DW_AT_small, DW_AT_decimal_sign,
DW_AT_digit_count, DW_AT_picture_string, DW_AT_mutable,
DW_AT_threads_scaled, DW_AT_explicit, DW_AT_object_pointer,
DW_AT_endianity, DW_AT_elemental, DW_AT_pure, DW_AT_recursive,
DW_AT_signature, DW_AT_main_subprogram, DW_AT_data_bit_offset,
DW_AT_const_expr, DW_AT_enum_class, DW_AT_linkage_name,
DW_LNS_set_prologue_end, DW_LNS_set_epilogue_begin,
DW_LNS_set_isa, DW_LNE_set_discriminator, DW_LANG_Python): Define.
git-svn-id: http://sourceware.org/svn/prelink@183 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
* src/execstack.c (send_file): New dummy function.
* src/verify.c (send_file): No longer static. Don't loop forever
if write or read return 0.
* src/undo.c (prelink_undo): If undo_output is -, use /tmp/undo
instead of - as temp file prefix.
* src/dso.c (set_security_context): Drop unused dso argument, add
ignore_errors argument. If it is non-zero, don't error if
setfilecon failed.
(update_dso): If orig_name is non-NULL, don't error if fchown or
fchmod fails. If rename fails or name1 is - and orig_name is
non-NULL, copy the temporary file to name1 (or to stdout if
name1 is -) instead of failing.
git-svn-id: http://sourceware.org/svn/prelink@182 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
Ensure negative addends are sign-extended to 64-bits, instead of
zero-extended.
git-svn-id: http://sourceware.org/svn/prelink@181 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
s390_prelink_conflict_rela, s390_prelink_conflict_rela,
s390_undo_prelink_rela, s390_reloc_size): Handle
R_390_{PC32DBL,16,PC16,PC16DBL,8} relocs.
git-svn-id: http://sourceware.org/svn/prelink@180 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
exists, but doesn't print Permissive or Disabled.
* testsuite/reloc8.sh: Likewise.
* testsuite/reloc9.sh: Likewise.
* testsuite/tls3.sh: Likewise.
git-svn-id: http://sourceware.org/svn/prelink@179 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
* src/prelink.h (R_PPC_IRELATIVE, R_PPC64_IRELATIVE,
R_PPC64_JMP_IREL): Define if not defined.
* src/undo.c (undo_sections, prelink_undo): Allow .iplt section to
change from SHT_NOBITS to SHT_PROGBITS.
* src/arch-ppc.c (ppc_adjust_rela, ppc_prelink_rela,
ppc_apply_conflict_rela, ppc_undo_prelink_rela): Handle
R_PPC_IRELATIVE.
(ppc_prelink_conflict_rela): Handle R_PPC_IRELATIVE and
conflict->ifunc conflicts.
* src/arch-ppc64.c (ppc64_adjust_rela, ppc64_prelink_rela,
ppc64_undo_prelink_rela): Handle R_PPC64_IRELATIVE and
R_PPC64_JMP_IREL.
(ppc64_apply_conflict_rela, ppc64_reloc_size): Handle
R_PPC64_IRELATIVE.
(ppc64_prelink_conflict_rela): Handle R_PPC64_IRELATIVE,
R_PPC64_JMP_IREL and conflict->ifunc conflicts.
* testsuite/ifunc.h (IFUNC_ASM): Add powerpc definition.
(IFUNC_DECL): Define.
(IFUNC): Use IFUNC_DECL.
git-svn-id: http://sourceware.org/svn/prelink@178 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
determine whether a relocation points outside the first bss
section.
git-svn-id: http://sourceware.org/svn/prelink@177 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
git-svn-id: http://sourceware.org/svn/prelink@176 94c539fb-cf18-0410-b60f-edeeb537fa16
|