# radius_put_attr

(PECL radius >= 1.1.0)

radius_put_attr — Attaches a binary attribute

### Description

radius_put_attr ( resource `$radius_handle` , int `$type` , string `$value` [, int `$options` = 0 [, int `$tag` ]] ) : bool

Attaches a binary attribute to the current RADIUS request.

> Note:

> A request must be created via radius_create_request() before this function can be called.

### Parameters

`radius_handle`

  The RADIUS resource.

`type`

  The attribute type.

`value`

  The attribute value, which will be treated as a raw binary string.

`options`

  A bitmask of the attribute options. The available options include `RADIUS_OPTION_TAGGED` and `RADIUS_OPTION_SALT`.

`tag`

  The attribute tag. This parameter is ignored unless the `RADIUS_OPTION_TAGGED` option is set.

### Return Values

Returns `TRUE` on success or `FALSE` on failure.

### Examples

Example #1 radius_put_attr() example

`<?php
mt_srand(time());
$chall = mt_rand();
$chapval = md5(pack('Ca*',1 , 'sepp' . $chall));
$pass = pack('CH*', 1, $chapval);
if (!radius_put_attr($res, RADIUS_CHAP_PASSWORD, $pass)) {
echo 'RadiusError:' . radius_strerror($res). "\n<br />";
exit;
}
?>`

### Changelog

Version | Description
--- | ---
PECL radius 1.3.0 | The `options` and `tag` parameters were added.

### See Also

- radius_get_attr() - Extracts an attribute
- radius_get_vendor_attr() - Extracts a vendor specific attribute
- radius_put_vendor_attr() - Attaches a vendor specific binary attribute