[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gulliver] Python et la gestion des signaux


From Jean-Philippe Gaulier <jpgaulier at point-libre dot org>
Subject Re: [gulliver] Python et la gestion des signaux
Date Sun, 13 Apr 2008 12:59:45 +0200

Le Sat, 12 Apr 2008 23:39:29 +0200,
plaunay1 <pierre dot launay at ac-rennes dot fr> a écrit :

Allez, je me lance dans la pseudo traduction, Patrick aura l'amabilité de me
reprendre en douceur si je raconte des âneries :))

> > Le premier c'est un débordement de buf si read() lit 255
> > caractères, buf[255] n'a alors pas la place pour buf[res]=0.

> OK, mais tu chipotes

Pas vraiment. Je te montrerai du chipotage (gestion des chaînes avec passage de
big indian à little indian), mais dans ce cas précis, c'est ou ça peut être
très courant qu'une chaîne de caractère dépasse la taille autorisée, il faut
donc se border. C'est le b-a-ba de la programmation compilée (avantage du
semi-compilé ou de l'interprété pour tout ce qui est débordement de tampon).
Donc Pierre, prend les bonnes méthodes dès le départ :p

>> Le second c'est que "by design" ça ne marche pas.

> C'est quoi "by design" "par dessin ???"

Par design signifie que l'architecture est censé le prendre en compte. Tout
comme le design d'une voiture emporte l'airbag, les barres latérales renforcées
et autres nécessités du genre.


> > Le troisième c'est que printf() n'est pas autorisé dans un gestionnaire
> > de signal. La liste des fonctions "saines" est donnée dans man
> > sigaction
> > 
> Pas en français

printf n'étant pas une fonction saine, c'est normal que tu ne la trouves pas
dans le man en question. Plutôt que de le chercher tel un barbare en quête de
nouveaux pâturages à conquérir, prend le temps de bien lire le man dans son
intégralité.


Un très bon bouquin (une bible ?) est "Programmation système en C sous Linux"
de Christophe Blaess, publié chez Eyrolles. Je peux l'amener demain si tu viens
à la séance "secure http/ssh/ftp, ou pas".

librement,
jp

Attachment: signature.asc
Description: PGP signature