ConFoo: Call for paper is now Open

radius_put_vendor_string

(PECL radius >= 1.1.0)

radius_put_vendor_stringベンダー固有の文字列属性を設定する

説明

bool radius_put_vendor_string ( resource $radius_handle , int $vendor , int $type , string $value [, int $options = 0 [, int $tag ]] )

ベンダー固有の文字列属性を、現在の RADIUS リクエストにアタッチします。 一般に、文字列属性をアタッチするには radius_put_vendor_attr() のほうがより便利です。 というのも、こちらのほうはバイナリセーフだからです。

注意:

リクエストを radius_create_request() で作ってからでないと、この関数は呼べません。

パラメータ

radius_handle

RADIUS リソース。

vendor

ベンダー ID。

type

属性の型。

value

属性の値。 これはヌル終端であることが期待されています。つまり、このパラメータはバイナリセーフではないということです。

options

属性のオプションのビットマスク。使えるオプションには、RADIUS_OPTION_TAGGEDRADIUS_OPTION_SALT があります。

tag

属性のタグ。RADIUS_OPTION_TAGGED が設定されていない限り、このパラメータは無視されます。

変更履歴

バージョン 説明
PECL radius 1.3.0 options および tag が追加されました。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

参考

add a note add a note

User Contributed Notes 1 note

up
0
sebastian at sebsoft dot nl
5 years ago
In the PECL sources, a certain vendor specific string is included for Microsoft systems.
However, if you just want to pass something entirely different, like Cisco specifics, that's possible.
The fact that this isn't included in the sources of the PECL doesn't mean you can't use them.

Better said, everything there is in the dictionary of your Radius server can be put in as string.

Like the following example to write a h323-gw-id:
<?php
$res
= radius_acct_open ();
radius_add_server($res,'127.0.0.1', 1813, 'mysecret', 10, 2);
radius_create_request($res, RADIUS_ACCOUNTING_REQUEST);
radius_put_vendor_string($res,9,33 ,"h323-gw-id=123456");

$result = radius_send_request($res);
?>
To Top