Details regarding the SLPv5a reference implementation shall be included subsequent to release of the reference implementation. These details will provide a functional overview of the operation of the reference implementation's tools and libraries. Additional insight useful to other SLPv5a implementors shall also be included within this section.
All functions and commands shall be documented in standard formats (man pages, info pages, HTML and/or SGML) and shall be written in English (en_US). Translations of these documents to non-English languages may be pursued at a later date. A copy of the latest version of the SLPv5a specification shall be included within the suite distribution.
GNU gettext shall be used for support of non-English languages in program messages. English shall be the language used for all comments located in the sources for this suite. All variables shall be based on English language words.
Sources shall be made available in .tar.bz2 and .tar.gz formats.
Software version shall be indicated using the standard GNU scheme: major.minor.sub
The reference implementation suite shall be released under a mixed license; the library shall be released under the GNU Library General Public License (v2.1 or above) and the programs shall be released under the GNU General Public License (v2.0 or above).
Both shared and static libraries shall be provided by the reference implementation. Public functions provided by these libraries shall be documented in common documentation formats (man page, info page, HTML, SGML).
A config file, slp.conf, shall be used to define the minimal set of information required for SLP handling: distribution ID, distribution release index, SLP information database format and SLP information database location. The location of this config file is specified at compile-time, though may be overridden through the use of the SLP_CONF_LOCATION variable.
This section of the document is pending merge from internal sources.
This section of the document is pending merge from internal sources.
This section of the document is pending merge from internal sources.
SLPv5a package information shall be stored in a text repository located based on a distribution's governing filesystem standard. Distributions with filesystem standards based on FHS2.1 (File Hierarchy Standard 2.1) shall store package data in /var/state/slp. This repository will consist of two files for each package installed on the system: a file containing SHA1 sums of each file originating from the package and a binary copy of the SLPv5a header from the package.
The SHA1 sums file will be named based on the software name, software version and package revision in the format:
SoftwareName-SoftwareVersion-PackageRevision.sha1
The archived copy of the SLPv5a header shall be named based on the software name, software version and package revision in the format:
SoftwareName-SoftwareVersion-PackageRevision.slph
A config file, slp.conf (typically residing in /etc), shall govern the location and format of the SLP information database. It is the responsibility of those creating alternate SLP database schemes to provide a mechanism for converting data to-and-from this format (as this is the reference implementation).