Alfred_Sniff dummy mioche

Inscrit le: 28 Nov 2005 Messages: 2
|
Posté le: Lun Nov 28, 2005 11:04 am Sujet du message: Tiemout et connexion |
|
|
Bonjour,
j'ai réalisé une dll possédant des fonctions qui appellent des servlets de mon appli java.
Pour ce faire, je dois lancer une connexion sur le serveur et envoyer mes données à ma servlet. Dans la plupart des cas, ma dll fonctionne. Toutefois, par moment (lorsque le serveur est assez demandé) la connexion ne s'effectue pas et je me demandais si il n'y avait pas de délai de demande de connexion dépassé.
Voici mon code :
Code: |
int connection(char * request_host, int port){
char c;
sprintf(server_name,request_host);
printf("CONF %s %d %s\n",server_name,port,request_host);
wVersionRequested = MAKEWORD( 2, 2 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
printf("erreur WSAStartup : %X\n",WSAGetLastError());
//scanf("%c", &c);
return 0;//exit(0);
}
bzero(&serverSockAddr,sizeof(serverSockAddr));
hostAddr = inet_addr(server_name);
if ( (long)hostAddr != (long)-1)
bcopy(&hostAddr,&serverSockAddr.sin_addr,sizeof(hostAddr));
else
{
serverHostEnt = gethostbyname(server_name);
if (serverHostEnt == NULL)
{
printf("erreur gethost : %X\n",WSAGetLastError());
//scanf("%c", &c);
return 0;//exit(0);
}
bcopy(serverHostEnt->h_addr,
&serverSockAddr.sin_addr,serverHostEnt->h_length);
}
serverSockAddr.sin_port = htons(port);
serverSockAddr.sin_family = AF_INET;
/* creation de la socket */
if ( (to_server_socket = socket(AF_INET,SOCK_STREAM,0)) < 0)
{
printf("erreur creation socket client\n");
//scanf("%c", &c);
return 0;//exit(0);
}
/* requete de connexion */
if(connect(to_server_socket,(struct sockaddr *)&serverSockAddr,
sizeof(serverSockAddr))<0)
{
printf("erreur demande de connexion\n");
//scanf("%c", &c);
return 0;//exit(0);
}
return to_server_socket;
}
|
et un type d'appel à la fonction connection :
Code: |
char * __stdcall DGTest (char * request_host, char * port, char * user, char * password)
{
int to_server_socket=connection(request_host, atoi(port));
char * Reponse=(char *)calloc(10, sizeof(char));
if (to_server_socket!=0){
char * temp=appliUser("/MonAppli/MaServlet", request_host, user, password);
sprintf(Reponse, "%s", temp);
closeconnect(to_server_socket);
}
else
sprintf(Reponse, "%s", "00");
return Reponse;
}
|
Quelequ'un sait il si il y a effectivement ce genre de délais de connexion? Comment les paramétrer?
Merci par avance pour votre aide et vos réponses |
|