Sockets, Threads, Multiclients
Bonjour à tous!
Alors je sais que certains vont me répondre "demande a Google", ou "y a un moteur de recherche sur le forum, utilise le"...
Si je poste, c'est que j'ai déjà cherché... J'ai trouvé un tuto bien sympa sur les sockets mais ca ne correspond pas à ce que je recherche...
Voilà donc exactement ce que je cherche à faire :
Je voudrais avoir un serveur, qui écoute sur un port donné, dans un thread "indépendant" de mon interface graphique. Le but est de pouvoir gérer ce serveur en jouant sur l'état du thread (arret, pause, lancer).
Lorsqu'un client se connecte (enfin... tente de se connecter), je voudrais pouvoir comparer son IP à une blacklist pour l'accepter ou le refuser. Un controle par username/password (effectué par vérification de MD5 générés stockées sur le serveur dans un fichier XML) serait un plus, mais pas dessuite^^ y a plus urgent.
Si le client est accepté, je voudrais que le serveur lance un autre thread, gérant la connexion entre le client et le serveur, sans arrêter l'écoute. Je dois absolument pouvoir identifier ce thread pour logger la connexion, l'arrêter, etc.
Il faut que plusieurs clients puissent se connecter.
Mon but est que le client puisse envoyer des données sur le serveur. Ces données doivent être enregistrées sur le disque dur. Le client doit pouvoir récupérer ces données. Elles doivent aussi etre accessible à d'autres clients.
Ca ressemble légèrement à du P2P en gros...
Vous inquiétez pas je cherche pas à recoder Kazaa ^^
Mon appli est relativement bien structurée pour le moment... Ca fonctionne, sauf que je n'ai aucun support réseau... C'est relativement génant quand on développe une application serveur ^^
Le point qui me pose problème, c'est l'aspect réseau. Je vois pas vraiment comment coder ca... Utiliser un seul port, j'ai lu sur le forum que c'était possible... Mais après avoir passé 18h a fouiller partout sans rien trouver de concret, je me tourne directement vers vous...
Comment faire mes threads et mes sockets? Bref... Comment faire la partie de mon code tournant autour du réseau?
Merci d'avance.