sendsoul :: 1.04

29/04/2009
Programme UNIX pour envoyer des fichiers de VM à VM par NetSoul

Vous allez enfin pouvoir transférer des fichiers directement de VM à VM sans passer par Windows!
De plus, puisque ça passe par le protocole NetSoul, vous pourrez vous envoyer des fichiers depuis n'importe où dans le monde du moment que vous avez internet.




UTILISATION: Votre destinataire lance:
$> sendsoul -r
Vous lancez:
$> sendsoul [login du destinataire] fichier1 ficher2 ...
NOUVEAU:
Envoi a plusieurs destinataires:
$> sendsoul login_a,login_b,login_c fichier1 ficher2 ...

Attention: le taux de transfere est d'environ 5kb/s... INSTALLATION: $> wget "http://perso.epitech.eu/~van-ko_g/sendsoul.sh"
$> chmod 755 sendsoul.sh
$>./sendsoul.sh
$> source ~/.bin/addtopath

Vous pouvez ensuite effacer le fichier sendsoul.sh
$>rm sendsoul.sh

N'oubliez pas de vérifier pour des mises à jour sur ce site. Pour connaître la version de votre sendsoul tapez simplement:
$> sendsoul
Le numero de version est affiché en haut.

Et pour ceux qui veulent les sources:
(ATTENTION CODE EXTREMEMENT CRADE!!! A la base c'était juste un test netsoul, puis c'est devenu un programme entier, resultat: tout dans le main ^^)

Sources


DETAIL DE LA SURCOUCHE DU PROTOCOLE: sendsoul utilise une surcouche du protocole netsoul (specification non-officielle du protocole netsoul: http://www.monkeyz.eu/projects/netsoul_spec.txt) . Si vous souhaitez utiliser le meme protocole en voici les details:

Envoi d'un fichier:
Le programme compresse d'abord le fichier avec: tar -

cjf sendsoul.tar.gz [nom_du_fichier]
Le protocole envoie ensuite:
file:[nom_du_fichier]|[taille_du_fichier_en_octet]
Exemple:
file:main.c|1283
Ensuite il attend un message de confirmation de la part du tiers (sendsoul envoie le message "ok").
Puis il lit 200 octets du fichier et l'encode en hexadecimale. Chaque octet correspond donc à deux caractères compris dans [0-9][a-f]. Il envoie donc 400 octets et attend une comfirmation de réception.
A la fin de l'envoi du fichier il envoie "EOF" (toujours encodé en hexa, ce qui donne "454f46"). Suivi d'une confirmation du tiers.
A ce moment le client décompresse le fichier avec: tar -xf sendsoul.tar.gz
Le client attend pour un nouveau fichier ou le message "EOT" (en hexa: "454f54") qui signifie que tous les fichiers ont été envoyés. Il n'y a pas de confirmation à ce message.

Si vous souhaitez plus d'informations sur le protocole ou si vous avez une suggestion / rapport de bug, envoyez moi un email sur mon adresse epitech.