/* ---- ---- ---- ---- ---- hexa2char ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- Specifications Externes ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- entree : nombre hexa en texte sur 2 caracteres [00..FF] ---- sortie : caractere ascii correspondant ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- */ char hexa2char(char *s); /* ---- ---- ---- ---- ---- ---- textval ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- Specifications Externes ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- entree : pointeur dans QUERY_STRING sur la valeur d'une variable ---- sortie : nouvelle chaine contenant la valeur decodee cgi avec \0 en fin ---- ---- Specifications Internes ---- ---- ---- ---- ---- ---- ---- ---- ---- - Arret au caratere '\0' (fin de chaine) ou '&' (variable suivante) - Transforme '+' en ' ' et "%xx" en caractere ascii ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- */ char *textval(char *s); /* ---- ---- ---- ---- ---- ---- varsuiv ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- Specifications Externes ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- entrees : char *s , int i - s : pointeur au debut de QUERY_STRING - i : index courant ---- sortie : index du debut du prochain nom de variable, ou -1 ---- ---- Specifications Internes ---- ---- ---- ---- ---- ---- ---- ---- ---- - i parcours s pour trouver '\0' (fin de chaine) ou '&' (variable suivante) ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- */ int varsuiv(char *s, int i); /* ---- ---- ---- ---- ---- ---- idval ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- Specifications Externes ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- entrees : char *s , char *v, int n - s : pointeur au debut de QUERY_STRING - v : nom de la variable - n : occurence de la variable ---- sortie : index du debut de la valeur de la nieme occurence de v, ou -1 ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- */ int idval(char *s , char *v, int n); /* ---- ---- ---- ---- ---- ---- nbocc ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- Specifications Externes ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- entrees : char *s , char *v - s : pointeur au debut de QUERY_STRING - v : nom de la variable ---- sortie : nombre d'occurences de v ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- */ int nbocc(char *s , char *v); /* ---- ---- ---- ---- ---- ---- getval ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- Specifications Externes ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- entrees : char *s , char *v, int n - s : pointeur au debut de QUERY_STRING - v : nom de la variable - n : occurence de la variable ---- sortie : valeur de la nieme occurence de v decodee, ou NULL ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- */ char *getval(char *s , char *v, int n);