1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-04 09:09:56 +00:00

Merge from head

This commit is contained in:
Baptiste Daroussin 2015-03-04 21:33:08 +00:00
commit fa1e92b687
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/projects/release-pkg/; revision=279602
2380 changed files with 305879 additions and 46645 deletions

View File

@ -358,16 +358,15 @@ WMAKEENV+= CC="${XCC} ${XCFLAGS}" CXX="${XCXX} ${XCFLAGS} ${XCXXFLAGS}" \
SIZE="${XSIZE}"
.if ${XCC:M/*}
XFLAGS= --sysroot=${WORLDTMP}
.if defined(CROSS_BINUTILS_PREFIX)
# In the case of xdev-build tools, CROSS_BINUTILS_PREFIX won't be a
# directory, but the compiler will look in the right place for it's
# tools so we don't need to tell it where to look.
.if exists(${CROSS_BINUTILS_PREFIX})
XFLAGS+= -B${CROSS_BINUTILS_PREFIX}
BFLAGS+= -B${CROSS_BINUTILS_PREFIX}
.endif
.else
XFLAGS+= -B${WORLDTMP}/usr/bin
BFLAGS+= -B${WORLDTMP}/usr/bin
.endif
.if ${TARGET} == "arm"
.if ${TARGET_ARCH:M*hf*} != ""
@ -384,8 +383,16 @@ DEPFLAGS+= -I${WORLDTMP}/usr/include/c++/v1
TARGET_ABI?= unknown
TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/}-${TARGET_ABI}-freebsd11.0
XCFLAGS+= -target ${TARGET_TRIPLE}
XCFLAGS+= --sysroot=${WORLDTMP} ${BFLAGS}
XCXXFLAGS+= --sysroot=${WORLDTMP} ${BFLAGS}
.endif
.else
.if defined(CROSS_BINUTILS_PREFIX) && exists(${CROSS_BINUTILS_PREFIX})
BFLAGS+= -B${CROSS_BINUTILS_PREFIX}
XCFLAGS+= ${BFLAGS}
XCXXFLAGS+= ${BFLAGS}
.endif
.endif # ${XCC:M/*}
WMAKE= ${WMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 DESTDIR=${WORLDTMP}
@ -930,25 +937,25 @@ packageworld:
.for dist in base ${EXTRA_DISTRIBUTIONS}
.if defined(NO_ROOT)
${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \
tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \
--exclude usr/lib/debug \
@${DESTDIR}/${DISTDIR}/${dist}.meta
tar cvf - --exclude usr/lib/debug \
@${DESTDIR}/${DISTDIR}/${dist}.meta | \
${XZ_CMD} > ${DESTDIR}/${DISTDIR}/${dist}.txz
.else
${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \
tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \
--exclude usr/lib/debug .
tar cvf - --exclude usr/lib/debug . | \
${XZ_CMD} > ${DESTDIR}/${DISTDIR}/${dist}.txz
.endif
.endfor
.for dist in ${DEBUG_DISTRIBUTIONS}
. if defined(NO_ROOT)
${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \
tar cvJf ${DESTDIR}/${DISTDIR}/${dist}-dbg.txz \
@${DESTDIR}/${DISTDIR}/${dist}.debug.meta
tar cvf - @${DESTDIR}/${DISTDIR}/${dist}.debug.meta | \
${XZ_CMD} > ${DESTDIR}/${DISTDIR}/${dist}-dbg.txz
. else
${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \
tar cvJfL ${DESTDIR}/${DISTDIR}/${dist}-dbg.txz \
usr/lib/debug
tar cvLf - usr/lib/debug | \
${XZ_CMD} > ${DESTDIR}/${DISTDIR}/${dist}-dbg.txz
. endif
.endfor
@ -1170,19 +1177,21 @@ distributekernel distributekernel.debug:
packagekernel:
.if defined(NO_ROOT)
cd ${DESTDIR}/${DISTDIR}/kernel; \
tar cvJf ${DESTDIR}/${DISTDIR}/kernel.txz \
@${DESTDIR}/${DISTDIR}/kernel.meta
tar cvf - @${DESTDIR}/${DISTDIR}/kernel.meta | \
${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.txz
.for _kernel in ${BUILDKERNELS:S/${INSTALLKERNEL}//}
cd ${DESTDIR}/${DISTDIR}/kernel.${_kernel}; \
tar cvJf ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.txz \
@${DESTDIR}/${DISTDIR}/kernel.${_kernel}.meta
tar cvf - @${DESTDIR}/${DISTDIR}/kernel.${_kernel}.meta | \
${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.txz
.endfor
.else
cd ${DESTDIR}/${DISTDIR}/kernel; \
tar cvJf ${DESTDIR}/${DISTDIR}/kernel.txz .
tar cvf - . | \
${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.txz
.for _kernel in ${BUILDKERNELS:S/${INSTALLKERNEL}//}
cd ${DESTDIR}/${DISTDIR}/kernel.${_kernel}; \
tar cvJf ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.txz .
tar cvf - . | \
${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.txz
.endfor
.endif
@ -1303,6 +1312,8 @@ legacy:
#
# bootstrap-tools: Build tools needed for compatibility
#
_bt= _bootstrap-tools
.if ${MK_GAMES} != "no"
_strfile= games/fortune/strfile
.endif
@ -1326,11 +1337,8 @@ _sed= usr.bin/sed
.if ${BOOTSTRAPPING} < 1000002
_m4= lib/libohash \
usr.bin/m4
.endif
.if ${BOOTSTRAPPING} < 1000013
_yacc= lib/liby \
usr.bin/yacc
${_bt}-usr.bin/m4: ${_bt}-lib/libohash
.endif
.if ${BOOTSTRAPPING} < 1000014
@ -1340,6 +1348,8 @@ _crunch= usr.sbin/crunch
.if ${BOOTSTRAPPING} < 1000026
_nmtree= lib/libnetbsd \
usr.sbin/nmtree
${_bt}-usr.sbin/nmtree: ${_bt}-lib/libnetbsd
.endif
.if ${BOOTSTRAPPING} < 1000027
@ -1354,6 +1364,13 @@ _lex= usr.bin/lex
_awk= usr.bin/awk
.endif
.if ${BOOTSTRAPPING} < 1001506
_yacc= lib/liby \
usr.bin/yacc
${_bt}-usr.bin/yacc: ${_bt}-lib/liby
.endif
.if ${MK_BSNMP} != "no"
_gensnmptree= usr.sbin/bsnmpd/gensnmptree
.endif
@ -1366,6 +1383,9 @@ _clang_tblgen= \
lib/clang/libllvmtablegen \
usr.bin/clang/tblgen \
usr.bin/clang/clang-tblgen
${_bt}-usr.bin/clang/clang-tblgen: ${_bt}-lib/clang/libllvmtablegen ${_bt}-lib/clang/libllvmsupport
${_bt}-usr.bin/clang/tblgen: ${_bt}-lib/clang/libllvmtablegen ${_bt}-lib/clang/libllvmsupport
.endif
# ELF Tool Chain libraries are needed for ELF tools and dtrace tools.
@ -1377,6 +1397,9 @@ _elftoolchain_libs= lib/libelf lib/libdwarf
.if ${MK_CDDL} != "no"
_dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf cddl/usr.bin/ctfconvert \
cddl/usr.bin/ctfmerge
${_bt}-cddl/usr.bin/ctfconvert: ${_bt}-lib/libelf ${_bt}-lib/libdwarf ${_bt}-cddl/lib/libctf
${_bt}-cddl/usr.bin/ctfmerge: ${_bt}-lib/libelf ${_bt}-lib/libdwarf ${_bt}-cddl/lib/libctf
.endif
.endif
@ -1395,12 +1418,16 @@ _kerberos5_bootstrap_tools= \
kerberos5/tools/asn1_compile \
kerberos5/tools/slc \
usr.bin/compile_et
${_bt}-kerberos5/tools/slc: ${_bt}-kerberos5/lib/libroken
${_bt}-kerberos5/tools/asn1_compile: ${_bt}-kerberos5/lib/libroken
.endif
bootstrap-tools: .PHONY
# Please document (add comment) why something is in 'bootstrap-tools'.
# Try to bound the building of the bootstrap-tool to just the
# FreeBSD versions that need the tool built at this stage of the build.
bootstrap-tools: .MAKE
.for _tool in \
${_clang_tblgen} \
${_kerberos5_bootstrap_tools} \
@ -1426,12 +1453,15 @@ bootstrap-tools: .MAKE
${_crunch} \
${_nmtree} \
${_vtfontcvt}
${_bt}-${_tool}: .PHONY .MAKE
${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \
cd ${.CURDIR}/${_tool} && \
${MAKE} DIRPRFX=${_tool}/ obj && \
${MAKE} DIRPRFX=${_tool}/ depend && \
${MAKE} DIRPRFX=${_tool}/ all && \
${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy install
bootstrap-tools: ${_bt}-${_tool}
.endfor
#

View File

@ -38,6 +38,17 @@
# xargs -n1 | sort | uniq -d;
# done
# 20150302: binutils documentation distributed as a manpage
OLD_FILES+=usr/share/doc/binutils/as.txt
OLD_FILES+=usr/share/doc/binutils/ld.txt
OLD_DIRS+=usr/share/doc/binutils
# 20150222: Removed bcd(6) and ppt(6)
OLD_FILES+=usr/bin/bcd
OLD_FILES+=usr/bin/ppt
OLD_FILES+=usr/share/man/man6/bcd.6.gz
OLD_FILES+=usr/share/man/man6/ppt.6.gz
# 20150217: Removed remnants of ar(4) driver
OLD_FILES+=usr/include/sys/dev/ic/hd64570.h
# 20150212: /usr/games moving into /usr/bin
OLD_FILES+=usr/games/bcd
OLD_FILES+=usr/games/caesar

View File

@ -31,6 +31,14 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11.x IS SLOW:
disable the most expensive debugging functionality run
"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
20150217:
If you are running a -CURRENT kernel since r273872 (Oct 30th, 2014),
but before r278950, the RNG was not seeded properly. Immediately
upgrade the kernel to r278950 or later and regenerate any keys (e.g.
ssh keys or openssl keys) that were generated w/ a kernel from that
range. This does not affect programs that directly used /dev/random
or /dev/urandom. All userland uses of arc4random(3) are affected.
20150210:
The autofs(4) ABI was changed in order to restore binary compatibility
with 10.1-RELEASE. The automountd(8) daemon needs to be rebuilt to work

View File

@ -56,7 +56,6 @@ __FBSDID("$FreeBSD$");
#ifdef SHELL
#define main killcmd
#include "bltin/bltin.h"
#include "error.h"
#endif
static void nosig(const char *);

View File

@ -29,7 +29,7 @@
.\" @(#)symlink.7 8.3 (Berkeley) 3/31/94
.\" $FreeBSD$
.\"
.Dd January 23, 2015
.Dd February 16, 2015
.Dt SYMLINK 7
.Os
.Sh NAME
@ -146,6 +146,7 @@ The following system calls follow symbolic links
unless given the
.Dv AT_SYMLINK_NOFOLLOW
flag:
.Xr chflagsat 2 ,
.Xr fchmodat 2 ,
.Xr fchownat 2 ,
.Xr fstatat 2

View File

@ -4,94 +4,88 @@
jail_name_to_jid()
{
local check_name="$1"
(
line="$(jls -n 2> /dev/null | grep name=$check_name )"
for nv in $line; do
local name="${nv%=*}"
if [ "${name}" = "jid" ]; then
eval $nv
echo $jid
break
fi
done
)
jls -j "$check_name" -s | tr ' ' '\n' | grep jid= | sed -e 's/.*=//g'
}
base=pgrep_j_test
if [ `id -u` -ne 0 ]; then
echo "1..0 # skip Test needs uid 0."
exit 0
fi
echo "1..3"
sleep=$(pwd)/sleep.txt
ln -sf /bin/sleep $sleep
name="pgrep -j <jid>"
if [ `id -u` -eq 0 ]; then
sleep=$(pwd)/sleep.txt
ln -sf /bin/sleep $sleep
jail -c path=/ name=${base}_1_1 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_1.pid $sleep 5 &
sleep_amount=5
jail -c path=/ name=${base}_1_1 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_1.pid $sleep $sleep_amount &
jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_2.pid $sleep 5 &
jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_2.pid $sleep $sleep_amount &
for i in `seq 1 10`; do
jid1=$(jail_name_to_jid ${base}_1_1)
jid2=$(jail_name_to_jid ${base}_1_2)
jid="${jid1},${jid2}"
pid1="$(pgrep -f -x -j $jid "$sleep 5" | sort)"
pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_1_1.pid)" \
$(cat ${PWD}/${base}_1_2.pid) | sort)
if [ "$pid1" = "$pid2" ]; then
echo "ok 1 - $name"
else
echo "not ok 1 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
fi
[ -f ${PWD}/${base}_1_1.pid ] && kill $(cat ${PWD}/${base}_1_1.pid)
[ -f ${PWD}/${base}_1_2.pid ] && kill $(cat ${PWD}/${base}_1_2.pid)
rm -f $sleep
case "$jid" in
[0-9]+,[0-9]+)
break
;;
esac
sleep 0.1
done
sleep 0.5
pid1="$(pgrep -f -x -j "$jid" "$sleep $sleep_amount" | sort)"
pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_1_1.pid)" \
$(cat ${PWD}/${base}_1_2.pid) | sort)
if [ "$pid1" = "$pid2" ]; then
echo "ok 1 - $name"
else
echo "ok 1 - $name # skip Test needs uid 0."
echo "not ok 1 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
fi
[ -f ${PWD}/${base}_1_1.pid ] && kill $(cat ${PWD}/${base}_1_1.pid)
[ -f ${PWD}/${base}_1_2.pid ] && kill $(cat ${PWD}/${base}_1_2.pid)
wait
name="pgrep -j any"
if [ `id -u` -eq 0 ]; then
sleep=$(pwd)/sleep.txt
ln -sf /bin/sleep $sleep
jail -c path=/ name=${base}_2_1 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_2_1.pid $sleep 5 &
sleep_amount=6
jail -c path=/ name=${base}_2_1 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_2_1.pid $sleep $sleep_amount &
jail -c path=/ name=${base}_2_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_2_2.pid $sleep 5 &
jail -c path=/ name=${base}_2_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_2_2.pid $sleep $sleep_amount &
sleep 2
pid1="$(pgrep -f -x -j any "$sleep 5" | sort)"
pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_2_1.pid)" \
$(cat ${PWD}/${base}_2_2.pid) | sort)
if [ "$pid1" = "$pid2" ]; then
echo "ok 2 - $name"
else
echo "not ok 2 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
fi
[ -f ${PWD}/${base}_2_1.pid ] && kill $(cat ${PWD}/${base}_2_1.pid)
[ -f ${PWD}/${base}_2_2.pid ] && kill $(cat ${PWD}/${base}_2_2.pid)
rm -f $sleep
sleep 2
pid1="$(pgrep -f -x -j any "$sleep $sleep_amount" | sort)"
pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_2_1.pid)" \
$(cat ${PWD}/${base}_2_2.pid) | sort)
if [ "$pid1" = "$pid2" ]; then
echo "ok 2 - $name"
else
echo "ok 2 - $name # skip Test needs uid 0."
echo "not ok 2 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
fi
[ -f ${PWD}/${base}_2_1.pid ] && kill $(cat ${PWD}/${base}_2_1.pid)
[ -f ${PWD}/${base}_2_2.pid ] && kill $(cat ${PWD}/${base}_2_2.pid)
wait
name="pgrep -j none"
if [ `id -u` -eq 0 ]; then
sleep=$(pwd)/sleep.txt
ln -sf /bin/sleep $sleep
daemon -p ${PWD}/${base}_3_1.pid $sleep 5 &
jail -c path=/ name=${base}_3_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_3_2.pid $sleep 5 &
sleep 2
pid="$(pgrep -f -x -j none "$sleep 5")"
if [ "$pid" = "$(cat ${PWD}/${base}_3_1.pid)" ]; then
echo "ok 3 - $name"
else
echo "not ok 3 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
fi
rm -f $sleep
[ -f ${PWD}/${base}_3_1.pid ] && kill $(cat $PWD/${base}_3_1.pid)
[ -f ${PWD}/${base}_3_2.pid ] && kill $(cat $PWD/${base}_3_2.pid)
sleep_amount=7
daemon -p ${PWD}/${base}_3_1.pid $sleep $sleep_amount &
jail -c path=/ name=${base}_3_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_3_2.pid $sleep $sleep_amount &
sleep 2
pid="$(pgrep -f -x -j none "$sleep $sleep_amount")"
if [ "$pid" = "$(cat ${PWD}/${base}_3_1.pid)" ]; then
echo "ok 3 - $name"
else
echo "ok 3 - $name # skip Test needs uid 0."
echo "not ok 3 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
fi
[ -f ${PWD}/${base}_3_1.pid ] && kill $(cat $PWD/${base}_3_1.pid)
[ -f ${PWD}/${base}_3_2.pid ] && kill $(cat $PWD/${base}_3_2.pid)
rm -f $sleep

View File

@ -4,99 +4,91 @@
jail_name_to_jid()
{
local check_name="$1"
(
line="$(jls -n 2> /dev/null | grep name=$check_name )"
for nv in $line; do
local name="${nv%=*}"
if [ "${name}" = "jid" ]; then
eval $nv
echo $jid
break
fi
done
)
jls -j "$check_name" -s | tr ' ' '\n' | grep jid= | sed -e 's/.*=//g'
}
base=pkill_j_test
if [ `id -u` -ne 0 ]; then
echo "1..0 # skip Test needs uid 0."
exit 0
fi
echo "1..3"
sleep=$(pwd)/sleep.txt
ln -sf /bin/sleep $sleep
name="pkill -j <jid>"
if [ `id -u` -eq 0 ]; then
sleep=$(pwd)/sleep.txt
ln -sf /bin/sleep $sleep
jail -c path=/ name=${base}_1_1 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_1.pid $sleep 5 &
sleep_amount=5
jail -c path=/ name=${base}_1_1 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_1.pid $sleep $sleep_amount &
jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_2.pid $sleep 5 &
jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_2.pid $sleep $sleep_amount &
$sleep 5 &
sleep 0.5
$sleep $sleep_amount &
for i in `seq 1 10`; do
jid1=$(jail_name_to_jid ${base}_1_1)
jid2=$(jail_name_to_jid ${base}_1_2)
jid="${jid1},${jid2}"
if pkill -f -j "$jid" $sleep && sleep 0.5 &&
! -f ${PWD}/${base}_1_1.pid &&
! -f ${PWD}/${base}_1_2.pid ; then
echo "ok 1 - $name"
else
echo "not ok 1 - $name"
fi 2>/dev/null
rm -f $sleep
[ -f ${PWD}/${base}_1_1.pid ] && kill $(cat ${PWD}/${base}_1_1.pid)
[ -f ${PWD}/${base}_1_2.pid ] && kill $(cat ${PWD}/${base}_1_2.pid)
wait
case "$jid" in
[0-9]+,[0-9]+)
break
;;
esac
sleep 0.1
done
sleep 0.5
if pkill -f -j "$jid" $sleep && sleep 0.5 &&
! -f ${PWD}/${base}_1_1.pid &&
! -f ${PWD}/${base}_1_2.pid ; then
echo "ok 1 - $name"
else
echo "ok 1 - $name # skip Test needs uid 0."
fi
echo "not ok 1 - $name"
fi 2>/dev/null
[ -f ${PWD}/${base}_1_1.pid ] && kill $(cat ${PWD}/${base}_1_1.pid)
[ -f ${PWD}/${base}_1_2.pid ] && kill $(cat ${PWD}/${base}_1_2.pid)
wait
name="pkill -j any"
if [ `id -u` -eq 0 ]; then
sleep=$(pwd)/sleep.txt
ln -sf /bin/sleep $sleep
jail -c path=/ name=${base}_2_1 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_2_1.pid $sleep 5 &
sleep_amount=6
jail -c path=/ name=${base}_2_1 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_2_1.pid $sleep $sleep_amount &
jail -c path=/ name=${base}_2_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_2_2.pid $sleep 5 &
jail -c path=/ name=${base}_2_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_2_2.pid $sleep $sleep_amount &
$sleep 5 &
sleep 0.5
chpid3=$!
if pkill -f -j any $sleep && sleep 0.5 &&
[ ! -f ${PWD}/${base}_2_1.pid -a
! -f ${PWD}/${base}_2_2.pid ] && kill $chpid3; then
echo "ok 2 - $name"
else
echo "not ok 2 - $name"
fi 2>/dev/null
rm -f $sleep
[ -f ${PWD}/${base}_2_1.pid ] && kill $(cat ${PWD}/${base}_2_1.pid)
[ -f ${PWD}/${base}_2_2.pid ] && kill $(cat ${PWD}/${base}_2_2.pid)
wait
$sleep $sleep_amount &
chpid3=$!
sleep 0.5
if pkill -f -j any $sleep && sleep 0.5 &&
[ ! -f ${PWD}/${base}_2_1.pid -a
! -f ${PWD}/${base}_2_2.pid ] && kill $chpid3; then
echo "ok 2 - $name"
else
echo "ok 2 - $name # skip Test needs uid 0."
fi
echo "not ok 2 - $name"
fi 2>/dev/null
[ -f ${PWD}/${base}_2_1.pid ] && kill $(cat ${PWD}/${base}_2_1.pid)
[ -f ${PWD}/${base}_2_2.pid ] && kill $(cat ${PWD}/${base}_2_2.pid)
wait
name="pkill -j none"
if [ `id -u` -eq 0 ]; then
sleep=$(pwd)/sleep.txt
ln -sf /bin/sleep $sleep
daemon -p ${PWD}/${base}_3_1.pid $sleep 5
jail -c path=/ name=${base}_3_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_3_2.pid $sleep 5 &
sleep 1
if pkill -f -j none "$sleep 5" && sleep 1 &&
[ ! -f ${PWD}/${base}_3_1.pid -a -f ${PWD}/${base}_3_2.pid ] ; then
echo "ok 3 - $name"
else
ls ${PWD}/*.pid
echo "not ok 3 - $name"
fi 2>/dev/null
rm -f $sleep
[ -f ${PWD}/${base}_3_1.pid ] && kill $(cat ${base}_3_1.pid)
[ -f ${PWD}/${base}_3_2.pid ] && kill $(cat ${base}_3_2.pid)
sleep_amount=7
daemon -p ${PWD}/${base}_3_1.pid $sleep $sleep_amount
jail -c path=/ name=${base}_3_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_3_2.pid $sleep $sleep_amount &
sleep 1
if pkill -f -j none "$sleep $sleep_amount" && sleep 1 &&
[ ! -f ${PWD}/${base}_3_1.pid -a -f ${PWD}/${base}_3_2.pid ] ; then
echo "ok 3 - $name"
else
echo "ok 3 - $name # skip Test needs uid 0."
fi
ls ${PWD}/*.pid
echo "not ok 3 - $name"
fi 2>/dev/null
[ -f ${PWD}/${base}_3_1.pid ] && kill $(cat ${base}_3_1.pid)
[ -f ${PWD}/${base}_3_2.pid ] && kill $(cat ${base}_3_2.pid)
rm -f $sleep

View File

@ -81,6 +81,8 @@
#define ARITH_QMARK 37
#define ARITH_COLON 38
extern const char *arith_buf;
union yystype {
arith_t val;
char *name;

View File

@ -50,8 +50,6 @@ __FBSDID("$FreeBSD$");
#error Arithmetic tokens are out of order.
#endif
extern const char *arith_buf;
int
yylex(void)
{

View File

@ -42,6 +42,7 @@
#include "../shell.h"
#include "../mystring.h"
#ifdef SHELL
#include "../error.h"
#include "../output.h"
#include "builtins.h"
#define FILE struct output
@ -73,7 +74,6 @@
#include <unistd.h>
pointer stalloc(int);
void error(const char *, ...) __printf0like(1, 2);
int killjob(const char *, int);
extern char *commandname;

View File

@ -122,7 +122,7 @@ cdcmd(int argc __unused, char **argv __unused)
(dest[0] == '.' && (dest[1] == '/' || dest[1] == '\0')) ||
(dest[0] == '.' && dest[1] == '.' && (dest[2] == '/' || dest[2] == '\0')) ||
(path = bltinlookup("CDPATH", 1)) == NULL)
path = nullstr;
path = "";
while ((p = padvance(&path, dest)) != NULL) {
if (stat(p, &statb) < 0) {
if (errno != ENOENT)
@ -182,7 +182,6 @@ cdlogical(char *dest)
struct stat statb;
int first;
int badstat;
size_t len;
/*
* Check each component of the path. If we find a symlink or
@ -190,9 +189,7 @@ cdlogical(char *dest)
* next time we get the value of the current directory.
*/
badstat = 0;
len = strlen(dest);
cdcomppath = stalloc(len + 1);
memcpy(cdcomppath, dest, len + 1);
cdcomppath = stsavestr(dest);
STARTSTACKSTR(p);
if (*dest == '/') {
STPUTC('/', p);
@ -277,7 +274,6 @@ findcwd(char *dir)
{
char *new;
char *p;
size_t len;
/*
* If our argument is NULL, we don't know the current directory
@ -286,9 +282,7 @@ findcwd(char *dir)
*/
if (dir == NULL || curdir == NULL)
return getpwd2();
len = strlen(dir);
cdcomppath = stalloc(len + 1);
memcpy(cdcomppath, dir, len + 1);
cdcomppath = stsavestr(dir);
STARTSTACKSTR(new);
if (*dir != '/') {
STPUTS(curdir, new);

View File

@ -43,6 +43,7 @@ __FBSDID("$FreeBSD$");
*/
#include "shell.h"
#include "eval.h"
#include "main.h"
#include "options.h"
#include "output.h"
@ -64,7 +65,6 @@ struct jmploc *handler;
volatile sig_atomic_t exception;
volatile sig_atomic_t suppressint;
volatile sig_atomic_t intpending;
char *commandname;
static void exverror(int, const char *, va_list) __printf0like(2, 0) __dead2;

View File

@ -149,7 +149,7 @@ evalcmd(int argc, char **argv)
*/
void
evalstring(char *s, int flags)
evalstring(const char *s, int flags)
{
union node *n;
struct stackmark smark;
@ -498,7 +498,7 @@ exphere(union node *redir, struct arglist *fn)
struct localvar *savelocalvars;
int need_longjmp = 0;
redir->nhere.expdoc = nullstr;
redir->nhere.expdoc = "";
savelocalvars = localvars;
localvars = NULL;
forcelocal++;

View File

@ -53,7 +53,7 @@ void reseteval(void);
#define EV_TESTED 02 /* exit status is checked; ignore -e flag */
#define EV_BACKCMD 04 /* command executing within back quotes */
void evalstring(char *, int);
void evalstring(const char *, int);
union node; /* BLETCH for ansi C */
void evaltree(union node *, int);
void evalbackcmd(union node *, struct backcmd *);

View File

@ -105,11 +105,12 @@ static void expbackq(union node *, int, int);
static int subevalvar(char *, char *, int, int, int, int, int);
static char *evalvar(char *, int);
static int varisset(const char *, int);
static void strtodest(const char *, int, int, int);
static void varvalue(const char *, int, int, int);
static void recordregion(int, int, int);
static void removerecordregions(int);
static void ifsbreakup(char *, struct arglist *);
static void expandmeta(struct strlist *, int);
static void expandmeta(struct strlist *);
static void expmeta(char *, char *);
static void addfname(char *);
static struct strlist *expsort(struct strlist *);
@ -175,7 +176,7 @@ expandarg(union node *arg, struct arglist *arglist, int flag)
ifsbreakup(p, &exparg);
*exparg.lastp = NULL;
exparg.lastp = &exparg.list;
expandmeta(exparg.list, flag);
expandmeta(exparg.list);
} else {
sp = (struct strlist *)stalloc(sizeof (struct strlist));
sp->text = p;
@ -298,9 +299,9 @@ exptilde(char *p, int flag)
char c, *startp = p;
struct passwd *pw;
char *home;
int quotes = flag & (EXP_FULL | EXP_CASE);
while ((c = *p) != '\0') {
for (;;) {
c = *p;
switch(c) {
case CTLESC: /* This means CTL* are always considered quoted. */
case CTLVAR:
@ -311,31 +312,27 @@ exptilde(char *p, int flag)
case CTLQUOTEMARK:
return (startp);
case ':':
if (flag & EXP_VARTILDE)
goto done;
break;
if ((flag & EXP_VARTILDE) == 0)
break;
/* FALLTHROUGH */
case '\0':
case '/':
case CTLENDVAR:
goto done;
*p = '\0';
if (*(startp+1) == '\0') {
home = lookupvar("HOME");
} else {
pw = getpwnam(startp+1);
home = pw != NULL ? pw->pw_dir : NULL;
}
*p = c;
if (home == NULL || *home == '\0')
return (startp);
strtodest(home, flag, VSNORMAL, 1);
return (p);
}
p++;
}
done:
*p = '\0';
if (*(startp+1) == '\0') {
home = lookupvar("HOME");
} else {
pw = getpwnam(startp+1);
home = pw != NULL ? pw->pw_dir : NULL;
}
*p = c;
if (home == NULL || *home == '\0')
return (startp);
if (quotes)
STPUTS_QUOTES(home, DQSYNTAX, expdest);
else
STPUTS(home, expdest);
return (p);
}
@ -496,6 +493,17 @@ expbackq(union node *cmd, int quoted, int flag)
static void
recordleft(const char *str, const char *loc, char *startp)
{
int amount;
amount = ((str - 1) - (loc - startp)) - expdest;
STADJUST(amount, expdest);
while (loc != str - 1)
*startp++ = *loc++;
}
static int
subevalvar(char *p, char *str, int strloc, int subtype, int startloc,
int varflags, int quotes)
@ -530,8 +538,7 @@ subevalvar(char *p, char *str, int strloc, int subtype, int startloc,
error((char *)NULL);
}
error("%.*s: parameter %snot set", (int)(p - str - 1),
str, (varflags & VSNUL) ? "null or "
: nullstr);
str, (varflags & VSNUL) ? "null or " : "");
return 0;
case VSTRIMLEFT:
@ -540,7 +547,8 @@ subevalvar(char *p, char *str, int strloc, int subtype, int startloc,
*loc = '\0';
if (patmatch(str, startp, quotes)) {
*loc = c;
goto recordleft;
recordleft(str, loc, startp);
return 1;
}
*loc = c;
if (quotes && *loc == CTLESC)
@ -554,7 +562,8 @@ subevalvar(char *p, char *str, int strloc, int subtype, int startloc,
*loc = '\0';
if (patmatch(str, startp, quotes)) {
*loc = c;
goto recordleft;
recordleft(str, loc, startp);
return 1;
}
*loc = c;
loc--;
@ -602,13 +611,6 @@ subevalvar(char *p, char *str, int strloc, int subtype, int startloc,
default:
abort();
}
recordleft:
amount = ((str - 1) - (loc - startp)) - expdest;
STADJUST(amount, expdest);
while (loc != str - 1)
*startp++ = *loc++;
return 1;
}
@ -633,6 +635,7 @@ evalvar(char *p, int flag)
int varlenb;
int easy;
int quotes = flag & (EXP_FULL | EXP_CASE);
int record = 0;
varflags = (unsigned char)*p++;
subtype = varflags & VSTYPE;
@ -690,22 +693,15 @@ evalvar(char *p, int flag)
STADJUST(-varlenb, expdest);
}
} else {
char const *syntax = (varflags & VSQUOTE) ? DQSYNTAX
: BASESYNTAX;
if (subtype == VSLENGTH) {
for (;*val; val++)
if (!localeisutf8 ||
(*val & 0xC0) != 0x80)
varlen++;
}
else {
if (quotes)
STPUTS_QUOTES(val, syntax, expdest);
else
STPUTS(val, expdest);
}
else
strtodest(val, flag, subtype,
varflags & VSQUOTE);
}
}
@ -719,15 +715,11 @@ evalvar(char *p, int flag)
switch (subtype) {
case VSLENGTH:
expdest = cvtnum(varlen, expdest);
goto record;
record = 1;
break;
case VSNORMAL:
if (!easy)
break;
record:
recordregion(startloc, expdest - stackblock(),
varflags & VSQUOTE || (ifsset() && ifsval()[0] == '\0' &&
(*var == '@' || *var == '*')));
record = easy;
break;
case VSPLUS:
@ -737,8 +729,7 @@ evalvar(char *p, int flag)
(varflags & VSQUOTE ? EXP_LIT_QUOTED : 0));
break;
}
if (easy)
goto record;
record = easy;
break;
case VSTRIMLEFT:
@ -760,7 +751,8 @@ evalvar(char *p, int flag)
}
/* Remove any recorded regions beyond start of variable */
removerecordregions(startloc);
goto record;
record = 1;
break;
case VSASSIGN:
case VSQUESTION:
@ -777,8 +769,7 @@ evalvar(char *p, int flag)
}
break;
}
if (easy)
goto record;
record = easy;
break;
case VSERROR:
@ -790,6 +781,11 @@ evalvar(char *p, int flag)
abort();
}
if (record)
recordregion(startloc, expdest - stackblock(),
varflags & VSQUOTE || (ifsset() && ifsval()[0] == '\0' &&
(*var == '@' || *var == '*')));
if (subtype != VSNORMAL) { /* skip to end of alternative */
int nesting = 1;
for (;;) {
@ -1093,7 +1089,7 @@ static char expdir[PATH_MAX];
* The results are stored in the list exparg.
*/
static void
expandmeta(struct strlist *str, int flag __unused)
expandmeta(struct strlist *str)
{
char *p;
struct strlist **savelastp;
@ -1284,11 +1280,8 @@ addfname(char *name)
{
char *p;
struct strlist *sp;
size_t len;
len = strlen(name);
p = stalloc(len + 1);
memcpy(p, name, len + 1);
p = stsavestr(name);
sp = (struct strlist *)stalloc(sizeof *sp);
sp->text = p;
*exparg.lastp = sp;
@ -1478,16 +1471,14 @@ patmatch(const char *pattern, const char *string, int squoted)
endp = p;
if (*endp == '!' || *endp == '^')
endp++;
for (;;) {
do {
while (*endp == CTLQUOTEMARK)
endp++;
if (*endp == 0)
goto dft; /* no matching ] */
if (*endp == CTLESC)
endp++;
if (*++endp == ']')
break;
}
} while (*++endp != ']');
invert = 0;
if (*p == '!' || *p == '^') {
invert++;

View File

@ -338,8 +338,8 @@ histcmd(int argc, char **argv __unused)
out1fmt("%5d ", he.num);
out1str(he.str);
} else {
char *s = pat ?
fc_replace(he.str, pat, repl) : (char *)he.str;
const char *s = pat ?
fc_replace(he.str, pat, repl) : he.str;
if (sflg) {
if (displayhist) {
@ -477,7 +477,7 @@ bindcmd(int argc, char **argv)
if (el == NULL)
error("line editing is disabled");
return (el_parse(el, argc, (const char **)argv));
return (el_parse(el, argc, __DECONST(const char **, argv)));
}
#else

View File

@ -232,7 +232,7 @@ fgcmd(int argc __unused, char **argv __unused)
int
bgcmd(int argc, char **argv)
bgcmd(int argc __unused, char **argv __unused)
{
struct job *jp;

View File

@ -85,7 +85,7 @@ chkmail(int silent)
setstackmark(&smark);
mpath = mpathset()? mpathval() : mailval();
for (i = 0 ; i < nmboxes ; i++) {
p = padvance(&mpath, nullstr);
p = padvance(&mpath, "");
if (p == NULL)
break;
if (*p == '\0')

View File

@ -180,6 +180,18 @@ stunalloc(pointer p)
}
char *
stsavestr(const char *s)
{
char *p;
size_t len;
len = strlen(s);
p = stalloc(len + 1);
memcpy(p, s, len + 1);
return p;
}
void
setstackmark(struct stackmark *mark)

View File

@ -52,6 +52,7 @@ void ckfree(pointer);
char *savestr(const char *);
pointer stalloc(int);
void stunalloc(pointer);
char *stsavestr(const char *);
void setstackmark(struct stackmark *);
void popstackmark(struct stackmark *);
char *growstackstr(void);

View File

@ -265,7 +265,7 @@ readcmd(int argc __unused, char **argv __unused)
/* Set any remaining args to "" */
while (*++ap != NULL)
setvar(*ap, nullstr, 0);
setvar(*ap, "", 0);
return status;
}

View File

@ -204,7 +204,7 @@ parsefield(void)
}
char writer[] = "\
static const char writer[] = "\
/*\n\
* This file was generated by the mknodes program.\n\
*/\n\

View File

@ -60,7 +60,7 @@ struct synclass {
};
/* Syntax classes */
struct synclass synclass[] = {
static const struct synclass synclass[] = {
{ "CWORD", "character is nothing special" },
{ "CNL", "newline character" },
{ "CBACK", "a backslash character" },
@ -85,7 +85,7 @@ struct synclass synclass[] = {
* Syntax classes for is_ functions. Warning: if you add new classes
* you may have to change the definition of the is_in_name macro.
*/
struct synclass is_entry[] = {
static const struct synclass is_entry[] = {
{ "ISDIGIT", "a digit" },
{ "ISUPPER", "an upper case letter" },
{ "ISLOWER", "a lower case letter" },
@ -94,7 +94,7 @@ struct synclass is_entry[] = {
{ NULL, NULL }
};
static char writer[] = "\
static const char writer[] = "\
/*\n\
* This file was generated by the mksyntax program.\n\
*/\n\

View File

@ -74,11 +74,11 @@ exec > token.h
awk '{print "#define " $1 " " NR-1}' $temp
echo '
/* Array indicating which tokens mark the end of a list */
const char tokendlist[] = {'
static const char tokendlist[] = {'
awk '{print "\t" $2 ","}' $temp
echo '};
const char *const tokname[] = {'
static const char *const tokname[] = {'
sed -e 's/"/\\"/g' \
-e 's/[^ ]*[ ][ ]*[^ ]*[ ][ ]*\(.*\)/ "\1",/' \
$temp

View File

@ -138,7 +138,7 @@ NXHERE nhere # fd<<!
fd int # file descriptor being redirected
next nodeptr # next redirection in list
doc nodeptr # input to command (NARG node)
expdoc temp char *expdoc # actual document (for NXHERE)
expdoc temp const char *expdoc # actual document (for NXHERE)
NNOT nnot # ! command (actually pipeline)
type int

View File

@ -465,7 +465,7 @@ getopts(char *optstr, char *optvar, char **optfirst, char ***optnext,
int ind = 0;
int err = 0;
char s[10];
const char *optarg = NULL;
const char *newoptarg = NULL;
if ((p = *optptr) == NULL || *p == '\0') {
/* Current word is done, advance */
@ -491,7 +491,7 @@ getopts(char *optstr, char *optvar, char **optfirst, char ***optnext,
if (optstr[0] == ':') {
s[0] = c;
s[1] = '\0';
optarg = s;
newoptarg = s;
}
else
out2fmt_flush("Illegal option -%c\n", c);
@ -507,7 +507,7 @@ getopts(char *optstr, char *optvar, char **optfirst, char ***optnext,
if (optstr[0] == ':') {
s[0] = c;
s[1] = '\0';
optarg = s;
newoptarg = s;
c = ':';
}
else {
@ -519,7 +519,7 @@ getopts(char *optstr, char *optvar, char **optfirst, char ***optnext,
if (p == **optnext)
(*optnext)++;
optarg = p;
newoptarg = p;
p = NULL;
}
@ -527,8 +527,8 @@ getopts(char *optstr, char *optvar, char **optfirst, char ***optnext,
if (*optnext != NULL)
ind = *optnext - optfirst + 1;
*optptr = p;
if (optarg != NULL)
err |= setvarsafe("OPTARG", optarg, 0);
if (newoptarg != NULL)
err |= setvarsafe("OPTARG", newoptarg, 0);
else {
INTOFF;
err |= unsetvar("OPTARG");

View File

@ -73,6 +73,7 @@ struct optent {
char val;
};
extern struct optent optlist[NOPTS];
#ifdef DEFINE_OPTIONS
struct optent optlist[NOPTS] = {
{ "errexit", 'e', 0 },
@ -95,8 +96,6 @@ struct optent optlist[NOPTS] = {
{ "physical", 'P', 0 },
{ "trackall", 'h', 0 },
};
#else
extern struct optent optlist[NOPTS];
#endif

View File

@ -1940,7 +1940,7 @@ getprompt(void *unused __unused)
*/
switch (whichprompt) {
case 0:
fmt = nullstr;
fmt = "";
break;
case 1:
fmt = ps1val();

View File

@ -32,7 +32,7 @@
.\" from: @(#)sh.1 8.6 (Berkeley) 5/4/95
.\" $FreeBSD$
.\"
.Dd November 14, 2014
.Dd February 22, 2015
.Dt SH 1
.Os
.Sh NAME
@ -1196,17 +1196,18 @@ command is implemented as a special built-in command.
.Ss Variables and Parameters
The shell maintains a set of parameters.
A parameter
denoted by a name is called a variable.
denoted by a name
(consisting solely
of alphabetics, numerics, and underscores,
and starting with an alphabetic or an underscore)
is called a variable.
When starting up,
the shell turns all the environment variables into shell
the shell turns all environment variables with valid names into shell
variables.
New variables can be set using the form
.Pp
.D1 Ar name Ns = Ns Ar value
.Pp
Variables set by the user must have a name consisting solely
of alphabetics, numerics, and underscores.
The first letter of a variable name must not be numeric.
A parameter can also be denoted by a number
or a special character as explained below.
.Pp
@ -1369,6 +1370,10 @@ This variable overrides the
.Va MAIL
setting.
There is a maximum of 10 mailboxes that can be monitored at once.
.It Va OPTIND
The index of the next argument to be processed by
.Ic getopts .
This is initialized to 1 at startup.
.It Va PATH
The default search path for executables.
See the
@ -2297,6 +2302,8 @@ If an invalid option is encountered,
is set to
.Ql \&? .
It returns a false value (1) when it encounters the end of the options.
A new set of arguments may be parsed by assigning
.Li OPTIND=1 .
.It Ic hash Oo Fl rv Oc Op Ar command ...
The shell maintains a hash table which remembers the locations of commands.
With no arguments whatsoever, the
@ -2771,7 +2778,7 @@ This is inherited by children of the shell, and is used in the history
editing modes.
.El
.Pp
Additionally, all environment variables are turned into shell variables
Additionally, environment variables are turned into shell variables
at startup,
which may affect the shell as described under
.Sx Special Variables .

View File

@ -48,6 +48,7 @@ FILES+= ifs1.0
FILES+= ifs2.0
FILES+= ifs3.0
FILES+= ifs4.0
FILES+= ifs5.0
FILES+= length1.0
FILES+= length2.0
FILES+= length3.0
@ -62,6 +63,7 @@ FILES+= pathname1.0
FILES+= pathname2.0
FILES+= pathname3.0
FILES+= pathname4.0
FILES+= pathname5.0
FILES+= plus-minus1.0
FILES+= plus-minus2.0
FILES+= plus-minus3.0

View File

@ -0,0 +1,4 @@
# $FreeBSD$
set -- $(echo a b c d)
[ "$#" = 4 ]

View File

@ -0,0 +1,3 @@
# $FreeBSD$
[ `echo '/[e]tc'` = /etc ]

View File

@ -94,6 +94,7 @@ struct var vps4;
static struct var voptind;
struct var vdisvfork;
struct localvar *localvars;
int forcelocal;
static const struct varinit varinit[] = {
@ -141,6 +142,7 @@ static const int locale_categories[7] = {
static int varequal(const char *, const char *);
static struct var *find_var(const char *, struct var ***, int *);
static int localevar(const char *);
static void setvareq_const(const char *s, int flags);
extern char **environ;
@ -183,7 +185,7 @@ initvar(void)
setvareq(*envp, VEXPORT|VTEXTFIXED);
}
}
setvareq("OPTIND=1", VTEXTFIXED);
setvareq_const("OPTIND=1", 0);
}
/*
@ -389,6 +391,12 @@ setvareq(char *s, int flags)
}
static void
setvareq_const(const char *s, int flags)
{
setvareq(__DECONST(char *, s), flags | VTEXTFIXED);
}
/*
* Process a linked list of variable assignments.
@ -872,7 +880,7 @@ unsetvar(const char *s)
if (vp->flags & VREADONLY)
return (1);
if (vp->text[vp->name_len + 1] != '\0')
setvar(s, nullstr, 0);
setvar(s, "", 0);
if ((vp->flags & VEXPORT) && localevar(vp->text)) {
change_env(s, 0);
setlocale(LC_ALL, "");

View File

@ -68,7 +68,7 @@ struct localvar {
};
struct localvar *localvars;
extern struct localvar *localvars;
extern int forcelocal;
extern struct var vifs;

View File

@ -26,6 +26,8 @@
#pragma ident "%Z%%M% %I% %E% SMI"
#include <sys/ioctl.h>
#include <assert.h>
#include <setjmp.h>
#include <signal.h>
@ -69,7 +71,7 @@ main(int argc, char *argv[])
*/
if (sigsetjmp(env, 1) == 0) {
for (;;)
(void) ioctl(-1, -1, NULL);
(void) ioctl(-1, 0, NULL);
}
/*
@ -80,20 +82,19 @@ main(int argc, char *argv[])
fds[n++] = open(file, O_WRONLY);
fds[n++] = open(file, O_RDWR);
fds[n++] = open(file, O_RDWR | O_APPEND | O_CREAT | O_DSYNC |
O_LARGEFILE | O_NOCTTY | O_NONBLOCK | O_NDELAY | O_RSYNC |
O_SYNC | O_TRUNC | O_XATTR, 0666);
fds[n++] = open(file, O_RDWR | O_APPEND | O_CREAT |
O_NOCTTY | O_NONBLOCK | O_NDELAY | O_SYNC | O_TRUNC | 0666);
fds[n++] = open(file, O_RDWR);
(void) lseek(fds[n - 1], 123, SEEK_SET);
/*
* Once we have all the file descriptors in the state we want to test,
* issue a bogus ioctl() on each fd with cmd -1 and arg NULL to whack
* issue a bogus ioctl() on each fd with cmd 0 and arg NULL to whack
* our DTrace script into recording the content of the fds[] array.
*/
for (i = 0; i < n; i++)
(void) ioctl(fds[i], -1, NULL);
(void) ioctl(fds[i], 0, NULL);
assert(n <= sizeof (fds) / sizeof (fds[0]));
exit(0);

View File

@ -36,7 +36,7 @@ syscall::ioctl:entry
}
syscall::ioctl:entry
/pid == $1 && arg0 != -1u && arg1 == -1u && arg2 == NULL/
/pid == $1 && arg0 != -1u && arg1 == 0 && arg2 == NULL/
{
printf("fds[%d] fi_name = %s\n", arg0, fds[arg0].fi_name);
printf("fds[%d] fi_dirname = %s\n", arg0, fds[arg0].fi_dirname);

View File

@ -66,5 +66,5 @@ $dtrace -s $tmpfile
status=$?
rm $tmpfile
pkill sleep
pkill -P $$ sleep
exit $status

View File

@ -52,7 +52,7 @@ main.o: main.c
cc -c main.c
altlib.so: altlib.o
cc -z defs -G -o altlib.so altlib.o -lc
cc -shared -o altlib.so altlib.o -lc
altlib.o: altlib.c
cc -c altlib.c

View File

@ -44,7 +44,7 @@ mkdir $DIR
cd $DIR
cat > Makefile <<EOF
all: main
all: main
main: main.o prov.o
cc -o main main.o prov.o

View File

@ -59,7 +59,7 @@ provmain.o: prov.d main.o
$dtrace -G -32 -o provmain.o -s prov.d main.o
altlib.so: altlib.o provalt.o
cc -z defs -G -o altlib.so altlib.o provalt.o -lc
cc -shared -o altlib.so altlib.o provalt.o -lc
altlib.o: altlib.c prov.h
cc -c altlib.c

View File

@ -53,7 +53,7 @@ main.o: main.c
livelib.so: livelib.o prov.o
cc -z defs -G -o livelib.so livelib.o prov.o -lc
cc -shared -o livelib.so livelib.o prov.o -lc
livelib.o: livelib.c prov.h
cc -c livelib.c
@ -66,7 +66,7 @@ prov.h: prov.d
deadlib.so: deadlib.o
cc -z defs -G -o deadlib.so deadlib.o -lc
cc -shared -o deadlib.so deadlib.o -lc
deadlib.o: deadlib.c
cc -c deadlib.c

View File

@ -48,7 +48,7 @@ main.o: main.c
livelib.so: livelib.o prov.o
cc -z defs -G -o livelib.so livelib.o prov.o -lc
cc -shared -o livelib.so livelib.o prov.o -lc
livelib.o: livelib.c prov.h
cc -c livelib.c
@ -61,7 +61,7 @@ prov.h: prov.d
deadlib.so: deadlib.o
cc -z defs -G -o deadlib.so deadlib.o -lc
cc -shared -o deadlib.so deadlib.o -lc
deadlib.o: deadlib.c
cc -c deadlib.c

View File

@ -53,7 +53,7 @@ main.o: main.c
livelib.so: livelib.o prov.o
cc -z defs -G -o livelib.so livelib.o prov.o -lc
cc -shared -o livelib.so livelib.o prov.o -lc
livelib.o: livelib.c prov.h
cc -c livelib.c
@ -66,7 +66,7 @@ prov.h: prov.d
deadlib.so: deadlib.o
cc -z defs -G -o deadlib.so deadlib.o -lc
cc -shared -o deadlib.so deadlib.o -lc
deadlib.o: deadlib.c
cc -c deadlib.c

View File

@ -102,5 +102,5 @@ if [ $? -ne 0 ]; then
fi
cd /
/usr/bin/rm -rf $DIR
rm -rf $DIR
exit 0

View File

@ -55,5 +55,5 @@ if [ $? -eq 0 ]; then
fi
cd /
/usr/bin/rm -rf $DIR
rm -rf $DIR
exit 0

View File

@ -123,6 +123,6 @@ else
fi
cd /
/usr/bin/rm -rf $DIR
rm -rf $DIR
exit $status

View File

@ -119,6 +119,6 @@ fi
kill $background
cd /
/usr/bin/rm -rf $DIR
rm -rf $DIR
exit $status

View File

@ -110,6 +110,6 @@ grep D_PDESC_INVAL test.out 2> /dev/null 1>&2
status=$?
cd /
/usr/bin/rm -rf $DIR
rm -rf $DIR
exit $status

View File

@ -834,6 +834,8 @@ zpool_do_create(int argc, char **argv)
enable_all_pool_feat = B_FALSE;
}
}
if (zpool_name_to_prop(optarg) == ZPOOL_PROP_ALTROOT)
altroot = propval;
break;
case 'O':
if ((propval = strchr(optarg, '=')) == NULL) {

View File

@ -36,7 +36,6 @@
#include <string.h>
#include <errno.h>
#include <libelf.h>
#include <gelf.h>
/*
* In Solaris 10 GA, the only mechanism for communicating helper information
@ -62,9 +61,7 @@ static const char *olddevname = "/devices/pseudo/dtrace@0:helper";
static const char *modname; /* Name of this load object */
static int gen; /* DOF helper generation */
#ifdef illumos
extern dof_hdr_t __SUNW_dof; /* DOF defined in the .SUNW_dof section */
#endif
static boolean_t dof_init_debug = B_FALSE; /* From DTRACE_DOF_INIT_DEBUG */
static void
@ -99,11 +96,7 @@ static void dtrace_dof_init(void) __attribute__ ((constructor));
static void
dtrace_dof_init(void)
{
#ifdef illumos
dof_hdr_t *dof = &__SUNW_dof;
#else
dof_hdr_t *dof = NULL;
#endif
#ifdef _LP64
Elf64_Ehdr *elf;
#else
@ -118,17 +111,6 @@ dtrace_dof_init(void)
#endif
int fd;
const char *p;
#ifndef illumos
Elf *e;
Elf_Scn *scn = NULL;
Elf_Data *dofdata = NULL;
dof_hdr_t *dof_next = NULL;
GElf_Shdr shdr;
int efd;
char *s;
size_t shstridx;
uint64_t aligned_filesz;
#endif
if (getenv("DTRACE_DOF_INIT_DISABLE") != NULL)
return;
@ -152,42 +134,6 @@ dtrace_dof_init(void)
modname = lmp->l_name;
else
modname++;
#ifndef illumos
elf_version(EV_CURRENT);
if ((efd = open(lmp->l_name, O_RDONLY, 0)) < 0) {
dprintf(1, "couldn't open file for reading\n");
return;
}
if ((e = elf_begin(efd, ELF_C_READ, NULL)) == NULL) {
dprintf(1, "elf_begin failed\n");
close(efd);
return;
}
elf_getshdrstrndx(e, &shstridx);
dof = NULL;
while ((scn = elf_nextscn(e, scn)) != NULL) {
gelf_getshdr(scn, &shdr);
if (shdr.sh_type == SHT_SUNW_dof) {
s = elf_strptr(e, shstridx, shdr.sh_name);
if (s != NULL && strcmp(s, ".SUNW_dof") == 0) {
dofdata = elf_getdata(scn, NULL);
dof = dofdata->d_buf;
break;
}
}
}
if (dof == NULL) {
dprintf(1, "SUNW_dof section not found\n");
elf_end(e);
close(efd);
return;
}
while ((char *) dof < (char *) dofdata->d_buf + dofdata->d_size) {
aligned_filesz = (shdr.sh_addralign == 0 ? dof->dofh_filesz :
roundup2(dof->dofh_filesz, shdr.sh_addralign));
dof_next = (void *) ((char *) dof + aligned_filesz);
#endif
if (dof->dofh_ident[DOF_ID_MAG0] != DOF_MAG_MAG0 ||
dof->dofh_ident[DOF_ID_MAG1] != DOF_MAG_MAG1 ||
@ -237,21 +183,12 @@ dtrace_dof_init(void)
dprintf(1, "DTrace ioctl failed for DOF at %p", dof);
else {
dprintf(1, "DTrace ioctl succeeded for DOF at %p\n", dof);
#ifndef illumos
#ifdef __FreeBSD__
gen = dh.gen;
#endif
}
(void) close(fd);
#ifndef illumos
/* End of while loop */
dof = dof_next;
}
elf_end(e);
(void) close(efd);
#endif
}
#ifdef illumos

View File

@ -275,6 +275,9 @@ struct dtrace_hdl {
int dt_cpp_argc; /* count of initialized cpp(1) arguments */
int dt_cpp_args; /* size of dt_cpp_argv[] array */
char *dt_ld_path; /* pathname of ld(1) to invoke if needed */
#ifdef __FreeBSD__
char *dt_objcopy_path; /* pathname of objcopy(1) to invoke if needed */
#endif
dt_list_t dt_lib_path; /* linked-list forming library search path */
uint_t dt_lazyload; /* boolean: set via -xlazyload */
uint_t dt_droptags; /* boolean: set via -xdroptags */

View File

@ -281,7 +281,11 @@ printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__);
sym->st_value = 0;
sym->st_size = dof->dofh_filesz;
sym->st_info = ELF32_ST_INFO(STB_GLOBAL, STT_OBJECT);
#ifdef illumos
sym->st_other = 0;
#else
sym->st_other = ELF32_ST_VISIBILITY(STV_HIDDEN);
#endif
sym->st_shndx = ESHDR_DOF;
sym++;
@ -471,7 +475,11 @@ prepare_elf64(dtrace_hdl_t *dtp, const dof_hdr_t *dof, dof_elf64_t *dep)
sym->st_value = 0;
sym->st_size = dof->dofh_filesz;
sym->st_info = GELF_ST_INFO(STB_GLOBAL, STT_OBJECT);
#ifdef illumos
sym->st_other = 0;
#else
sym->st_other = ELF64_ST_VISIBILITY(STV_HIDDEN);
#endif
sym->st_shndx = ESHDR_DOF;
sym++;
@ -711,11 +719,7 @@ dump_elf64(dtrace_hdl_t *dtp, const dof_hdr_t *dof, int fd)
shp = &elf_file.shdr[ESHDR_DOF];
shp->sh_name = 11; /* DTRACE_SHSTRTAB64[11] = ".SUNW_dof" */
#ifdef illumos
shp->sh_flags = SHF_ALLOC;
#else
shp->sh_flags = SHF_WRITE | SHF_ALLOC;
#endif
shp->sh_type = SHT_SUNW_dof;
shp->sh_offset = off;
shp->sh_size = dof->dofh_filesz;
@ -1874,7 +1878,7 @@ dtrace_program_link(dtrace_hdl_t *dtp, dtrace_prog_t *pgp, uint_t dflags,
#endif
(void) snprintf(drti, sizeof (drti), "/usr/lib%s/dtrace/drti.o",
use_32 ? "32":"");
use_32 ? "32" : "");
len = snprintf(&tmp, 1, fmt, dtp->dt_ld_path, file, tfile,
drti) + 1;
@ -1885,26 +1889,61 @@ dtrace_program_link(dtrace_hdl_t *dtp, dtrace_prog_t *pgp, uint_t dflags,
drti);
#endif
if ((status = system(cmd)) == -1) {
ret = dt_link_error(dtp, NULL, -1, NULL,
ret = dt_link_error(dtp, NULL, fd, NULL,
"failed to run %s: %s", dtp->dt_ld_path,
strerror(errno));
goto done;
}
if (WIFSIGNALED(status)) {
ret = dt_link_error(dtp, NULL, -1, NULL,
ret = dt_link_error(dtp, NULL, fd, NULL,
"failed to link %s: %s failed due to signal %d",
file, dtp->dt_ld_path, WTERMSIG(status));
goto done;
}
if (WEXITSTATUS(status) != 0) {
ret = dt_link_error(dtp, NULL, -1, NULL,
ret = dt_link_error(dtp, NULL, fd, NULL,
"failed to link %s: %s exited with status %d\n",
file, dtp->dt_ld_path, WEXITSTATUS(status));
goto done;
}
(void) close(fd); /* release temporary file */
#ifdef __FreeBSD__
/*
* Now that we've linked drti.o, reduce the global __SUNW_dof
* symbol to a local symbol. This is needed to so that multiple
* generated object files (for different providers, for
* instance) can be linked together. This is accomplished using
* the -Blocal flag with Sun's linker, but GNU ld doesn't appear
* to have an equivalent option.
*/
asprintf(&cmd, "%s --localize-hidden %s", dtp->dt_objcopy_path,
file);
if ((status = system(cmd)) == -1) {
ret = dt_link_error(dtp, NULL, -1, NULL,
"failed to run %s: %s", dtp->dt_objcopy_path,
strerror(errno));
free(cmd);
goto done;
}
free(cmd);
if (WIFSIGNALED(status)) {
ret = dt_link_error(dtp, NULL, -1, NULL,
"failed to link %s: %s failed due to signal %d",
file, dtp->dt_objcopy_path, WTERMSIG(status));
goto done;
}
if (WEXITSTATUS(status) != 0) {
ret = dt_link_error(dtp, NULL, -1, NULL,
"failed to link %s: %s exited with status %d\n",
file, dtp->dt_objcopy_path, WEXITSTATUS(status));
goto done;
}
#endif
} else {
(void) close(fd);
}

View File

@ -785,6 +785,7 @@ const char *_dtrace_defld = "/usr/ccs/bin/ld"; /* default ld(1) to invoke */
#else
const char *_dtrace_defcpp = "cpp"; /* default cpp(1) to invoke */
const char *_dtrace_defld = "ld"; /* default ld(1) to invoke */
const char *_dtrace_defobjcopy = "objcopy"; /* default objcopy(1) to invoke */
#endif
const char *_dtrace_libdir = "/usr/lib/dtrace"; /* default library directory */
@ -1185,6 +1186,9 @@ dt_vopen(int version, int flags, int *errp,
dtp->dt_cpp_argc = 1;
dtp->dt_cpp_args = 1;
dtp->dt_ld_path = strdup(_dtrace_defld);
#ifdef __FreeBSD__
dtp->dt_objcopy_path = strdup(_dtrace_defobjcopy);
#endif
dtp->dt_provmod = provmod;
dtp->dt_vector = vector;
dtp->dt_varg = arg;
@ -1193,6 +1197,9 @@ dt_vopen(int version, int flags, int *errp,
if (dtp->dt_mods == NULL || dtp->dt_provs == NULL ||
dtp->dt_procs == NULL || dtp->dt_ld_path == NULL ||
#ifdef __FreeBSD__
dtp->dt_objcopy_path == NULL ||
#endif
dtp->dt_cpp_path == NULL || dtp->dt_cpp_argv == NULL)
return (set_open_errno(dtp, errp, EDT_NOMEM));
@ -1673,6 +1680,9 @@ dtrace_close(dtrace_hdl_t *dtp)
free(dtp->dt_cpp_argv);
free(dtp->dt_cpp_path);
free(dtp->dt_ld_path);
#ifdef __FreeBSD__
free(dtp->dt_objcopy_path);
#endif
free(dtp->dt_mods);
free(dtp->dt_provs);

View File

@ -280,6 +280,28 @@ dt_opt_ld_path(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
return (0);
}
#ifdef __FreeBSD__
static int
dt_opt_objcopy_path(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
{
char *objcopy;
if (arg == NULL)
return (dt_set_errno(dtp, EDT_BADOPTVAL));
if (dtp->dt_pcb != NULL)
return (dt_set_errno(dtp, EDT_BADOPTCTX));
if ((objcopy = strdup(arg)) == NULL)
return (dt_set_errno(dtp, EDT_NOMEM));
free(dtp->dt_objcopy_path);
dtp->dt_objcopy_path = objcopy;
return (0);
}
#endif
/*ARGSUSED*/
static int
dt_opt_libdir(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
@ -960,6 +982,9 @@ static const dt_option_t _dtrace_ctoptions[] = {
{ "linkmode", dt_opt_linkmode },
{ "linktype", dt_opt_linktype },
{ "nolibs", dt_opt_cflags, DTRACE_C_NOLIBS },
#ifdef __FreeBSD__
{ "objcopypath", dt_opt_objcopy_path },
#endif
{ "pgmax", dt_opt_pgmax },
{ "pspec", dt_opt_cflags, DTRACE_C_PSPEC },
{ "setenv", dt_opt_setenv, 1 },

View File

@ -36,7 +36,7 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/compat/opensolaris \
-I${OPENSOLARIS_USR_DISTDIR}/tools/ctf/cvt \
-I${OPENSOLARIS_SYS_DISTDIR}/uts/common
DPADD= ${LIBCTF} ${LIBDWARF} ${LIBELF} ${LIBZ} ${LIBPTHREAD}
LDADD= -lctf -ldwarf -lelf -lz -lpthread
DPADD= ${LIBDWARF} ${LIBELF} ${LIBZ} ${LIBPTHREAD}
LDADD= -ldwarf -lelf -lz -lpthread
.include <bsd.prog.mk>

View File

@ -33,7 +33,7 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/compat/opensolaris \
-I${OPENSOLARIS_USR_DISTDIR}/tools/ctf/cvt \
-I${OPENSOLARIS_SYS_DISTDIR}/uts/common
DPADD= ${LIBCTF} ${LIBDWARF} ${LIBELF} ${LIBZ} ${LIBPTHREAD}
LDADD= -lctf -ldwarf -lelf -lz -lpthread
DPADD= ${LIBDWARF} ${LIBELF} ${LIBZ} ${LIBPTHREAD}
LDADD= -ldwarf -lelf -lz -lpthread
.include <bsd.prog.mk>

View File

@ -0,0 +1,17 @@
# $FreeBSD$
.include <bsd.own.mk>
TESTSDIR= ${TESTSBASE}/cddl/usr.sbin/dtrace
TESTS_SUBDIRS+= common
.PATH: ${.CURDIR:H:H:H:H}/tests
KYUAFILE= YES
.PATH: ${.CURDIR:H:H:H}/contrib/opensolaris/cmd/dtrace/test/cmd/scripts
SCRIPTSDIR= ${TESTSDIR}
SCRIPTS= dtest.pl
SUBDIR_PARALLEL=
.include <bsd.test.mk>

View File

@ -0,0 +1,53 @@
# $FreeBSD$
TESTGROUP= ${.CURDIR:H:T}/${.CURDIR:T}
TESTSRC= ${.CURDIR:H:H:H:H:H}/contrib/opensolaris/cmd/dtrace/test/tst/${TESTGROUP}
TESTSDIR= ${TESTSBASE}/cddl/usr.sbin/dtrace/${TESTGROUP}
.if !defined(_RECURSING_PROGS)
FILESGROUPS+= FILES ${TESTGROUP} ${TESTGROUP}EXE
${TESTGROUP}= ${TESTFILES}
${TESTGROUP}EXE= ${TESTEXES}
${TESTGROUP}EXEMODE= 0555
${TESTGROUP}DIR= ${TESTSDIR}
${TESTGROUP}EXEDIR= ${TESTSDIR}
TESTWRAPPER= t_dtrace_contrib
ATF_TESTS_SH+= ${TESTWRAPPER}
TEST_METADATA.t_dtrace_contrib+= required_files="/usr/local/bin/perl"
TEST_METADATA.t_dtrace_contrib+= required_files="/usr/local/bin/ksh"
TEST_METADATA.t_dtrace_contrib+= required_user="root"
GENTEST?= ${.CURDIR:H:H}/tools/gentest.sh
EXCLUDE= ${.CURDIR:H:H}/tools/exclude.sh
${TESTWRAPPER}.sh: ${GENTEST} ${EXCLUDE} ${${TESTGROUP}}
sh ${GENTEST} -e ${EXCLUDE} ${TESTGROUP} ${${TESTGROUP}:S/ */ /} > ${.TARGET}
CLEANFILES+= ${TESTWRAPPER}.sh
.endif # !defined(_RECURSING_PROGS)
.PATH: ${TESTSRC}
PROGS= ${CFILES:T:S/.c$/.exe/g}
.for prog in ${PROGS}
SRCS.${prog}+= ${prog:S/.exe$/.c/}
BINDIR.${prog}= ${TESTSDIR}
MAN.${prog}=
.if exists(${prog:S/^tst.//:S/.exe$/.d/})
SRCS.${prog}+= ${prog:S/^tst.//:S/.exe$/.d/}
.endif
.endfor
# Some tests depend on the internals of their corresponding test programs,
# so make sure the optimizer doesn't interfere with them.
CFLAGS+= -O0
# Test programs shouldn't be stripped; else we generally can't use the PID
# provider.
DEBUG_FLAGS= -g
STRIP=
.include <bsd.test.mk>

View File

@ -0,0 +1,91 @@
# $FreeBSD$
# We exclude several subdirectories: nfs and sysevent do not compile on
# FreeBSD, and docsExamples doesn't seem amenable to automated testing.
TESTSDIR= ${TESTSBASE}/cddl/usr.sbin/dtrace/common
TESTS_SUBDIRS+= aggs \
arithmetic \
arrays \
assocs \
begin \
bitfields \
buffering \
builtinvar \
cg \
clauses \
cpc \
decls \
drops \
dtraceUtil \
end \
enum \
error \
exit \
fbtprovider \
funcs \
grammar \
include \
inline \
io \
ip \
java_api \
json \
lexer \
llquantize \
mdb \
mib \
misc \
multiaggs \
offsetof \
operators \
pid \
plockstat \
pointers \
pragma \
predicates \
preprocessor \
print \
printa \
printf \
privs \
probes \
proc \
profile-n \
providers \
raise \
rates \
safety \
scalars \
sched \
scripting \
sdt \
sizeof \
speculation \
stability \
stack \
stackdepth \
stop \
strlen \
strtoll \
struct \
syscall \
tick-n \
trace \
tracemem \
translators \
typedef \
types \
uctf \
union \
usdt \
ustack \
vars \
version \
.PATH: ${.CURDIR:H:H:H:H:H}/tests
KYUAFILE= YES
SUBDIR_PARALLEL=
.include <bsd.test.mk>

View File

@ -0,0 +1,189 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_AGG_FUNC.bad.d \
err.D_AGG_MDIM.bad.d \
err.D_AGG_NULL.bad.d \
err.D_AGG_REDEF.redef.d \
err.D_AGG_SCALAR.avgtoofew.d \
err.D_AGG_SCALAR.maxnoarg.d \
err.D_AGG_SCALAR.mintoofew.d \
err.D_AGG_SCALAR.quantizetoofew.d \
err.D_AGG_SCALAR.stddevtoofew.d \
err.D_AGG_SCALAR.sumtoofew.d \
err.D_CLEAR_AGGARG.bad.d \
err.D_CLEAR_PROTO.bad.d \
err.D_FUNC_IDENT.bad.d \
err.D_FUNC_UNDEF.badaggfunc.d \
err.D_IDENT_UNDEF.badexpr.d \
err.D_IDENT_UNDEF.badkey3.d \
err.D_IDENT_UNDEF.noeffect.d \
err.D_KEY_TYPE.badkey1.d \
err.D_KEY_TYPE.badkey2.d \
err.D_KEY_TYPE.badkey4.d \
err.D_LQUANT_BASETYPE.lqbad1.d \
err.D_LQUANT_BASETYPE.lqshort.d \
err.D_LQUANT_BASEVAL.bad.d \
err.D_LQUANT_LIMTYPE.lqbad1.d \
err.D_LQUANT_LIMVAL.bad.d \
err.D_LQUANT_MATCHBASE.d \
err.D_LQUANT_MATCHBASE.order.d \
err.D_LQUANT_MATCHLIM.d \
err.D_LQUANT_MATCHLIM.order.d \
err.D_LQUANT_MATCHSTEP.d \
err.D_LQUANT_MISMATCH.lqbadarg.d \
err.D_LQUANT_STEPLARGE.lqtoofew.d \
err.D_LQUANT_STEPSMALL.bad.d \
err.D_LQUANT_STEPTYPE.lqbadinc.d \
err.D_LQUANT_STEPVAL.bad.d \
err.D_NORMALIZE_AGGARG.bad.d \
err.D_NORMALIZE_PROTO.bad.d \
err.D_NORMALIZE_SCALAR.bad.d \
err.D_PROTO_ARG.lquantizetoofew.d \
err.D_PROTO_LEN.avgnoarg.d \
err.D_PROTO_LEN.avgtoomany.d \
err.D_PROTO_LEN.counttoomany.d \
err.D_PROTO_LEN.lquantizenoarg.d \
err.D_PROTO_LEN.lquantizetoomany.d \
err.D_PROTO_LEN.maxnoarg.d \
err.D_PROTO_LEN.maxtoomany.d \
err.D_PROTO_LEN.minnoarg.d \
err.D_PROTO_LEN.mintoomany.d \
err.D_PROTO_LEN.quantizenoarg.d \
err.D_PROTO_LEN.quantizetoomany.d \
err.D_PROTO_LEN.stddevnoarg.d \
err.D_PROTO_LEN.stddevtoomany.d \
err.D_PROTO_LEN.sumnoarg.d \
err.D_PROTO_LEN.sumtoomany.d \
err.D_TRUNC_AGGARG.bad.d \
err.D_TRUNC_PROTO.badmany.d \
err.D_TRUNC_PROTO.badnone.d \
err.D_TRUNC_SCALAR.bad.d \
tst.aggencoding.d \
tst.aggencoding.d.out \
tst.agghist.d \
tst.agghist.d.out \
tst.aggpack.d \
tst.aggpack.d.out \
tst.aggpackbanner.ksh \
tst.aggpackbanner.ksh.out \
tst.aggpackzoom.d \
tst.aggpackzoom.d.out \
tst.aggzoom.d \
tst.aggzoom.d.out \
tst.allquant.d \
tst.allquant.d.out \
tst.avg.d \
tst.avg.d.out \
tst.avg_neg.d \
tst.avg_neg.d.out \
tst.clear.d \
tst.clear.d.out \
tst.clearavg.d \
tst.clearavg.d.out \
tst.clearavg2.d \
tst.clearavg2.d.out \
tst.cleardenormalize.d \
tst.cleardenormalize.d.out \
tst.clearlquantize.d \
tst.clearlquantize.d.out \
tst.clearnormalize.d \
tst.clearnormalize.d.out \
tst.clearstddev.d \
tst.clearstddev.d.out \
tst.count.d \
tst.count.d.out \
tst.count2.d \
tst.count2.d.out \
tst.count3.d \
tst.denormalize.d \
tst.denormalize.d.out \
tst.denormalizeonly.d \
tst.denormalizeonly.d.out \
tst.fmtnormalize.d \
tst.fmtnormalize.d.out \
tst.forms.d \
tst.forms.d.out \
tst.goodkey.d \
tst.keysort.d \
tst.keysort.d.out \
tst.lquantize.d \
tst.lquantize.d.out \
tst.lquantnormal.d \
tst.lquantnormal.d.out \
tst.lquantrange.d \
tst.lquantrange.d.out \
tst.lquantround.d \
tst.lquantround.d.out \
tst.lquantzero.d \
tst.lquantzero.d.out \
tst.max.d \
tst.max.d.out \
tst.max_neg.d \
tst.max_neg.d.out \
tst.min.d \
tst.min.d.out \
tst.min_neg.d \
tst.min_neg.d.out \
tst.multiaggs1.d \
tst.multiaggs2.d \
tst.multiaggs2.d.out \
tst.multiaggs3.d \
tst.multiaggs3.d.out \
tst.multinormalize.d \
tst.multinormalize.d.out \
tst.neglquant.d \
tst.neglquant.d.out \
tst.negorder.d \
tst.negorder.d.out \
tst.negquant.d \
tst.negquant.d.out \
tst.negtrunc.d \
tst.negtrunc.d.out \
tst.negtruncquant.d \
tst.negtruncquant.d.out \
tst.normalize.d \
tst.normalize.d.out \
tst.order.d \
tst.order.d.out \
tst.quantize.d \
tst.quantize.d.out \
tst.quantmany.d \
tst.quantmany.d.out \
tst.quantround.d \
tst.quantround.d.out \
tst.quantzero.d \
tst.quantzero.d.out \
tst.signature.d \
tst.signedkeys.d \
tst.signedkeys.d.out \
tst.signedkeyspos.d \
tst.signedkeyspos.d.out \
tst.sizedkeys.d \
tst.sizedkeys.d.out \
tst.stddev.d \
tst.stddev.d.out \
tst.subr.d \
tst.sum.d \
tst.sum.d.out \
tst.trunc.d \
tst.trunc.d.out \
tst.trunc0.d \
tst.trunc0.d.out \
tst.truncquant.d \
tst.truncquant.d.out \
tst.valsortkeypos.d \
tst.valsortkeypos.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,32 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_DIV_ZERO.divby0.d \
err.D_DIV_ZERO.divby0_1.d \
err.D_DIV_ZERO.divby0_2.d \
err.D_DIV_ZERO.modby0.d \
err.D_SYNTAX.addmin.d \
err.D_SYNTAX.divmin.d \
err.D_SYNTAX.muladd.d \
err.D_SYNTAX.muldiv.d \
tst.basics.d \
tst.basics.d.out \
tst.compcast.d \
tst.compcast.d.out \
tst.compnarrowassign.d \
tst.compnarrowassign.d.out \
tst.execcast.d \
tst.execcast.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,29 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_ARR_BADREF.bad.d \
err.D_DECL_ARRBIG.toobig.d \
err.D_DECL_ARRNULL.bad.d \
err.D_DECL_ARRSUB.bad.d \
err.D_DECL_PROTO_TYPE.badtuple.d \
err.D_IDENT_UNDEF.badureg.d \
tst.basic1.d \
tst.basic2.d \
tst.basic3.d \
tst.basic4.d \
tst.basic5.d \
tst.basic6.d \
tst.uregsarray.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,32 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_OP_INCOMPAT.dupgtype.d \
err.D_OP_INCOMPAT.dupttype.d \
err.D_OP_INCOMPAT.this.d \
err.D_PROTO_ARG.badsig.d \
err.D_PROTO_LEN.toofew.d \
err.D_PROTO_LEN.toomany.d \
err.D_SYNTAX.errassign.d \
err.tupoflow.d \
tst.cpyarray.d \
tst.diffprofile.d \
tst.initialize.d \
tst.invalidref.d \
tst.misc.d \
tst.orthogonality.d \
tst.this.d \
tst.valassign.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,22 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PDESC_ZERO.begin.d \
err.D_PDESC_ZERO.tick.d \
tst.begin.d \
tst.begin.d.out \
tst.multibegin.d \
tst.multibegin.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,26 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_ADDROF_BITFIELD.BitfieldAddress.d \
err.D_DECL_BFCONST.NegBitField.d \
err.D_DECL_BFCONST.ZeroBitField.d \
err.D_DECL_BFSIZE.ExceedBaseType.d \
err.D_DECL_BFSIZE.GreaterThan64.d \
err.D_DECL_BFTYPE.badtype.d \
err.D_OFFSETOF_BITFIELD.d \
err.D_SIZEOF_BITFIELD.SizeofBitfield.d \
tst.BitFieldPromotion.d \
tst.SizeofBitField.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,37 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.end.d \
err.resize1.d \
err.resize2.d \
err.resize3.d \
err.zerobuf.d \
tst.alignring.d \
tst.cputime.ksh \
tst.dynvarsize.d \
tst.fill1.d \
tst.fill1.d.out \
tst.resize1.d \
tst.resize2.d \
tst.resize3.d \
tst.ring1.d \
tst.ring2.d \
tst.ring2.d.out \
tst.ring3.d \
tst.ring3.d.out \
tst.smallring.d \
tst.switch1.d \
tst.switch1.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,48 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_XLATE_NOCONV.cpuusage.d \
err.D_XLATE_NOCONV.nice.d \
err.D_XLATE_NOCONV.priority.d \
err.D_XLATE_NOCONV.prsize.d \
err.D_XLATE_NOCONV.rssize.d \
tst.arg0.d \
tst.arg0clause.d \
tst.arg1.d \
tst.arg1to8.d \
tst.arg1to8clause.d \
tst.caller.d \
tst.caller1.d \
tst.epid.d \
tst.epid1.d \
tst.errno.d \
tst.errno1.d \
tst.execname.d \
tst.hpriority.d \
tst.id.d \
tst.id1.d \
tst.ipl.d \
tst.ipl1.d \
tst.lwpsinfo.d \
tst.lwpsinfo1.d \
tst.pid.d \
tst.pid1.d \
tst.psinfo.d \
tst.psinfo1.d \
tst.tid.d \
tst.tid1.d \
tst.timestamp.d \
tst.vtimestamp.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,18 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_NOREG.noreg.d \
err.baddif.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,26 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_IDENT_UNDEF.aggfun.d \
err.D_IDENT_UNDEF.aggtup.d \
err.D_IDENT_UNDEF.arrtup.d \
err.D_IDENT_UNDEF.body.d \
err.D_IDENT_UNDEF.both.d \
err.D_IDENT_UNDEF.pred.d \
tst.nopred.d \
tst.pred.d \
tst.predfirst.d \
tst.predlast.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,27 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PDESC_ZERO.lowfrequency.d \
err.D_PDESC_ZERO.malformedoverflow.d \
err.D_PDESC_ZERO.nonexistentevent.d \
err.cpcvscpustatpart1.ksh \
err.cpcvscpustatpart2.ksh \
err.cputrackfailtostart.ksh \
err.cputrackterminates.ksh \
err.toomanyenablings.d \
tst.allcpus.ksh \
tst.genericevent.d \
tst.platformevent.ksh \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,30 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_DECL_LOCASSC.NonLocalAssoc.d \
err.D_DECL_LONGINT.LongStruct.d \
err.D_DECL_PARMCLASS.BadStorageClass.d \
err.D_DECL_PROTO_NAME.VoidName.d \
err.D_DECL_PROTO_TYPE.Dyn.d \
err.D_DECL_PROTO_VARARGS.VarLenArgs.d \
err.D_DECL_PROTO_VOID.NonSoleVoid.d \
err.D_DECL_SIGNINT.UnsignedStruct.d \
err.D_DECL_VOIDATTR.ShortVoidDecl.d \
tst.arrays.d \
tst.basics.d \
tst.funcs.d \
tst.pointers.d \
tst.varargsfuncs.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,32 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
badptr.d \
countdown.d \
counter.d \
errorpath.d \
hello.d \
kstat.d \
ksyms.d \
renormalize.d \
rtime.d \
rw.d \
rwinfo.d \
rwtime.d \
specopen.d \
truss.d \
trussrw.d \
userfunc.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,24 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
drp.DTRACEDROP_AGGREGATION.d \
drp.DTRACEDROP_DBLERROR.d \
drp.DTRACEDROP_DYNAMIC.d \
drp.DTRACEDROP_PRINCIPAL.d \
drp.DTRACEDROP_PRINCIPAL.end.d \
drp.DTRACEDROP_SPEC.d \
drp.DTRACEDROP_SPECUNAVAIL.d \
drp.DTRACEDROP_STKSTROVERFLOW.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,118 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PDESC_ZERO.InvalidDescription1.d \
man.APIVersion.d \
man.AddSearchPath.d \
man.CoalesceTrace.d \
man.ELFGeneration.d \
man.IncludedFilePath.d \
man.ShowCompilerCode.d \
man.VerboseStabilityReport.d \
tst.AddSearchPath.d.ksh \
tst.BufsizeGiga.d.ksh \
tst.BufsizeKilo.d.ksh \
tst.BufsizeMega.d.ksh \
tst.BufsizeTera.d.ksh \
tst.DataModel32.d.ksh \
tst.DataModel64.d.ksh \
tst.DefineNameWithCPP.d.ksh \
tst.DefineNameWithCPP.d.ksh.out \
tst.DestructWithFunction.d.ksh \
tst.DestructWithFunction.d.ksh.out \
tst.DestructWithID.d.ksh \
tst.DestructWithID.d.ksh.out \
tst.DestructWithModule.d.ksh \
tst.DestructWithModule.d.ksh.out \
tst.DestructWithName.d.ksh \
tst.DestructWithName.d.ksh.out \
tst.DestructWithProvider.d.ksh \
tst.DestructWithProvider.d.ksh.out \
tst.DestructWithoutW.d.ksh \
tst.ELFGenerationOut.d.ksh \
tst.ELFGenerationWithO.d.ksh \
tst.ExitStatus1.d.ksh \
tst.ExitStatus2.d.ksh \
tst.ExtraneousProbeIds.d.ksh \
tst.InvalidFuncName1.d.ksh \
tst.InvalidFuncName2.d.ksh \
tst.InvalidId1.d.ksh \
tst.InvalidId2.d.ksh \
tst.InvalidId3.d.ksh \
tst.InvalidModule1.d.ksh \
tst.InvalidModule2.d.ksh \
tst.InvalidModule3.d.ksh \
tst.InvalidModule4.d.ksh \
tst.InvalidProbeIdentifier.d.ksh \
tst.InvalidProvider1.d.ksh \
tst.InvalidProvider2.d.ksh \
tst.InvalidProvider3.d.ksh \
tst.InvalidProvider4.d.ksh \
tst.InvalidTraceFunc1.d.ksh \
tst.InvalidTraceFunc2.d.ksh \
tst.InvalidTraceFunc3.d.ksh \
tst.InvalidTraceFunc4.d.ksh \
tst.InvalidTraceFunc5.d.ksh \
tst.InvalidTraceFunc6.d.ksh \
tst.InvalidTraceFunc7.d.ksh \
tst.InvalidTraceFunc8.d.ksh \
tst.InvalidTraceFunc9.d.ksh \
tst.InvalidTraceID1.d.ksh \
tst.InvalidTraceID2.d.ksh \
tst.InvalidTraceID3.d.ksh \
tst.InvalidTraceID4.d.ksh \
tst.InvalidTraceID5.d.ksh \
tst.InvalidTraceID6.d.ksh \
tst.InvalidTraceID7.d.ksh \
tst.InvalidTraceModule1.d.ksh \
tst.InvalidTraceModule2.d.ksh \
tst.InvalidTraceModule3.d.ksh \
tst.InvalidTraceModule4.d.ksh \
tst.InvalidTraceModule5.d.ksh \
tst.InvalidTraceModule6.d.ksh \
tst.InvalidTraceModule7.d.ksh \
tst.InvalidTraceModule8.d.ksh \
tst.InvalidTraceName1.d.ksh \
tst.InvalidTraceName2.d.ksh \
tst.InvalidTraceName3.d.ksh \
tst.InvalidTraceName4.d.ksh \
tst.InvalidTraceName5.d.ksh \
tst.InvalidTraceName6.d.ksh \
tst.InvalidTraceName7.d.ksh \
tst.InvalidTraceName8.d.ksh \
tst.InvalidTraceName9.d.ksh \
tst.InvalidTraceProvider1.d.ksh \
tst.InvalidTraceProvider2.d.ksh \
tst.InvalidTraceProvider3.d.ksh \
tst.InvalidTraceProvider4.d.ksh \
tst.InvalidTraceProvider5.d.ksh \
tst.MultipleInvalidProbeId.d.ksh \
tst.PreprocessorStatement.d.ksh \
tst.QuietMode.d.ksh \
tst.QuietMode.d.ksh.out \
tst.TestCompile.d.ksh \
tst.TestCompile.d.ksh.out \
tst.UnDefineNameWithCPP.d.ksh \
tst.ZeroFunctionProbes.d.ksh \
tst.ZeroFunctionProbes.d.ksh.out \
tst.ZeroModuleProbes.d.ksh \
tst.ZeroModuleProbes.d.ksh.out \
tst.ZeroNameProbes.d.ksh \
tst.ZeroNameProbes.d.ksh.out \
tst.ZeroProbeIdentfier.d.ksh \
tst.ZeroProbesWithoutZ.d.ksh \
tst.ZeroProviderProbes.d.ksh \
tst.ZeroProviderProbes.d.ksh.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,21 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_IDENT_UNDEF.timespent.d \
tst.end.d \
tst.endwithoutbegin.d \
tst.multibeginend.d \
tst.multiend.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,21 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_DECL_IDRED.EnumSameName.d \
err.D_UNKNOWN.RepeatIdentifiers.d \
tst.EnumEquality.d \
tst.EnumSameValue.d \
tst.EnumValAssign.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,21 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.DTRACEFLT_BADADDR.d \
tst.DTRACEFLT_DIVZERO.d \
tst.DTRACEFLT_UNKNOWN.d \
tst.error.d \
tst.errorend.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,19 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PROTO_LEN.noarg.d \
err.exitarg1.d \
tst.basic1.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,26 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PDESC_ZERO.notreturn.d \
tst.basic.d \
tst.functionentry.d \
tst.functionreturnvalue.d \
tst.ioctlargs.d \
tst.offset.d \
tst.offsetzero.d \
tst.return.d \
tst.return0.d \
tst.tailcall.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,113 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_FUNC_UNDEF.progenyofbad1.d \
err.D_OP_VFPTR.badop.d \
err.D_PROTO_ARG.chillbadarg.d \
err.D_PROTO_ARG.copyoutbadarg.d \
err.D_PROTO_ARG.mobadarg.d \
err.D_PROTO_ARG.raisebadarg.d \
err.D_PROTO_ARG.tolower.d \
err.D_PROTO_ARG.toupper.d \
err.D_PROTO_LEN.allocanoarg.d \
err.D_PROTO_LEN.badbreakpoint.d \
err.D_PROTO_LEN.chilltoofew.d \
err.D_PROTO_LEN.chilltoomany.d \
err.D_PROTO_LEN.copyoutstrbadarg.d \
err.D_PROTO_LEN.copyoutstrtoofew.d \
err.D_PROTO_LEN.copyouttoofew.d \
err.D_PROTO_LEN.copyouttoomany.d \
err.D_PROTO_LEN.motoofew.d \
err.D_PROTO_LEN.motoomany.d \
err.D_PROTO_LEN.mtabadarg.d \
err.D_PROTO_LEN.mtatoofew.d \
err.D_PROTO_LEN.mtatoomany.d \
err.D_PROTO_LEN.panicbadarg.d \
err.D_PROTO_LEN.progenyofbad2.d \
err.D_PROTO_LEN.stopbadarg.d \
err.D_PROTO_LEN.tolower.d \
err.D_PROTO_LEN.tolowertoomany.d \
err.D_PROTO_LEN.toupper.d \
err.D_PROTO_LEN.touppertoomany.d \
err.D_STRINGOF_TYPE.badstringof.d \
err.D_VAR_UNDEF.badvar.d \
err.badalloca.d \
err.badalloca2.d \
err.badbcopy.d \
err.badbcopy1.d \
err.badbcopy2.d \
err.badbcopy3.d \
err.badbcopy4.d \
err.badbcopy5.d \
err.badbcopy6.d \
err.badchill.d \
err.chillbadarg.ksh \
err.copyout.d \
err.copyoutbadaddr.ksh \
err.copyoutstrbadaddr.ksh \
err.inet_ntoa6badaddr.d \
err.inet_ntoabadaddr.d \
err.inet_ntopbadaddr.d \
err.inet_ntopbadarg.d \
tst.badfreopen.ksh \
tst.basename.d \
tst.basename.d.out \
tst.bcopy.d \
tst.chill.ksh \
tst.cleanpath.d \
tst.cleanpath.d.out \
tst.copyin.d \
tst.copyinto.d \
tst.ddi_pathname.d \
tst.default.d \
tst.freopen.ksh \
tst.ftruncate.ksh \
tst.ftruncate.ksh.out \
tst.hton.d \
tst.index.d \
tst.index.d.out \
tst.inet_ntoa.d \
tst.inet_ntoa.d.out \
tst.inet_ntoa6.d \
tst.inet_ntoa6.d.out \
tst.inet_ntop.d \
tst.inet_ntop.d.out \
tst.lltostr.d \
tst.lltostr.d.out \
tst.lltostrbase.d \
tst.lltostrbase.d.out \
tst.mutex_owned.d \
tst.mutex_owner.d \
tst.mutex_type_adaptive.d \
tst.progenyof.d \
tst.rand.d \
tst.strchr.d \
tst.strchr.d.out \
tst.strjoin.d \
tst.strjoin.d.out \
tst.strstr.d \
tst.strstr.d.out \
tst.strtok.d \
tst.strtok.d.out \
tst.strtok_null.d \
tst.substr.d \
tst.substr.d.out \
tst.substrminate.d \
tst.substrminate.d.out \
tst.system.d \
tst.system.d.out \
tst.tolower.d \
tst.toupper.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,20 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_ADDROF_LVAL.d \
err.D_EMPTY.empty.d \
tst.clauses.d \
tst.stmts.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,17 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.includefirst.ksh \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,28 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_DECL_IDRED.redef1.d \
err.D_DECL_IDRED.redef2.d \
err.D_IDENT_UNDEF.recur.d \
err.D_OP_INCOMPAT.baddef1.d \
err.D_OP_INCOMPAT.baddef2.d \
err.D_OP_INCOMPAT.badxlate.d \
tst.InlineDataAssign.d \
tst.InlineExpression.d \
tst.InlineKinds.d \
tst.InlineKinds.d.out \
tst.InlineTypedef.d \
tst.InlineWritableAssign.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,18 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.fds.d \
tst.fds.d.out \
TESTEXES= \
CFILES= \
tst.fds.c \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,36 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.ipv4localicmp.ksh \
tst.ipv4localicmp.ksh.out \
tst.ipv4localtcp.ksh \
tst.ipv4localtcp.ksh.out \
tst.ipv4localudp.ksh \
tst.ipv4localudp.ksh.out \
tst.ipv4remoteicmp.ksh \
tst.ipv4remoteicmp.ksh.out \
tst.ipv4remotetcp.ksh \
tst.ipv4remotetcp.ksh.out \
tst.ipv4remoteudp.ksh \
tst.ipv4remoteudp.ksh.out \
tst.ipv6localicmp.ksh \
tst.ipv6localicmp.ksh.out \
tst.ipv6remoteicmp.ksh \
tst.ipv6remoteicmp.ksh.out \
tst.localtcpstate.ksh \
tst.localtcpstate.ksh.out \
tst.remotetcpstate.ksh \
tst.remotetcpstate.ksh.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,44 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.Abort.ksh \
tst.Abort.ksh.out \
tst.Bean.ksh \
tst.Bean.ksh.out \
tst.Close.ksh \
tst.Close.ksh.out \
tst.Drop.ksh \
tst.Drop.ksh.out \
tst.Enable.ksh \
tst.Enable.ksh.out \
tst.FunctionLookup.ksh \
tst.FunctionLookup.ksh.out \
tst.GetAggregate.ksh \
tst.MaxConsumers.ksh \
tst.MaxConsumers.ksh.out \
tst.MultiAggPrinta.ksh \
tst.MultiAggPrinta.ksh.out \
tst.ProbeData.ksh \
tst.ProbeData.ksh.out \
tst.ProbeDescription.ksh \
tst.ProbeDescription.ksh.out \
tst.StateMachine.ksh \
tst.StateMachine.ksh.out \
tst.StopLock.ksh \
tst.StopLock.ksh.out \
tst.printa.d \
tst.printa.d.out \
TESTEXES= \
CFILES= \
tst.FunctionLookup.c \
tst.ProbeData.c \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,23 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.general.d \
tst.general.d.out \
tst.strsize.d \
tst.strsize.d.out \
tst.usdt.d \
tst.usdt.d.out \
usdt.d \
TESTEXES= \
CFILES= \
tst.usdt.c \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,30 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_CHR_NL.char.d \
err.D_CHR_NULL.char.d \
err.D_INT_DIGIT.InvalidDigit.d \
err.D_INT_OFLOW.BigInt.d \
err.D_STR_NL.string.d \
err.D_SYNTAX.brace1.d \
err.D_SYNTAX.brace2.d \
err.D_SYNTAX.brack1.d \
err.D_SYNTAX.brack2.d \
err.D_SYNTAX.brack3.d \
err.D_SYNTAX.paren1.d \
err.D_SYNTAX.paren2.d \
err.D_SYNTAX.paren3.d \
tst.D_MACRO_OFLOW.ParIntOvflow.d.ksh \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,50 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_LLQUANT_FACTOREVEN.nodivide.d \
err.D_LLQUANT_FACTOREVEN.notfactor.d \
err.D_LLQUANT_FACTORMATCH.d \
err.D_LLQUANT_FACTORNSTEPS.d \
err.D_LLQUANT_FACTORSMALL.d \
err.D_LLQUANT_FACTORTYPE.d \
err.D_LLQUANT_FACTORVAL.d \
err.D_LLQUANT_HIGHMATCH.d \
err.D_LLQUANT_HIGHTYPE.d \
err.D_LLQUANT_HIGHVAL.d \
err.D_LLQUANT_LOWMATCH.d \
err.D_LLQUANT_LOWTYPE.d \
err.D_LLQUANT_LOWVAL.d \
err.D_LLQUANT_MAGRANGE.d \
err.D_LLQUANT_MAGTOOBIG.d \
err.D_LLQUANT_NSTEPMATCH.d \
err.D_LLQUANT_NSTEPTYPE.d \
err.D_LLQUANT_NSTEPVAL.d \
tst.bases.d \
tst.bases.d.out \
tst.basic.d \
tst.basic.d.out \
tst.negorder.d \
tst.negorder.d.out \
tst.negvalue.d \
tst.negvalue.d.out \
tst.normal.d \
tst.normal.d.out \
tst.range.d \
tst.range.d.out \
tst.steps.d \
tst.steps.d.out \
tst.trunc.d \
tst.trunc.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,17 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.dtracedcmd.ksh \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,19 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.icmp.ksh \
tst.tcp.ksh \
tst.udp.ksh \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,30 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PRAGMA_OPTSET.d \
tst.badopt.d \
tst.boolopt.d \
tst.boolopt.d.out \
tst.dofmax.ksh \
tst.dynopt.d \
tst.dynopt.d.out \
tst.enablerace.ksh \
tst.haslam.d \
tst.include.ksh \
tst.macroglob.ksh \
tst.macroglob.ksh.out \
tst.roch.d \
tst.schrock.ksh \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,34 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PRINTA_AGGKEY.d \
err.D_PRINTA_AGGPROTO.d \
tst.many.d \
tst.many.d.out \
tst.same.d \
tst.same.d.out \
tst.sort.d \
tst.sort.d.out \
tst.sortpos.d \
tst.sortpos.d.out \
tst.tuplecompat.d \
tst.tuplecompat.d.out \
tst.zero.d \
tst.zero.d.out \
tst.zero2.d \
tst.zero2.d.out \
tst.zero3.d \
tst.zero3.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,19 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.call.d \
tst.call3.d \
TESTEXES= \
CFILES= \
tst.call.c \
tst.call3.c \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,28 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_OFFSETOF_BITFIELD.bitfield.d \
err.D_OFFSETOF_TYPE.badtype.d \
err.D_OFFSETOF_TYPE.notsou.d \
err.D_UNKNOWN.OffsetofNULL.d \
err.D_UNKNOWN.badmemb.d \
tst.OffsetofAlias.d \
tst.OffsetofArith.d \
tst.OffsetofUnion.d \
tst.struct.d \
tst.struct.d.out \
tst.union.d \
tst.union.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,18 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.ternary.d \
tst.ternary.d.out \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,69 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PDESC_ZERO.badlib.d \
err.D_PDESC_ZERO.badproc1.d \
err.D_PROC_BADPID.badproc2.d \
err.D_PROC_CREATEFAIL.many.d \
err.D_PROC_FUNC.badfunc.d \
err.D_PROC_LIB.libdash.d \
err.D_PROC_NAME.alldash.d \
err.D_PROC_NAME.badname.d \
err.D_PROC_NAME.globdash.d \
err.D_PROC_OFF.toobig.d \
tst.addprobes.ksh \
tst.args1.d \
tst.coverage.d \
tst.emptystack.d \
tst.emptystack.d.out \
tst.float.d \
tst.fork.d \
tst.gcc.d \
tst.killonerror.ksh \
tst.main.ksh \
tst.manypids.ksh \
tst.newprobes.ksh \
tst.newprobes.ksh.out \
tst.probemod.ksh \
tst.provregex1.ksh \
tst.provregex2.ksh \
tst.provregex2.ksh.out \
tst.provregex3.ksh \
tst.provregex3.ksh.out \
tst.provregex4.ksh \
tst.provregex4.ksh.out \
tst.ret1.d \
tst.ret2.d \
tst.vfork.d \
tst.weak1.d \
tst.weak2.d \
TESTEXES= \
err.D_PDESC_ZERO.badlib.exe \
err.D_PROC_CREATEFAIL.many.exe \
err.D_PROC_FUNC.badfunc.exe \
err.D_PROC_LIB.libdash.exe \
err.D_PROC_NAME.alldash.exe \
err.D_PROC_NAME.badname.exe \
err.D_PROC_NAME.globdash.exe \
err.D_PROC_OFF.toobig.exe \
tst.coverage.exe \
tst.emptystack.exe \
CFILES= \
tst.args1.c \
tst.float.c \
tst.fork.c \
tst.gcc.c \
tst.ret1.c \
tst.ret2.c \
tst.vfork.c \
tst.weak1.c \
tst.weak2.c \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,19 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
tst.available.d \
tst.libmap.d \
TESTEXES= \
tst.available.exe \
tst.libmap.exe \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,48 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.BadAlign.d \
err.D_ADDROF_VAR.ArrayVar.d \
err.D_ADDROF_VAR.DynamicVar.d \
err.D_ADDROF_VAR.agg.d \
err.D_DEREF_NONPTR.noptr.d \
err.D_DEREF_VOID.VoidPointerDeref.d \
err.D_OP_ARRFUN.ArrayAssignment.d \
err.D_OP_INCOMPAT.VoidPointerArith.d \
err.D_OP_LVAL.AddressChange.d \
err.D_OP_PTR.NonPointerAccess.d \
err.D_OP_PTR.badpointer.d \
err.D_OP_SOU.BadPointerAccess.d \
err.D_OP_SOU.badpointer.d \
err.InvalidAddress1.d \
err.InvalidAddress2.d \
err.InvalidAddress3.d \
err.InvalidAddress4.d \
err.InvalidAddress5.d \
tst.ArrayPointer1.d \
tst.ArrayPointer2.d \
tst.ArrayPointer3.d \
tst.GlobalVar.d \
tst.IntegerArithmetic1.d \
tst.PointerArithmetic1.d \
tst.PointerArithmetic2.d \
tst.PointerArithmetic3.d \
tst.PointerAssignment.d \
tst.ValidPointer1.d \
tst.ValidPointer2.d \
tst.VoidCast.d \
tst.basic1.d \
tst.basic2.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

View File

@ -0,0 +1,30 @@
# $FreeBSD$
#
# This Makefile was generated by $srcdir/cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh.
#
TESTFILES= \
err.D_PRAGERR.d \
err.D_PRAGMA_DEPEND.main.d \
err.D_PRAGMA_INVAL.d \
err.D_PRAGMA_MALFORM.d \
err.D_PRAGMA_UNUSED.UnusedPragma.d \
err.circlibdep.ksh \
err.invalidlibdep.ksh \
tst.libchain.ksh \
tst.libdep.ksh \
tst.libdepfullyconnected.ksh \
tst.libdepsepdir.ksh \
tst.temporal.ksh \
tst.temporal2.ksh \
tst.temporal3.d \
TESTEXES= \
CFILES= \
.include "../../Makefile.inc1"

Some files were not shown because too many files have changed in this diff Show More