[Gelistirici] [paketler-commits] r20418 - in devel/applications/network/wpa_supplicant: . files

S.Çağlar Onur caglar at pardus.org.tr
2 Mar 2007 Cum 15:22:05 EET


02 Mar 2007 Cum tarihinde, Gürer Özen şunları yazmıştı: 
> Yok develdeki farma girmemiş zaten. Sorun wpa_supplicant ile ilgili. Çağlar
> düzeltiyor şimdi.

Burdaki sorunu istediğim haliyle çözemeceğiz ne yazık ki. Bilgi olsun diye 
sorun ve aklımızdaki çözüm şöyleydi;

WPA olmayan bir ağa bağlanmak istiyorum, wpa servisim çalışmıyor ve şu anda 
elimizdeki paketler ile

zangetsu system.d # tail -f /var/log/comar.log
2007-03-02 12:28:01 (Job-18031) Error: Python Exception [dbus.DBusException] 
in (Net.Link.setState,wireless-tools,435): 
org.freedesktop.DBus.Error.ServiceUnknown: The name 
fi.epitest.hostap.WPASupplicant was not provided by any .service files

benzeri bir hata alıyoruz, bu şu demek system veya session bus üzerinde bu 
servisi veren kimse yok.

Bunun üzerine Gürer ile konuşurken wpa'nın servis olmasının da gerekmediğini 
düşündük, dbus session-bus ile başlayıp işi bitince gene dbus tarafından 
kapatılan bir dbus servisi olsa ya ne güzel olur dedim.

[caglar at zangetsu][~]> 
cat /usr/share/dbus-1/services/fi.epitest.hostap.WPASupplicant.service
[D-BUS Service]
Name=fi.epitest.hostap.WPASupplicant
Exec=/usr/sbin/wpa_supplicant -wuB

service dosyasını eklemek, /etc/dbus-1/system.d/wpa_supplicant.conf'da owner'ı 
at_console'a almak 

dbus-send --print-reply --session --type=method_call --dest=org.freedesktop.DBus / 
org.freedesktop.DBus.ReloadConfig

ile session-bus'ı reload etme işlemi sonrası 

[caglar at zangetsu][~/svk/devel/applications/network/wpa_supplicant/files]> svk 
diff wpa_supplicant.py
=== wpa_supplicant.py
==================================================================
--- wpa_supplicant.py   (revision 11011)
+++ wpa_supplicant.py   (local)
@@ -12,7 +12,7 @@
 WPAS_DBUS_NETWORK_INTERFACE = "fi.epitest.hostap.WPASupplicant.Network"
 WPAS_DBUS_BSSID_INTERFACE = "fi.epitest.hostap.WPASupplicant.BSSID"

-bus = dbus.SystemBus()
+bus = dbus.SessionBus()

 class PasswordLengthError(Exception):
     pass


herşeyin yolunda gitmesi gerekirken comar'ın sessionBus'a erişmemesi (aynı 
context içinde değiller) sebebi ile autoActivation dbus ile yattı :), ne olur 
ne olmaz birşey kaçırıyorsam diye bir süre irc muhabbetinden sonra " if you 
need a service to be running, start it" sonucuna vardık :)

Özetle şu anki yapımız ile DBUS ile on-demand servis aktivasyonu bize yalan, 
kodun sadece servis çalışmıyorken patlamamasını sağlamak bu sorunu çözmek 
için yeterli sanırım der gerisini Gürer/Furkan'a bırakırım :)

Saygılar
-- 
S.Çağlar Onur <caglar at pardus.org.tr>
http://cekirdek.pardus.org.tr/~caglar/

Linux is like living in a teepee. No Windows, no Gates and an Apache in house!
-------------- sonraki bölüm --------------
A non-text attachment was scrubbed...
Name: kullanılamıyor
Type: application/pgp-signature
Size: 189 bytes
Desc: kullanılamıyor
URL: <http://liste.pardus.org.tr/gelistirici/attachments/20070302/74bc741e/attachment-0002.pgp>


Gelistirici mesaj listesiyle ilgili daha fazla bilgi