Résolu / Casse tête en bash...

any1

Membre enregistré
19 Octobre 2008
6
0
Bonsoir à tous, cela fait maintenant deux heures que je tente (en vain) d'adapter ce script bash, à la base écrit pour linux, mais qui ne passe pas sous OSX...

Pour ceux qui se demandent ce que c'est, le script permet de se connecter à un portail captif neuf wifi sans avoir à rentrer son login/pass dans son navigateur web.

Donc si quelqu'un a le courage de regarder quelques minutes, il y a probablement des différences de syntaxe dues aux versions de bash sur mac/linux, mais là je cale !

Merci d'avance !

Edit : Finalement ça ressemblait à un problème du à l'encodage des caractères et des sauts de ligne au moment du passage windows/mac/windows/mac, ça semble marcher maintenant, désolé pour le bruit...

Bloc de code:
#!/bin/bash
url="https://hotspot.neuf.fr/nb4_crypt.php"
okmatch="licitations"
login="user"
password="pass"
con=1;
while [ $con != 0 ]; 
do
    challenge=`curl -s -k -L http://www.google.com | grep name=\"challenge | sed -r 's/.*value=\"([0-9a-z]+)\".*/\1/'`
    if [ -f $challenge ]
    then
        echo "DÈj‡ connectÈ !"
        sleep 10;
    else
        response=`curl -s -k -L -d "username=${login}&password=${password}&cond=on&accessType=neuf&nb4=https://hotspot.neuf.fr/nb4_crypt.php&challenge=${challenge}" ${url} | grep response= | sed -r 's/.*response=([0-9a-z]+).*/\1/'`
        final=`curl -s -k -L "http://192.168.2.1:3990/logon?username=ssowifi.neuf.fr/${login}&response=${response}&uamip=192.168.2.1&userurl=http%3A%2F%2Fwww.fon.com%2Ffr%2Flanding%2Ffoneroneufbox%3Bfon%3B%3B&lang=fr&ARCHI" | grep ${okmatch}`
        if [ ! -z "${final}" ];
        then
            echo "connected"
            date;            
        else
            echo "connection failed"
        fi
    fi
done
 
Je ne vois pas en quoi il ne passe pas ?!

Personnellement, il fonctionne chez moi... enfin le script se lance et m'affiche "Déjà connecté" maintenant est ce qu'il fonctionne si je capte un réseau wifi Neuf je ne sais pas mais je pourrais tester d'ici la semaine prochaine.

Un message d'erreur peut être lors de l'exécution ? As tu bien changé les droits d'exécution ?

Edit : Ouaaa, je suis a l'ouest j'avais pas lu complètement...
 
Edit : Ouaaa, je suis a l'ouest j'avais pas lu complètement...


Pas de problème, ça arrive à tout le monde ^^

Il y avait quand même une erreur, mais corrigée dans ce que j'avais montré, c'était l'option "-r" de sed qui devient "-E" sous osx.

Merci quand même ;)
 
Et tu l'as essayé ca fonctionne ?

Ca peut être utile sur Paris :p

EDIT : oua je suis doublement à l'ouest, j'imagine qu'il fonctionne oui, mais ma pensé initiale était que quiconque lance le script se connectera au net... Alors que je viens de constater qu'il faut quand même des identifiants Neuf, et qu'il s'agit ni plus ni moins que d'un "racourci"... Et je voyais ce script plutôt comme un "crack" totalement illégal, en même qu'est ce que cela ferais sur un tel forum ^^ Il est tan que je me couche je crois !
 
Oui en effet c'est aucunement un crack, c'est un gain de temps considérable !

Pour la petite histoire le script n'a pas l'air de fonctionner encore bien, je vais y travailler demain, et si ça intéresse des gens, je posterais le tout, avec les crontab qui vont bien pour avoir une connexion (théoriquement) permanente aux hotspots neuf wifi...