xref: /illumos-gate/usr/src/man/man3slp/SLPEscape.3slp (revision b6805bf78d2bbbeeaea8909a05623587b42d58b3)
te
Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
SLPESCAPE 3SLP "Jan 16, 2003"
NAME
SLPEscape - escapes SLP reserved characters
SYNOPSIS

cc [ flag... ] file... -lslp [ library... ]
#include <slp.h>

SLPError SLPEscape(const char *pcInBuf, char** ppcOutBuf,
 SLPBoolean isTag);
DESCRIPTION

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.

PARAMETERS
pcInBuf

Pointer to the input buffer to process for escape characters.

ppcOutBuf

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.

isTag

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

ERRORS

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

EXAMPLES

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);
ENVIRONMENT VARIABLES
SLP_CONF_FILE

When set, use this file for configuration.

SEE ALSO

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.