CVS commit: src/libexec/ld.elf_so/arch/i386

2023-06-04 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Jun  4 20:02:29 UTC 2023

Modified Files:
src/libexec/ld.elf_so/arch/i386: mdreloc.c

Log Message:
Avoid using uninitialized variable "symnum" when building with DEBUG
enabled by borrowing the rdbg_symname() macro from arch/x86_64.


To generate a diff of this commit:
cvs rdiff -u -r1.42 -r1.43 src/libexec/ld.elf_so/arch/i386/mdreloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/libexec/ld.elf_so/arch/i386/mdreloc.c
diff -u src/libexec/ld.elf_so/arch/i386/mdreloc.c:1.42 src/libexec/ld.elf_so/arch/i386/mdreloc.c:1.43
--- src/libexec/ld.elf_so/arch/i386/mdreloc.c:1.42	Sun Jun  4 01:24:57 2023
+++ src/libexec/ld.elf_so/arch/i386/mdreloc.c	Sun Jun  4 20:02:29 2023
@@ -1,8 +1,8 @@
-/*	$NetBSD: mdreloc.c,v 1.42 2023/06/04 01:24:57 joerg Exp $	*/
+/*	$NetBSD: mdreloc.c,v 1.43 2023/06/04 20:02:29 martin Exp $	*/
 
 #include 
 #ifndef lint
-__RCSID("$NetBSD: mdreloc.c,v 1.42 2023/06/04 01:24:57 joerg Exp $");
+__RCSID("$NetBSD: mdreloc.c,v 1.43 2023/06/04 20:02:29 martin Exp $");
 #endif /* not lint */
 
 #include 
@@ -15,6 +15,9 @@ void _rtld_bind_start(void);
 void _rtld_relocate_nonplt_self(Elf_Dyn *, Elf_Addr);
 caddr_t _rtld_bind(const Obj_Entry *, Elf_Word);
 
+#define rdbg_symname(obj, rela) \
+	((obj)->strtab + (obj)->symtab[ELF_R_SYM((rela)->r_info)].st_name)
+
 void
 _rtld_setup_pltgot(const Obj_Entry *obj)
 {
@@ -97,7 +100,7 @@ _rtld_relocate_nonplt_objects(Obj_Entry 
 
 			*where += target - (Elf_Addr)where;
 			rdbg(("PC32 %s in %s --> %p in %s",
-			obj->strtab + obj->symtab[symnum].st_name,
+			rdbg_symname(obj, rel),
 			obj->path, (void *)*where, defobj->path));
 			break;
 
@@ -111,7 +114,7 @@ _rtld_relocate_nonplt_objects(Obj_Entry 
 			if (*where != tmp)
 *where = tmp;
 			rdbg(("32/GLOB_DAT %s in %s --> %p in %s",
-			obj->strtab + obj->symtab[symnum].st_name,
+			rdbg_symname(obj, rel),
 			obj->path, (void *)*where, defobj->path));
 			break;
 
@@ -154,7 +157,7 @@ _rtld_relocate_nonplt_objects(Obj_Entry 
 			*where += (Elf_Addr)(def->st_value - defobj->tlsoffset);
 
 			rdbg(("TLS_TPOFF %s in %s --> %p",
-			obj->strtab + obj->symtab[symnum].st_name,
+			rdbg_symname(obj, rel),
 			obj->path, (void *)*where));
 			break;
 
@@ -165,7 +168,7 @@ _rtld_relocate_nonplt_objects(Obj_Entry 
 
 			*where += (Elf_Addr)(defobj->tlsoffset - def->st_value);
 			rdbg(("TLS_TPOFF32 %s in %s --> %p",
-			obj->strtab + obj->symtab[symnum].st_name,
+			rdbg_symname(obj, rel),
 			obj->path, (void *)*where));
 			break;
 
@@ -173,7 +176,7 @@ _rtld_relocate_nonplt_objects(Obj_Entry 
 			*where = (Elf_Addr)(defobj->tlsindex);
 
 			rdbg(("TLS_DTPMOD32 %s in %s --> %p",
-			obj->strtab + obj->symtab[symnum].st_name,
+			rdbg_symname(obj, rel),
 			obj->path, (void *)*where));
 			break;
 
@@ -181,7 +184,7 @@ _rtld_relocate_nonplt_objects(Obj_Entry 
 			*where = (Elf_Addr)(def->st_value);
 
 			rdbg(("TLS_DTPOFF32 %s in %s --> %p",
-			obj->strtab + obj->symtab[symnum].st_name,
+			rdbg_symname(obj, rel),
 			obj->path, (void *)*where));
 
 			break;
@@ -192,7 +195,7 @@ _rtld_relocate_nonplt_objects(Obj_Entry 
 			(u_long)ELF_R_SYM(rel->r_info),
 			(u_long)ELF_R_TYPE(rel->r_info),
 			(void *)rel->r_offset, (void *)*where,
-			obj->strtab + obj->symtab[symnum].st_name));
+			rdbg_symname(obj, rel)));
 			_rtld_error("%s: Unsupported relocation type %ld "
 			"in non-PLT relocations",
 			obj->path, (u_long) ELF_R_TYPE(rel->r_info));



CVS commit: src/libexec/ld.elf_so/arch/i386

2023-06-04 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Jun  4 20:02:29 UTC 2023

Modified Files:
src/libexec/ld.elf_so/arch/i386: mdreloc.c

Log Message:
Avoid using uninitialized variable "symnum" when building with DEBUG
enabled by borrowing the rdbg_symname() macro from arch/x86_64.


To generate a diff of this commit:
cvs rdiff -u -r1.42 -r1.43 src/libexec/ld.elf_so/arch/i386/mdreloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/libexec/ld.elf_so/arch/i386

2010-01-13 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Wed Jan 13 22:34:07 UTC 2010

Modified Files:
src/libexec/ld.elf_so/arch/i386: mdreloc.c

Log Message:
Shut gcc up.


To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.30 src/libexec/ld.elf_so/arch/i386/mdreloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.