Source-Changes-HG archive

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

[src/trunk]: src/sys/kern the gnu tag name is valid for both type 1 (abi) and...



details:   https://anonhg.NetBSD.org/src/rev/61ea570eda8d
branches:  trunk
changeset: 779545:61ea570eda8d
user:      christos <christos%NetBSD.org@localhost>
date:      Sat Jun 02 16:48:13 2012 +0000

description:
the gnu tag name is valid for both type 1 (abi) and type 3 (build id)

diffstat:

 sys/kern/exec_elf.c |  17 ++++++++---------
 1 files changed, 8 insertions(+), 9 deletions(-)

diffs (45 lines):

diff -r fb76768daf19 -r 61ea570eda8d sys/kern/exec_elf.c
--- a/sys/kern/exec_elf.c       Sat Jun 02 16:26:24 2012 +0000
+++ b/sys/kern/exec_elf.c       Sat Jun 02 16:48:13 2012 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: exec_elf.c,v 1.39 2012/05/22 02:40:05 christos Exp $   */
+/*     $NetBSD: exec_elf.c,v 1.40 2012/06/02 16:48:13 christos Exp $   */
 
 /*-
  * Copyright (c) 1994, 2000, 2005 The NetBSD Foundation, Inc.
@@ -57,7 +57,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: exec_elf.c,v 1.39 2012/05/22 02:40:05 christos Exp $");
+__KERNEL_RCSID(1, "$NetBSD: exec_elf.c,v 1.40 2012/06/02 16:48:13 christos Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_pax.h"
@@ -908,13 +908,6 @@
                                break;
                        }
                        /*
-                        * Ignore GNU tags
-                        */
-                       if (np->n_namesz == ELF_NOTE_GNU_NAMESZ &&
-                           memcmp(ndata, ELF_NOTE_GNU_NAME,
-                           ELF_NOTE_GNU_NAMESZ) == 0)
-                               break;
-                       /*
                         * Ignore SuSE tags
                         */
                        if (np->n_namesz == ELF_NOTE_SUSE_NAMESZ &&
@@ -934,6 +927,12 @@
 bad:
 #ifdef DIAGNOSTIC
                        {
+                               /*
+                                * Ignore GNU tags
+                                */
+                               if (np->n_namesz == ELF_NOTE_GNU_NAMESZ &&
+                                   memcmp(ndata, ELF_NOTE_GNU_NAME,
+                                   ELF_NOTE_GNU_NAMESZ) == 0)
                                int ns = MIN(np->n_namesz, maxlen);
                                printf("%s: Unknown elf note type %d: "
                                    "[namesz=%d, descsz=%d name=%*.*s]\n",



Home | Main Index | Thread Index | Old Index