[Ac] upgrade kde zabrało LD_PRELOAD

Jakub Bogusz qboosh w pld-linux.org
Pią, 1 Gru 2006, 18:46:35 CET


On Fri, Dec 01, 2006 at 06:22:19PM +0100, Stefan Szczygielski wrote:
> Więc mam coś takiego w /etc/X11/kdm/Xsession:
> 
> export AUDIOSERVER=$(echo $DISPLAY | cut -f1 -d:):0
> export LD_PRELOAD=/usr/local/lib/libaudiooss.so.1
> 
> Libaudiooss jest to taki wrapperek, który daje dźwięk na terminalu
> programom otwierającym /dev/dsp; puszcza to przez nas. Mam na tym
> dodatkowo uruchomionego artsa i byłem dotychczas szczęśliwy.
> 
> Po ostatnim upgrade niestety straciłem dźwięk. :/ KDE uruchamiając się
> zjada mi zmienną środowiskową LD_PRELOAD. Jak się zrobi LD_PRELOAD_DUPA,
> to już nie zjada, tylko taka mnie z oczywistych przyczyn nie urządza :/
> 
> Przegrepowałem źródła kde i patche PLD, jedyne setenv zjadające
> LD_PRELOAD jest w libkstartperf oraz ksotrace (kmtrace), czyli kdesdk,
> którego wręcz zdaję się nie mieć w systemie (tak zerkając po specach - a
> może jakoś niebezpośrednio mam?).
> 
> Diffowanie poprzednich releasów KDE, na których mi to działało względem
> obecnego też niewiele wniosło.
> 
> Po zalogowaniu się przez kdm zmienna jest w porządku. Co więcej - jak
> się zaloguję na faisafe i uruchomię strace -f -o blabla startkde, to
> zmienna w terminalu otwartym w kde jest (mnóstwo rzeczy się wtedy
> chromoli, ale pewnie strace -f zakłóca dziedziczenie procesów i
> exportów?) i cokolwiek dźwięk działa (arts co chwila zdycha, ale to
> nieistotne).
> 
> Czy ktoś ma jakiś pomysł, jak w to uderzyć? Może ktoś na podobny problem
> natrafił, bo wykorzystywał LD_PRELOAD do czegoś innego? Może gdzieś
> indziej da się je wyeksportować, żeby zostało i dziedziczyło się przez
> wszystkie składniki kde?

Obstawiam, że winny jest suid na start_kdeinit.
Programy z suidem/sgidem usuwają zmienną LD_PRELOAD (bo pozwala wykonać
dowolny kod z uprawnieniami binarki).

> /bin/sh podlinkowałem do /bin/bash, bo /bin/ksh zdaje się nie
> współpracować z LD_PRELOAD. Któryś upgrade też mi to zmienił :/

Huh? Jakaś bzdura.


-- 
Jakub Bogusz    http://qboosh.pl/


Więcej informacji o liście dyskusyjnej pld-devel-pl