4 # Trace syscalls and network traffic of a SMB client by IP
7 trap cleanup SIGINT SIGTERM EXIT
10 if [ -n $TCPDUMP_PID ] ; then kill $TCPDUMP_PID ; fi
11 if [ -n $STRACE_PID ] ; then kill $STRACE_PID ; fi
14 if [ $# -ne 2 ] ; then
15 echo "Usage: smbd-trace.sh IFACE IP"
19 type ls >/dev/null 2>&1 || {
27 SMBD_PID=$(/home/slow/git/samba/scratch/bin/smbstatus -p | grep "ipv4:$IP" | cut -d " " -f 1)
29 echo Writing strace to smbd-$SMBD_PID.strace
30 echo Writing network trace to smbd-$SMBD_PID.pcap
32 tcpdump -i $IFACE -w smbd-$SMBD_PID.pcap host $IP and port 445 > /dev/null 2>&1 &
35 strace -vttT -o smbd-$SMBD_PID.strace -p $SMBD_PID > /dev/null 2>&1 &
38 printf "\nPress ctrl-c to stop tracing...\n"