[Midnightbsd-cvs] src [11499] trunk/usr.bin/ldd: sync iwth freebsd.
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sat Jul 7 13:38:08 EDT 2018
Revision: 11499
http://svnweb.midnightbsd.org/src/?rev=11499
Author: laffer1
Date: 2018-07-07 13:38:07 -0400 (Sat, 07 Jul 2018)
Log Message:
-----------
sync iwth freebsd.
Modified Paths:
--------------
trunk/usr.bin/ldd/Makefile
trunk/usr.bin/ldd/extern.h
trunk/usr.bin/ldd/ldd.1
trunk/usr.bin/ldd/ldd.c
trunk/usr.bin/ldd/sods.c
Property Changed:
----------------
trunk/usr.bin/ldd/ldd.1
Modified: trunk/usr.bin/ldd/Makefile
===================================================================
--- trunk/usr.bin/ldd/Makefile 2018-07-07 17:37:34 UTC (rev 11498)
+++ trunk/usr.bin/ldd/Makefile 2018-07-07 17:38:07 UTC (rev 11499)
@@ -1,4 +1,5 @@
# $MidnightBSD$
+# $FreeBSD: stable/10/usr.bin/ldd/Makefile 211725 2010-08-23 22:24:11Z imp $
PROG?= ldd
SRCS= ldd.c
Modified: trunk/usr.bin/ldd/extern.h
===================================================================
--- trunk/usr.bin/ldd/extern.h 2018-07-07 17:37:34 UTC (rev 11498)
+++ trunk/usr.bin/ldd/extern.h 2018-07-07 17:38:07 UTC (rev 11499)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/*
* Copyright (c) 2002 FreeBSD, Inc
* All rights reserved.
@@ -22,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $MidnightBSD$
+ * $FreeBSD: stable/10/usr.bin/ldd/extern.h 95648 2002-04-28 12:55:35Z markm $
*/
extern void dump_file(const char *);
Modified: trunk/usr.bin/ldd/ldd.1
===================================================================
--- trunk/usr.bin/ldd/ldd.1 2018-07-07 17:37:34 UTC (rev 11498)
+++ trunk/usr.bin/ldd/ldd.1 2018-07-07 17:38:07 UTC (rev 11499)
@@ -1,4 +1,5 @@
.\" $MidnightBSD$
+.\" $FreeBSD: stable/10/usr.bin/ldd/ldd.1 199871 2009-11-28 11:05:22Z danger $
.\"
.Dd May 15, 2008
.Dt LDD 1
Property changes on: trunk/usr.bin/ldd/ldd.1
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Modified: trunk/usr.bin/ldd/ldd.c
===================================================================
--- trunk/usr.bin/ldd/ldd.c 2018-07-07 17:37:34 UTC (rev 11498)
+++ trunk/usr.bin/ldd/ldd.c 2018-07-07 17:38:07 UTC (rev 11499)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/*
* Copyright (c) 1993 Paul Kranenburg
* All rights reserved.
@@ -29,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__MBSDID("$MidnightBSD$");
+__FBSDID("$FreeBSD: stable/10/usr.bin/ldd/ldd.c 300458 2016-05-23 05:19:37Z truckman $");
#include <sys/wait.h>
@@ -49,12 +50,6 @@
#include "extern.h"
-#ifdef COMPAT_32BIT
-#define LD_ "LD_32_"
-#else
-#define LD_ "LD_"
-#endif
-
/*
* 32-bit ELF data structures can only be used if the system header[s] declare
* them. There is no official macro for determining whether they are declared,
@@ -64,6 +59,16 @@
#define ELF32_SUPPORTED
#endif
+#define LDD_SETENV(name, value, overwrite) do { \
+ setenv("LD_" name, value, overwrite); \
+ setenv("LD_32_" name, value, overwrite); \
+} while (0)
+
+#define LDD_UNSETENV(name) do { \
+ unsetenv("LD_" name); \
+ unsetenv("LD_32_" name); \
+} while (0)
+
static int is_executable(const char *fname, int fd, int *is_shlib,
int *type);
static void usage(void);
@@ -79,10 +84,10 @@
static int
execldd32(char *file, char *fmt1, char *fmt2, int aflag, int vflag)
{
- char *argv[8];
+ char *argv[9];
int i, rval, status;
- unsetenv(LD_ "TRACE_LOADED_OBJECTS");
+ LDD_UNSETENV("TRACE_LOADED_OBJECTS");
rval = 0;
i = 0;
argv[i++] = strdup(_PATH_LDD32);
@@ -121,7 +126,7 @@
}
while (i--)
free(argv[i]);
- setenv(LD_ "TRACE_LOADED_OBJECTS", "yes", 1);
+ LDD_SETENV("TRACE_LOADED_OBJECTS", "yes", 1);
return (rval);
}
#endif
@@ -210,15 +215,15 @@
}
/* ld.so magic */
- setenv(LD_ "TRACE_LOADED_OBJECTS", "yes", 1);
+ LDD_SETENV("TRACE_LOADED_OBJECTS", "yes", 1);
if (fmt1 != NULL)
- setenv(LD_ "TRACE_LOADED_OBJECTS_FMT1", fmt1, 1);
+ LDD_SETENV("TRACE_LOADED_OBJECTS_FMT1", fmt1, 1);
if (fmt2 != NULL)
- setenv(LD_ "TRACE_LOADED_OBJECTS_FMT2", fmt2, 1);
+ LDD_SETENV("TRACE_LOADED_OBJECTS_FMT2", fmt2, 1);
- setenv(LD_ "TRACE_LOADED_OBJECTS_PROGNAME", *argv, 1);
+ LDD_SETENV("TRACE_LOADED_OBJECTS_PROGNAME", *argv, 1);
if (aflag)
- setenv(LD_ "TRACE_LOADED_OBJECTS_ALL", "1", 1);
+ LDD_SETENV("TRACE_LOADED_OBJECTS_ALL", "1", 1);
else if (fmt1 == NULL && fmt2 == NULL)
/* Default formats */
printf("%s:\n", *argv);
@@ -373,9 +378,19 @@
return (0);
}
if (hdr.elf.e_type == ET_DYN) {
- if (hdr.elf.e_ident[EI_OSABI] == ELFOSABI_FREEBSD) {
+ switch (hdr.elf.e_ident[EI_OSABI]) {
+ case ELFOSABI_FREEBSD:
*is_shlib = 1;
return (1);
+#ifdef __ARM_EABI__
+ case ELFOSABI_NONE:
+ if (hdr.elf.e_machine != EM_ARM)
+ break;
+ if (((hdr.elf.e_flags & 0xff000000) >> 24) < 4)
+ break;
+ *is_shlib = 1;
+ return (1);
+#endif
}
warnx("%s: not a FreeBSD ELF shared object", fname);
return (0);
Modified: trunk/usr.bin/ldd/sods.c
===================================================================
--- trunk/usr.bin/ldd/sods.c 2018-07-07 17:37:34 UTC (rev 11498)
+++ trunk/usr.bin/ldd/sods.c 2018-07-07 17:38:07 UTC (rev 11499)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/*
* Copyright (C) 1996-1997 John D. Polstra. All rights reserved.
*
@@ -24,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__MBSDID("$MidnightBSD$");
+__FBSDID("$FreeBSD: stable/10/usr.bin/ldd/sods.c 264785 2014-04-22 21:25:03Z brueffer $");
#include <sys/types.h>
#include <sys/mman.h>
@@ -204,7 +205,6 @@
warnx("%s: this is an ELF program; use objdump to examine", fname);
++error_count;
munmap(objbase, sb.st_size);
- close(fd);
return;
}
More information about the Midnightbsd-cvs
mailing list