Environment
Novell Open Enterprise Server 2 (OES 2) for x86_64
Situation
Purpose: If an SLP service is registered with the maximum time-to-live (65535 seconds), the SLP Service Agent is responsible for refreshing the registration before the time-to-live expires.
Because of a bug, on the 64bit version of OES2 server the SLP SA don`t do this registration refresh for services with the maximum time-to-live value, when the time-to-live value expired. This means that every SLP service that is registered with this value are never re-registered.
Symptoms: One of the services that is using this time-to-live value is the novell-smdr daemon. The problem that can be seen regarding this bug is that a backup software is not able to find a particular volume, as it is not available anymore through SLP advertisement.
This is a bug in the OpenSLP package, that comes from the SLES10 SP1 installation.
Packages that are involved:
openslp-1.2.0-22.14.x86_64.rpm
openslp-32bit-1.2.0-22.14.x86_64.rpm
openslp-server-1.2.0-22.14.x86_64.rpm
Because of a bug, on the 64bit version of OES2 server the SLP SA don`t do this registration refresh for services with the maximum time-to-live value, when the time-to-live value expired. This means that every SLP service that is registered with this value are never re-registered.
Symptoms: One of the services that is using this time-to-live value is the novell-smdr daemon. The problem that can be seen regarding this bug is that a backup software is not able to find a particular volume, as it is not available anymore through SLP advertisement.
This is a bug in the OpenSLP package, that comes from the SLES10 SP1 installation.
Packages that are involved:
openslp-1.2.0-22.14.x86_64.rpm
openslp-32bit-1.2.0-22.14.x86_64.rpm
openslp-server-1.2.0-22.14.x86_64.rpm
Resolution
Corrective Steps: Upgrade the OpenSLP packages from the SLES10 SP2
branch. There is no dependencies on these packages, so we can install them without any problem.
The packages to be installed:
openslp-1.2.0-22.21.x86_64.rpm
openslp-32bit-1.2.0-22.21.x86_64.rpm
openslp-server-1.2.0-22.21.x86_64.rpm
Command to use:
rpm - Uvh openslp-1.2.0-22.21.x86_64.rpm
rpm - Uvh openslp-32bit-1.2.0-22.21.x86_64.rpm
rpm - Uvh openslp-server-1.2.0-22.21.x86_64.rpm
The packages to be installed:
openslp-1.2.0-22.21.x86_64.rpm
openslp-32bit-1.2.0-22.21.x86_64.rpm
openslp-server-1.2.0-22.21.x86_64.rpm
Command to use:
rpm - Uvh openslp-1.2.0-22.21.x86_64.rpm
rpm - Uvh openslp-32bit-1.2.0-22.21.x86_64.rpm
rpm - Uvh openslp-server-1.2.0-22.21.x86_64.rpm
Status
Reported to EngineeringAdditional Information
A good tool to test an SLP service existence is called `slptool`.
An example of the usage:
slptool findsrvs service:smdr.novell
This will give back a list from the SLP DA about the available smdr.novell services, something like:
service:smdr.novell://172.16.24.128:413/OES2,65535
where:
- 172.16.24.128 is the IP address of the server
- 413 is the port that is advertised for smdr. Actualy this isn`t used; the real port is 40193
- OES2 is the hostname of the server
- 65535 is the time to live value for this SLP service
slptool findsrvs service:smdr.novell
This will give back a list from the SLP DA about the available smdr.novell services, something like:
service:smdr.novell://172.16.24.128:413/OES2,65535
where:
- 172.16.24.128 is the IP address of the server
- 413 is the port that is advertised for smdr. Actualy this isn`t used; the real port is 40193
- OES2 is the hostname of the server
- 65535 is the time to live value for this SLP service