Davide For informations about getnameinfo on windows older than XP you can check this :
http://msdn.microsoft.com/en-us/library/ms738532(VS.85).aspx And end of article you will find "Support for getnameinfo on older versions of Windows" Seems you need to include Ws2tcpip.h file (done) AND also include the Wspiapi.h file :) (not tested I have no compiler here :( ) Francis >-----Message d'origine----- >De : [email protected] >[mailto:[email protected]]de la part de CLEMENT Francis >Envoyé : lundi 7 septembre 2009 09:52 >À : 'XMail Users Mailing List' >Objet : Re: [xmail] ERDNS weirdness > > > >Hi Davide > >Tool tested on w2000 sp4 returns this error : > >(manually translated from French to English so not exact english error) > >"getnameinfo entry point no found in dinamic link library WS2_32.dll" > >Works fine on w2003R2 SP2 >(not tested on w2003 no sp nor 2008/2008r2) > > >Francis > > > >>-----Message d'origine----- >>De : [email protected] >>[mailto:[email protected]]de la part de Davide Libenzi >>Envoyé : samedi 5 septembre 2009 20:04 >>À : XMail Users Mailing List >>Objet : Re: [xmail] ERDNS weirdness >> >> >>On Fri, 4 Sep 2009, Bill Healy wrote: >> >>> HI Davide, >>> >>> So am I correct that all the RDNS check does is look for a >>hostname and >>> that's all? Or does it compare it to something once it gets it? >>> >>> Davide can you, or anyone else on this list e-mail an exe >of the test >>> program so I can see if it works on the Windows 2000 server >>that xmail >>> is on? >> >>Attached (source below). >> >> >> >>- Davide >> >> >>#define _WIN32_WINNT 0x0501 >> >>#include <winsock2.h> >>#include <ws2tcpip.h> >>#include <mswsock.h> >>#include <windows.h> >>#include <windowsx.h> >>#include <stdio.h> >>#include <stdlib.h> >>#include <string.h> >> >> >>int main(int ac, char **av) >>{ >> int error; >> WSADATA wsd; >> struct sockaddr_in addr; >> char name[256]; >> >> if (WSAStartup(MAKEWORD(2, 0), &wsd)) { >> fprintf(stderr, "WSAStartup failed!\n"); >> return 1; >> } >> >> memset(&addr, 0, sizeof(addr)); >> addr.sin_family = AF_INET; >> addr.sin_addr.S_un.S_addr = inet_addr(av[1]); >> if ((error = getnameinfo((struct sockaddr *) &addr, >>sizeof(addr), >> name, sizeof(name), NULL, 0, >>NI_NAMEREQD)) != 0) { >> fprintf(stderr, "%s: %s\n", av[1], >>gai_strerror(error)); >> return 1; >> } >> printf("name = '%s'\n", name); >> >> return 0; >>} >> >_______________________________________________ >xmail mailing list >[email protected] >http://xmailserver.org/mailman/listinfo/xmail > _______________________________________________ xmail mailing list [email protected] http://xmailserver.org/mailman/listinfo/xmail
