I don't know what's wrong with your code. If the server was writen by
yourself? If so, you can send a request to ask it to tell your IP. I think
it's the easeat way to do.

Jason


"Dinesh" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED]
>
> Hi,
>
> How do i get the local ip address of palm when it is connected thru
dialup?
> I tried with gethostname and gethostbyname routines. But both fails.
>
> char* get_ipaddr(char* HostnameOrAddr)
> {
>  char* ipAddr;
>  struct in_addr *addr;
>  struct in_addr inaddr;
>  struct hostent *hp;
>  inaddr.s_addr = inet_addr(HostnameOrAddr);
>     if (inaddr.s_addr == INADDR_NONE)
>     {
>         // Not an IP address string, assume it is a name
>         hp = gethostbyname(HostnameOrAddr);
>     }
>     else
>     {
>         // It was a valid IP address string
>         hp = gethostbyaddr((const char *)&inaddr,
>                         sizeof(struct in_addr), AF_INET);
>     }
>  if (hp != NULL)
>  {
>   if (hp->h_addr_list[0] != 0)
>    addr = (struct in_addr *) (hp->h_addr_list[0]);
>   else
>    if (hp->h_addr_list[1] != 0)
>     addr = (struct in_addr *) (hp->h_addr_list[1]);
>    else
>     if (hp->h_addr_list[2] != 0)
>      addr = (struct in_addr *) (hp->h_addr_list[2]);
>     else
>      if (hp->h_addr_list[3] != 0)
>       addr = (struct in_addr *) (hp->h_addr_list[3]);
>      else
>      printf("Can't assign IP Address");
>   strcpy(ipAddr, inet_ntoa(*addr));
>  }
>  else
>  {
>   ipAddr = NULL;
>  }
>
>  return ipAddr;
>
> }
>
> Thanks in Advance.
>
> --
> Dinesh
>
>





-- 
For information on using the ACCESS Developer Forums, or to unsubscribe, please 
see http://www.access-company.com/developers/forums/

Reply via email to