Socket vers un routeur cisco [C] - C - Programmation
Marsh Posté le 19-05-2007 à 19:48:53
il n'y a ptêt que un "\n" sur les routeurs cisco pour indiquer la fin d'une ligne (c'est d'ailleurs le cas sur tous les systèmes unix et je soupçonne IOS d'être un système basé sur unix)
Marsh Posté le 21-05-2007 à 14:04:38
quel rapport avec l'IOS ? je cherche à me connecter là...
sinon une library telnet en C ça existe ? je trouve rien -_-
Marsh Posté le 21-05-2007 à 14:28:07
erf...
je cherche une librairie telnet... ça n'existe pas, o ndoit se tapper des sockets ?
Marsh Posté le 21-05-2007 à 14:35:42
readline peut lire sur un 'file descriptor', que ca soit une socket, l'entrée standard, un fichier...
Ca veut rien dire 'une librairie telnet', enfin, moi, je comprends pas ce que tu veux faire.
Pour envoyé une commande, y'a pas plus simple qu'un send. Tu veux quoi de plus ?
Et pour lire, c'est assez facile avec recv avec une petite boucle.
Marsh Posté le 22-05-2007 à 21:32:40
merci de vos réponses
alors Dumbledore: non il n'y as pas forcement de \n quand onse conencte au routeur, par exemple pour password:
j'ai réussis en faisant un strstr pour voir si j'ai un password, un hostname>, hostname#, etc...
Marsh Posté le 22-05-2007 à 21:44:37
CRLF, pas RCLF
j'ai mis un moment à comprendre
Marsh Posté le 22-05-2007 à 22:02:46
erf, oui... c'est anglais
Marsh Posté le 19-05-2007 à 15:42:05
hey all
j'ai déja tatté un peu de socket sur les protocoles SMTP et POP3 et comme c'est du RCLF, c'était tout con à utiliser...
maintenant je doit me conencter a un routeur cisco sur port 23 (telnet), et là ça se gatte:
y a plus de RCLF pour différencier les lignes... du moins lorsqu'on se connecte, ça demande un password: et sans retour à la ligne...
avant je fait une boucle recv() tant que les deux derneirs characteres ne sont pas \r et \n... maintenant je voit pas comment faire
j'essai de lire une taille arbitraire, de 255 caractere par exemple, mais ça n'as pas l'air de marcher lorsqu'ensuite j'envoit le mot de passe...
la seule façon qui as réussis est du gros bricolage:
recv() jusqu'a un ":" pour le password, puis recv() jusqu'à un ">" pour le mode user, etc...
comment puis je faire, svp ?
merci d'avance
---------------
Blog photo/récits activités en montagne http://planetcaravan.net