Revision 600

Herşey Novell Desktop Edition kurmamla başladı, açtım baktım ve beğenmedim [ ayrıntıları sonra yazacağım review tadında ]. Dikkatimi sadece masaüstünde duran ‘Yerel Ağ’ isimli ikon çekti, tıkladım ve OpenSLP için KDE’ye KIOSlave yazdıklarını gördüm.

Suse’nin FTP sunucusunda bulunan srpm’leri indirdip, Pardus’taki OpenSLP’yi yamamak için gerekli yamaları çıkardım, SVN deposuna gönderdim ve bu sabah kio_slp isimli uygulamayı da derlenir halde yanıma aldım, işe gittim.

Önce OpenSLP kurdum, sonra kio_slp‘yi kurdum, Novell’den gördüğüm ön tanımlı ayar setini biraz değiştirdim ve içimden ‘Tamam artık, herşey kullanmaya hazır!’ dedim.

İlk denemelerimi kendi makinamda yaptım, baktım hayat güzel gidiyor, Barış’a seslendim, ‘Abi SVN’deki OpenSLP’yi kursana bir’ diye. Kurdu, beraberce ön tanımlı ayar setini onun bilgisayarına da kurduk ve slpd sunucusunu başlattık.

Benim bilgisayarımdan kio_slp ile ağa göz attık ve Barış’ın bilgisayarında SSH servisinin olduğunu gördük,sevindik. Tıkladık ama bir hareket kazanmadık, oysaki kendi bilgisayarımdaki denemelerde ikona tıklayınca kullanıcı adı/parola diyaloğu çıkıyordu karşıma. Bir daha bakınca problemin ne olduğunu görmekte pek zorlanmadır.

Benim makinamın adı xxx.uludag.org.tr iken Barış’ın makinasının adı xxx.metin.org idi. DNS kayıtlarımız olmayınca KDE makinaya nerden gideyim ben kardeşim diyordu. Ön tanımlı ayar dosyalarında servisi veren makina yerine $HOSTNAME yazıyordu, olur ya dedim onları $IP ile değiştirdim. Slpd’yi yeniden başlattım fakat bu sefer slpd’de başlamadı.

Bunun üzerine bu OpenSLP‘de $HOSTNAME dışında tanımlı acaba başka ne sabitler var diye öğrenmek amacıyla OpenSLP‘nin koduna bakmaya başladım ve gene çok geçmeden sadece $HOSTNAME isimli bir sabit olduğunu ve başka bir şey olmadığını farkettim.

Pardus Çalışan CD için her CD’ye ayrı hostname vermek yada rastgele oluşturmak fikri hoşuma gitmedi, sed ile makinanın IP adresini $HOSTNAME ile değiştirmek kirli bir çözüm geldi ve ben en iyisi bu özelliğide katayım dedim [ demez olaydım… ]

Bir süre sonra elimde çalışan bir hali vardı ama Barış’a dener misin dediğimde eth1’den nete çıkan arkadaşımızın :) ay aygıtının IP adresini alamadığımızı farkettim, yamaya dönünce içerde aygıt indeksi olarak 0 unuttuğumu gördüm aman canım bir sigara içeyim değiştiririm dedim. Sonuçta OpenSLP‘nin bind ettiği aygıtın hangi aygıt indeksine denk geldiğini yazmaktan başka bir iş değildi kendileri.

Ofise geri dönünce yarı o iş, yarı başka iş derken akşama bırakmaya karar verdim ve başka işler ile uğraşmaya başladım. Eve geldikten sonra ise OpenSLP mevzuna devam etmek amacı ile saat 21:00 sularında kodu geri açtım. Bu sırada kafamda bir iki soru işareti vardı. Örneğin 3 bacaklı bir makinanın üzerinde OpenSLP çalıştırdığımızda sunucu hangi ağa yayım yapıyordu, hepsine yapıyorsa servisin o ağı dinlediğini nerden biliyordu, birini dinliyorsa hangi ağ aygıtına bind edeceğine nasıl karar veriyordu, bu adamlar niye sadece $HOSTNAME koymuşlardı $IP‘nin nesi vardı bir akıllı ben miydim v.s v.s.

Önce bir saat kadar bu soruların cevabını aradım, bu sorularımın bir kısım cevabını bulduktan sonra kabul edilebilir bir yama olması amacıyla OpenSLP yapısını değiştirmeden olabildiğince kendi veriyapısını kullanarak sorunu çözmek amacı ile dökümanlarına göz attım. Hangi kavramın ne olduğunu anlamak için RFC’lerini hızlıca okur gibi yaptım ve koda daldım. Bir yama hazırladıktan sonra kendi makinamda test ettim sorunsuzdu, Murat’ın yeni bilgisayarında bir kablolu bir de kablosuz ethernet kartı olduğu için onun tepesine çöküp Murat ile birlikte OpenSLP nasıl davranacak iki kart aktifken diye denemeler yaptık. Murat’ın bilgisayarında sorunluydu, yama düzgün çalışmıyordu v.s v.s.

Odama geri döndüm ve televizyona aylak aylak bakmaya başladım, o sırada common isminde ve nedense daha önce görmediğim bir klasör olduğunu içinde de bir seri kod olduğunu şans eseri farkettim, merakla klasöre gidip ismi mevzuya uygun bir dosyayı açtım ve şu ibareyi gördüm;

/* if the hostname has a ‘.’ then it is probably a qualified domain name. If it is not then we better use the IP address /

Aynı anda Jabber’dan Barış’a OpenSLP ile ilgili dert yanmakla meşguldüm, şöyle oldu, şundan böyle oluyor v.s tadında. Bu yazıyı görünce yazışmalar şöyle devam etti;

Ben: ya ben şimdi kodda bişiy gördüm, ağlayacağım ama gerçekten ağlayacağım
Barış: hadi bakalım…
Ben: aaallllllahhhhhhhhhhh belamı vermesin benim
Ben: kod okuyan gözlerime ……..
Barış: oldu mu?

Ben: kafamın içine ……
Barış: hehehe
Ben: commente bak
Barış: hadi gönder de bakalım…
Ben: /
if the hostname has a ‘.’ then it is probably a qualified domain name. If it is not then we better use the IP address
Ben: yamaya gerek yok, hostname’i FQDN olmasın, ip’ye çeviriyormuş zaten.
Barış: hehehehehehehe
Ben: kafayı duvardan duvara koyayım geliyorum ben
Barış: heheheh
Ben: olacak şey diil ya, ya allahım yarabbim
Ben: ben kod mod yazmıyorum
Barış: hehehe, hala gülüyorum olm
Barış: ben TV seyredicem biraz hadi görüşürüz
Ben: bende gidip kendimi vurayım
Barış: sen git OpenSLP‘ye yama yap
Barış: OpenSLP, tişört yapıtırıcam.
Ben: gülüp durma
Barış: :) :) :) :) :) :) :) :)
Barış: abi git samba’ya cifs yaması yap sen.
Barış: hadi görüşürüz yarın .)
Ben: görüşürüz :(

Yamayı sildim, hostname’imi FQDN olmaktan çıkardım. Kendimi çılgınca alkışladım, şimdide uyuyacağım…