Sponsored Content
Full Discussion: How to Get the hostent data
Top Forums Programming How to Get the hostent data Post 302187567 by era on Monday 21st of April 2008 12:55:08 PM
Old 04-21-2008
Again, that is not a valid IP address.

I wrote a quick test program and got it to run successfully.

Code:
vnix$ ./a.out 72.14.253.125 
in_addr: 72.14.253.125
po-in-f125.google.com

Code:
#include <netdb.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdio.h>
#include <errno.h>

int main (int argc, char *argv[])
{
  struct in_addr addr;
  struct hostent *he;
  /* printf ("sizeof struct in_addr: %i\n", sizeof(struct in_addr)); */
  printf ("in_addr: %s\n", argv[1]);
  addr.s_addr = inet_addr(argv[1]);
  if (addr.s_addr == 0 || addr.s_addr == -1)
    {
      perror ("inet_addr");
      return 1;
    }
  /* else */
  he = gethostbyaddr (&addr, 4, AF_INET);
  if (he == NULL)
    {
      perror ("gethostbyaddr");
      switch (h_errno)
	{
	case HOST_NOT_FOUND: printf ("HOST_NOT_FOUND\n"); break;
	case NO_ADDRESS: printf ("NO_ADDRESS\n"); break;
	  /* case NO_DATA: print ("NO_DATA\n"); break; */
	case NO_RECOVERY: printf ("NO_RECOVERY\n"); break;
	case TRY_AGAIN: printf ("TRY_AGAIN\n"); break;
	}
      return 1;
    }
  /* else */
  printf ("%s\n", he->h_name);
  return 0;
}

I might have left in a bit too many includes from other stuff but anyway, this compiles and runs. (Pardon the weird indentation, I didn't start configuring Emacs' indentation to my liking just for this.)
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Howto capture data from rs232port andpull data into oracle database-9i automatically

Hi, i willbe very much grateful to u if u help me out.. if i simply connect pbx machine to printer by serial port RS232 then we find this view: But i want to capture this data into database automatically when the pbx is running.The table in database will contain similar to this view inthe... (1 Reply)
Discussion started by: boss
1 Replies

2. Shell Programming and Scripting

how to verify that copied data to remote system is identical with local data.

I have created simple shell script #!/bin/sh echo `date`; echo "Start .... find . -mtime +95 -print > /tmp/files.txt for file in `cat /tmp/files.txt` do echo "copying file - $file" /usr/local/bin/scp -p -P 2222 $file remote.hostname:/file/path echo "copid file -... (3 Replies)
Discussion started by: ynilesh
3 Replies

3. UNIX for Dummies Questions & Answers

converting a tabular format data to comma seperated data in KSH

Hi, Could anyone help me in changing a tabular format output to comma seperated file pls in K-sh. Its very urgent. E.g : username empid ------------------------ sri 123 to username,empid sri,123 Thanks, Hema:confused: (2 Replies)
Discussion started by: Hemamalini
2 Replies

4. Shell Programming and Scripting

Extract data based on match against one column data from a long list data

My input file: data_5 Ali 422 2.00E-45 102/253 140/253 24 data_3 Abu 202 60.00E-45 12/23 140/23 28 data_1 Ahmad 256 7.00E-45 120/235 140/235 22 data_4 Aman 365 8.00E-45 15/65 140/65 20 data_10 Jones 869 9.00E-45 65/253 140/253 18... (12 Replies)
Discussion started by: patrick87
12 Replies

5. UNIX for Dummies Questions & Answers

How to get data only inside polygon created by points which is part of whole data from file?

hiii, Help me out..i have a huge set of data stored in a file.This file has has 2 columns which is latitude & longitude of a region. Now i have a program which asks for the number of points & based on this number it asks the user to enter that latitude & longitude values which are in the same... (7 Replies)
Discussion started by: reva
7 Replies

6. Shell Programming and Scripting

Converting variable space width data into CSV data in bash

Hi All, I was wondering how I can convert each line in an input file where fields are separated by variable width spaces into a CSV file. Below is the scenario what I am looking for. My Input data in inputfile.txt 19 15657 15685 Sr2dReader 107.88 105.51... (4 Replies)
Discussion started by: vharsha
4 Replies

7. Shell Programming and Scripting

Generate tabular data based on a column value from an existing data file

Hi, I have a data file with : 01/28/2012,1,1,98995 01/28/2012,1,2,7195 01/29/2012,1,1,98995 01/29/2012,1,2,7195 01/30/2012,1,1,98896 01/30/2012,1,2,7083 01/31/2012,1,1,98896 01/31/2012,1,2,7083 02/01/2012,1,1,98896 02/01/2012,1,2,7083 02/02/2012,1,1,98899 02/02/2012,1,2,7083 I... (1 Reply)
Discussion started by: himanish
1 Replies

8. Shell Programming and Scripting

Parsing XML (and insert data) then output data (bash / Solaris)

Hi folks I have a script I wrote that basically parses a bunch of config and xml files works out were to add in the new content then spits out the data into a new file. It all works - apart from the xml and config file format in the new file with XML files the original XML (that ends up in... (2 Replies)
Discussion started by: dfinch
2 Replies

9. Shell Programming and Scripting

awk --> math-operation in data-record and joining with second file data

Hi! I have a pretty complex job - at least for me! i have two csv-files with meassurement-data: fileA ...... (2 Replies)
Discussion started by: IMPe
2 Replies
ARES_GETHOSTBYNAME(3)					     Library Functions Manual					     ARES_GETHOSTBYNAME(3)

NAME
ares_gethostbyname - Initiate a host query by name SYNOPSIS
#include <ares.h> typedef void (*ares_host_callback)(void *arg, int status, int timeouts, struct hostent *hostent) void ares_gethostbyname(ares_channel channel, const char *name, int family, ares_host_callback callback, void *arg) DESCRIPTION
The ares_gethostbyname function initiates a host query by name on the name service channel identified by channel. The parameter name gives the hostname as a NUL-terminated C string, and family gives the desired type of address for the resulting host entry. When the query is complete or has failed, the ares library will invoke callback. Completion or failure of the query may happen immediately, or may happen during a later call to ares_process(3), ares_destroy(3) or ares_cancel(3). The callback argument arg is copied from the ares_gethostbyname argument arg. The callback argument status indicates whether the query succeeded and, if not, how it failed. It may have any of the following values: ARES_SUCCESS The host lookup completed successfully. ARES_ENOTIMP The ares library does not know how to find addresses of type family. ARES_EBADNAME The hostname name is composed entirely of numbers and periods, but is not a valid representation of an Internet address. ARES_ENOTFOUND The address addr was not found. ARES_ENOMEM Memory was exhausted. ARES_ECANCELLED The query was cancelled. ARES_EDESTRUCTION The name service channel channel is being destroyed; the query will not be completed. The callback argument timeouts reports how many times a query timed out during the execution of the given request. On successful completion of the query, the callback argument hostent points to a struct hostent containing the name of the host returned by the query. The callback need not and should not attempt to free the memory pointed to by hostent; the ares library will free it when the callback returns. If the query did not complete successfully, hostent will be NULL. SEE ALSO
ares_process(3), ares_gethostbyaddr(3) AUTHOR
Greg Hudson, MIT Information Systems Copyright 1998 by the Massachusetts Institute of Technology. 25 July 1998 ARES_GETHOSTBYNAME(3)
All times are GMT -4. The time now is 08:40 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy