-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathChangeLog
810 lines (626 loc) · 30.7 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
2016-08-17 Mark Hatle <[email protected]>
* README: Update to include a few known issues
2016-08-17 Mark Hatle <[email protected]>
* src/rtld/dl-open.c: Change to work with older compilers
2016-06-03 Dave Lerner <[email protected]>
* src/exec.c: New check_reorder_needed, section_reorder_fix functions
2016-03-22 Mark Hatle <[email protected]>
* src/gather.c, src/get.c: Fix LD_PRELOAD
2016-03-18 Donn Seeley <[email protected]>
* src/rtld/rtld.c: rewrite build_local_scope to ensure breadth-first
processing
* testsuite/order: Add test to verify prelink/prelink-rtld resolution
order
2016-03-18 Mark Hatle <[email protected]>
* src/rtld: Add ability to debug scopes
* src/rtld/rtld.h, src/dso.c: Fix compilation warning
2016-03-10 Mark Hatle <[email protected]>
* configure.ac, m4/libelf.m4, doc/Makefile.am, gelf/Makefile.am,
gelfx/Makefile.am, gelfx32/Makefile.am, patches/Makefile.am,
src/Makefile.am, src/rtld/Makefile.am, testsuite/Makefile.am:
Update to avoid autoconf/automake warnings
* Resync src/rtld to glibc-2.23
2015-10-29 Mark Hatle <[email protected]>
Kyle McMartin <[email protected]>
Jakub Jelinek <[email protected]>
Julian Brown <[email protected]>
* testsuite/ifunc.h: Fix missing #
* src/arch-arm.c (arm_prelink_conflict_rela): Add missing hunk
that implemented R_ARM_IRELATIVE, and ifunc conflicts.
See: https://bugzilla.redhat.com/show_bug.cgi?id=1009601
2015-10-29 Mark Hatle <[email protected]>
* prelink.h: Define SHT_MIPS_ABIFLAGS if not set
* prelink.c: OK to skip SHT_MIPS_ABIFLAGS
optimize the loop to stop on the first bad entry
adjust the error to give us more info on the bad section
2015-10-28 Mark Hatle <[email protected]>
* get.c: Sync rtld/prelink type_class values
2015-10-22 Mark Hatle <[email protected]>
* Upstream project appears to have been abandoned
* Update the project to remove the SVN like 'trunk' dir
* Adjust the AUTHORS file
* Move the README.cross to replace README and update it
* Move the previous ChangeLog to ChangeLog.1
* Move the current ChangeLog.cross to ChangeLog
2015-10-21 Mark Hatle <[email protected]>
* Resync src/rtld to glibc-2.22
* src/elf.h, src/rtld/*:
Update elf.h to glibc 2.22 version
* get.c, prelink.h: Add symname to conflict structure
* conflict.c: Provide more debuggign on a conflict (symname)
2015-09-11 Mark Hatle <[email protected]>
* doc/prelink.8: Add --ld-preload docs
* testsuite/Maekfile.am, testsuite/preload1*: Add test
2015-09-11 Vaneet Narang <[email protected]>
* src/gather.c, src/get.c, src/main.c, src/prelink.h:
Add ability to specify preloaded libraries that influence the
prelinker.
2015-09-09 Akhilesh Kumar <[email protected]>
* src/gather.c: Remove unnecessary dso NULL check
2015-09-09 Maninder Singh <[email protected]>
* src/doit.c, src/gather.c, src/undoall.c: Fix realloc memory leak
2015-09-07 Andrew Stubbs <[email protected]>
* src/arch-arm.c (PL_ARCH(arm)): Set max_page_size to match
the new BFD default.
2015-04-06 Mark Hatle <[email protected]>
Maninder Singh <[email protected]>
* src/rtld/dl-version.c: Add debug for mising ld-linux or libc
* src/gather.c: Return rtld error messages on failure
2015-03-31 Mark Hatle <[email protected]>
* Based on submission by Maninder Singh <[email protected]>
src/get.c: Remove extra check for ld-linux.so.3 in strcmp
(remove first entry, second is already in upstream code)
2014-12-10 Mark Hatle <[email protected]>
* testsuite/Makefile.am: latest autotools has changed the
way TEST_ENVIRONMENT is defined. Remove the $(SHELL)
2014-12-10 Mark Hatle <[email protected]>
* Resync src/rtld to glibc-2.20
* src/elf.h, src/rtld/rtld.c, src/rtld/dl-tls.c:
Update elf.h to glibc 2.20 version
Add basic aarch64 support
(do_relocs): fix comparison pltrel_end >= rel_end
2014-12-10 Mark Hatle <[email protected]>
* src/rtld/COPYING, src/rtld/COPYING.LIB,
src/rtld/ChangeLog, src/rtld/README-rtld: Add local history
information to setup for a resync to glibc-2.20
2014-12-09 Jon Masters <[email protected]>
Mark Hatle <[email protected]>
* src/arch-arm.c: Remove support for OABI arm ld-linux.so.2
Add support for hard float ld-linux-armhf.so.3
* src/rtld/rtld.c: Add ld-linux-armhf.so.3 as a ldso name
2014-08-13 Kyle McMartin <[email protected]>
Jakub Jelinek <[email protected]>
Julian Brown <[email protected]>
* testsuite/ifunc.h: Add ARM support.
* src/prelink.h (R_ARM_IRELATIVE): Define.
* src/arch-arm.c (arm_adjust_rel, arm_adjust_rela)
(arm_prelink_rel, arm_prelink_rela, arm_apply_conflict_rela)
(arm_rela_to_rel, arm_rel_to_rela, arm_undo_prelink_rel):
Handle R_ARM_IRELATIVE.
(arm_prelink_conflict_rel, arm_prelink_conflict_rela): Handle
R_ARM_IRELATIVE, ifunc conflicts.
2014-07-22 Maciej W. Rozycki <[email protected]>
* src/arch-arm.c (arm_prelink_conflict_rel): Always create a
conflict for R_ARM_TLS_DESC relocs.
(arm_prelink_conflict_rela): Likewise.
2013-10-15 Mark Hatle <[email protected]>
* Merged to upstream r209
2013-08-01 Mark Hatle <[email protected]>
* testsuite/unprel1.sh: Enable RUN_HOST for new test.
2013-04-23 Mark Hatle <[email protected]>
* README.cross: Add patch submission information based on a
suggestion from Tom de Vries.
2013-04-19 Tom de Vries <[email protected]>
* README.cross: Fix typo.
2013-04-19 Tom de Vries <[email protected]>
* src/arch-mips.c (PL_ARCH(mips64)): Set rtype_class_valid field to
RTYPE_CLASS_VALID.
2013-01-03 Marko Lindqvist <[email protected]>
* configure.in -> configure.ac: Rename
* Replace AM_CONFIG_HEADER with AC_CONFIG_HEADERS
2012-09-12 Joseph Myers <[email protected]>
* src/rtld/dl-lookup.c: Fix variable copy reloc when host/target
byte size is different
2012-09-08 Joseph Myers <[email protected]>
* src/arch-arm.c: Fix ARM_TLS_DTPOFF32 addends
* src/dwarf2.c: Fix address range handling related to DW_AT_high_pc
* src/dwarf2.c: Fix address range handling when dup data addr
2012-06-14 Joseph Myers <[email protected]>
* src/exec.c: Fix issue for Power related to empty PROGBITS
change
2012-05-30 Mark Hatle <[email protected]>
* configure.in: Change the default bug report address to me
* testsuite/ifunc*.sh: Update a test to only run when !CROSS
2012-05-22 Joseph Myers <[email protected]>
* src/prelink.h: Add missing wrap_glob declaration
2012-05-28 Joseph Myers <[email protected]>
* m4/libelf.m4: Add unistd.h
2012-05-29 Mark Hatle <[email protected]>
* testsuite/tls*.sh: Update TLS __thread check
* README.cross: change instructions to use autoreconf -if
2012-05-29 Mark Hatle <[email protected]>
Integrate testsuite patches:
2012-05-25 Joseph Myers <[email protected]>
* testsuite: Introduce $READELF
* testsuite: Introduce $RUN
* testsuite: Introduce $RUN_HOST
* testsuite/quick2.sh: Enable PIE test for ARM
* testsuite: Use $CCLINK instead of $CC for tls tests
2012-04-10 Maxim Kuvyrkov <[email protected]>
* src/rtld/rtld.c (find_lib_by_soname): Follow ld.so's behavior of
pulling its name from PT_INTERP.
2012-05-29 Mark Hatle <[email protected]>
* arch-x86_64.c: Fix R_X86_64_64 relocation
2012-05-25 Mark Hatle <[email protected]>
* Fix testsuite execution
2012-04-04 Mark Hatle <[email protected]>
* testsuite/ifunc1.sh, ifunc2.sh, ifunc3.sh: Add cross compilation
checks to a few of the test cases.
* testsuite/reloc4.sh, reloc5.sh: Fix linking problems with a linker
that does not automatically including referenced libraries.
2012-03-19 Maxim Kuvyrkov <[email protected]>
* src/reloc.c (find_reloc_sections): Don't error due to a gap between
sections.
2011-12-21 Mark Hatle <[email protected]>
* src/arch-x86_64.c: Add support for x32 ABI
2012-02-02 Mark Hatle <[email protected]>
Integrate dwarf2 signal frame patch:
2010-05-10 Paul Brook <[email protected]>
* src/dwarf2.c (adjust_dwarf2_frame): Skip 'S' augmentation.
2012-02-01 Mark Hatle <[email protected]>
* configure.in: Fix enabling and disabling of SE Linux support
2012-01-26 Mark Hatle <[email protected]>
* elf.h, rtld/dl-lookupX.h, rtld/rtld.c: Sync to eglibc 2.15
Integrate R_ARM_TLS_DESC relocation support patch:
2011-04-13 Maciej W. Rozycki <[email protected]>
* src/prelink.h (DT_TLSDESC_PLT, R_ARM_TLS_DESC): New macros.
(DSO): Add info_DT_TLSDESC_PLT member.
(DT_TLSDESC_PLT_BIT): New macro.
* src/arch-arm.c (arm_prelink_rel, arm_prelink_rela): Handle
R_ARM_TLS_DESC relocation.
(arm_prelink_conflict_rel, arm_prelink_conflict_rela): Likewise.
(arm_rel_to_rela): Likewise.
(arm_undo_prelink_rel): Likewise.
(arm_reloc_class): Likewise.
* src/dso.c (read_dynamic): Handle DT_TLSDESC_PLT dynamic tag.
* src/prelink.h: add missing prototypes for wrap_listxattr,
wrap_getxattr, wrap_setxattr
2012-01-04 Mark Hatle <[email protected]>
* exec.c: Check that a section is larger then 0 bytes when
determining the section to segment mapping. This matches
the behavior of elfutils - readelf. Otherwise an empty
PROGBITS section at the end of a segment will cause a
failure.
2011-12-08 Mark Hatle <[email protected]>
* rtld/rtld.c: Fix an issue where missing objects would trigger
an assert in dl-version.c
* rtld/rtld.h: Add _dl_new_object prototype
* rtld/rtld.c: Add support for $ORIGIN, $PLATFORM and $LIB.
Note: $PLATFORM = ""
2011-10-26 Mark Hatle <[email protected]>
* Merge to upstream r196
* Resolve merge conflicts with src/main.c
* Disable automatic detection of AMD Bulldozer for layout page size
Unclear why the default size is 32768 on AMD Bulldozer, assume
this is a performance issue. I suggest if you are targeting
that platform, you manually pass:
--layout-page-size=32768
2011-09-13 Mark Hatle <[email protected]>
* Fix printf problem causing prelink-rtld issues on x86 (32-bit)
and arm
2011-08-30 Mark Hatle <[email protected]>
* Merge to upstream r195
* Update testsuite to work with explicit intermedite objects
2011-08-26 Mark Hatle <[email protected]>
* Rename ld-libs.c to rtld.c
* Sync to eglibc 2.13 ld.so code
* mips specific items from ports
* sync elf_machine_type_class macros for supports archs
* Add a special check for invalid GNU_HASH entries
2011-08-18 Mark Hatle <[email protected]>
* Resync src/elf.h to glibc 2.13
* Move prelink-rtld specific components to src/rtld
2011-06-24 Mark Hatle <[email protected]>
* Merge to upstream r190
2011-05-16 Akos PASZTORY <[email protected]>
* wrap-file.c (wrap_setxattr, wrap_getxattr, wrap_listxattr): New.
(wrap_glob): Likewise new.
* dso.c (copy_xattrs): use wrap_*xattr
* gather.c (read_config, gather_config, blacklist_from_config):
use wrap_glob
2011-05-16 Mark Hatle <[email protected]>
* Merge to upstream r189 (no conflicts)
2011-04-04 Mark Hatle <[email protected]>
Integrate patch from:
2011-03-24 Joseph Myers <[email protected]>
* src/dso.c (allow_bad_textrel, dso_has_bad_textrel): New.
(check_dso): Check for text relocations.
* src/gather.c (gather_exec): Check for text relocations.
* src/main.c (options): Add --allow-textrel.
(parse_opt): Handle --allow-textrel.
* src/prelink.h (dso_has_bad_textrel, allow_bad_textrel): Declare.
2011-04-01 Mark Hatle <[email protected]>
* Merge to upstream r188 (no conflicts)
2011-01-12 Mark Hatle <[email protected]>
* Merge to upstream r187
* Resolve merge conflict
2010-07-23 Mark Hatle <[email protected]>
* src/ld-libs.c: Handle MIPS64 TLS PLT relocs
2010-07-22 Mark Hatle <[email protected]>
* 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 <[email protected]>
* Merge to upstream r185
* Resync dso-readonly.c from dso.c
2010-06-18 Mark Hatle <[email protected]>
* Sync src/dso-readonly.c and ...
* Integrate patch from
2010-05-06 Andrew Stubbs <[email protected]>
* src/dso.c (adjust_dso): Support MIPS debug sections.
* src/prelink.h (SHT_MIPS_DWARF): New define.
2009-06-15 Mark Hatle <[email protected]>
* Merge to upstream r184
* Resync dso-readonly.c from dso.c
* Cleanup ChangeLog.cross
2009-06-15 Mark Hatle <[email protected]>
* Integrate prelinker/cross-prelinking patches
2009-09-01 Maciej W. Rozycki <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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.
2009-04-23 Maciej W. Rozycki <[email protected]>
Issue #5165
* src/execle_open.c (execve_open): Add missing pid
initialisation.
2010-06-15 Mark Hatle <[email protected]>
* 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
2010-06-14 Mark Hatle <[email protected]>
* Integrate prelinker/cross-prelinking patches
2009-08-06 Joseph Myers <[email protected]>
* src/dwarf2.c (dwarf2_write_le64, dwarf2_write_be64): Shift by 56
not 58 for MSB.
2009-03-19 Joseph Myers <[email protected]>
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.
2008-09-23 Joseph Myers <[email protected]>
* src/arch-arm.c (arm_prelink_conflict_rela): Correct
R_ARM_TLS_TPOFF32 handling.
2008-09-18 Joseph Myers <[email protected]>
* 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.
2008-10-02 Maciej W. Rozycki <[email protected]>
* 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 <[email protected]>
* 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 <[email protected]>
* src/arch-mips.c (mips_undo_prelink_rel): Fix formatting.
2008-09-03 Maciej W. Rozycki <[email protected]>
* 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.
2008-09-03 Maciej W. Rozycki <[email protected]>
* src/data.c (buf_read_une##nn): Fix the width of the data
transfer used.
2008-03-06 Daniel Jacobowitz <[email protected]>
* 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.
* src/dso-readonly.c (read_dynamic): ditto
2007-07-09 Daniel Jacobowitz <[email protected]>
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 <[email protected]>
* doc/prelink.8: Copy edit. Add entry for --root option. Update
list of unsupported systems.
2007-02-16 Daniel Jacobowitz <[email protected]>
* src/prelink.h (sysroot_file_name): Declare.
* 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 <[email protected]>
* 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 <[email protected]>
* 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 <[email protected]>
* wrap-file.c (wrap_stat_body): New.
(wrap_lstat64, wrap_stat64): Use wrap_stat_body.
2006-11-28 Mark Shinwell <[email protected]>
* 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.
2006-11-28 Mark Shinwell <[email protected]>
* src/gather.c (maybe_pie): New.
(gather_func): Use it.
2006-11-28 Mark Shinwell <[email protected]>
* 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 <[email protected]>
* src/execle_open.c (execve_open): Add an error message if execve
fails.
2006-10-03 Richard Sandiford <[email protected]>
* 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.
2010-06-14 Mark Hatle <[email protected]>
* configure.in: Add option to disable selinux
* src/Makefile.am: Stop static linking
2007-08-08 Mark Hatle <[email protected]>
* 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
2007-10-11 Richard Sandiford <[email protected]>
* src/space.c (find_readonly_space): If a new PT_LOAD header is needed,
first try removing a PT_NULL header.
2006-12-04 Mark Hatle <[email protected]>
* Merge code from:
Richard Sandiford <[email protected]>
* 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.
Richard Sandiford <[email protected]>
* 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.
2006-12-04 Mark Hatle <[email protected]>
* src/elf.h: Update to the latest version of elf.h for MIPS prelink
2006-12-01 Mark Hatle <[email protected]>
* merge to 20061201 (r151)
* 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
2006-08-18 Mark Hatle <[email protected]>
* arch-arm.c: remove prelink_conflict_rela
* arch-arm.c: Add big-endian arm support, based on arch-sh.c
2006-08-17 Mark Hatle <[email protected]>
* data.c, dso.c, prelink.h: when using elfutils/libelf, we need
to byte swap only if the type is ELF_T_BYTE.
* dso-readonly.c: add get_data prototype change for byteswapping
* ld-libs.c: add get_data prototype change for byteswapping
2006-08-10 Mark Hatle <[email protected]>
* testsuite/Makefile.in: Allow testsuite to run using cross prelink.
Disable the run-time tests, but keep all basic
prelink testing.
* testsuite/ccx1.sh, testsuite/cycle1.sh, testsuite/cycle2.sh
testsuite/deps1.sh, testsuite/deps2.sh, testuite/functions.sh
testuite/layout1.sh, testuite/layout2.sh, testsuite/movelibs.sh
testsuite/quick1.sh, testsuite/quick2.sh, testsuite/quick3.sh
testsuite/reloc1.sh, testsuite/reloc2.sh, testsuite/reloc3.sh
testsuite/reloc4.sh, testsuite/reloc5.sh, testsuite/reloc6.sh
testsuite/reloc7.sh, testsuite/reloc8.sh, testsuite/reloc9.sh
testsuite/reloc10.sh, testsuite/reloc11.sh, testsuite/shuffle1.sh
testsuite/shuffle2.c, testsuite/shuffle2.sh, testsuite/shuffle3.sh
testsuite/shuffle4.sh, testsuite/shuffle5.sh, testsuite/shuffle6.sh
testsuite/shuffle7.sh, testsuite/shuffle8.sh, testsuite/tls1.sh
testsuite/tls2.sh, testsuite/tls3.sh, testsuite/tls4.sh
testsuite/tls5.sh, testsuite/tls6.sh, testsuite/tls7.sh
testsuite/undo1.sh: ditto
2006-08-09 Mark Hatle <[email protected]>
* execstack.c: add WR versioning
* ld-libs.c: add argp option processing and WR versioning
* main.c: add WR versioning
2006-08-09 Mark Hatle <[email protected]>
* ld-libs.c: Add --root argument to prelink-rtld
2006-08-09 Mark Hatle <[email protected]>
* cross-prelink code merged and upreved
original code from:
MontaVista Software, Inc.
CodeSourcery, LLC.
* Makefile.am: add prelink-rtld, libiberty
* dso-readonly.c: new file based on dso.c
* gather.c: use cross-rtld
* get.c: use cross-rtld
* ld-do-lookup.h: Add ld-do-lookup.h from glibc
* ld-libs.c: add cross-rtld functionality
* ld-libs.h: ditto
* ld-lookup.c: ditto
* ld-lookup64.c: ditto
* main.c: Add rtld option
* prelink.h: add extern rtld variable
2006-08-09 CodeSourcery, LLC.
* main.c: if we modified /sbin/init, re-run init
2006-08-08 CodeSourcery, LLC.
* arch-arm.c: add ARM EABI support, dynamic_linker_alt
* src/dso.c: STT_ARM_TFUNC support
* src/get.c: ld-linux.so.3 to the list of ldso names
2006-08-08 CodeSourcery, LLC.
* gather.c: add new dynamic_linker_alt
* prelink.h: ditto
2006-08-08 MontaVista Software, Inc.
* main.c: Add relative sysroot support
2006-08-08 Montavista Software, Inc.
* Makefile.am: Add function wrapper support for sysroots
* main.c: add --root option
* cache.c, doit.c, dso.c, execstack.c, gather.c, get.c,
prelink.h, undoall.c, verify.c: Add functional wrappers for sysroot
* wrap-file.c: add function wrapper definitions
2006-07-28 Alexandre Oliva <[email protected]>
* src/cache.c: Avoid SEGFAULT when sorting cache entries (#197451)
2006-07-21 MontaVista Software, Inc.
* prelink.c: add PRELINK_TIMESTAMP support
2006-07-21 MontaVista Software, Inc.
* dso.c: Don't adjust reloc for debug info
2006-06-30 Mark Hatle <[email protected]>
* src/elf.h: Make available the elf.h file from glibc 2.3.6
2006-06-10 MontaVista Software, Inc.
* arch-sh.c: Fix R_SH_RELATIVE endian swap problem,
change max page size