Serveur C++ avec xinetd Linux
Bonjour � tous,
Je suis un nouveau d�veloppeur en C++ de puis le 20 novembre 2007.
Alors, je doit d�velopper un serveur pour recevoir des requetes SQL que je doit envoyer a la base de donn�es.
Pour cela j'ai utilis� le super truc de linux : xinetd.
Code:
1 2 3 4 5 6 7 8 9
| //utilisation de dup avec xinet.d et etc/services
int res;
maSocket = dup(1);
if(maSocket == -1)
{
mpclLogs->fnWrite(ClassLogs::LOG_ERROR, "Error about the socket with dup");
mpclLogs->fnWrite(Classogs::LOG_ERROR,strerror(errno));
return BAD_DUP;
} |
dup permet de r�cup�rer le handel de la socket car xinetd lance mon serveur que si on se conecte sur un port bien pr�cis.
j'aimerai bien r�cup�rer le descripteur de la socket pour connaitre son adresse IP et autre information avec la fonction :
int getpeername(maSocket, struct sockaddr *name, socklen_t *namelen);
le souci c'est que j'ai pas "struct sockaddr *name" je n'est que "maSocket = dup(1);"
et je me contente simplement de faire des send()/recv().
Si quelqu'un peut me venir en aide, je suis preneur.
Cordialement
et Merci a tous