Path: csiph.com!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Rainer Weikusat Newsgroups: comp.os.linux.development.system Subject: Re: ioctl SIOCGARP failed! errno: 6 Date: Fri, 08 Jun 2018 20:32:34 +0100 Lines: 42 Message-ID: <87tvqdm5v1.fsf@doppelsaurus.mobileactivedefense.com> References: <5341a907-dabd-43e6-bdb8-2725edb893ad@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: individual.net 3Q76B5uiEyAgoYN+epZo1QoFJ38RrtZh2EGozAdzoOLKhEOcM= Cancel-Lock: sha1:DrGvMiOWJ6Bb6OTrprMHfJzFoCM= sha1:iW7CunJNJiQAZlpldT6ouBZGCWk= User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.4 (gnu/linux) Xref: csiph.com comp.os.linux.development.system:772 Ohm Trivedi writes: > I am a graduate student and I am trying to use this tool, Hershelplus (https://github.com/zk7/hershelplus/tree/master/multi-platform), for OS fingerprinting. > > The tool attempts to send an ARP request to destination MAC, but it fails. The output is as follows: > > ohmtrivedi@ohm-HP-ENVY:~/Documents/ms-thesis/hershelplus$ sudo ./hershelplus 420OS_db.txt 420OS_mapping.txt 186.32.55.31 80 > > Reading from 420OS_db.txt... > Stored 21000 signatures in map > Starting Live fingerprinting of 186.32.55.31:80... > Listing system adapters: > > 1. enx00e151b0014d at 10.15.15.111 > > 2. lo at 127.0.0.1 > > Enter the adapter number between 1 and 2: 1 > > ----------------------------------------------- > Opening device enx00e151b0014d > Adapter enx00e151b0014d opened successfully > Local MAC Address Is: 00--31-81--80-01-77 > Local IP: 10.15.15.111 > ioctl SIOCGARP failed! errno: 6 > Creation of Send Packet failed > Error getting fingerprint > > The error "ioctl SIOCGARP failed! errno: 6" is coming from file > LiveFingerprinter.cpp, line# > 600. (https://github.com/zk7/hershelplus/blob/master/multi-platform/LiveFingerprinter.cpp) The headers /usr/include/asm-generic/errno-base.h and /usr/include/asm-generic/errno.h defined macros for all system error numbers and also list the standard error messages associated with them in comments. In this case, that's #define ENXIO 6 /* No such device or address */ (from errno-base.h) The kernel returns this if there was no ARP-table entry for the address whose ARP-table entry was supposed to be queried.