dbus-daemon, how to listen on TCP/IP socket?
This feature is not well documented, so there is the configuration ligne to add in your /etc/dbus-1/system.conf file :
<listen>tcp:host=localhost,port=12434</listen>
This feature is not well documented, so there is the configuration ligne to add in your /etc/dbus-1/system.conf file :
<listen>tcp:host=localhost,port=12434</listen>
![]() |
I’ve setup an software developement platform with Trac for the D-BUS for Mozilla project :
|
![]() |
+ |
![]() |
+ |
![]() |
My proposal for the Google Summer of Code 2006 has been accepted!
Name ---- Christophe 'CSCMEU' Nowicki Email ----- cscm at meuh dot dyndns dot org Project Title ============= Mozilla and D-BUS Integration Synopsis -------- The goal of this project is to allow Mozilla components to communicate through D-BUS ( www.freedesktop.org/wiki/Software/dbus ) in order to allow better integratation in the Linux Desktop. Benefits to the Mozilla Community --------------------------------- Better Integration of the Mozilla Suite Inside the Linux Desktop: - possiblity to send and recive messages through D-BUS from Mozilla components via XPCOM objects. - possiblity to use existants projects like: - Avahi ( avahi.org ) for Zeroconf support, - Beagle ( beaglewiki.org ) the query directly beagle from the Mozilla Search Bar - Other, see list of software supporting D-BUS : www.freedesktop.org/wiki/Software_2fDbusProjects - possiblity to provide Mozilla services via D-BUS. Deliverables ------------ - source code of the XPCOM compents under the MPL license - documentation of the API - sample extension using the XPCOM implementation Project Details --------------- XPCOM Component ~~~~~~~~~~~~~~~ The first step of the project is to allow Mozilla components to make D-BUS call : var DBUS = new Components.Constructor('@mozilla.org/dbus;1', 'nsIDBUS') var dbus = new DBUS() var bus = dbus.SystemBus() var dbus_obj = bus.get_object('org.freedesktop.DBus', '/org/freedesktop/DBus') var dbus_iface = dbus.Interface(dbus_obj, 'org.freedesktop.DBus') dump( dbus_iface.ListNames() ) My API will be inspired by the Python D-BUS API. Javascript Events ~~~~~~~~~~~~~~~~~ The second step would by to integrate D-BUS inside the Java Script event loop. Difficulties ~~~~~~~~~~~~ The technical difficulties of the project are : - the type mapping between the D-BUS API and Mozilla - memory management, in order to avoid memory leaks - manage DBUS communication channels between componants instances. The cons against this project are : - D-BUS is not working (yet) on Microsoft Windows (comming soon) Project Schedule ================ The project is sized for one person and should be finished at the end of Summer Of Code. I estimate the working time like that: - write specifications of the project ( 10 days ) - analyse the mozilla architecture / source code to plugin the feature nicely ( 10 days ) - write the XPCOM components ( 15 days ) - write the documentation ( 5 days ) - write sample application ( 5 days ) - debug and integrate the components in the Mozilla source tree, code review, etc ( 10 days ) Total estimate : 55 days witch is more or less 3 working month. Bio === I'am a French student in computer science from EPITECH ( www.epitech.net ) involved in the free and opensource mouvement: - as an Debian 'Power User' : reporting bug, making packages, writing documentation and helping users on forums - as an Developper of the FANI project ( www.fani-project.org ), it's an multi operating systems network installer writen in XUL and Python. - as an half-time engineer and developper working for Easter-eggs ( www.easter-eggs.com ), an opensource services company involved in free software developpement ( see our projects on labs.libre-entreprise.org ). My curriculum-vitae is available on my blog: www.csquad.org/curriculum-vitae Best Regards,
Le Saint Graal de l’informaticien en déplacement consiste en une solution technique pour configurer automatiquement l’ensemble des interfaces réseaux (Ethernet + Wifi) sous Debian GNU/Linux.
![]() |
Je dispose d’un portable évoluant parmis plusieurs réseaux informatiques :
La configuration réseau de ses environnements est diffèrente ( type de liaison, routeur par défaut, netmask, etc…) et demande la reconfiguration des interfaces à chaque déplacement. Il s’agit d’une tâche pénible et laborieuse, c’est pour cela que je me interessé au problème afin de trouver une solution simple, ne nécessitant aucune intervention de ma part. Celle-ci ne se base pas sur le logiciel NetworkManager, car ce dernier ne permet pas encore de détecter automatiquement sur quel réseau se trouve la machine. |
Ma solution se base sur plusieurs logiciels diffèrents ayant chacun un rôle bien définit :
Mon portable dispose de deux interfaces réseaux :
Il vaut mieux disposer de drivers libres (exit ndiswrapper et co … ;0)
L’installation des pâquets nécessaires est extrêment simple à l’aide de apt-get ou d’aptitude :
#aptitude install wpasupplicant ifplugd guessnet resolvconf
L’ensemble de la configuration réseau se trouve dans deux fichiers :
Il faut tout d’abord configurer wpasupplicant afin que celui-ci soit lancé au démarrage de votre machine, la procédure est diffèrente en fonction de la version de votre distribution :
# /etc/default/wpasupplicant
# WARNING! Make sure you have a configuration file!
ENABLED=1
# Useful flags:
# -DWireless Driver
# -iInterface (required, unless specified in config)
# -cConfiguration file
# -d Debugging (-dd for more)
# -w Wait for interface to come upOPTIONS=”-w -i eth1 -D ipw -c /etc/wpa_supplicant.conf”
Activez le daemon, indiquez le nom de votre interface réseau et le nom du driver (wpa_supplicant -h pour obtenir la liste des drivers disponibles).
Il faut ensuite configurer les spécificités de vos réseaux Wifi à l’aide du fichier /etc/wpa_supplicant/wpa_supplicant.conf en vous basant sur l’exemple fourni par le paquet Debian:
# gunzip -c /usr/share/doc/wpasupplicant/examples/wpa_supplicant.conf.gz > /etc/wpa_supplicant.conf
Une fois la configuration des réseaux Wifi déclarée, il suffit de lancer le programme à partir du script fourni dans /etc/init.d.
Nous allons ensuite passer à la configuration de toutes les interfaces dans le fichier /etc/network/interfaces.
Il faut indiquer à ifplugd de prendre en charge les deux interfaces de la manière suivante :
# ifplugd allow-hotplug eth0 eth1
Puis décrire le mapping des interfaces réseaux avec le script guessnet-ifupdown.
# Interface Mapping mapping eth0 eth1 script guessnet-ifupdown map default: unknown
Ensuite indiquer les spécificités de chaque réseau :
iface home inet static address 192.168.42.42 netmask 255.255.255.0 gateway 192.168.42.254 dns-search csquad.lan dns-nameservers 192.168.42.3 192.168.17 test1 peer address 192.168.42.253 00:12:17:07:C2:C9 iface work inet static address 10.0.0.101 netmask 255.255.255.0 gateway 10.0.0.1 dns-search easter-eggs.fr dns-nameservers 10.0.0.2 10.0.0.20 test1 peer address 10.0.0.1 00:50:22:8b:9c:d2 # DHCP par défaut iface unknown inet dhcp
Les directives intéressantes sont :
Après la configuration, il ne vous reste plus qu’a tester l’ensemble en :
Si tout se passe bien, vos interfaces réseaux seront configurées automatiquement. Dans le cas contraire, vous trouverez de nombreuses informations dans syslog, vous permettant d’identifier le problème.
Powered by WordPress