Szkript-probléma is meg nem is...
Írnék egy kétkomponensű Tk programot, amelyben a komponensek senddel kommunikálnának.
Kiderült, hogy ez nem ilyen egyszerű, mert az eredmény
X server insecure (must use xauth-style authorization); command ignored
A net aszondja, hogy a titok nyitja, hogy nem szabad xhost, csak xauth alapon autentikálni.
OK, legyártottam az .Xauthority fájlt, és ellenőriztem, hogy a startx a megfelelő paraméterrel (-auth ~/.Xauthority) indítja-e a xinitet a végén (igen), de a hiba ugyanaz.
További sugallat: az xhost kimenetének üresnek kell lennie, különben az xauth nem lép üzembe.
És ez a probléma: minden xhost sort kivettem a szkriptjeimből, és a végén már wrapperbe fogtam az xhostot, kiloggolva, ha valami hívja (már semmi), de mégis, következetesen kiadja az xhost, hogy az összes felhúzott INET: címem, és a LOCAL: általa jogosult - az xauth meg nem játszik ezért.
Ezek után a xorgot vádolom (fedora 7), hogy alapból betrükközi a lokális címeket, és magát a LOCAL:-t a xhost listába, csak nem tudom, hogy hogyan, hogy létezik-e ilyen, hogy szabad volna-e csinálnia, és hogyan lehet leszoktatni róla.
Akad bárkinek hasonló tapasztalata, netán megoldása?
- 1258 megtekintés
Hozzászólások
Mi lenne, ha named pipe-n keresztul kommunikalnal?
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Köszi a tippet!
Elhallgattam, hogy nem natúr Tk, hanem a Perl Tk-ja, ahol a MainLoop megkeseríti az életet.
Röviden, hogy mit csinálnék: adott a "szerver", aminek van toplevele, azon text widget - ez mindig létezik.
A kliens csak egy pillanatig létezik: amíg kiolvassa a selection és (ha van) a clipboard tartalmát, és ezt a két dolgot elküldi a szervernek, ahol ezen bemenet feldolgozásának eredményét a text végéhez írja.
(Hosszú volna elmondani, hogy ezt miért végzi külön program.)
Ez natúr Tk-ban pár sor socketekkel - perllel bolondítva ugyanez nekem egy kuszaság volna, és az O'Reilly-féle Mastering Perl/Tk vonatkozó része után pláne... pedig mégis jobb szeretném perlben írni az egészet.
Ezért gondoltam, hogy a sendet használom, amihez nem kellenek külön loopok, és ebben nem partner a xorg/xauth.
Ha nem lesz megoldás, kompromisszumként marad a talpas Tk/socket, csak már dühít, hogy ilyesmibe ragadtam.
- A hozzászóláshoz be kell jelentkezni