Devuan bug report logs - #774
traceroute: Exit code is not reliable nor documented

version graph

Package: traceroute; Maintainer for traceroute is (unknown); Source for traceroute is src:traceroute.

Reported by: Alessandro Vesely <vesely@tana.it>

Date: Fri, 18 Aug 2023 08:10:01 UTC

Severity: grave

Tags: debian

Found in version 1:2.1.0-2+deb11u1

Forwarded to https://bugs.debian.org/1050039

Full log


🔗 View this message in rfc822 format

X-Loop: owner@bugs.devuan.org
Subject: bug#774: traceroute: Exit code is not reliable nor documented
Reply-To: Alessandro Vesely <vesely@tana.it>, 774@bugs.devuan.org
Resent-From: Alessandro Vesely <vesely@tana.it>
Resent-To: devuan-bugs@lists.dyne.org
Resent-CC: devuan-dev@lists.dyne.org
X-Loop: owner@bugs.devuan.org
Resent-Date: Fri, 18 Aug 2023 08:10:01 +0000
Resent-Message-ID: <handler.774.B.169234614215870@bugs.devuan.org>
Resent-Sender: owner@bugs.devuan.org
X-Devuan-PR-Message: report 774
X-Devuan-PR-Package: traceroute
X-Devuan-PR-Keywords: 
Received: via spool by submit@bugs.devuan.org id=B.169234614215870
          (code B); Fri, 18 Aug 2023 08:10:01 +0000
Received: (at submit) by bugs.devuan.org; 18 Aug 2023 08:09:02 +0000
Delivered-To: bugs@devuan.org
Received: from email.devuan.org [2a01:4f8:140:32a1::58c6:6473]
	by doc.devuan.org with IMAP (fetchmail-6.4.16)
	for <debbugs@localhost> (single-drop); Fri, 18 Aug 2023 08:09:02 +0000 (UTC)
Received: from email.devuan.org
	by email.devuan.org with LMTP
	id 4NGEHggn32SRdAAAmSBk0A
	(envelope-from <vesely@tana.it>)
	for <bugs@devuan.org>; Fri, 18 Aug 2023 08:08:40 +0000
Received: by email.devuan.org (Postfix, from userid 109)
	id 603D35F5; Fri, 18 Aug 2023 08:08:40 +0000 (UTC)
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on email.devuan.org
X-Spam-Level: 
X-Spam-Status: No, score=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS
	autolearn=ham autolearn_force=no version=3.4.6
Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=94.198.96.74; helo=wmail.tana.it; envelope-from=vesely@tana.it; receiver=<UNKNOWN> 
Received: from wmail.tana.it (wmail.tana.it [94.198.96.74])
	by email.devuan.org (Postfix) with ESMTPS id EB82127
	for <submit@bugs.devuan.org>; Fri, 18 Aug 2023 08:08:34 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
  (uid 1000)
  by wmail.tana.it with local
  id 00000000005DC0E9.0000000064DF26FF.00005E40; Fri, 18 Aug 2023 10:08:31 +0200
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
From: Alessandro Vesely <vesely@tana.it>
To: Devuan Bug Tracking System <submit@bugs.devuan.org>
Message-ID: <169234611173.22998.13478232296979279263.reportbug@north.ext.tana.it>
X-Mailer: reportbug 7.10.3+devuan1
Date: Fri, 18 Aug 2023 10:08:31 +0200
Package: traceroute
Version: 1:2.1.0-2+deb11u1
Severity: grave
Justification: renders package unusable

Dear Maintainer,

I've been using traceroute to monitor network state of the server.
It is called for each interface by a cron job running a few times per hour.
Since yesterday, an interface stopped working, but the job never noticed it.
Manually calling traceroute only shows the (natted) modem interface:

:~# ip addr show eth1r
3: eth1r: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:26:55:e0:d0:e8 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.254/24 brd 192.168.1.255 scope global eth1r
       valid_lft forever preferred_lft forever
    inet6 fe80::226:55ff:fee0:d0e8/64 scope link 
       valid_lft forever preferred_lft forever

:~# traceroute -4 -n -i eth1r -m 4 -s 192.168.1.254 185.204.135.186
traceroute to 185.204.135.186 (185.204.135.186), 4 hops max, 60 byte packets
 1  192.168.1.1  0.235 ms  0.282 ms  0.289 ms
 2  * * *
 3  * * *
 4  * * *

