How to Get the hostent data


 
Thread Tools Search this Thread
Top Forums Programming How to Get the hostent data
# 1  
Old 04-20-2008
How to Get the hostent data

Hi,
I am trying to write a program, to find the open port on any system. Rightnow, my programm is working fine on the same system ip.

Now, i want to enhanced it to get any IP address and perform the task.
Problem is that, i have only IP address, like "111:111:111:111".
From this how to get the struct hostent *he;
I have tried with the following code

//he = gethostbyname( compName );
unsigned int addr = inet_addr("111:111:111:111");
hostent *he = gethostbyaddr((char *) &addr, 4, AF_INET);
But getgostbyaddress is returning NULL.
Any body help me.
# 2  
Old 04-20-2008
111:111:111:111 is not a valid IPv4 address. Try 127.0.0.1 instead, for a start. (That's localhost so it will connect to your own box anyway.)
# 3  
Old 04-20-2008
That IP addess is as exapmle. i am giving my IP address which given by ipconfig command. Assume it 72.14.253.125 .
# 4  
Old 04-20-2008
Seems you should put the return value from inet_addr in addr.s_addr.

./ettercap-0.5.0/src/ec_inet.c - Google Code Search
# 5  
Old 04-21-2008
I tried the code fromm link.
struct in_addr addr;

addr.s_addr = inet_addr( "121.243.2231.133" );
he = gethostbyaddr((char *)&addr, sizeof(struct in_addr), AF_INET);

Again he is NULL>\.
# 6  
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.)
# 7  
Old 04-21-2008
yes, u are right. It was a typo. Thanks to point out it.
Now it's working fine...
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. 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

2. 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

3. 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

4. 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

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

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

7. 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

8. 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

9. 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
Login or Register to Ask a Question