mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-17 10:26:15 +00:00
Revert r268007, and re-adapt MFV r260708:
4427 pid provider rejects probes with valid UTF-8 names Use of u8_textprep.c required -Wno-cast-qual for powerpc. MFC after: 2 weeks
This commit is contained in:
parent
1b08cb4ee7
commit
c6d712caf3
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=268097
@ -28,9 +28,9 @@
|
||||
* Use is subject to license terms.
|
||||
*/
|
||||
|
||||
#if defined(sun)
|
||||
#pragma ident "%Z%%M% %I% %E% SMI"
|
||||
#endif
|
||||
/*
|
||||
* Copyright (c) 2013, Joyent, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <sys/atomic.h>
|
||||
#include <sys/errno.h>
|
||||
@ -63,6 +63,7 @@
|
||||
#if !defined(sun)
|
||||
#include <sys/dtrace_bsd.h>
|
||||
#include <sys/eventhandler.h>
|
||||
#include <sys/u8_textprep.h>
|
||||
#include <sys/user.h>
|
||||
#include <vm/vm.h>
|
||||
#include <vm/pmap.h>
|
||||
@ -2256,8 +2257,7 @@ fasttrap_ioctl(struct cdev *dev, u_long cmd, caddr_t arg, int fflag,
|
||||
fasttrap_probe_spec_t *probe;
|
||||
uint64_t noffs;
|
||||
size_t size;
|
||||
int ret;
|
||||
char *c;
|
||||
int ret, err;
|
||||
|
||||
if (copyin(&uprobe->ftps_noffs, &noffs,
|
||||
sizeof (uprobe->ftps_noffs)))
|
||||
@ -2286,18 +2286,16 @@ fasttrap_ioctl(struct cdev *dev, u_long cmd, caddr_t arg, int fflag,
|
||||
* Verify that the function and module strings contain no
|
||||
* funny characters.
|
||||
*/
|
||||
for (c = &probe->ftps_func[0]; *c != '\0'; c++) {
|
||||
if (*c < 0x20 || 0x7f <= *c) {
|
||||
ret = EINVAL;
|
||||
goto err;
|
||||
}
|
||||
if (u8_validate(probe->ftps_func, strlen(probe->ftps_func),
|
||||
NULL, U8_VALIDATE_ENTIRE, &err) < 0) {
|
||||
ret = EINVAL;
|
||||
goto err;
|
||||
}
|
||||
|
||||
for (c = &probe->ftps_mod[0]; *c != '\0'; c++) {
|
||||
if (*c < 0x20 || 0x7f <= *c) {
|
||||
ret = EINVAL;
|
||||
goto err;
|
||||
}
|
||||
if (u8_validate(probe->ftps_mod, strlen(probe->ftps_mod),
|
||||
NULL, U8_VALIDATE_ENTIRE, &err) < 0) {
|
||||
ret = EINVAL;
|
||||
goto err;
|
||||
}
|
||||
|
||||
#ifdef notyet
|
||||
|
@ -20,9 +20,13 @@ CFLAGS+= -I${SYSDIR}/cddl/contrib/opensolaris/uts/powerpc
|
||||
.PATH: ${SYSDIR}/cddl/contrib/opensolaris/uts/powerpc/dtrace
|
||||
.endif
|
||||
|
||||
.PATH: ${.CURDIR}/../../../cddl/contrib/opensolaris/common/unicode
|
||||
SRCS+= u8_textprep.c
|
||||
|
||||
CFLAGS+= -DSMP
|
||||
|
||||
.include <bsd.kmod.mk>
|
||||
|
||||
CFLAGS+= -include ${SYSDIR}/cddl/compat/opensolaris/sys/debug_compat.h
|
||||
CWARNFLAGS+= -Wno-cast-qual
|
||||
CWARNFLAGS+= -Wno-unused
|
||||
|
Loading…
Reference in New Issue
Block a user