Skribent: fsmithred Dato: Til: dng Emne: Re: [DNG] with or without libsystemd0
On 07/20/2016 06:44 AM, Jaromil wrote: > On Wed, 20 Jul 2016, fsmithred wrote:
>
>> On 07/19/2016 06:10 PM, Rick Moen wrote:
>>> Saying libsystemd0 'does something' merely because higher-layer GNOME
>>> code probed it for a function and then decided to do or not do something
>>> based on what it found (my high-confidence surmise about your gvfs
>>> anecdote) entails very peculiar construing of the verb 'to do' -- and
>>> I'm pretty sure hardly anyone else uses the verb quite that way.
>>
>>
>> Oh, you must have missed my last report. Surely, you would agree that
>> executing an executable file is doing something.
>
> technically speaking, one doesn't even need to "run an executable" to
> execute code. Either by shared-lib linking or by dynamic loading
> (dlopen), a program linking a library can execute code provided by the
> library in its own stack. Such code will run with the exact same
> access than the calling code (access to file descriptors, processes
> etc.).
>
>>
>> For the past two years, people have been saying that libsystemd0 is just a
>> library, and it does nothing if systemd is not installed or not running.
>> I've been skeptical of such claims, but until yesterday, I wasn't sure.
>> Neither one of those claims is accurate. Among the files that the
>> libsystemd0 package provides, at least two of them are executable files.
>> There may be more that aren't located in /lib/systemd/.
>
> [...]
>
>> To summarize: libsystemd0 runs its program(s) even when systemd is not
>> installed.
>
> This may be incorrect, as I don't see any execve() in libsystemd.
>
> What we can say is that libsystemd0 runs its code, called by other
> programs, even when systemd is not installed.
>
> ciao!
>
> _______________________________________________
Well, I was all set to argue with you, and I checked again. I must admit
that I made a mistake. The executable file I found,
/lib/systemd/systemd-udevd, did not come with the libsystemd0 package. It
was already there.
I apologize for starting a small shitstorm over my mistake.
Yeah, I understand that a library can be called by more than one program,
but how can we know if a library has been called? Keep track of the last
access time on the file? Some other way?
So the original question I had, as to whether libsystemd0 does anything
when systemd is not installed, is still unanswered.