radius_put_vendor_addr()

将一个扩展属性添加到RADIUS数据包中,该属性的类型为IPv4地址

首字母:R

函数名称:radius_put_vendor_addr()

适用版本:PHP 4, PHP 5, PHP 7

函数描述:将一个扩展属性添加到RADIUS数据包中,该属性的类型为IPv4地址。

用法: bool radius_put_vendor_addr ( resource $radius_handle , int $vendor , int $type , string $addr )

参数:

  • $radius_handle:RADIUS连接资源句柄,通过radius_auth_open()或radius_acct_open()函数获取。
  • $vendor:扩展属性的供应商ID。
  • $type:属性的类型。
  • $addr:IPv4地址。

返回值: 如果成功添加属性,则返回 TRUE,否则返回 FALSE。

示例:

// 创建RADIUS连接
$radius_handle = radius_auth_open();
// 连接到RADIUS服务器
radius_add_server($radius_handle, "radius.example.com", 1812, "secret_key", 5, 3);
// 发送RADIUS请求并接收响应
if (radius_create_request($radius_handle, RADIUS_ACCESS_REQUEST)) {
 // 添加扩展属性
 $vendor = 12345; // 假设供应商ID为12345
 $type = 1; // 假设属性类型为1
 $addr = "192.168.0.100"; // 假设IPv4地址为192.168.0.100
 radius_put_vendor_addr($radius_handle, $vendor, $type, $addr);
 // 发送请求并等待响应
 if (radius_send_request($radius_handle)) {
 $result = radius_get_attr($radius_handle, RADIUS_VENDOR_ATTR, $vendor, $type);
 if ($result !== FALSE) {
 echo "扩展属性值为:" . radius_cvt_addr($result) . "\n";
 } else {
 echo "无法获取扩展属性值。\n";
 }
 } else {
 echo "RADIUS请求发送失败。\n";
 }
} else {
 echo "无法创建RADIUS请求。\n";
}
// 关闭RADIUS连接
radius_close($radius_handle);

注意:在实际使用中,需要将示例中的 "radius.example.com" 替换为实际的RADIUS服务器地址,"secret_key" 替换为RADIUS服务器的共享密钥,并根据实际情况修改其他参数。

同首字母函数