SLPESCAPE(3SLP) Service Location Protocol Library Functions SLPESCAPE(3SLP)

SLPEscape - escapes SLP reserved characters

cc [ flag... ] file... -lslp [ library... ]
#include <slp.h>
SLPError SLPEscape(const char *pcInBuf, char** ppcOutBuf,
     SLPBoolean isTag);

The SLPEscape() function processes the input string in pcInbuf and escapes any SLP reserved characters. If the isTag parameter is SLPTrue, it then looks for bad tag characters and signals an error if any are found by returning the SLP_PARSE_ERROR code. The results are put into a buffer allocated by the API library and returned in the ppcOutBuf parameter. This buffer should be deallocated using SLPFree(3SLP) when the memory is no longer needed.

Pointer to the input buffer to process for escape characters.


Pointer to a pointer for the output buffer with the SLP reserved characters escaped. It must be freed using SLPFree() when the memory is no longer needed.


When true, checks the input buffer for bad tag characters.

This function or its callback may return any SLP error code. See the ERRORS section in slp_api(3SLP).

Example 1 Converting Attribute Tags

The following example shows how to convert the attribute tag ,tag-example, to on the wire format:

SLPError err;
char* escaped Chars;
err = SLPEscape(",tag-example,", &escapedChars, SLP_TRUE);

When set, use this file for configuration.

slpd(1M), slp_api(3SLP), SLPFree(3SLP), slp.conf(4), slpd.reg(4), attributes(5)

System Administration Guide: Network Services

Guttman, E., Perkins, C., Veizades, J., and Day, M. RFC 2608, Service Location Protocol, Version 2. The Internet Society. June 1999.

Kempf, J. and Guttman, E. RFC 2614, An API for Service Location. The Internet Society. June 1999.

January 16, 2003 OmniOS