SLPOpen Subroutine

Purpose

Returns an SLPHandle handle that encapsulates the language locale for SLP requests.

Syntax

SLPError SLPOpen(const char *pcLang, SLPBoolean isAsync, SLPHandle
   *phSLP);

Description

The SLPOpen subroutine returns an SLPHandle handle in the phSLP parameter for the language locale passed in as the pcLang parameter. The client indicates if operations on the handle are to be synchronous or asynchronous through the isAsync parameter. The handle encapsulates the language locale for SLP requests issued through the handle, and any other resources required by the implementation. However, SLP properties are not encapsulated by the handle; they are global. The return value of the function is an SLPError code indicating the status of the operation. Upon failure, the phSLP parameter is NULL.

Implementation Specifics

An SLPHandle can only be used for one SLP API operation at a time. If the original operation was started asynchronously, any attempt to start an additional operation on the handle while the original operation is pending results in the return of an SLP_HANDLE_IN_USE error from the API function. The SLPClose() API function terminates any outstanding calls on the handle. If an implementation is unable to support an asynchronous (resp. synchronous) operation, because of memory constraints or lack of threading support, the SLP_NOT_IMPLEMENTED flag might be returned when the isAsync flag is SLP_TRUE (resp. SLP_FALSE).

Parameters

Item Description
pcLang A pointer to an array of characters (AIX® supports "en" only).
isAsync An SLPBoolean indicating whether the SLPHandle should be opened for asynchronous operation or not. AIX supports synchronous operation only.
phSLP A pointer to an SLPHandle, in which the open SLPHandle is returned. If an error occurs, the value upon return is NULL.

Return Values

If SLPOpen is successful, it returns SLP_OK and an SLPHandle handle in the phSLP parameter for the language locale passed in as the pcLang parameter.

Error Codes

Item Description
SLPError Indicates the status of the operation