From: Richard Dawe Newsgroups: comp.os.msdos.djgpp Subject: Re: to ping an address via tcp/ip Date: Sun, 12 Mar 2000 13:01:01 +0000 Organization: Customer of Planet Online Lines: 53 Message-ID: <38CB950D.8157EE7F@bigfoot.com> References: <38c8db0f AT grissom> NNTP-Posting-Host: modem-115.exorex.dialup.pol.co.uk Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: newsg2.svr.pol.co.uk 952888548 31725 62.136.94.115 (12 Mar 2000 19:15:48 GMT) NNTP-Posting-Date: 12 Mar 2000 19:15:48 GMT X-Complaints-To: abuse AT theplanet DOT net X-Mailer: Mozilla 4.51 [en] (X11; I; Linux 2.2.14 i586) X-Accept-Language: de,fr To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Hello. Warp Kez wrote: > Out of necessity I have to rewrite most of my VB programs in C, but I am > unfamiliar with the language. > > Is there a web site that specialises in Network programming using DJGPP, > that could give me an idea on the command structure required to ping and > then return that machines hostname? This really depends which operating system you want the program to run under. I maintain libsocket: http://libsocket.tsx.org/ This uses some of Windows's low-level networking interfaces (virtual device drivers) to provide networking to DOS programs running under Windows. You could use the RSXNT/DJ add-on for DJGPP, which allows you to create Windows programs using DJGPP. If you want to the program to run under DOS, then you could look at Watt-32: http://www.bgnett.no/~giva/ To ping a machine you need to construct an ICMP packet, which means constructing the IP header yourself using a raw socket. Winsock 1 (well, Microsoft's implementation) will not allow you to do this. Winsock 2 does, but you need to run with Administrator priviledges on Windows NT. IIRC Watt-32 has raw socket support, so you should be able to do this under DOS. To return the host name you'll need to do a reverse DNS lookup (numbers to name(s)), which aren't strictly required by the RFCs. The BSD socket call for this gethostbyaddr(). I have a bunch of links here that might help you: http://www.phekda.freeserve.co.uk/richdawe/lsck/lsck_lnk.htm If you're mainly concerned about Windows, then read the Winsock Programmer's FAQ (link on the links page above). This is a good read anyway, for general network programming. HTH, bye, -- Richard Dawe richdawe AT bigfoot DOT com ICQ 47595498 http://www.bigfoot.com/~richdawe/