Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

About libsystemd.so in SID

Here you can discuss every aspect of Debian. Note: not for support requests!
Message
Author
User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

About libsystemd.so in SID

#1 Post by edbarx »

The list of functions at the end of this post are the exported functions of:

Code: Select all

/lib/x86_64-linux-gnu/libsystemd.so.0
There are 116 exported functions in all (the list is at the end of the post). The library size is:

Code: Select all

-rw-r--r-- 1 root root  141592 Sep 28 19:33 libsystemd.so.0.3.1
Ignoring code required for the importation of functions and linking to other libraries, the average code size per exported function is:
141592/116 = 1220.6 bytes per function

This means, the library itself may not be providing the functions by itself, but only an interface.

This is a partial disassembly of the library for anyone who can understand such code and check whether I am correct or wrong about stating that the library is probably acting as an interface rather than providing the functionality by itself.

My point is, if this library is only an interface without providing any functionality with its own code, it would mean, installing it will not install anything from systemd, but only provide an interface, so that software depending on it can function. However, this impression needs more investigation.

Code: Select all

edbarx@sid-inst:/lib/x86_64-linux-gnu$/lib/x86_64-linux-gnu$ objdump -d libsystemd.so.0.3.1


The disassembly produces a large text file. I am posting only the first part.

Code: Select all

libsystemd.so.0.3.1:     file format elf64-x86-64


Disassembly of section .init:

0000000000003e78 <.init>:
    3e78:	48 83 ec 08          	sub    $0x8,%rsp
    3e7c:	48 8b 05 2d e1 21 00 	mov    0x21e12d(%rip),%rax        # 221fb0 <sd_journal_sendv_with_location+0x2092f0>
    3e83:	48 85 c0             	test   %rax,%rax
    3e86:	74 05                	je     3e8d <LIBSYSTEMD_209+0x3e8d>
    3e88:	e8 b3 04 00 00       	callq  4340 <__gmon_start__@plt>
    3e8d:	48 83 c4 08          	add    $0x8,%rsp
    3e91:	c3                   	retq   

Disassembly of section .plt:

0000000000003ea0 <getenv@plt-0x10>:
    3ea0:	ff 35 ca dc 21 00    	pushq  0x21dcca(%rip)        # 221b70 <sd_journal_sendv_with_location+0x208eb0>
    3ea6:	ff 25 cc dc 21 00    	jmpq   *0x21dccc(%rip)        # 221b78 <sd_journal_sendv_with_location+0x208eb8>
    3eac:	0f 1f 40 00          	nopl   0x0(%rax)

0000000000003eb0 <getenv@plt>:
    3eb0:	ff 25 ca dc 21 00    	jmpq   *0x21dcca(%rip)        # 221b80 <sd_journal_sendv_with_location+0x208ec0>
    3eb6:	68 00 00 00 00       	pushq  $0x0
    3ebb:	e9 e0 ff ff ff       	jmpq   3ea0 <LIBSYSTEMD_209+0x3ea0>

