Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Ouverture et utilisation d'un socket local UNIX (fichier donc)

Envoyé par : oktail

Date : 12/03/2008 10:12

Bonjour,

Dans le cadre du devellopement d'une extention servant de client IM propre au reseau sur le quel je travaille, deux cas se présentent a moi : Connexion externe au reseau, passage par un serveur. Connexion interne au reseau, utilisation d'un fichier socket unix crée lors de l'ouverture de la session UNIX.

L'utilisation de socket reseau classique fonctionne bien, mais l'ouverture du fichier socket me pose des soucis

Sur cette page je peux voir qu'il existe plusieurs types de sockets, si je ne me trompe celle que je dois utiliser dans ce cas est le type ipc non ?

http://www.xulplanet.com/references/xpcomref/group_Sockets.html

or pas de chance, c'est le seul lien qui me fait un 404 sur cette page :/ => http://www.xulplanet.com/references/xpcomref/comps/c_networksocket1typeipc.html Je n'arrive donc tout betement pas a initialiser le service transport correspondant.

Quelqu'un a t il deja utilisé ce type de socket depuis une extention ?

Merci.

# Re: Ouverture et utilisation d'un socket local UNIX (fichier donc)

Envoyé par : Paul Rouget

Date : 12/03/2008 15:47

http://www.xulplanet.com/tutorials/mozsd(..)

Si tu as des soucis avec XulPlanet, utilise MDC.

# Re: Ouverture et utilisation d'un socket local UNIX (fichier donc)

Envoyé par : oktail

Date : 12/03/2008 16:53

le premier lien je le connais, mais il ne m'indique en rien comment traiter un socket de type fichier comme dans mon cas. Quand au second lien, il y a bien la page http://developer.mozilla.org/en/docs/index.php?title=nsISocketTransportService que j'ai pu trouver grace au champ de recherche, mais le wiki me propose de l'éditer parce qu'elle est toute vide :,-(

Je reitere donc ma question, existe t il au moins une documentation sur ces services pourtant bien existants ?

# Re: Ouverture et utilisation d'un socket local UNIX (fichier donc)

Envoyé par : arno.

Date : 12/03/2008 17:15

ben pour l'interface nsISocketTransportService, il y a marqué qu'en premier argument, on lui passe un tableau avec le type de socket. http://www.xulplanet.com/references/xpcomref/comps/c_networksockettransportservice1.html

Tu as essayé de lui passer ["ipc"\] ?

# Re: Ouverture et utilisation d'un socket local UNIX (fichier donc)

Envoyé par : oktail

Date : 12/03/2008 17:44

oui j'ai essayé. J'ai aussi essayé des choses du genre

var tab = new Array("ipc") sans success, un try/catch me ressort une erreur que je comprends mal (je ne suis pas au bon endroit pour la reproduire maintenant, en gros il ne peut pas initialiser le service)

C'est pour ca que je demandais si quelqu'un avait deja fait ca. D'autant que ipc, ca ne m'indique pas la suite, ou est ce que j'indique le nom du fichier socket ? la place du champ host ?

# Re: Ouverture et utilisation d'un socket local UNIX (fichier donc)

Envoyé par : oktail

Date : 14/03/2008 09:42

Le code :

function getTransport(host, port)
{
    try {
        var trasnport;
        var transportService =
            Components.classes["@mozilla.org/network/socket-transport-service;1"]
             .getService(Components.interfaces.nsISocketTransportService);
        if (env.exists("NS_USER_LINK"))
            {
                netxul_debug("connexion locale !");
=====> ici :    transport = transportService.createTransport(["ipc"], 1, "/tmp/." + netsoul_username + ".ns/" + ns_user_link, port\
, null);
            }
        else
            {
                transport = transportService.createTransport(null,0,host,port,null);
            }
    } catch (e) {
       netxul_debug (e);
    }
    return transport;
}

l' erreur :

nsISocketTransportService.createTranspor(..)" nsresult: "0x804b0033 (<unknown>)" location: "JS frame :: chrome://netxul/content/netxul.js :: getTransport :: line 491" data: no]

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.