Exit code is 0.  In fact recvmsg reports no error.  The relevant calls are:
23495 sendto(14, "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_", 32, 0, NULL, 0) = 32
23495 recvmsg(3, {msg_name={sa_family=AF_INET, sin_port=htons(33434), sin_addr=inet_addr("185.204.135.186")}, msg_namelen=28->16, msg_iov=[{iov_base="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_", iov_len=1280}], msg_iovlen=1, msg_control=[{cmsg_len=32, cmsg_level=SOL_SOCKET, cmsg_type=SO_TIMESTAMP_OLD, cmsg_data={tv_sec=1692345052, tv_usec=96190}}, {cmsg_len=20, cmsg_level=SOL_IP, cmsg_type=IP_TTL, cmsg_data=[64]}, {cmsg_len=48, cmsg_level=SOL_IP, cmsg_type=IP_RECVERR, cmsg_data={ee_errno=113, ee_origin=2, ee_type=11, ee_code=0, ee_info=0, ee_data=0, offender={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("192.168.1.1")}}}], msg_controllen=104, msg_flags=MSG_ERRQUEUE}, MSG_ERRQUEUE) = 32
23495 recvmsg(4, {msg_name={sa_family=AF_INET, sin_port=htons(33435), sin_addr=inet_addr("185.204.135.186")}, msg_namelen=28->16, msg_iov=[{iov_base="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_", iov_len=1280}], msg_iovlen=1, msg_control=[{cmsg_len=32, cmsg_level=SOL_SOCKET, cmsg_type=SO_TIMESTAMP_OLD, cmsg_data={tv_sec=1692345052, tv_usec=96276}}, {cmsg_len=20, cmsg_level=SOL_IP, cmsg_type=IP_TTL, cmsg_data=[64]}, {cmsg_len=48, cmsg_level=SOL_IP, cmsg_type=IP_RECVERR, cmsg_data={ee_errno=113, ee_origin=2, ee_type=11, ee_code=0, ee_info=0, ee_data=0, offender={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("192.168.1.1")}}}], msg_controllen=104, msg_flags=MSG_ERRQUEUE}, MSG_ERRQUEUE) = 32
23495 recvmsg(5, {msg_name={sa_family=AF_INET, sin_port=htons(33436), sin_addr=inet_addr("185.204.135.186")}, msg_namelen=28->16, msg_iov=[{iov_base="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_", iov_len=1280}], msg_iovlen=1, msg_control=[{cmsg_len=32, cmsg_level=SOL_SOCKET, cmsg_type=SO_TIMESTAMP_OLD, cmsg_data={tv_sec=1692345052, tv_usec=96277}}, {cmsg_len=20, cmsg_level=SOL_IP, cmsg_type=IP_TTL, cmsg_data=[64]}, {cmsg_len=48, cmsg_level=SOL_IP, cmsg_type=IP_RECVERR, cmsg_data={ee_errno=113, ee_origin=2, ee_type=11, ee_code=0, ee_info=0, ee_data=0, offender={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("192.168.1.1")}}}], msg_controllen=104, msg_flags=MSG_ERRQUEUE}, MSG_ERRQUEUE) = 32
23495 +++ exited with 0 +++

The modem obviously needs a reset.  The point is that I was expecting
traceroute to detect that, since the interface doesn't work.  If this
is not a bug in the code, it is in the documentation, tagged 11 October
2006, which doesn't mention exit code at all.


Thanks
Ale


-- System Information:
Distributor ID:	Devuan
Description:	Devuan GNU/Linux 4 (chimaera)
Release:	4
Codename:	chimaera
Architecture: x86_64

Kernel: Linux 5.10.0-24-amd64 (SMP w/8 CPU threads)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/bash
Init: sysvinit (via /sbin/init)

Versions of packages traceroute depends on:
ii  libc6  2.31-13+deb11u6

traceroute recommends no packages.

traceroute suggests no packages.

-- no debconf information

Send a report that this bug log contains spam.


Devuan BTS -- Powered by Debian bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.

Devuan Bugs Owner <owner@bugs.devuan.org>.
Last modified: Sat Sep 28 21:24:17 2024;