|
Message-ID: <20110323100357.GB28906@albatros> Date: Wed, 23 Mar 2011 13:03:57 +0300 From: Vasiliy Kulikov <segoon@...nwall.com> To: owl-dev@...ts.openwall.com Subject: Re: iputils s20101006 Solar, On Wed, Mar 23, 2011 at 10:51 +0300, Solar Designer wrote: > > http://linux-diag.sourceforge.net/Sysfsutils.html > > I went to this link, but I can't quickly identify the Source tarball > you'd be using in the package. Can you please provide more info? It is the link "Download sysfsutils" to sourceforge: http://sourceforge.net/projects/linux-diag/files/ The last link is "sysfsutils" dated 2006-08-23. I didn't try to compile it on Owl, though. > How do we verify its authenticity and integrity?.. As it is rather old tarball, we may compare checksums with checksums of the same tarball in RHEL/Debian/other distros. The AUTHORS file contains these line: Ananth Mavinakayanahalli <ananth AT in.ibm.com> Daniel Stekloff <dsteklof AT us.ibm.com> Mohan Kumar <mohan AT in.ibm.com> Nitin Vashisth <vnitin AT in.ibm.com> So, we are to contact these people to get GPG signatures. I've taken a look at arping's libsysfs usage, it's pretty simple: void set_device_broadcast(char *device, unsigned char *ba, size_t balen) { struct sysfs_class_device *dev; struct sysfs_attribute *brdcast; unsigned char *p; int ch; dev = sysfs_open_class_device("net", device); if (!dev) { perror("sysfs_open_class_device(net)"); exit(2); } brdcast = sysfs_get_classdev_attr(dev, "broadcast"); if (!brdcast) { perror("sysfs_get_classdev_attr(broadcast)"); exit(2); } if (sysfs_read_attribute(brdcast)) { perror("sysfs_read_attribute"); exit(2); } for (p = ba, ch = 0; p < ba + balen; p++, ch += 3) *p = strtoul(brdcast->value + ch, NULL, 16); return; } int main() { ... #if 1 set_device_broadcast(device, ((struct sockaddr_ll *)&he)->sll_addr, ((struct sockaddr_ll *)&he)->sll_halen); #else memset(((struct sockaddr_ll *)&he)->sll_addr, -1, ((struct sockaddr_ll *)&he)->sll_halen); #endif ... } Arping tries to optimize recvfrom() by catching not all broadcasts, but only broadcasts that current netdevice is setup to receive. So, we may simply comment set_device_broadcast() out and change "#if" argument to 0. Thanks, -- Vasiliy Kulikov http://www.openwall.com - bringing security into open computing environments
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.