[....]

   14bfa:	e8 c1 da ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   14bff:	90                   	nop
   14c00:	48 8b 54 24 18       	mov    0x18(%rsp),%rdx
   14c05:	48 85 d2             	test   %rdx,%rdx
   14c08:	74 56                	je     14c60 <sd_journal_print+0x7e0>
   14c0a:	4c 89 f1             	mov    %r14,%rcx
   14c0d:	be 03 00 00 00       	mov    $0x3,%esi
   14c12:	48 89 df             	mov    %rbx,%rdi
   14c15:	e8 e6 ae ff ff       	callq  fb00 <sd_journal_get_monotonic_usec+0x420>
   14c1a:	85 c0                	test   %eax,%eax
   14c1c:	0f 88 fe fd ff ff    	js     14a20 <sd_journal_print+0x5a0>
   14c22:	48 8b 3c 24          	mov    (%rsp),%rdi
   14c26:	48 85 ff             	test   %rdi,%rdi
   14c29:	74 08                	je     14c33 <sd_journal_print+0x7b3>
   14c2b:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
   14c30:	48 89 07             	mov    %rax,(%rdi)
   14c33:	48 83 7c 24 70 00    	cmpq   $0x0,0x70(%rsp)
   14c39:	74 75                	je     14cb0 <sd_journal_print+0x830>
   14c3b:	48 8b 44 24 18       	mov    0x18(%rsp),%rax
   14c40:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
   14c45:	48 89 03             	mov    %rax,(%rbx)
   14c48:	48 83 c4 38          	add    $0x38,%rsp
   14c4c:	b8 01 00 00 00       	mov    $0x1,%eax
   14c51:	5b                   	pop    %rbx
   14c52:	5d                   	pop    %rbp
   14c53:	41 5c                	pop    %r12
   14c55:	41 5d                	pop    %r13
   14c57:	41 5e                	pop    %r14
   14c59:	41 5f                	pop    %r15
   14c5b:	c3                   	retq   
   14c5c:	0f 1f 40 00          	nopl   0x0(%rax)
   14c60:	31 c0                	xor    %eax,%eax
   14c62:	e9 b9 fd ff ff       	jmpq   14a20 <sd_journal_print+0x5a0>
   14c67:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
   14c6e:	00 00 
   14c70:	31 c0                	xor    %eax,%eax
   14c72:	4c 39 6c 24 18       	cmp    %r13,0x18(%rsp)
   14c77:	0f 92 c0             	setb   %al
   14c7a:	e9 6f fe ff ff       	jmpq   14aee <sd_journal_print+0x66e>
   14c7f:	90                   	nop
   14c80:	4d 8b 6a 38          	mov    0x38(%r10),%r13
   14c84:	e9 bf fe ff ff       	jmpq   14b48 <sd_journal_print+0x6c8>
   14c89:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
   14c90:	48 8d 0d 0d 74 00 00 	lea    0x740d(%rip),%rcx        # 1c0a4 <sd_journal_sendv_with_location+0x33e4>
   14c97:	48 8d 35 f5 55 00 00 	lea    0x55f5(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   14c9e:	48 8d 3d 6b 73 00 00 	lea    0x736b(%rip),%rdi        # 1c010 <sd_journal_sendv_with_location+0x3350>
   14ca5:	ba 76 02 00 00       	mov    $0x276,%edx
   14caa:	e8 11 da ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   14caf:	90                   	nop
   14cb0:	b8 01 00 00 00       	mov    $0x1,%eax
   14cb5:	e9 66 fd ff ff       	jmpq   14a20 <sd_journal_print+0x5a0>
   14cba:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
   14cc0:	48 85 d2             	test   %rdx,%rdx
   14cc3:	0f 84 c4 fc ff ff    	je     1498d <sd_journal_print+0x50d>
   14cc9:	4c 8d 74 24 28       	lea    0x28(%rsp),%r14
   14cce:	e9 37 ff ff ff       	jmpq   14c0a <sd_journal_print+0x78a>
   14cd3:	48 8d 0d ca 73 00 00 	lea    0x73ca(%rip),%rcx        # 1c0a4 <sd_journal_sendv_with_location+0x33e4>
   14cda:	48 8d 35 b2 55 00 00 	lea    0x55b2(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   14ce1:	48 8d 3d e0 72 00 00 	lea    0x72e0(%rip),%rdi        # 1bfc8 <sd_journal_sendv_with_location+0x3308>
   14ce8:	ba 6c 02 00 00       	mov    $0x26c,%edx
   14ced:	e8 ce d9 ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   14cf2:	66 66 66 66 66 2e 0f 	data16 data16 data16 data16 nopw %cs:0x0(%rax,%rax,1)
   14cf9:	1f 84 00 00 00 00 00 
   14d00:	48 83 ec 08          	sub    $0x8,%rsp
   14d04:	48 85 ff             	test   %rdi,%rdi
   14d07:	74 5f                	je     14d68 <sd_journal_print+0x8e8>
   14d09:	48 85 f6             	test   %rsi,%rsi
   14d0c:	49 89 f2             	mov    %rsi,%r10
   14d0f:	74 7f                	je     14d90 <sd_journal_print+0x910>
   14d11:	48 85 c9             	test   %rcx,%rcx
   14d14:	0f 84 96 00 00 00    	je     14db0 <sd_journal_print+0x930>
   14d1a:	4d 85 c0             	test   %r8,%r8
   14d1d:	0f 84 ad 00 00 00    	je     14dd0 <sd_journal_print+0x950>
   14d23:	48 8b 77 78          	mov    0x78(%rdi),%rsi
   14d27:	4c 8b 19             	mov    (%rcx),%r11
   14d2a:	49 8b 00             	mov    (%r8),%rax
   14d2d:	48 85 f6             	test   %rsi,%rsi
   14d30:	0f 84 ba 00 00 00    	je     14df0 <sd_journal_print+0x970>
   14d36:	4c 8d 48 01          	lea    0x1(%rax),%r9
   14d3a:	48 83 e8 01          	sub    $0x1,%rax
   14d3e:	83 fa 01             	cmp    $0x1,%edx
   14d41:	49 0f 44 c1          	cmove  %r9,%rax
   14d45:	48 83 ec 08          	sub    $0x8,%rsp
   14d49:	49 89 c9             	mov    %rcx,%r9
   14d4c:	41 50                	push   %r8
   14d4e:	48 89 c1             	mov    %rax,%rcx
   14d51:	41 89 d0             	mov    %edx,%r8d
   14d54:	4c 89 d2             	mov    %r10,%rdx
   14d57:	e8 d4 fb ff ff       	callq  14930 <sd_journal_print+0x4b0>
   14d5c:	48 83 c4 18          	add    $0x18,%rsp
   14d60:	c3                   	retq   
   14d61:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
   14d68:	48 8d 0d 71 73 00 00 	lea    0x7371(%rip),%rcx        # 1c0e0 <sd_journal_sendv_with_location+0x3420>
   14d6f:	48 8d 35 1d 55 00 00 	lea    0x551d(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   14d76:	48 8d 3d 32 55 00 00 	lea    0x5532(%rip),%rdi        # 1a2af <sd_journal_sendv_with_location+0x15ef>
   14d7d:	ba 1d 03 00 00       	mov    $0x31d,%edx
   14d82:	e8 39 d9 ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   14d87:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
   14d8e:	00 00 
   14d90:	48 8d 0d 49 73 00 00 	lea    0x7349(%rip),%rcx        # 1c0e0 <sd_journal_sendv_with_location+0x3420>
   14d97:	48 8d 35 f5 54 00 00 	lea    0x54f5(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   14d9e:	48 8d 3d fb 71 00 00 	lea    0x71fb(%rip),%rdi        # 1bfa0 <sd_journal_sendv_with_location+0x32e0>
   14da5:	ba 1e 03 00 00       	mov    $0x31e,%edx
   14daa:	e8 11 d9 ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   14daf:	90                   	nop
   14db0:	48 8d 0d 29 73 00 00 	lea    0x7329(%rip),%rcx        # 1c0e0 <sd_journal_sendv_with_location+0x3420>
   14db7:	48 8d 35 d5 54 00 00 	lea    0x54d5(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   14dbe:	48 8d 3d a4 57 00 00 	lea    0x57a4(%rip),%rdi        # 1a569 <sd_journal_sendv_with_location+0x18a9>
   14dc5:	ba 1f 03 00 00       	mov    $0x31f,%edx
   14dca:	e8 f1 d8 ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   14dcf:	90                   	nop
   14dd0:	48 8d 0d 09 73 00 00 	lea    0x7309(%rip),%rcx        # 1c0e0 <sd_journal_sendv_with_location+0x3420>
   14dd7:	48 8d 35 b5 54 00 00 	lea    0x54b5(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   14dde:	48 8d 3d 4a 68 00 00 	lea    0x684a(%rip),%rdi        # 1b62f <sd_journal_sendv_with_location+0x296f>
   14de5:	ba 20 03 00 00       	mov    $0x320,%edx
   14dea:	e8 d1 d8 ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   14def:	90                   	nop
   14df0:	4d 89 c1             	mov    %r8,%r9
   14df3:	4c 89 de             	mov    %r11,%rsi
   14df6:	49 89 c8             	mov    %rcx,%r8
   14df9:	4c 89 d7             	mov    %r10,%rdi
   14dfc:	89 d1                	mov    %edx,%ecx
   14dfe:	48 83 c4 08          	add    $0x8,%rsp
   14e02:	48 89 c2             	mov    %rax,%rdx
   14e05:	e9 36 f7 ff ff       	jmpq   14540 <sd_journal_print+0xc0>
   14e0a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
   14e10:	55                   	push   %rbp
   14e11:	48 89 e5             	mov    %rsp,%rbp
   14e14:	41 57                	push   %r15
   14e16:	41 56                	push   %r14
   14e18:	41 55                	push   %r13
   14e1a:	41 54                	push   %r12
   14e1c:	53                   	push   %rbx
   14e1d:	48 81 ec 98 00 00 00 	sub    $0x98,%rsp
   14e24:	48 85 ff             	test   %rdi,%rdi
   14e27:	0f 84 23 02 00 00    	je     15050 <sd_journal_print+0xbd0>
   14e2d:	48 85 d2             	test   %rdx,%rdx
   14e30:	49 89 d7             	mov    %rdx,%r15
   14e33:	0f 84 37 02 00 00    	je     15070 <sd_journal_print+0xbf0>
   14e39:	48 85 f6             	test   %rsi,%rsi
   14e3c:	0f 84 4e 02 00 00    	je     15090 <sd_journal_print+0xc10>
   14e42:	48 83 ec 50          	sub    $0x50,%rsp
   14e46:	48 8b 06             	mov    (%rsi),%rax
   14e49:	48 89 ca             	mov    %rcx,%rdx
   14e4c:	4c 8d 64 24 0f       	lea    0xf(%rsp),%r12
   14e51:	48 8d 8d 68 ff ff ff 	lea    -0x98(%rbp),%rcx
   14e58:	48 89 bd 58 ff ff ff 	mov    %rdi,-0xa8(%rbp)
   14e5f:	4c 89 ff             	mov    %r15,%rdi
   14e62:	49 83 e4 f0          	and    $0xfffffffffffffff0,%r12
   14e66:	49 89 04 24          	mov    %rax,(%r12)
   14e6a:	48 8b 46 08          	mov    0x8(%rsi),%rax
   14e6e:	49 89 44 24 08       	mov    %rax,0x8(%r12)
   14e73:	48 8b 46 10          	mov    0x10(%rsi),%rax
   14e77:	49 89 44 24 10       	mov    %rax,0x10(%r12)
   14e7c:	48 8b 46 18          	mov    0x18(%rsi),%rax
   14e80:	49 89 44 24 18       	mov    %rax,0x18(%r12)
   14e85:	48 8b 46 20          	mov    0x20(%rsi),%rax
   14e89:	49 89 44 24 20       	mov    %rax,0x20(%r12)
   14e8e:	48 8b 46 28          	mov    0x28(%rsi),%rax
   14e92:	49 89 44 24 28       	mov    %rax,0x28(%r12)
   14e97:	48 8b 46 30          	mov    0x30(%rsi),%rax
   14e9b:	49 89 44 24 30       	mov    %rax,0x30(%r12)
   14ea0:	48 8b 46 38          	mov    0x38(%rsi),%rax
   14ea4:	be 03 00 00 00       	mov    $0x3,%esi
   14ea9:	49 89 44 24 38       	mov    %rax,0x38(%r12)
   14eae:	e8 4d ac ff ff       	callq  fb00 <sd_journal_get_monotonic_usec+0x420>
   14eb3:	85 c0                	test   %eax,%eax
   14eb5:	4c 8b 85 58 ff ff ff 	mov    -0xa8(%rbp),%r8
   14ebc:	0f 88 6e 01 00 00    	js     15030 <sd_journal_print+0xbb0>
   14ec2:	48 8b 9d 68 ff ff ff 	mov    -0x98(%rbp),%rbx
   14ec9:	4d 8b 6c 24 28       	mov    0x28(%r12),%r13
   14ece:	48 8d b5 70 ff ff ff 	lea    -0x90(%rbp),%rsi
   14ed5:	4d 8b 74 24 30       	mov    0x30(%r12),%r14
   14eda:	48 8d 7d 80          	lea    -0x80(%rbp),%rdi
   14ede:	ba 10 00 00 00       	mov    $0x10,%edx
   14ee3:	4c 89 85 58 ff ff ff 	mov    %r8,-0xa8(%rbp)
   14eea:	f3 0f 6f 43 28       	movdqu 0x28(%rbx),%xmm0
   14eef:	4c 89 6d 80          	mov    %r13,-0x80(%rbp)
   14ef3:	4c 89 75 88          	mov    %r14,-0x78(%rbp)
   14ef7:	0f 29 85 40 ff ff ff 	movaps %xmm0,-0xc0(%rbp)
   14efe:	0f 29 85 70 ff ff ff 	movaps %xmm0,-0x90(%rbp)
   14f05:	e8 46 f3 fe ff       	callq  4250 <memcmp@plt>
   14f0a:	85 c0                	test   %eax,%eax
   14f0c:	4c 8b 85 58 ff ff ff 	mov    -0xa8(%rbp),%r8
   14f13:	75 0f                	jne    14f24 <sd_journal_print+0xaa4>
   14f15:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
   14f19:	49 39 4c 24 20       	cmp    %rcx,0x20(%r12)
   14f1e:	0f 84 ec 00 00 00    	je     15010 <sd_journal_print+0xb90>
   14f24:	49 8b 90 b0 00 00 00 	mov    0xb0(%r8),%rdx
   14f2b:	49 8b 87 b0 00 00 00 	mov    0xb0(%r15),%rax
   14f32:	48 8b 72 48          	mov    0x48(%rdx),%rsi
   14f36:	48 8b 7a 50          	mov    0x50(%rdx),%rdi
   14f3a:	48 8b 50 50          	mov    0x50(%rax),%rdx
   14f3e:	48 8b 40 48          	mov    0x48(%rax),%rax
   14f42:	48 89 75 a0          	mov    %rsi,-0x60(%rbp)
   14f46:	48 89 7d a8          	mov    %rdi,-0x58(%rbp)
   14f4a:	48 8d 75 90          	lea    -0x70(%rbp),%rsi
   14f4e:	48 8d 7d a0          	lea    -0x60(%rbp),%rdi
   14f52:	48 89 55 98          	mov    %rdx,-0x68(%rbp)
   14f56:	ba 10 00 00 00       	mov    $0x10,%edx
   14f5b:	48 89 45 90          	mov    %rax,-0x70(%rbp)
   14f5f:	e8 ec f2 fe ff       	callq  4250 <memcmp@plt>
   14f64:	85 c0                	test   %eax,%eax
   14f66:	74 78                	je     14fe0 <sd_journal_print+0xb60>
   14f68:	66 0f 6f 8d 40 ff ff 	movdqa -0xc0(%rbp),%xmm1
   14f6f:	ff 
   14f70:	48 8d 75 b0          	lea    -0x50(%rbp),%rsi
   14f74:	48 8d 7d c0          	lea    -0x40(%rbp),%rdi
   14f78:	ba 10 00 00 00       	mov    $0x10,%edx
   14f7d:	4c 89 6d c0          	mov    %r13,-0x40(%rbp)
   14f81:	4c 89 75 c8          	mov    %r14,-0x38(%rbp)
   14f85:	0f 29 4d b0          	movaps %xmm1,-0x50(%rbp)
   14f89:	e8 c2 f2 fe ff       	callq  4250 <memcmp@plt>
   14f8e:	85 c0                	test   %eax,%eax
   14f90:	75 11                	jne    14fa3 <sd_journal_print+0xb23>
   14f92:	48 8b 43 20          	mov    0x20(%rbx),%rax
   14f96:	49 39 44 24 20       	cmp    %rax,0x20(%r12)
   14f9b:	0f 82 0f 01 00 00    	jb     150b0 <sd_journal_print+0xc30>
   14fa1:	77 52                	ja     14ff5 <sd_journal_print+0xb75>
   14fa3:	48 8b 43 18          	mov    0x18(%rbx),%rax
   14fa7:	49 39 44 24 18       	cmp    %rax,0x18(%r12)
   14fac:	0f 82 fe 00 00 00    	jb     150b0 <sd_journal_print+0xc30>
   14fb2:	77 41                	ja     14ff5 <sd_journal_print+0xb75>
   14fb4:	48 8b 43 38          	mov    0x38(%rbx),%rax
   14fb8:	49 39 44 24 38       	cmp    %rax,0x38(%r12)
   14fbd:	0f 82 ed 00 00 00    	jb     150b0 <sd_journal_print+0xc30>
   14fc3:	0f 97 c0             	seta   %al
   14fc6:	0f b6 c0             	movzbl %al,%eax
   14fc9:	48 8d 65 d8          	lea    -0x28(%rbp),%rsp
   14fcd:	5b                   	pop    %rbx
   14fce:	41 5c                	pop    %r12
   14fd0:	41 5d                	pop    %r13
   14fd2:	41 5e                	pop    %r14
   14fd4:	41 5f                	pop    %r15
   14fd6:	5d                   	pop    %rbp
   14fd7:	c3                   	retq   
   14fd8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
   14fdf:	00 
   14fe0:	48 8b 43 10          	mov    0x10(%rbx),%rax
   14fe4:	49 39 44 24 10       	cmp    %rax,0x10(%r12)
   14fe9:	0f 82 c1 00 00 00    	jb     150b0 <sd_journal_print+0xc30>
   14fef:	0f 86 73 ff ff ff    	jbe    14f68 <sd_journal_print+0xae8>
   14ff5:	48 8d 65 d8          	lea    -0x28(%rbp),%rsp
   14ff9:	b8 01 00 00 00       	mov    $0x1,%eax
   14ffe:	5b                   	pop    %rbx
   14fff:	41 5c                	pop    %r12
   15001:	41 5d                	pop    %r13
   15003:	41 5e                	pop    %r14
   15005:	41 5f                	pop    %r15
   15007:	5d                   	pop    %rbp
   15008:	c3                   	retq   
   15009:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
   15010:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
   15014:	49 39 4c 24 18       	cmp    %rcx,0x18(%r12)
   15019:	0f 85 05 ff ff ff    	jne    14f24 <sd_journal_print+0xaa4>
   1501f:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
   15023:	49 39 4c 24 38       	cmp    %rcx,0x38(%r12)
   15028:	0f 85 f6 fe ff ff    	jne    14f24 <sd_journal_print+0xaa4>
   1502e:	eb 99                	jmp    14fc9 <sd_journal_print+0xb49>
   15030:	49 8b 77 18          	mov    0x18(%r15),%rsi
   15034:	49 8b 78 18          	mov    0x18(%r8),%rdi
   15038:	e8 a3 f2 fe ff       	callq  42e0 <strcmp@plt>
   1503d:	48 8d 65 d8          	lea    -0x28(%rbp),%rsp
   15041:	5b                   	pop    %rbx
   15042:	41 5c                	pop    %r12
   15044:	41 5d                	pop    %r13
   15046:	41 5e                	pop    %r14
   15048:	41 5f                	pop    %r15
   1504a:	5d                   	pop    %rbp
   1504b:	c3                   	retq   
   1504c:	0f 1f 40 00          	nopl   0x0(%rax)
   15050:	48 8d 0d 39 70 00 00 	lea    0x7039(%rip),%rcx        # 1c090 <sd_journal_sendv_with_location+0x33d0>
   15057:	48 8d 35 35 52 00 00 	lea    0x5235(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   1505e:	48 8d 3d 3a 6f 00 00 	lea    0x6f3a(%rip),%rdi        # 1bf9f <sd_journal_sendv_with_location+0x32df>
   15065:	ba a7 01 00 00       	mov    $0x1a7,%edx
   1506a:	e8 51 d6 ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   1506f:	90                   	nop
   15070:	48 8d 0d 19 70 00 00 	lea    0x7019(%rip),%rcx        # 1c090 <sd_journal_sendv_with_location+0x33d0>
   15077:	48 8d 35 15 52 00 00 	lea    0x5215(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   1507e:	48 8d 3d 1d 6f 00 00 	lea    0x6f1d(%rip),%rdi        # 1bfa2 <sd_journal_sendv_with_location+0x32e2>
   15085:	ba a8 01 00 00       	mov    $0x1a8,%edx
   1508a:	e8 31 d6 ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   1508f:	90                   	nop
   15090:	48 8d 0d f9 6f 00 00 	lea    0x6ff9(%rip),%rcx        # 1c090 <sd_journal_sendv_with_location+0x33d0>
   15097:	48 8d 35 f5 51 00 00 	lea    0x51f5(%rip),%rsi        # 1a293 <sd_journal_sendv_with_location+0x15d3>
   1509e:	48 8d 3d 00 6f 00 00 	lea    0x6f00(%rip),%rdi        # 1bfa5 <sd_journal_sendv_with_location+0x32e5>
   150a5:	ba a9 01 00 00       	mov    $0x1a9,%edx
   150aa:	e8 11 d6 ff ff       	callq  126c0 <sd_id128_to_string+0x430>
   150af:	90                   	nop
   150b0:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
   150b5:	e9 0f ff ff ff       	jmpq   14fc9 <sd_journal_print+0xb49>
   150ba:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

[...]

Code: Select all

edbarx@sid-inst:~$ nm -D /lib/x86_64-linux-gnu/libsystemd.so.0 | grep " T "
0000000000011060 T sd_booted
000000000000a900 T sd_get_machine_names
000000000000aba0 T sd_get_seats
000000000000ab90 T sd_get_sessions
000000000000aa10 T sd_get_uids
0000000000012120 T sd_id128_from_string
0000000000011dc0 T sd_id128_get_boot
0000000000011f90 T sd_id128_get_machine
0000000000011d20 T sd_id128_randomize
0000000000012290 T sd_id128_to_string
0000000000011b20 T sd_is_fifo
0000000000011510 T sd_is_mq
00000000000118a0 T sd_is_socket
0000000000011720 T sd_is_socket_inet
00000000000115a0 T sd_is_socket_unix
00000000000119a0 T sd_is_special
00000000000151c0 T sd_journal_add_conjunction
0000000000015110 T sd_journal_add_disjunction
0000000000009e10 T sd_journal_add_match
000000000000c4b0 T sd_journal_close
000000000000e8b0 T sd_journal_enumerate_data
0000000000007220 T sd_journal_enumerate_unique
00000000000150c0 T sd_journal_flush_matches
0000000000007f20 T sd_journal_get_catalog
0000000000010e90 T sd_journal_get_catalog_for_message_id
0000000000009930 T sd_journal_get_cursor
0000000000008270 T sd_journal_get_cutoff_monotonic_usec
0000000000007c70 T sd_journal_get_cutoff_realtime_usec
000000000000eb10 T sd_journal_get_data
0000000000010d40 T sd_journal_get_data_threshold
000000000000e710 T sd_journal_get_events
000000000000e4f0 T sd_journal_get_fd
000000000000f6e0 T sd_journal_get_monotonic_usec
000000000000f0a0 T sd_journal_get_realtime_usec
000000000000e7a0 T sd_journal_get_timeout
0000000000007b10 T sd_journal_get_usage
00000000000097e0 T sd_journal_next
0000000000009910 T sd_journal_next_skip
000000000000cf20 T sd_journal_open
000000000000d010 T sd_journal_open_container
000000000000d370 T sd_journal_open_directory
000000000000c690 T sd_journal_open_files
0000000000018780 T sd_journal_perror
0000000000018270 T sd_journal_perror_with_location
00000000000097f0 T sd_journal_previous
0000000000009920 T sd_journal_previous_skip
0000000000014480 T sd_journal_print
00000000000142a0 T sd_journal_printv
00000000000187a0 T sd_journal_printv_with_location
0000000000018a70 T sd_journal_print_with_location
000000000000f1b0 T sd_journal_process
00000000000079c0 T sd_journal_query_unique
0000000000007180 T sd_journal_reliable_fd
000000000000e8a0 T sd_journal_restart_data
0000000000007200 T sd_journal_restart_unique
00000000000086b0 T sd_journal_seek_cursor
00000000000063f0 T sd_journal_seek_head
0000000000008600 T sd_journal_seek_monotonic_usec
0000000000006470 T sd_journal_seek_realtime_usec
0000000000006370 T sd_journal_seek_tail
0000000000014190 T sd_journal_send
0000000000013610 T sd_journal_sendv
0000000000018cc0 T sd_journal_sendv_with_location
0000000000018af0 T sd_journal_send_with_location
0000000000010e00 T sd_journal_set_data_threshold
0000000000018360 T sd_journal_stream_fd
0000000000008ae0 T sd_journal_test_cursor
000000000000f5a0 T sd_journal_wait
0000000000011c20 T sd_listen_fds
000000000000a420 T sd_login_monitor_flush
000000000000a3a0 T sd_login_monitor_get_events
000000000000a3e0 T sd_login_monitor_get_fd
000000000000a320 T sd_login_monitor_get_timeout
000000000000a4b0 T sd_login_monitor_new
000000000000a460 T sd_login_monitor_unref
000000000000a6a0 T sd_machine_get_class
0000000000011320 T sd_notify
0000000000011420 T sd_notifyf
0000000000005240 T sd_peer_get_machine_name
00000000000053f0 T sd_peer_get_owner_uid
0000000000005480 T sd_peer_get_session
00000000000051b0 T sd_peer_get_slice
0000000000005360 T sd_peer_get_unit
00000000000052d0 T sd_peer_get_user_unit
0000000000005610 T sd_pid_get_machine_name
0000000000005510 T sd_pid_get_owner_uid
0000000000005790 T sd_pid_get_session
0000000000005590 T sd_pid_get_slice
0000000000005710 T sd_pid_get_unit
0000000000005690 T sd_pid_get_user_unit
00000000000110b0 T sd_pid_notify
0000000000011330 T sd_pid_notifyf
000000000000abb0 T sd_seat_can_graphical
000000000000abd0 T sd_seat_can_multi_session
000000000000abc0 T sd_seat_can_tty
0000000000005db0 T sd_seat_get_active
000000000000abe0 T sd_seat_get_sessions
0000000000005fd0 T sd_session_get_class
0000000000005fe0 T sd_session_get_display
0000000000006000 T sd_session_get_remote_host
0000000000005ff0 T sd_session_get_remote_user
0000000000005cd0 T sd_session_get_seat
0000000000005fb0 T sd_session_get_service
0000000000005a40 T sd_session_get_state
0000000000005f30 T sd_session_get_tty
0000000000005fc0 T sd_session_get_type
0000000000005b10 T sd_session_get_uid
0000000000005f40 T sd_session_get_vt
0000000000005920 T sd_session_is_active
00000000000059b0 T sd_session_is_remote
0000000000004f90 T sd_uid_get_display
0000000000004dc0 T sd_uid_get_seats
0000000000004df0 T sd_uid_get_sessions
0000000000005080 T sd_uid_get_state
0000000000004e20 T sd_uid_is_on_seat
0000000000006110 T sd_watchdog_enabled
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

Re: About libsystemd.so in SID

#2 Post by edbarx »

Looking further at the disassembly indicates that the library is providing some functions. However, I stand to be corrected as this is fairly unexplored ground for me.

For instance, the entry point for sd_journal_printv is 00000000000142a0, and here is the disassembled function.

Code: Select all

00000000000142a0 <sd_journal_printv>:
   142a0:	41 55                	push   %r13
   142a2:	41 54                	push   %r12
   142a4:	55                   	push   %rbp
   142a5:	53                   	push   %rbx
   142a6:	48 81 ec 48 08 00 00 	sub    $0x848,%rsp
   142ad:	85 ff                	test   %edi,%edi
   142af:	0f 88 3b 01 00 00    	js     143f0 <sd_journal_printv+0x150>
   142b5:	83 ff 07             	cmp    $0x7,%edi
   142b8:	0f 8f 6a 01 00 00    	jg     14428 <sd_journal_printv+0x188>
   142be:	48 85 f6             	test   %rsi,%rsi
   142c1:	49 89 f4             	mov    %rsi,%r12
   142c4:	0f 84 86 01 00 00    	je     14450 <sd_journal_printv+0x1b0>
   142ca:	48 8d 5c 24 30       	lea    0x30(%rsp),%rbx
   142cf:	4c 8d 05 ee 7a 00 00 	lea    0x7aee(%rip),%r8        # 1bdc4 <sd_journal_sendv_with_location+0x3104>
   142d6:	41 89 f9             	mov    %edi,%r9d
   142d9:	49 89 d5             	mov    %rdx,%r13
   142dc:	b9 0b 00 00 00       	mov    $0xb,%ecx
   142e1:	ba 01 00 00 00       	mov    $0x1,%edx
   142e6:	be 0b 00 00 00       	mov    $0xb,%esi
   142eb:	48 89 e7             	mov    %rsp,%rdi
   142ee:	31 c0                	xor    %eax,%eax
   142f0:	e8 cb fb fe ff       	callq  3ec0 <__snprintf_chk@plt>
   142f5:	48 8d 7b 08          	lea    0x8(%rbx),%rdi
   142f9:	48 b8 4d 45 53 53 41 	movabs $0x3d4547415353454d,%rax
   14300:	47 45 3d 
   14303:	ba 01 00 00 00       	mov    $0x1,%edx
   14308:	4d 89 e9             	mov    %r13,%r9
   1430b:	4d 89 e0             	mov    %r12,%r8
   1430e:	b9 00 08 00 00       	mov    $0x800,%ecx
   14313:	be 00 08 00 00       	mov    $0x800,%esi
   14318:	c6 44 24 0a 00       	movb   $0x0,0xa(%rsp)
   1431d:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
   14322:	48 89 e5             	mov    %rsp,%rbp
   14325:	e8 66 01 ff ff       	callq  4490 <__vsnprintf_chk@plt>
   1432a:	c6 84 24 37 08 00 00 	movb   $0x0,0x837(%rsp)
   14331:	00 
   14332:	48 c7 44 24 18 00 00 	movq   $0x0,0x18(%rsp)
   14339:	00 00 
   1433b:	48 89 da             	mov    %rbx,%rdx
   1433e:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
   14345:	00 00 
   14347:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
   1434e:	00 00 
   14350:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
   14355:	8b 0a                	mov    (%rdx),%ecx
   14357:	48 83 c2 04          	add    $0x4,%rdx
   1435b:	8d 81 ff fe fe fe    	lea    -0x1010101(%rcx),%eax
   14361:	f7 d1                	not    %ecx
   14363:	21 c8                	and    %ecx,%eax
   14365:	25 80 80 80 80       	and    $0x80808080,%eax
   1436a:	74 e9                	je     14355 <sd_journal_printv+0xb5>
   1436c:	89 c1                	mov    %eax,%ecx
   1436e:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
   14373:	c1 e9 10             	shr    $0x10,%ecx
   14376:	a9 80 80 00 00       	test   $0x8080,%eax
   1437b:	0f 44 c1             	cmove  %ecx,%eax
   1437e:	48 8d 4a 02          	lea    0x2(%rdx),%rcx
   14382:	48 0f 44 d1          	cmove  %rcx,%rdx
   14386:	00 c0                	add    %al,%al
   14388:	48 83 da 03          	sbb    $0x3,%rdx
   1438c:	48 29 da             	sub    %rbx,%rdx
   1438f:	48 89 54 24 18       	mov    %rdx,0x18(%rsp)
   14394:	48 89 ea             	mov    %rbp,%rdx
   14397:	8b 0a                	mov    (%rdx),%ecx
   14399:	48 83 c2 04          	add    $0x4,%rdx
   1439d:	8d 81 ff fe fe fe    	lea    -0x1010101(%rcx),%eax
   143a3:	f7 d1                	not    %ecx
   143a5:	21 c8                	and    %ecx,%eax
   143a7:	25 80 80 80 80       	and    $0x80808080,%eax
   143ac:	74 e9                	je     14397 <sd_journal_printv+0xf7>
   143ae:	89 c1                	mov    %eax,%ecx
   143b0:	48 8d 7c 24 10       	lea    0x10(%rsp),%rdi
   143b5:	be 02 00 00 00       	mov    $0x2,%esi
   143ba:	c1 e9 10             	shr    $0x10,%ecx
   143bd:	a9 80 80 00 00       	test   $0x8080,%eax
   143c2:	0f 44 c1             	cmove  %ecx,%eax
   143c5:	48 8d 4a 02          	lea    0x2(%rdx),%rcx
   143c9:	48 0f 44 d1          	cmove  %rcx,%rdx
   143cd:	00 c0                	add    %al,%al
   143cf:	48 83 da 03          	sbb    $0x3,%rdx
   143d3:	48 29 ea             	sub    %rbp,%rdx
   143d6:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
   143db:	e8 90 fe fe ff       	callq  4270 <sd_journal_sendv@plt>
   143e0:	48 81 c4 48 08 00 00 	add    $0x848,%rsp
   143e7:	5b                   	pop    %rbx
   143e8:	5d                   	pop    %rbp
   143e9:	41 5c                	pop    %r12
   143eb:	41 5d                	pop    %r13
   143ed:	c3                   	retq   
   143ee:	66 90                	xchg   %ax,%ax
   143f0:	48 8d 0d f9 7a 00 00 	lea    0x7af9(%rip),%rcx        # 1bef0 <sd_journal_sendv_with_location+0x3230>
   143f7:	48 8d 35 3f 79 00 00 	lea    0x793f(%rip),%rsi        # 1bd3d <sd_journal_sendv_with_location+0x307d>
   143fe:	48 8d 3d 9c 79 00 00 	lea    0x799c(%rip),%rdi        # 1bda1 <sd_journal_sendv_with_location+0x30e1>
   14405:	ba 5e 00 00 00       	mov    $0x5e,%edx
   1440a:	e8 a1 e2 ff ff       	callq  126b0 <sd_id128_to_string+0x420>
   1440f:	48 81 c4 48 08 00 00 	add    $0x848,%rsp
   14416:	b8 ea ff ff ff       	mov    $0xffffffea,%eax
   1441b:	5b                   	pop    %rbx
   1441c:	5d                   	pop    %rbp
   1441d:	41 5c                	pop    %r12
   1441f:	41 5d                	pop    %r13
   14421:	c3                   	retq   
   14422:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
   14428:	48 8d 0d c1 7a 00 00 	lea    0x7ac1(%rip),%rcx        # 1bef0 <sd_journal_sendv_with_location+0x3230>
   1442f:	48 8d 35 07 79 00 00 	lea    0x7907(%rip),%rsi        # 1bd3d <sd_journal_sendv_with_location+0x307d>
   14436:	48 8d 3d 72 79 00 00 	lea    0x7972(%rip),%rdi        # 1bdaf <sd_journal_sendv_with_location+0x30ef>
   1443d:	ba 5f 00 00 00       	mov    $0x5f,%edx
   14442:	e8 69 e2 ff ff       	callq  126b0 <sd_id128_to_string+0x420>
   14447:	b8 ea ff ff ff       	mov    $0xffffffea,%eax
   1444c:	eb 92                	jmp    143e0 <sd_journal_printv+0x140>
   1444e:	66 90                	xchg   %ax,%ax
   14450:	48 8d 0d 99 7a 00 00 	lea    0x7a99(%rip),%rcx        # 1bef0 <sd_journal_sendv_with_location+0x3230>
   14457:	48 8d 35 df 78 00 00 	lea    0x78df(%rip),%rsi        # 1bd3d <sd_journal_sendv_with_location+0x307d>
   1445e:	48 8d 3d 58 79 00 00 	lea    0x7958(%rip),%rdi        # 1bdbd <sd_journal_sendv_with_location+0x30fd>
   14465:	ba 60 00 00 00       	mov    $0x60,%edx
   1446a:	e8 41 e2 ff ff       	callq  126b0 <sd_id128_to_string+0x420>
   1446f:	b8 ea ff ff ff       	mov    $0xffffffea,%eax
   14474:	e9 67 ff ff ff       	jmpq   143e0 <sd_journal_printv+0x140>
   14479:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

reinob
Posts: 1196
Joined: 2014-06-30 11:42
Has thanked: 99 times
Been thanked: 47 times

Re: About libsystemd.so in SID

#3 Post by reinob »

@edbarx,

Hmmm, you DO know that systemd is (regardless of how you may hate it) open source?

Please find here: https://packages.debian.org/sid/libsystemd0 the link to the source code used in Debian. You will see that libsystemd0 combines the functionality of various systemd components. And it's not an interface for anything, but the real thing. Some packages require libsystemd0 but do not need systemd-sysv (i.e. systemd as pid1).

Trying to investigate what libsystemd0 does by dissasembling it is, at the very least, a very awkward thing to do.
(but hey, it's all about choice ain't it? :)

User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

Re: About libsystemd.so in SID

#4 Post by edbarx »

By disassembling the library I found some answers I cannot easily get by looking at the source. The library is only 140000 bytes long implying it must import most of its functionality, hence acting as an interface.

You are still convinced ridicule convinces people, although it is known ridicule is the lowest form of wit. This attitude is one that uses the well known manipulative strategy of 'destabilize and brainwash'. Sorry, but my only reaction for someone who turns to psychological manipulative schemes to convey an argument, is one of pity, yes, I pity you. Your attitude belongs to the time that predates World War II.


The italicised part is a quote from Oscar Wild.
Last edited by edbarx on 2014-11-06 22:27, edited 1 time in total.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

fruitofloom
Posts: 183
Joined: 2014-10-27 21:28

Re: About libsystemd.so in SID

#5 Post by fruitofloom »

reinob wrote:...

Please find here: https://packages.debian.org/sid/libsystemd0 the link to the source code used in Debian.
....

Trying to investigate what libsystemd0 does by dissasembling it is, at the very least, a very awkward thing to do.
Ever heard of "apt-get source" ? Once we are at discussing awkard ways to do things ....

btw:
You will see that libsystemd0 combines the functionality of various systemd components. And it's not an interface for anything, but the real thing.
The maintainer of it doesn't seem to have figured it out yet. apt-cache show libsystemd0:
"Description-en: systemd utility library
The libsystemd0 library provides interfaces to various systemd components.
"
You might wanna write the bugreport. Usually they, debian-policy, are quite touchy when it comes to "descriptions". But now they got you, to get it all sorted.
Give me convenience or give me death.

User avatar
koanhead
Posts: 109
Joined: 2013-06-20 16:54

Re: About libsystemd.so in SID

#6 Post by koanhead »

reinob wrote:@edbarx,

Please find here: https://packages.debian.org/sid/libsystemd0 the link to the source code used in Debian.
@edbarx
The source code is not available at that link. If you want the source use `apt-get source` or approximately here: http://sources.debian.net/src/systemd/2 ... ibsystemd/ though I may not have the version right. If you would use `apt-get source` then the relevant package is either libsystemd-dev or libsystemd0 per `apt-file search libsystemd.so`

@reinob
If you don't like efforts to supplant systemd, or if you don't like edbarx, you don't have to help. If you are trying to help, you needn't be snarky about it. If you're going to be snarky about it, you could at least try to get your information right.

EDIT:

fruitofloom inb4 me ☺

User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

Re: About libsystemd.so in SID

#7 Post by edbarx »

I already have the sources. However, looking at a disassembly when an executable file is reasonably small can give some quick answers.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

mmix
Posts: 205
Joined: 2012-07-14 00:08

Re: About libsystemd.so in SID

#8 Post by mmix »

systemd try to hook essential software like udev, xorg etc.
IMHO, systemd itself "stone-soup", it self means nothing
as you know, i really don't care systemd if it run without udev, xorg etc.

reinob
Posts: 1196
Joined: 2014-06-30 11:42
Has thanked: 99 times
Been thanked: 47 times

Re: About libsystemd.so in SID

#9 Post by reinob »

koanhead wrote: @edbarx
The source code is not available at that link. If you want the source use `apt-get source` or approximately here: http://sources.debian.net/src/systemd/2 ... ibsystemd/ though I may not have the version right. If you would use `apt-get source` then the relevant package is either libsystemd-dev or libsystemd0 per `apt-file search libsystemd.so`
I wrote "Please find here: .... the ***link*** to the source code used in Debian" (emphasis added).

The exact link would be:
http://ftp.de.debian.org/debian/pool/ma ... ian.tar.xz

Doing apt-get source would get him whatever source is available for his distribution, and AFAIK he's not running sid. My link points to the current version in sid. But whatever. You all know better don't you?
@reinob
If you don't like efforts to supplant systemd, or if you don't like edbarx, you don't have to help. If you are trying to help, you needn't be snarky about it. If you're going to be snarky about it, you could at least try to get your information right.
I have nothing against edbarx or anyone here. I don't think I'm being snarky or ridiculing anyone. In any case it is not my intention. I'm only trying to point out that I still have not seen a good argument against systemd's source code quality. Whether systemd is OK or not on a personal level (and I *don't* like systemd) is irrelevant. But none of the supposedly-objective arguments presented here seem to be valid.

And hey, if you want to disassemble an open source library then be my guest (in some cases it may actually be faster to look at disassembled code than to look at the source, but IMHO it's not the best strategy to understand systemd.)

Cheers.

reinob
Posts: 1196
Joined: 2014-06-30 11:42
Has thanked: 99 times
Been thanked: 47 times

Re: About libsystemd.so in SID

#10 Post by reinob »

fruitofloom wrote: The maintainer of it doesn't seem to have figured it out yet. apt-cache show libsystemd0:
"Description-en: systemd utility library
The libsystemd0 library provides interfaces to various systemd components.
"
You might wanna write the bugreport. Usually they, debian-policy, are quite touchy when it comes to "descriptions". But now they got you, to get it all sorted.
libsystemd0, as of version 215 (sid), covers and supercedes all of (at least) { libsystemd-journal0, libsystemd-daemon0, libsystemd-login0, libsystemd-id128-0 }. Those packages are now marked as "deprecated". libsystemd0 is a dependency of a number of packages but does itself not depend on anything (beyond the very basics like libc).

Yes, the maintainer should fix that. Yes, systemd changes so fast nobody can keep up (hey *THAT* is a point against it).

Please don't turn this into an attack on me. I'm not attacking anyone, and I'm not defending any*one*. I'm only trying to defend common sense and logic.

User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

Re: About libsystemd.so in SID

#11 Post by edbarx »

reinob wrote:And hey, if you want to disassemble an open source library then be my guest (in some cases it may actually be faster to look at disassembled code than to look at the source, but IMHO it's not the best strategy to understand systemd.)
I disassembled libsystemd to check whether using libsystemd alone as used with sysvinit in SID is equivalent to running parts of systemd without knowing. You know, there are many users who don't want to run anything from systemd: my effort was to find out whether libsystemd offered anything they didn't want. In case, I found no functions implemented within libsystemd, my conclusion would have been to use it notwithstanding its name indicates it is part of systemd. My efforts are not due to hate, systemd is new-ground for many users, and time will tell whether it will be a secure and stable initialisation system or not. I wish all the best for systemd to result into secure and stable software that in the near future proves a worthy replacement for the current initialisation systems. However, the problems that tormented MS-Windows when MS adopted an integrated system (svchost and similar introductions), are probably going to torment GNU/Linux as this is a complex new addition.

You may choose to dismiss all arguments about systemd, but no one can blame those who use computers to earn a living and have used GNU/Linux almost since its birth. systemd for them is new ground and suspiciously mimics svchost in Windows, which was a tasty attack surface for virus/malware writers. These people cannot be blamed for avoiding to thread on unknown ground, because there is their livelyhood involved.

My efforts are to hopefully, temporarily supplant systemd until it matures into being secure and stable like the current sysvinit or any other mature Linux initialisation system. I wish DDs would be objective towards any feedback they get from the use of systemd, to improve it into the quality that was always associated with a distribution like Debian.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

User avatar
mor
Posts: 970
Joined: 2010-08-28 15:16
Location: mor@debian

Re: About libsystemd.so in SID

#12 Post by mor »

edbarx wrote:You are still convinced ridicule convinces people, although it is known ridicule is the lowest form of wit. This attitude is one that uses the well known manipulative strategy of 'destabilize and brainwash'. Sorry, but my only reaction for someone who turns to psychological manipulative schemes to convey an argument, is one of pity, yes, I pity you. Your attitude belongs to the time that predates World War II.
I hope you can swing that judgmental pendulum on systemd bashers as well.
It is kinda ironic how what reinob is trying to do here and in other threads about systemd, is exactly to fight what you are now accusing him of doing.

And by repeated admission he's not even pro-systemd!

Ed, I love you man, and I totally respect what you've been doing lately with systemd (even if I don't have a clue technically speaking, I can see how much time and effort you're devoting to it), but let me say it, you have a higher than normal tendency to take things personally when they totally aren't (just a recent example with me: you are the only one who felt accused, how could you even think I was talking about you?).

Anyway, the questions reinob raised are pretty simple, yet most, here and elsewhere, are still only arguing crap about systemd (or furthering plain idiotic ad hominem criticism).
I tried a couple of times myself to ask sensible questions like the ones reinob is asking, but the most I got was elusive replies and in the end it seems that most systemd detractors are far more concerned with the cause of just hating systemd, than with what it actually entails to have systemd on a system and more importantly how to be constructive in limiting its potential negative repercussion.

And as a clueless user, I feel torn between a sense of preoccupation about the potential repercussions of a general systemd acceptance, and the very low credibility that the whole anti-systemd crowd has to my eyes, with their childlike approach with name calling and being anti-Poettering on principle and, case in point, very unsatisfying capability to criticize systemd rationally and to suggest constructive, sensible and realistic approaches to the solution of the problem.

One of the main reasons why conspiracy theories are seldom taken seriously is because they are often carried on by unstable individuals, or supported by deranged and lunatics, with an obviously biased and evidently superficial understanding of the matter.

Similarly this systemd controversy is suffering from this very problem, with all the bandwagoner who are trashing systemd because they either idolize someone who is against or hate someone who is pro, who are probably just piling up on the debate, without any knowledge whatsoever of the technical aspects, maybe for reasons such as the fact that their asses are still burning from when Gnome moved to the shell.
Yes Ed, these are the people I meant in the poll thread, not you. ;)

I am certainly guilty of not having done anything to learn about the technical aspects of this very important issue, but those who understand the problem and are aware of something that I am not, are guilty of not doing much to make me think they are not just exaggerating the issue, because if I can't tell a init system from another, I can tell between one who is arguing rationally and one who is not.
If I were a systemd detractor with a fair understanding of the problem, I would take very seriously the issue of making people like the real me not believe that the anti-systemd crowd is largely made of paranoid zealots.
Yet I don't see this from anyone, not even those who I believe have a clue.
This is a call to reason.

I believe this is more or less what reinob is trying to do here and I support him.

Bye

User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

Re: About libsystemd.so in SID

#13 Post by edbarx »

When anyone repeatedly struggles to stay afloat, over-sensitivity can happen: it is human to react that way. Haven't it occurred to you, sometime when you were tired of a situation, and instead of support, you found an attempt at manipulation? Just think about it, eveyone can be in a tough situation, and psychological manipulation exists. In the situation when one is tired, and I am no exception, one can only see psychological manipulation as an attack on one's own psychic independence.

My situation is: I am facing a surgical intervention to remove a possible cancer situated in a critical site, where it can easily spread to other vital organs. Moreover, there are other more private issues affecting my general health.

The struggle to offer my limited ability to help those GNU/Linux users, who are dubious about systemd, and to allow enough time for them to get the necessary feedback to make an objective adoption or rejection of systemd, is giving me some more energy to remain afloat.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

reinob
Posts: 1196
Joined: 2014-06-30 11:42
Has thanked: 99 times
Been thanked: 47 times

Re: About libsystemd.so in SID

#14 Post by reinob »

edbarx wrote:My efforts are to hopefully, temporarily supplant systemd until it matures into being secure and stable like the current sysvinit or any other mature Linux initialisation system. I wish DDs would be objective towards any feedback they get from the use of systemd, to improve it into the quality that was always associated with a distribution like Debian.
Amen to that!

My suggestion would however be to either:
(a) move somewhere else (and come back later when things are OK for you)
(b) stick to debian, see what happens, and try to help/improve things.

I've chosen (b), even though I have no particular attachment to debian.

My NAS runs sid without systemd-sysv (no desktop). I have libsystemd0 because it's a dependency of cups-daemon (the dependency could be easily removed, as it is only there because the provided-initscripts are for systemd, socket activation and all..) and *bsdutils*

The dependency of bsdutils on libsystemd0 is something I cannot understand. bsdutils per se is a completely irrelevant package (wall, logger, script, renice, scriptreplay -- who needs them, and I why do they need systemd?), but *bsdmainutils* depends itself on bsdutils.

Notwithstanding the irony of bsd*-related packages depending on systemd (!), bsdmainutils contains utilities that I consider also irrelevant (cal, col, hexdump, etc. all historic stuff). But man-db happens to depend on bsdmainutils.

So if I were to remove libsystemd0 I would lose bsdmainutils (fine), bsdutils (fine), cups (not OK) and man-db (also not OK).

I would be happy if the debian developers/maintainers would remove this unnecessary dependency, but if they don't then I'll just have to live the libsystemd0.so on my system. You argue that this library is a mere interface to something else. I disagree and argue that it's self-contained (in the sense that it does not depend or link to any other systemd-related stuff).

It's the same as with a number of unrelated packages. Why does mplayer need pulseaudio? because the maintainer has decided it should be like that. I don't see people massively criticizing debian or moving to other distros just because of that (as much as I despise pulseaudio -- see, I also have feelings :)

But going back on topic: you wanted to investigate if libsystemd0 is only an interface or self-contained. My reply is: it's the latter.

reinob
Posts: 1196
Joined: 2014-06-30 11:42
Has thanked: 99 times
Been thanked: 47 times

Re: About libsystemd.so in SID

#15 Post by reinob »

edbarx wrote:When anyone repeatedly struggles to stay afloat, over-sensitivity can happen: it is human to react that way. Haven't it occurred to you, sometime when you were tired of a situation, and instead of support, you found an attempt at manipulation? Just think about it, eveyone can be in a tough situation, and psychological manipulation exists. In the situation when one is tired, and I am no exception, one can only see psychological manipulation as an attack on one's own psychic independence.

My situation is: I am facing a surgical intervention to remove a possible cancer situated in a critical site, where it can easily spread to other vital organs. Moreover, there are other more private issues affecting my general health.

The struggle to offer my limited ability to help those GNU/Linux users, who are dubious about systemd, and to allow enough time for them to get the necessary feedback to make an objective adoption or rejection of systemd, is giving me some more energy to remain afloat.
@edbarx,
Just for the record:
(a) I'm sorry and sincerely hope you'll get over your health issues;
(b) psychological manipulation is not my thing. I hate it. In an almost autistic-way I just cannot lie.
(c) I'm NOT personally offended. Not even by allusions to pre-WWII.
(d) We are all grown-ups (I hope anyway) and hopefully as adults we can discuss a *technical matter* without jumping on each others throats.

@mor,
Thanks for your comments. I started to believe that forums.debian.net is some kind of alternate universe :)

User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

Re: About libsystemd.so in SID

#16 Post by edbarx »

I'm NOT personally offended. Not even by allusions to pre-WWII.
I didn't intend to be offesive, but to point out that society has moved on, from the time ridicule was used as a way of suppressing disagreement/non-conformity. This can easily be recognized by studying how non-conforming/disagreeing individuals were treated during times predating World War II.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

fruitofloom
Posts: 183
Joined: 2014-10-27 21:28

Re: About libsystemd.so in SID

#17 Post by fruitofloom »

@mor:
a) it is to be found all over the internet and
b) i just pointed it out in another thread
but i will do it again:

1) Lack of trust in the developers of systemd, Sievers and Poettering, a known history of bad behaviour (see comment by L. Torvalds)
2) Do one thing, do it well, systemd is way beyond an init system
3) Lack of option to use a different init system, even by switching the distribution
4) Lack of support for other NIX systems (including the Debian port kFreeBSD and, of course, BSD systems).

I got hard times to understand how one can't figure that out.
Now let me know what is beyond reason in those 4 "arguments above.

I for one couldn't care less what init system is used. I barely interact with an init system. I start services and stop them. I let them start during boot or stop them from starting during boot. I don't care (all: runit, openrc, sysvrc and systemd did perfectly the little i am looking for).
As soon i looked slightly more close into systemd, i ran into all of the above.
Give me convenience or give me death.

fruitofloom
Posts: 183
Joined: 2014-10-27 21:28

Re: About libsystemd.so in SID

#18 Post by fruitofloom »

reinob wrote:
Yes, the maintainer should fix that. Yes, systemd changes so fast nobody can keep up (hey *THAT* is a point against it).
Indeed. And even more on a distribution like Debian, which will be frozen for ca 6 months and then be stable for about 2 years. That is: be out of date regarding it's init system in a way not funny anymore.
I for one didn't think of that point (i did hear that systemd is still alpha software, but got no opinion about it. Rather: no clue).

But, like said, i don't care for arguments.
All i ask for is having the option to use a different init system at minimum by using a different GNU/Linux distribution.
Give me convenience or give me death.

User avatar
koanhead
Posts: 109
Joined: 2013-06-20 16:54

Re: About libsystemd.so in SID

#19 Post by koanhead »

reinob wrote:
koanhead wrote: @edbarx
The source code is not available at that link. If you want the source use `apt-get source` or approximately here: http://sources.debian.net/src/systemd/2 ... ibsystemd/ though I may not have the version right. If you would use `apt-get source` then the relevant package is either libsystemd-dev or libsystemd0 per `apt-file search libsystemd.so`
I wrote "Please find here: .... the ***link*** to the source code used in Debian" (emphasis added).
That's my mistake. The link to the source code is right there on the right-hand side of the page in your original link, and I just didn't see it / forgot you could get the source that way. Sorry about that.

reinob
Posts: 1196
Joined: 2014-06-30 11:42
Has thanked: 99 times
Been thanked: 47 times

Re: About libsystemd.so in SID

#20 Post by reinob »

fruitofloom wrote: All i ask for is having the option to use a different init system at minimum by using a different GNU/Linux distribution.
Then we're all on the same boat. I even ask to have that option within debian itself!

But don't worry. Even if the GR fails there will be somebody setting up a repo with packages compiled with "--disable-systemd" (or an option to that effect). Like deb-multimedia kept offering the real ffmpeg. Another example: being able to install the real cdrecord.

It's not the end of the world. But an unfortunate development for debian.
Still, in the end people *might* just end up liking systemd (some version of it anyway).

Post Reply