Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > contrib > by-pkgid > 10b30098cf3ad5da9b56d5eb4c8ec6ae > files > 10

liblcrzo0-static-devel-4.16.0-2mdk.ppc.rpm

         Bibliotheque reseau de Laurent Constantin (lcrzo)
               -----------------------------------

                   ----------------------------
                   |   INTEGRATION DE LCRZO   |
                   ----------------------------

Lcrzo permet de facilement creer des programmes reseau. Pour cela,
elle contient de nombreuses fonctionnalites de haut niveau, qui masquent
certaines actions.
Cependant, lorsque l'on desire integrer lcrzo dans un logiciel complexe :
 - les fonctionnalites masquees peuvent interferer avec celles que
   le developpeur desire mettre en place, ou
 - l'acces a certaines ressources bas niveau peut etre delicat, voire
   impossible.


Voici certains points a prendre en consideration avant d'integrer lcrzo
dans un logiciel de grande envergure :

 - Lcrzo est concu pour les programmes en mode texte (console).
   Lcrzo peut etre utilise en mode graphique, mais les
   fonctions xxx_print, xxx_fprint, xxx_stdin et xxx_passwd ne 
   peuvent alors pas etre employees.
   Sous Windows, les programmes lies a lcrzo.dll doivent etre compiles
   avec le type "Win32 Console Application".

 - Les evenements de type sniff, spoof, etc. sont uniquement accessibles
   avec un lcrzo_wait (on ne peut donc pas se servir des fonctions 
   select (Unix) ou WaitForxxxObjects (Windows)). 
   Les evenements du programme de l'utilisateur doivent alors etre convertis
   en lcrzo_wait. Pour cela, il faut employer lcrzo_wait_init_fd,
   lcrzo_wait_init_handle ou lcrzo_wait_init_function.
   
 - Sous Unix, lorsque l'utilisateur presse Control-C ou kille un
   processus, tous ses fils (crees avec lcrzo_process_init) sont tues
   par lcrzo. Le developpeur doit donc employer fork et gerer lui
   meme ses processus si ce comportement ne correspond pas a ce qui
   est desire.

 - Sous Unix, des handlers de signaux sont positionnes par lcrzo_init
   pour SIGINT et SIGTERM (ils servent a gerer le Control-C ou le kill
   comme indique dans le point precedent). Le developpeur doit employer 
   lcrzo_unix_signalhandler_set pour affecter ses propres handlers
   pour SIGINT et SIGTERM.

 - Sous Unix, les descripteurs de fichiers n'ont pas le flag "close
   on exec". Le developpeur doit donc affecter ce flag sur les 
   descripteurs concernes avant d'appeler un programme externe sensible.


N'hesitez pas a me poser vos questions si vous avez des doutes quant
a une mise en oeuvre particuliere.