From owner-freebsd-bugs Tue Apr 9 23: 0:15 2002 Delivered-To: freebsd-bugs@hub.freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 03F8037B41B for ; Tue, 9 Apr 2002 23:00:01 -0700 (PDT) Received: (from gnats@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g3A601O64380; Tue, 9 Apr 2002 23:00:01 -0700 (PDT) (envelope-from gnats) Received: from gssm.otsuka.tsukuba.ac.jp (utogwgw.gssm.otsuka.tsukuba.ac.jp [130.158.176.189]) by hub.freebsd.org (Postfix) with SMTP id 80C7837B405 for ; Tue, 9 Apr 2002 22:53:16 -0700 (PDT) Received: (qmail 96504 invoked from network); 10 Apr 2002 05:53:14 -0000 Received: from OneOfLocalMachines (HELO smr01.gssm.otsuka.tsukuba.ac.jp) (10.2.1.2) by 10.1.1.1 with SMTP; 10 Apr 2002 05:53:14 -0000 Received: (from ohki@localhost) by smr01.gssm.otsuka.tsukuba.ac.jp (8.11.6/8.11.6) id g3A5rEC02288; Wed, 10 Apr 2002 14:53:14 +0900 (JST) (envelope-from ohki) Message-Id: <200204100553.g3A5rEC02288@smr01.gssm.otsuka.tsukuba.ac.jp> Date: Wed, 10 Apr 2002 14:53:14 +0900 (JST) From: Atsuo Ohki Reply-To: Atsuo Ohki To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: kern/36952: ldd comand of linux does not work Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org >Number: 36952 >Category: kern >Synopsis: ldd comand of linux does not work >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Apr 09 23:00:01 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Atsuo Ohki >Release: FreeBSD 4.5-RELEASE i386 >Organization: gssm, University of Tsukuba, Tokyo >Environment: System: FreeBSD smr01 4.5-RELEASE FreeBSD 4.5-RELEASE #0: Wed Feb 27 19:18:56 JST 2002 ohki@smr01:/usr/src/sys/compile/gssm i386 >Description: ldd command of linux does not work. >How-To-Repeat: /compat/linux/usr/bin/ldd /compat/linux/bin/uname >Fix: --- sys/kern/imgact_elf.c-ORIG Mon Dec 17 03:26:16 2001 +++ sys/kern/imgact_elf.c Wed Feb 27 18:46:49 2002 @@ -469,10 +469,17 @@ const char *interp = NULL; Elf_Brandinfo *brand_info; char *path; + int fallback_elf_brand_val = fallback_elf_brand; /* * Do we have a valid ELF header ? */ + if (bcmp("Linux ", imgp->proc->p_sysent->sv_name, 6) == 0) { + if (elf_check_header(hdr) != 0 || + (hdr->e_type != ET_EXEC && hdr->e_type != ET_DYN)) + return -1; + fallback_elf_brand_val = ELFOSABI_LINUX; + } else if (elf_check_header(hdr) != 0 || hdr->e_type != ET_EXEC) return -1; @@ -616,7 +623,7 @@ for (i = 0; i < MAX_BRANDS; i++) { Elf_Brandinfo *bi = elf_brand_list[i]; - if (bi != NULL && fallback_elf_brand == bi->brand) { + if (bi != NULL && fallback_elf_brand_val == bi->brand) { brand_info = bi; break; } >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message