---
name: "sasl_setprop"
section: "3"
platform: "macos"
package: "passwordserver_sasl"
version: "215"
release: "macOS 26.5"
platforms: ["linux", "macos"]
url: "https://new.carta.tech/sasl_setprop"
---

# sasl\_setprop(3)

Set a SASL property

## NAME

sasl\_setprop - Set a SASL property

## SYNOPSIS

```
#include <sasl/sasl.h>

int sasl_setprop(sasl_conn_t *conn,
			 int propnum,
			 const void * pvalue)
```

## DESCRIPTION

**sasl\_setprop** sets the value of a SASL property. For example an application should tell the SASL library about any external negotiated security layer (i.e. TLS).

*conn* is the SASL connection object. *propnum* is the identifier for the property requested and *pvalue* contains a pointer to the data. It is the applications job to make sure this type is correct. This is an easy way to crash a program.

```
SASL_AUTH_EXTERNAL - external authentication ID (const char *)
SASL_SSF_EXTERNAL -  external SSF active -- (sasl_ssf_t)
SASL_DEFUSERREALM - user realm (const char *)
SASL_SEC_PROPS  -    sasl_security_properties_t (may be freed after call)
SASL_IPLOCALPORT -   string describing the local ip and port in the form
                     "a.b.c.d;p", or "e:f:g:h:i:j:k:l;port"
SASL_IPREMOTEPORT -  string describing the remote ip and port in the form
                     "a.b.c.d;p", or "e:f:g:h:i:j:k:l;port"
```

## RETURN VALUE

Returns SASL\_OK on success. SASL error code on failure.

## CONFORMING TO

RFC 4422

## SEE ALSO

[sasl(3)](/sasl/3.md), [sasl\_errors(3)](/sasl_errors/3.md)
