Condi:Roadmap
From Freehackers
Contents |
[edit] Short term
[edit] connections
- generer un identifiant aleatoire et le stocker en qsettings
- gerer l'ajout/retrait/modifications de friends (pour l'instant, juste IP/identifiant)
- gerer les connections/handshake/states
[edit] files
- garder en cache (xml ~/.condi/sha1.xml) ceux-ci
- au demarrage : on lit le fichier cache, on retire les fichiers qui n'existent plus
- au demarrage : on lit la liste des fichiers partager, on trouve le sha1
pour chacun (soit grace
[edit] integration
- echanger les listes de fichiers (path/size/sha1) entre friends
- drag&drop d'un fichier sur une friend -> on lui envoie (eventuellement avec confirmation)
[edit] Middle term
- use *notify to detect file changes (new/deleted/changed)
- Try to guess the IP to use in order to display it along with credentials (use a STUN request to find out if we are behind a firewall). This way the user has all the information he needs to provide to peers.
- wizard pour la creation d'un ID et d'une clef ssl (ou autre) lors de la premiere utilisation. Entree dans un menu pour regenerer tout ca.
[edit] long term
- ipv6
- authentication
- encryption
- resume download
- going through firewall (and probably never will)
- compression
[edit] Old stuff
[edit] Milestone 1
- etablissement des connections : merge des membres. But : tout le monde a une liste non redondante des hotes (avec date de 'lastseen'). il suffit de l'ip d'un seul pour faire cette liste.
- etablissement de la liste des fichiers locaux : avec hash.
- echange des listes de fichiers : faible frequence (1/j?). Tout le monde a un cache de la liste des fichiers des autres : permet de chercher offline. prevoir un ttl.
- tant pis pour le cryptage/authentification au debut
- fonction de recherche/affichage
- download queue
- actual download (sans decoupage des gros fichiers)
- pas de client/serveur pour l'instant : tout avec un gui/qt, qu'il nous faudra lancer : DONE
- configuration : rep share, rep d'arrivee, IP(s) de connection aux autres : DONE
[edit] Milestone 2
a voir...
- cryptage
- authentification
- separation client/server
- client texte