## SLPParseSrvURL

### Declaration

`#include <slp.h>`

`SLPError SLPParseSrvURL( const char* srvurl,`
`SLPSrvURL** parsedurl )`

### Description

Parses a Service URL passed in as a character string and returns the results in a pointer to a dynamically allocated `SLPSrvURL` structure. The pointer returned in `parsedurl` should be freed by SLPFree().

### Parameters

`srvurl` | Pointer to a character buffer containing the null terminated URL string to parse. See Syntax for more information on Service URL syntax.
`parsedurl` | Pointer to a pointer for the `SLPSrvURL` structure that receives the parsed URL. The memory should be freed by a call to SLPFree() when no longer needed.

### Returns

SLP_OK | Indicates that the no error occurred during the operation.
SLP_PARSE_ERROR | The service url being parsed is not of valid syntax
SLP_MEMORY_ALLOC_FAILED | Out of memory error
SLP_PARAMETER_BAD | If a parameter passed into a function is bad, this error is returned.
SLP_INTERNAL_SYSTEM_ERROR | A basic failure of the API causes this error to be returned. This occurs when a system call or library fails. The operation could not recover.

### Status

OpenSLP 0.6.0 | Fully implemented as specified by RFC 2614.

### See Also

SLPFree(), SLPTypes, Syntax