I am not an expert in this apr routine, but I think it might help if you gave the command-line argument you used when testing your program.
-Josh On Sun, Feb 1, 2015 at 7:17 AM, GHui <[email protected]> wrote: > > Is there any good news? Any help will be appreciated. > > --GHui > > > ------------------ Original ------------------ > *From: * "ugiwgh";<[email protected]>; > *Send time:* Thursday, Jan 29, 2015 9:03 AM > *To:* "Jeff Trawick"<[email protected]>; > *Cc:* "dev"<[email protected]>; > *Subject: * Re: apr_getnameinfo get localhost > > > *From: * "Jeff Trawick";<[email protected]>;* Send time:* Wednesday, Jan > 28, 2015 10:26 PM > On Wed, Jan 28, 2015 at 2:26 AM, GHui <[email protected]> wrote: > >> I used the function apr_getnameinfo to get remote hostname. But it >> return "localhost". >> I don't know why this happend. >> Any help will be appreciated. >> --GHui > > > Please show code, such as where the second parameter to apr_getnameinfo() > came from. > -- > Born in Roswell... married an alien... > http://emptyhammock.com/ > > > The code is following. > --------------------------------------------- > int main(int argc,char **argv) > { > if(2!=argc) > { > printf("Usage: %s <ip>\n",argv[0]); > return 1; > } > char *remoteip=argv[1]; > printf(">><<IP: %s\n",remoteip); > apr_initialize(); > apr_pool_t *mp; > apr_pool_create(&mp,NULL); > apr_sockaddr_t *sa; > apr_sockaddr_info_get(&sa,remoteip,APR_INET,10089,0,mp); > char *hostname=NULL; > apr_getnameinfo(&hostname,sa,0); > printf(">><<HOST: %s\n",hostname); > > apr_terminate(); > return 0; > } > -------------------------------------------- >
