Page MenuHomeFreeBSD

D4610.id11614.diff
No OneTemporary

D4610.id11614.diff

Index: head/lib/libsysdecode/Makefile
===================================================================
--- head/lib/libsysdecode/Makefile
+++ head/lib/libsysdecode/Makefile
@@ -4,10 +4,31 @@
LIB= sysdecode
-SRCS= utrace.c
+SRCS= ioctl.c utrace.c
INCS= sysdecode.h
MAN+= sysdecode.3 \
+ sysdecode_ioctlname.3 \
sysdecode_utrace.3
+CLEANFILES= ioctl.c
+
+.if defined(COMPAT_32BIT)
+CPP+= -m32
+.endif
+
+.if ${MK_PF} != "no"
+CFLAGS+=-DPF
+.endif
+
+# Workaround duplicate declarations in <netinet/ip_compat.h>
+CFLAGS.gcc.ioctl.c+= -Wno-redundant-decls
+CFLAGS.gcc+= ${CFLAGS.gcc.${.IMPSRC}}
+
+ioctl.c: mkioctls
+ env MACHINE=${MACHINE} CPP="${CPP}" \
+ /bin/sh ${.CURDIR}/mkioctls ${DESTDIR}${INCLUDEDIR} > ${.TARGET}
+
+beforedepend: ioctl.c
+
.include <bsd.lib.mk>
Index: head/lib/libsysdecode/sysdecode.h
===================================================================
--- head/lib/libsysdecode/sysdecode.h
+++ head/lib/libsysdecode/sysdecode.h
@@ -29,6 +29,7 @@
#ifndef __SYSDECODE_H__
#define __SYSDECODE_H__
+const char *sysdecode_ioctlname(unsigned long _val);
int sysdecode_utrace(FILE *_fp, void *_buf, size_t _len);
#endif /* !__SYSDECODE_H__ */
Index: head/lib/libsysdecode/sysdecode.3
===================================================================
--- head/lib/libsysdecode/sysdecode.3
+++ head/lib/libsysdecode/sysdecode.3
@@ -39,6 +39,7 @@
library includes several functions that provide descriptive names of
values associated with system calls.
.Sh SEE ALSO
+.Xr sysdecode_ioctlname 3 ,
.Xr sysdecode_utrace 3
.Sh HISTORY
The
Index: head/usr.bin/kdump/Makefile
===================================================================
--- head/usr.bin/kdump/Makefile
+++ head/usr.bin/kdump/Makefile
@@ -6,7 +6,7 @@
.PATH: ${.CURDIR}/../ktrace
PROG= kdump
-SRCS= kdump_subr.c kdump_subr.h kdump.c ioctl.c subr.c
+SRCS= kdump_subr.c kdump_subr.h kdump.c subr.c
CFLAGS+= -I${.CURDIR}/../ktrace -I${.CURDIR} -I${.CURDIR}/../.. -I.
LIBADD= sysdecode
@@ -15,15 +15,9 @@
CFLAGS+=-DHAVE_LIBCAPSICUM
.endif
-.if ${MK_PF} != "no"
-CFLAGS+=-DPF
-.endif
-
NO_WERROR?= YES
-CLEANFILES= ioctl.c kdump_subr.c kdump_subr.h
-
-beforedepend: ioctl.c
+CLEANFILES= kdump_subr.c kdump_subr.h
.if (${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386")
beforedepend: linux_syscalls.c
@@ -44,10 +38,6 @@
${.CURDIR}/../../sys/${MACHINE_ARCH}/linux32/syscalls.master ${.CURDIR}/linux32_syscalls.conf
.endif
-ioctl.c: mkioctls
- env MACHINE=${MACHINE} CPP="${CPP}" \
- sh ${.CURDIR}/mkioctls print ${DESTDIR}${INCLUDEDIR} > ${.TARGET}
-
kdump_subr.h: mksubr
sh ${.CURDIR}/mksubr ${DESTDIR}${INCLUDEDIR} | \
sed -n 's/^\([a-z].*)\)$$/void \1;/p' >${.TARGET}
Index: head/usr.bin/kdump/kdump.c
===================================================================
--- head/usr.bin/kdump/kdump.c
+++ head/usr.bin/kdump/kdump.c
@@ -116,7 +116,6 @@
void ktrfaultend(struct ktr_faultend *);
void limitfd(int fd);
void usage(void);
-void ioctlname(unsigned long, int);
#define TIMESTAMP_NONE 0x0
#define TIMESTAMP_ABSOLUTE 0x1
@@ -693,6 +692,20 @@
#undef KTRACE
int nsyscalls = sizeof (syscallnames) / sizeof (syscallnames[0]);
+static void
+ioctlname(unsigned long val)
+{
+ const char *str;
+
+ str = sysdecode_ioctlname(val);
+ if (str != NULL)
+ printf("%s", str);
+ else if (decimal)
+ printf("%lu", val);
+ else
+ printf("%#lx", val);
+}
+
void
ktrsyscall(struct ktr_syscall *ktr, u_int flags)
{
@@ -741,7 +754,7 @@
case SYS_ioctl: {
print_number(ip, narg, c);
putchar(c);
- ioctlname(*ip, decimal);
+ ioctlname(*ip);
c = ',';
ip++;
narg--;
Index: head/usr.bin/truss/Makefile
===================================================================
--- head/usr.bin/truss/Makefile
+++ head/usr.bin/truss/Makefile
@@ -2,16 +2,11 @@
NO_WERROR=
PROG= truss
-SRCS= cloudabi.c ioctl.c main.c setup.c syscalls.c
+SRCS= cloudabi.c main.c setup.c syscalls.c
LIBADD= sysdecode
CFLAGS+= -I${.CURDIR} -I. -I${.CURDIR}/../../sys
-CLEANFILES= ioctl.c
-
-ioctl.c: ${.CURDIR}/../kdump/mkioctls
- env MACHINE=${MACHINE} CPP="${CPP}" \
- /bin/sh ${.CURDIR}/../kdump/mkioctls return ${DESTDIR}${INCLUDEDIR} > ${.TARGET}
# Define where to generate syscalls for each ABI.
ABI_SYSPATH.freebsd= sys/kern
Index: head/usr.bin/truss/syscalls.c
===================================================================
--- head/usr.bin/truss/syscalls.c
+++ head/usr.bin/truss/syscalls.c
@@ -1315,7 +1315,7 @@
unsigned long cmd;
cmd = args[sc->offset];
- temp = ioctlname(cmd);
+ temp = sysdecode_ioctlname(cmd);
if (temp)
fputs(temp, fp);
else {

File Metadata

Mime Type
text/plain
Expires
Wed, Jul 22, 6:46 AM (6 h, 29 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35352129
Default Alt Text
D4610.id11614.diff (4 KB)

Event Timeline