Bonjour à tous, "David MENTRE" <[EMAIL PROTECTED]> writes:
> Comme je le disais, je peux filer un coup de main sur cette partie. Ou > alors mettre à disposition une interface au format XML RPC (mais ça me > plait beaucoup moins). A creuser en septembre. Bon, en est pas en septembre mais j'ai creusé un peu. :-) En ce qui concerne ONC RPC pour PHP, c'est pas si simple. Il serait relativement facile de faire un « binding » (désolé Fred ;-) entre une version compilée par rpcgen(3) vers le langage C de la description XDR du protocole réseau de demexp (càd la description du format des messages) et PHP. J'ai trouvé des tutoriaux qui décrivent comment démarrer[1]. Le principal inconvénient de cette approche, c'est qu'on perd la généricité de la description XDR du protocole. Si la description XDR change, il faudra changer le binding à la main : c'est nul. Normalement, un compilateur est chargé de faire cette correspondance entre la description XDR d'un côté et les structures de données natives du langage : c'est rpcgen(3) pour le C et ocamlrpcgen pour OCaml. Mais rien de tel n'existe pour PHP et ça me semble compliqué (en tout cas pas trivial) à faire pour PHP (et surtout ça n'intéresse personne, hormis moi :-). Une autre piste serait de tout recoder XDR et RPC en PHP natif, mais je ne sais pas dans quelle mesure PHP est capable de lire et d'écrire directement des octets dans une socket TCP (des idées ???). Reste la piste XML RPC. Le protocole est relativement simple[2] si ce n'est fruste et bien sûr le diable se cache dans les détails mais vu les structures de données utilisées pour demexp, on doit pouvoir exprimer ce que l'on veut. Côté OCaml, il y a une bilbiothèque disponible[3] mais elle a beaucoup de (grosses) dépendences (notamment PXP, qui est utilisé optionnellement en sous-main par CDuce, mais pas dans le version actuelle de CDuce dans la Debian). Sinon, on doit pouvoir faire quelque chose avec CDuce, en rajoutant une bibliothèque pour gérer le protocole HTTP. Ce pose aussi la question d'intégrer l'interface ONC RPC et XML RPC dans le même serveur OCaml (attente sur le réseau, etc.). Pas trivial non plus. Pour l'instant j'en suis là. Si quelqu'un a des lumières, je suis preneur. Amicalement, d. Footnotes: [1] http://www.zend.com/php/internals/ [2] http://www.xmlrpc.com/spec [3] http://raevnos.pennmush.org/code/ocaml-xml-rpc/ -- GPG/PGP key: A3AD7A2A David MENTRE <[EMAIL PROTECTED]> 5996 CC46 4612 9CA4 3562 D7AC 6C67 9E96 A3AD 7A2A -- Liste de discussion demexp-fr. Pour se d�sinscrire, cliquer sur le lien ci-apr�s. mailto:[EMAIL PROTECTED]
