FS#24530 - [leafnode] add systemd support files

Attached to Project: Community Packages
Opened by Damjan Georgievski (damjan) - Wednesday, 01 June 2011, 10:56 GMT
Last edited by Sergej Pupykin (sergej) - Thursday, 01 September 2011, 21:38 GMT
Task Type Feature Request
Category Packages
Status Closed
Assigned To Sergej Pupykin (sergej)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Can you please add these 2 attached files to the leafnode package.
They are to support SystemD for all those people that use it.

The 2 files should go to the /lib/systemd/system/ directory
This task depends upon

Closed by  Sergej Pupykin (sergej)
Thursday, 01 September 2011, 21:38 GMT
Reason for closing:  Won't implement
Comment by Dave Reisner (falconindy) - Thursday, 04 August 2011, 14:05 GMT
No. This isn't how Arch works.

1) Send these upstream. If denied...
2) Submit a pull request to me on github [1] for inclusion in the systemd-arch-units package.

I'd suggest fixing your socket first to not hardcode listening on 127.0.0.1 This completely precludes ipv6 support.

[1] https://github.com/falconindy/systemd-arch-units/
Comment by Damjan Georgievski (damjan) - Sunday, 07 August 2011, 17:11 GMT
Thanks Dave,
I'll try to see what upstream has to say about it.

BTW, the most common use case for leafnode is to be used on localhost (it's not a generic internet service) that's why it listens to 127.0.0.1. Do you think of a ipv6-only system would not have this?
Comment by Dave Reisner (falconindy) - Sunday, 07 August 2011, 19:20 GMT
A native ipv6 loopback is ::1, not 127.0.0.1. I guess it's possible that both the ipv4 and ipv6 loopbacks could exist, but I'd rather not exclusively cater to a single protocol.

Unfortunately, after digging into this, it looks like there's no any simple way to do this except with the use of IP_FREEBIND setting on the socket. So, you'll need to do something like:

Listen=127.0.0.1:119
Listen=::1:119
FreeBind=true

Which means that systemd will try to listen on these addresses before they come up (and will happily do so even if they never do come up).
Comment by Damjan Georgievski (damjan) - Tuesday, 09 August 2011, 03:10 GMT
maybe if it's set to Listen=localhost:119 it'll work no matter what localhost resolves to??
Comment by Dave Reisner (falconindy) - Tuesday, 09 August 2011, 03:11 GMT
Does it? I saw no indication that Listen would resolve a name to an IP. You're in a great position to test this...

Loading...