huangcm
2025-04-26 2868c607307b8de19383692485d1cbe1b64eb94d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/sh
 
# Check -t option.
 
. "${srcdir=.}/init.sh"
 
run_prog_skip_if_failed date +%s > "$LOG"
run_prog_skip_if_failed date +%T --date "@$(cat "$LOG")" > /dev/null
run_prog ../sleep 0
 
s0="$(date +%s)"
run_strace -t -eexecve $args
s1="$(date +%s)"
 
s="$s0"
t_reg=
while [ "$s" -le "$s1" ]; do
   t="$(date +%T --date "@$s")"
   [ -z "$t_reg" ] && t_reg="$t" || t_reg="$t_reg|$t"
   s=$(($s + 1))
done
t_reg="($t_reg)"
 
cat > "$EXP" << __EOF__
$t_reg execve\\("\\.\\./sleep", \\["\\.\\./sleep", "0"\\], 0x[[:xdigit:]]* /\\* [[:digit:]]* vars \\*/\\) = 0
$t_reg \\+\\+\\+ exited with 0 \\+\\+\\+
__EOF__
 
match_grep "$LOG" "$EXP"