<p>Max <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/13252">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Generalize ttcn3-tcpdump-*.sh<br><br>Prepare for supporting alternative packet dumpers:<br>* reword comments<br>* rename pidfile<br>* move tcpdump-specific option inside if<br>* move comment about sudo closer to actual sudo invocation<br><br>Those are cosmetic changes which do not affect how packet dump is made<br>but makes it easier to support alternative packet dumpers in follow-up<br>commit.<br><br>Change-Id: Ib2528db65348c0422fe8b7c7c53656fbce4f6405<br>---<br>M ttcn3-tcpdump-start.sh<br>M ttcn3-tcpdump-stop.sh<br>2 files changed, 14 insertions(+), 14 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/ttcn3-tcpdump-start.sh b/ttcn3-tcpdump-start.sh</span><br><span>index 747002b..b8ad01a 100755</span><br><span>--- a/ttcn3-tcpdump-start.sh</span><br><span>+++ b/ttcn3-tcpdump-start.sh</span><br><span>@@ -1,6 +1,6 @@</span><br><span> #!/bin/sh</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-PIDFILE=/tmp/tcpdump.pid</span><br><span style="color: hsl(120, 100%, 40%);">+PIDFILE=/tmp/dumper.pid</span><br><span> TCPDUMP=/usr/sbin/tcpdump</span><br><span> TESTCASE=$1</span><br><span> </span><br><span>@@ -16,19 +16,19 @@</span><br><span>        rm $PIDFILE</span><br><span> fi</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+if [ "$(id -u)" = "0" ]; then</span><br><span style="color: hsl(120, 100%, 40%);">+      CMD="$TCPDUMP -U"</span><br><span style="color: hsl(120, 100%, 40%);">+else</span><br><span> # NOTE: This requires you to be root or something like</span><br><span> # "laforge ALL=NOPASSWD: /usr/sbin/tcpdump, /bin/kill" in your sudoers file</span><br><span style="color: hsl(0, 100%, 40%);">-if [ "$(id -u)" = "0" ]; then</span><br><span style="color: hsl(0, 100%, 40%);">-   CMD=$TCPDUMP</span><br><span style="color: hsl(0, 100%, 40%);">-else</span><br><span style="color: hsl(0, 100%, 40%);">-        CMD="sudo $TCPDUMP"</span><br><span style="color: hsl(120, 100%, 40%);">+ CMD="sudo $TCPDUMP -U"</span><br><span> fi</span><br><span style="color: hsl(0, 100%, 40%);">-$CMD -U -s 1500 -n -i any -w "$TTCN3_PCAP_PATH/$TESTCASE.pcap" >$TTCN3_PCAP_PATH/$TESTCASE.pcap.stdout 2>&1 &</span><br><span style="color: hsl(120, 100%, 40%);">+$CMD -s 1500 -n -i any -w "$TTCN3_PCAP_PATH/$TESTCASE.pcap" >$TTCN3_PCAP_PATH/$TESTCASE.pcap.stdout 2>&1 &</span><br><span> PID=$!</span><br><span> echo $PID > $PIDFILE</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-# Wait until tcpdump creates the pcap file and starts recording.</span><br><span style="color: hsl(0, 100%, 40%);">-# We generate some traffic until we see tcpdump catches it.</span><br><span style="color: hsl(120, 100%, 40%);">+# Wait until packet dumper creates the pcap file and starts recording.</span><br><span style="color: hsl(120, 100%, 40%);">+# We generate some traffic until we see packet dumper catches it.</span><br><span> # Timeout is 10 seconds.</span><br><span> ping 127.0.0.1 >/dev/null 2>&1 &</span><br><span> PID=$!</span><br><span>@@ -36,7 +36,7 @@</span><br><span> while [ ! -f "$TTCN3_PCAP_PATH/$TESTCASE.pcap" ] ||</span><br><span>       [ "$(stat -c '%s' "$TTCN3_PCAP_PATH/$TESTCASE.pcap")" -eq 32 ]</span><br><span> do</span><br><span style="color: hsl(0, 100%, 40%);">-   echo "Waiting for tcpdump to start... $i"</span><br><span style="color: hsl(120, 100%, 40%);">+   echo "Waiting for packet dumper to start... $i"</span><br><span>    sleep 1</span><br><span>      i=$((i+1))</span><br><span>   if [ $i -eq 10 ]; then</span><br><span>diff --git a/ttcn3-tcpdump-stop.sh b/ttcn3-tcpdump-stop.sh</span><br><span>index baabefe..f53cf5d 100755</span><br><span>--- a/ttcn3-tcpdump-stop.sh</span><br><span>+++ b/ttcn3-tcpdump-stop.sh</span><br><span>@@ -1,6 +1,6 @@</span><br><span> #!/bin/sh</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-PIDFILE=/tmp/tcpdump.pid</span><br><span style="color: hsl(120, 100%, 40%);">+PIDFILE=/tmp/dumper.pid</span><br><span> TESTCASE=$1</span><br><span> VERDICT="$2"</span><br><span> </span><br><span>@@ -17,14 +17,14 @@</span><br><span>       TTCN3_PCAP_PATH=/tmp</span><br><span> fi</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-# Wait for up to 2 seconds if we keep receiving traffinc from tcpdump,</span><br><span style="color: hsl(120, 100%, 40%);">+# Wait for up to 2 seconds if we keep receiving traffinc from packet dumper,</span><br><span> # otherwise we might lose last packets from test.</span><br><span> i=0</span><br><span> prev_count=-1</span><br><span> count=$(stat --format="%s" "$TTCN3_PCAP_PATH/$TESTCASE.pcap")</span><br><span> while [ $count -gt $prev_count ] && [ $i -lt 2 ]</span><br><span> do</span><br><span style="color: hsl(0, 100%, 40%);">-  echo "Waiting for tcpdump to finish... $i (prev_count=$prev_count, count=$count)"</span><br><span style="color: hsl(120, 100%, 40%);">+   echo "Waiting for packet dumper to finish... $i (prev_count=$prev_count, count=$count)"</span><br><span>    sleep 1</span><br><span>      prev_count=$count</span><br><span>    count=$(stat --format="%s" "$TTCN3_PCAP_PATH/$TESTCASE.pcap")</span><br><span>@@ -32,11 +32,11 @@</span><br><span> done</span><br><span> </span><br><span> if [ -e $PIDFILE ]; then</span><br><span style="color: hsl(0, 100%, 40%);">- # NOTE: This requires you to be root or something like</span><br><span style="color: hsl(0, 100%, 40%);">-  # "laforge ALL=NOPASSWD: /usr/sbin/tcpdump, /bin/kill" in your sudoers file</span><br><span>        if [ "$(id -u)" = "0" ]; then</span><br><span>            kill "$(cat "$PIDFILE")"</span><br><span>         else</span><br><span style="color: hsl(120, 100%, 40%);">+  # NOTE: This requires you to be root or something like</span><br><span style="color: hsl(120, 100%, 40%);">+        # "laforge ALL=NOPASSWD: /usr/sbin/tcpdump, /bin/kill" in your sudoers file</span><br><span>                sudo kill "$(cat "$PIDFILE")"</span><br><span>    fi</span><br><span>   rm $PIDFILE</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/13252">change 13252</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/13252"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-ttcn3-hacks </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: Ib2528db65348c0422fe8b7c7c53656fbce4f6405 </div>
<div style="display:none"> Gerrit-Change-Number: 13252 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: Max <msuraev@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Daniel Willmann <dwillmann@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>
<div style="display:none"> Gerrit-Reviewer: Max <msuraev@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: osmith <osmith@sysmocom.de> </div>