Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: basesrc/libexec/ld.elf_so



On Fri, Nov 22, 2002 at 02:00:13PM +0900, enami tsugutomo wrote:
> Bang Jun-Young <junyoung%netbsd.org@localhost> writes:
> 
> > Module Name:        basesrc
> > Committed By:       junyoung
> > Date:               Fri Nov 22 04:39:39 UTC 2002
> > 
> > Modified Files:
> >     basesrc/libexec/ld.elf_so: reloc.c
> > 
> > Log Message:
> > Now _rtld_relocate_objects() returns with error as soon as any of
> > subsequent calls in it fails.
> > 
> > 
> > To generate a diff of this commit:
> > cvs rdiff -r1.75 -r1.76 basesrc/libexec/ld.elf_so/reloc.c
> 
> Without doing enough cleanup?  I guess you aren't notice the comment
> in the following code.
> 
> @@ -184,7 +183,7 @@
>                 }
>                 dbg(("doing non-PLT relocations"));
>                 if (_rtld_relocate_nonplt_objects(obj) < 0)
> -                       ok = 0;
> +                       return -1;
>                 if (obj->textrel) {     /* Re-protected the text segment. */
>                         if (mprotect(obj->mapbase, obj->textsize,
>                                      PROT_READ | PROT_EXEC) == -1) {

It is no problem, since the process is terminated if _rtld_relocate_objects()
fails.

Jun-Young

-- 
Bang Jun-Young <junyoung%netbsd.org@localhost>



Home | Main Index | Thread Index | Old Index