gpt4 book ai didi

c - 半径请求给出了错误的值

转载 作者:行者123 更新时间:2023-11-30 17:55:32 25 4
gpt4 key购买 nike

if (rc_avpair_add(rh, &send, PW_USER_PASSWORD, passwd, -1, 0) == NULL)
return ERROR_RC;

if (rc_avpair_add(rh, &send, PW_NAS_PORT_TYPE, nas_port_type, -1, 0) == NULL)
return ERROR_RC;

if (rc_avpair_add(rh, &send, PW_FRAMED_IP_ADDRESS,"172.17.14.90", -1, 0) == NULL)
return ERROR_RC;

上面是我的代码“radexample.c”的一部分,它用于生成“半径请求”,我也想用它传递帧IP。我的问题是在这里 PW_USER_PASSWORD 发送正确的值是“字符串”类型。但 PW_FRAMED_IP_ADDRESS 发送错误的值,因为它的类型是“ip”,而我正在发送字符串值。如果我在第四个参数中传递“ip”。 rc_avpair_add 给出类型转换错误!!

最佳答案

PW_FRAMED_IP_ADDRESS 想要第四个参数为 int。

最简单的方法是:

uint32_t framed_addr = 0;
inet_pton(AF_INET, "172.17.14.90", &framed_addr);
framed_addr = htonl(framed_addr); //network order
if (rc_avpair_add(rh, &send, PW_FRAMED_IP_ADDRESS,&framed_addr, -1, 0) == NULL)
return ERROR_RC;

关于c - 半径请求给出了错误的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14212206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com