service_provider.conf contains information about the device type that the service provider supports. This information includes the pathname of the service provider library, the library version and other library characteristics that are required by the system administrative command, datadm(1M). datadm(1M) puts this information in the DAT static register file, dat.conf(4).
The datadm program enumerates each device entry into a list of interface adapters, that is, interfaces to external network that are available to uDAPL consumers. This new list of interface adapters is appended to other service providers' information in the DAT static registry, dat.conf. You can do this is you invoke the datadm program with the –a option and the pathname of the service_provider.conf file.
Each entry in the service_provider.conf is a single line of 7 fields.
The following shows the order of the fields in a service_provider.conf entry:
"driver_name" "API_version" "threadsafe_library | \ nonthreadsafe_library"\ "default_version | nondefault_version" \ "service_provider_library_pathname"\ "service_provider_version" "service_provider_instance_data"\
The fields are defined as follows:
Specifies a driver name in the format of driver_name=value pair, for example, driver_name=hermon.
Specifies the API version of the service provide library: For example, "u"major.minor is u1.2.
Specifies a threadsafe or non-threadsafe library.
Specifies a default or non-default version of library. A service provider can offer several versions of the library. If so, one version is designated as default with the rest as nondefault.
Specifies the pathname of the library image.
Specifies the version of the service provider. By convention, specify the company stock symbol as the service provider, followed by major and minor version numbers, for example, SUNW1.0.
Specifies the service provider instance data.
The following example service_provider.conf entry uses a logical device name:
# # Sample service_provider.conf entry showing an uDAPL 1.2 service # provider, udapl_tavor.so.1 supporting a device with a driver named # hermon driver_name=hermon u1.2 nonthreadsafe default udapl_tavor.so.1 \ SUNW.1.0 ""Example 2 Using a Physical Device Name
The following example service_provider.conf uses a physical device name:
# # Sample service_provider.conf entry showing an uDAPL 1.2 # service provider, udapl_tavor.so.1 supporting a device named # pci15b3,5a44 that can be located under /devices # pci15b3,5a44 u1.2 nonthreadsafe default \ /usr/lib/tavor/udapl_tavor.so.1 SUNWudaplt1.0 ""
See attributes(5) for descriptions of the following attributes: