							-*- outline -*-
Improvements for xinetd autoinstallation - design
Notes from meeting with phadraba on 2003-06-13
mvidner@suse.cz, 2003-06-16


* Key fields

The key fields are service, script, protocol, and server.

This addresses the requirement that the user be able to specify a
service simply. The fields of a service record are divided into
key and non-key ones. The user specifies one or more key fields and
they are used to find matching service(s). To the found services,
non-key fields are applied. If no service matches, it is created. If
more services match, a warning is reported.

Service and protocol are matched literally. Script is the base name of
a file in /etc/xinetd.d, eg. "echo-udp", or the main config file,
"xinetd.conf". For compatibility, server is matched more loosely: Let
user-server and system-server be the server field in the user's
autoinstallation profile and in the default system, respectively. If
system-server is /usr/sbin/tcpd, the real server is considered instead.
The first word (whitespace delimited) of user-server is matched
as a substring of system-server. Thus both "/usr/sbin/swat" and "swat
(samba)" will work.

* Also inetd is package-aware

For xinetd and now also for inetd there is a list of all available
services in the distro. It contains all fields, not just the key ones,
plus the package and script name.

This enables installing missing packages for inetd in normal
mode. Also, only differences against the default configuration need to
be put into the autoinstallation profile in CMS mode.
All fields can be displayed in the UI.

* Agent interface changes

The agent will provide a "script" field as described above. YCP code
will not touch the "iid" field, preserving it when it is present and
not adding it when it is absent. The "changed" and "enabled" fields
are necessary for the agent but they default to true in the
autoinstallation profile.

The matching of services will still be done by YCP code, not by the
agent.

* Compatibility with 8.2

We decided that the new interpretation of the profiles written for 8.2
will give working results. Where the resulting config files differ, it
is a change for the better. Therefore, no special action will be taken
if "iid" is present in the user's profile.

* Compatibility with 8.1/SLES8

TODO.
