English | 简体中文 | 繁體中文
查询

radius_put_vendor_string()函数—用法及示例

「 向 RADIUS 请求添加一个供应商特定的字符串属性 」


函数名称:radius_put_vendor_string()

函数描述:radius_put_vendor_string() 函数用于向 RADIUS 请求添加一个供应商特定的字符串属性。

适用版本:该函数适用于 PHP 4 >= 4.0.5, PHP 5, PHP 7

语法:radius_put_vendor_string(resource $radius_handle, int $vendor, int $type, string $value)

参数:

  • $radius_handle:必需,RADIUS 连接句柄,通过 radius_auth_open() 或 radius_acct_open() 函数获取。
  • $vendor:必需,整数,供应商 ID。
  • $type:必需,整数,属性类型。
  • $value:必需,字符串,要添加的属性值。

返回值:成功时返回 TRUE,失败时返回 FALSE。

示例:

// 创建 RADIUS 连接句柄
$radius_handle = radius_auth_open();

// 设置 RADIUS 服务器地址和共享密钥
radius_add_server($radius_handle, "radius.example.com", 0, "shared_secret", 5, 3);

// 进行 RADIUS 认证
if (radius_create_request($radius_handle, RADIUS_ACCESS_REQUEST)) {
    // 添加供应商特定的字符串属性
    if (radius_put_vendor_string($radius_handle, 12345, 1, "example value")) {
        echo "供应商特定的字符串属性添加成功!";
    } else {
        echo "供应商特定的字符串属性添加失败!";
    }

    // 发送 RADIUS 请求并获取响应
    $result = radius_send_request($radius_handle);

    if ($result == RADIUS_ACCESS_ACCEPT) {
        echo "认证成功!";
    } else {
        echo "认证失败!";
    }
} else {
    echo "无法创建 RADIUS 请求!";
}

// 关闭 RADIUS 连接
radius_close($radius_handle);

注意事项:

  • 在使用该函数之前,必须通过 radius_auth_open() 或 radius_acct_open() 函数创建 RADIUS 连接句柄。
  • $vendor 参数是供应商 ID,可以是任意整数。
  • $type 参数是属性类型,可以是任意整数。
  • $value 参数是要添加的属性值,必须是字符串类型。
  • 该函数只能在 RADIUS 认证请求中使用,不能在 RADIUS 计费请求中使用。
  • 在调用 radius_send_request() 函数之前,必须先调用 radius_create_request() 函数来创建 RADIUS 请求。
  • 通过 radius_send_request() 函数发送 RADIUS 请求,并使用 radius_receive_packet() 函数获取 RADIUS 响应。
  • 可以使用 radius_strerror() 函数来获取错误信息。
补充纠错
热门PHP函数
分享链接