envoie d'un fichier avec ftp dans un programme en C

 
Poster un nouveau sujet   Répondre au sujet    iprelax.fr Index du Forum -> C sous UNIX et Windows
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
tecson
dummy mioche
dummy mioche


Inscrit le: 29 Déc 2002
Messages: 2

MessagePosté le: Mer Jan 08, 2003 3:38 pm    Sujet du message: envoie d'un fichier avec ftp dans un programme en C Répondre en citant

Bonjour,
je suis à la recherche d'un exemple de programme pouvant me montrer comment envoyé un fichier sur un server ftp depuis un programme ecrit en C.
merci et a+
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
abraxas
dummy mioche
dummy mioche


Inscrit le: 03 Mai 2003
Messages: 1

MessagePosté le: Sam Mai 03, 2003 10:41 pm    Sujet du message: Répondre en citant

et ben il fo utiliser un premier socket pour se connecter o serveur ftp:
tu fé un premier recv() pour avoir le message d'accueil
tu envois "USER le_username\r\n" et tu fé encore un recv() pour avoir la reponse (tu peux regarder ou non si ce username existe, en fait si le premier caractere est '4' ou '5' ya un probleme, mais si t'es sur du username tas pas besoin de t'occuper de ça)
ensuite on envoie "PASS le_pass\r\n" et pis encore un recv(), qu'on peut traiter ou non, exactement comme celui d'avant
bon avec le protocole ftp on envoie les donnees(fichiers,list) sur un otre port que celui utilisé pour communiquer
donc on se choisit un port, par exemple 4444
il fo decomposer ce nombre en deux otres, en fait (int)4444/256 et 4444%256, apres on envoit la commande "PORT xxx,xxx,xxx,xxx,nombre1,nombre2\r\n" ou les xxx sont les nombres de ton adresse ip
encore un pti recv() pour voir si le serveur est d'accord
on crée un serveur qui ecoute sur le port qu'on a choisi (4444), mais on utilise pas encore accept(), on s'arrete a listen
on envoie on serveur "RETR /le_path/le_fichier.ext\r\n"
un pti recv pour voir s'il est d'accord
et si oui il va se connecter sur le port 4444 chez nous, dc juste apres on fait accept(), et la il nous envoie les donnees contenues dans le fichier, on en fait ce qu'on veut
a la fin, un dernier pti recv() nous informe que le transfert s'est bien passé
on envoie finalement la commande "QUIT\r\n", et on se deconnecte
voila dsl j'avais pas de source alors j'ai improvisé...
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    iprelax.fr Index du Forum -> C sous UNIX et Windows Toutes les heures sont au format CET (Europe)
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum
Affilzen SARL : Mention légale