On Mon, 04.04.11 16:44, Albert Strasheim (full...@gmail.com) wrote: > > Hello > > On Mon, Apr 4, 2011 at 4:32 PM, Lennart Poettering > <lenn...@poettering.net> wrote: > > On Mon, 04.04.11 07:13, Albert Strasheim (full...@gmail.com) wrote: > >> Hello all > >> I just tried to start a socket unit with ListenStream=0 in the > >> configuration, but this yields the following error: > >> Failed to issue method call: Unit zero.socket failed to load: Invalid > >> argument. See system logs and 'systemctl status' for details. > >> I would expect that it would simply bind to any free port. > >> Bug or feature? > > We validate all input data, and to me it appeared as if port 0 would be > > a not so useful feature. > > But uh, I can be convinced to allow port == 0. Do you have a good > > usecase for this? How do you determine the port number actually used? If > > we allow port 0 we would have to add an interface so that clients can > > query what was actually used, or not? > > Our use-case looks something like this: > > We are running a bunch of services across multiple machines. > > Depending on the number of cores/memory/etc. in a machine, it will be > configured to run a variable number of instances of a particular > service. > > Each instance will announce itself to the rest of the machines using > multicast or some kind of central registry. > > Part of this announcement contains the IP address and port where it > can be contacted, so this port can be dynamically assigned. > > In this kind of scenario it's nice to not have to worry about the > specifics of the ports, or about keeping port ranges for different > services separated. > > I think you can leave the problem of which port was actually assigned > to someone else for now. The service itself can discover its port > number using getsockname.
Very true. This is a good usecase. I added this now to my todo list. Lennart -- Lennart Poettering - Red Hat, Inc. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel