#include <lap/chLap.h>int svLapBind(KnLapDesc * lapdesc, char * name, unsigned int options);
The function or functions documented here may not be used safely in all application contexts with all APIs provided in the ChorusOS 5.0 product.
See API(5FEA) for details.
The svLapBind() system call binds the LAP descriptor pointed to by lapdesc with the symbolic name pointed to by name .
name points to a null-terminated string of K_LAPNAMEMAX characters at most (not including the null-terminating character).
If the K_LAP_PROTECTED option is set in the options parameter, the binding is only visible to trusted threads. Threads executing in user actors, for example, will produce an error from lapResolve() on this name.
The svLapUnbind() system call removes the LAP binding associated with name .
The lapResolve() system call initializes the LAP descriptor pointed to by lapdesc with the LAP descriptor bound to name . lapResolve() will block until a LAP descriptor is bound to name , unless the K_LAP_NOBLOCK option is set in options , in which case the call returns immediately with an error.
svLapBind() and svLapUnbind() are restricted to SUPERVISOR threads.
On success, these calls return K_OK . Otherwise, a negative error code is returned.
The calling thread has been aborted in lapResolve() .
The name given to svLapBind() is already in use.
The lapdesc or name arguments of lapResolve() point to outside the caller's address space.
The name given to svLapUnbind() is not bound to any LAP, or the name given to lapResolve() is not bound to any LAP, and the K_LAP_NOBLOCK option is set.
The name given to svLapBind() , svLapUnbind() or lapResolve() is too long.
The system is out of resources.
lapResolve() is called by a non-trusted thread to resolve a name which has been bound with the K_LAP_PROTECTED option.
See attributes(5) for descriptions of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|