Date: Fri, 5 Jul 2002 00:40:37 +0200 From: "Daniel Blankensteiner" <db@traceroute.dk> To: <freebsd-questions@freebsd.org> Subject: Re: ICMP Message-ID: <00b201c223ab$d120e950$8400a8c0@rafter> References: <02070500425202.00991@FreeBSD.Danovitsch.LAN>
next in thread | previous in thread | raw e-mail | index | archive | help
----- Original Message ----- From: "Daan Vreeken [PA4DAN]" <Danovitsch@Danovitsch.dnsq.org> > > I have been playing with socket programming for some time now and have > > moved on to raw sockets. (I don't use libnet or libpcap, because I first > > want to learn it from the bottom). > > I know how to send ICMP packets, but how do I receive? I can "take over" > > the hole networkcard and read all packets, but I just want the ones for > > my connection. If I set up a raw socket and send an ICMP I can get the > > response (because the ICMP have an ID-feild?), but that if I have setup > > a SOCK_STREAM or SOCK_DGRAM? How can I then detect ICMP? > Have you looked at how they do it in the "ping" program? > > ( see /usr/src/sbin/ping/ping.c ) Yes, but ping uses ICMP to ICMP, meaning that one ICMP ticker another and then it can be identified by the id-field, but I am talking about receiving an ICMP on fx a TCP connection. br db To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?00b201c223ab$d120e950$8400a8c0>