begin process at 2012 05 29 18:53:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Réseau / Internet

 > 

pb socket, avec la command LIST en FTP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb socket, avec la command LIST en FTP

mercredi 17 septembre 2003 à 23:16:52 | pb socket, avec la command LIST en FTP

Pierrot91

Voila j'ai un probleme. Je fais un client FTP.
Il se connect au FTP tout va bien, le probleme est que quand j'envoie la command LIST pour recuperer la liste de fichier present sur le serveur, il m'envoie le message :
-150 Opening ASCII mode data connection fo /bin/ls (x)bytes
puis le message :
-425 Can't build data connection.
le tout quand je suis en mode passif.

Apres on m'a dit qu'il se servait du port decrit lorsqu'on appelle la command PASV, je l'ai utilisé pour cree un nouveau socket qui se connect sur ce port la, et il me dit 226 transfert complete, mais je ne peux rien recuperer.

Enfin j'ai essayer en mode normal en definissant mon port, et en creant un serveur en attente de connection, mais ca me refait la meme chose je ne peux rien recuperer.

Voila help me plz :)
vendredi 19 septembre 2003 à 00:57:23 | Re : pb socket, avec la command LIST en FTP

roswell117

Pour récupérer les données en mode passif, il faut suivre ce schéma :
_ envoi de la commande "PASV" au serveur.
_ le serveur répond en donnant une réponse du style "x,x,x,x,a,b".
_ il faut traduire, les x représentent l'adresse ip, le port est obtenu grâce au calcul a*256 + b.
_ on crée ensuite un socket de type serveur, en écoute, sur le port obtenu.
_ et on finit par envoyer la commande "LIST".

Le ftp comprent deux canaux de communications : un canal de contrôle, pour les commandes sur le port 21 (le + souvent), et un canal de données, pour les transferts sur un port qui change tout le temps.
En mode passif, le client se connecte sur un port défini par le serveur, et en mode normal, mode actif, c le serveur qui se connecte sur un port défini par le client.
Tu as juste inversé le sens des communications.

L'implémentation du mode passif est assez simple à mettre en oeuvre, je l'ai réussie, mais le mode actif est plus compliqué. Je galères toujours sans trop de réussite.
dimanche 28 septembre 2003 à 19:09:48 | Re : pb socket, avec la command LIST en FTP

Pierrot91

Ok j'ai finalement reussi avec le mode passif, je vais tenter le mode actif un peu plus tard je te dirais si ca marche :)
lundi 23 octobre 2006 à 23:41:50 | Re : pb socket, avec la command LIST en FTP

ZedMaTrix

@ roswell117 : Désolé de te contre dire, mais tu as fais une petite faute dans ton explication.
Tu as dis donc d'envoyer la commande PASV, lire l'adresse IP et le port, ca OK.
Parcontre aprés tu dis de créer une socket en écoutant le port trouvé.
Enffet, il faut créer une socket qui va se connecter à l'adresse IP et le port retourné par la command PASV.

Le cas ou il faut écouté le port c'est avec la commande PORT. C'est nous qui invitons le serveur à se connecter sur notre IP, sur le port que l'on indique.

ZedMaTriX


Cette discussion est classée dans : recuperer, ftp, socket, list, command


Répondre à ce message

Sujets en rapport avec ce message

Problème d'envoie par socket [ par CyberP ] J'ai fait un programme qui se connecte à un serveur ftp (le serveur ftp est aussi sur mon ordi). Je me connecte avec la fonction connect() et je recoi [mfc]client ftp [ par farotide ] salutation a tousje suis entrain de faire un client ftp et je voudrais recuperer le dialogue entre le serveur et le client lors de la connection.exist Problème de Socket(recv) [ par YnOThAr ] Voila je suis en train d'essayer de faire un client FTp mais j'ai vraiment du mal...mon preblème c ke j'arrive pas à réceptionner les réponses du serv client ftp soux unix [ par eilyn ] salutvoila je voudrais faire un client ftp sous unixdonc pour créer ma socket j'utilise la méthodeSOCKET s;s = socket (AF_INET,SOCK_STREAM,"protocol") recuperer une page html en c++ [ par langedechu ] je me demandais si on pouvais recupérer un page html a l'aide de des socket ( send + recv ).Si oui comment fait-on et sur quel port on doit configurer conexion a un serveur ftp,afin de recuperer des fichiers [ par casper_2 ] Bonjour,j'aimerais savoir un peu,quelle serait la syntaxe d'un programme qui me permettrait de me recuperer des fichier sur un serveur ftp en C!C'est FTP socket, je ne recois rien de la part du serveur [ par MuPuF ] Bonjour, j'essais de recoder des fonctions de wininet en socket, le probleme c'est que lors de ma connection au serveur ftp, il ne m'envois rien, alor recuperer des fichier d'un serveur ftp [ par cobra176 ] j'ai creer un programme de recherche pour fichier log mais maintenant je dois les récuperer sur un serveur ftp et je n'es jamais vu comment utiliser u Probleme de Socket [ par Basica ] Bonjour, j'ai un petit problème avec winsock que je n'arrive pas à résoudre. Mon but est de récuppérer des pages internet en utilisant winsock en C/C Execution de commandes dans DOS depuis un programme en C [ par jaju39 ] Salut,Je dois créer un pregramme en C. A l'intérieur de mon programme en C je dois excécuter des commandes DOS pour me loger sur un serveur FTP.J'ai e


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales