sync with OpenBSD -current

This commit is contained in:
purplerain 2025-01-29 19:22:50 +00:00
parent 362e3feade
commit 337ce169cc
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
24 changed files with 337 additions and 132 deletions

View file

@ -1,4 +1,4 @@
/* $OpenBSD: radiusd_ipcp.c,v 1.21 2024/11/28 11:51:45 yasuoka Exp $ */
/* $OpenBSD: radiusd_ipcp.c,v 1.23 2025/01/29 10:16:05 yasuoka Exp $ */
/*
* Copyright (c) 2024 Internet Initiative Japan Inc.
@ -897,6 +897,13 @@ ipcp_resdeco(void *ctx, u_int q_id, const u_char *req, size_t reqlen,
else if (radius_has_attr(radreq, RADIUS_TYPE_EAP_MESSAGE))
strlcpy(assigned->auth_method, "EAP",
sizeof(assigned->auth_method));
radius_get_ipv4_attr(radreq, RADIUS_TYPE_NAS_IP_ADDRESS,
&assigned->nas_ipv4);
radius_get_ipv6_attr(radreq, RADIUS_TYPE_NAS_IPV6_ADDRESS,
&assigned->nas_ipv6);
radius_get_string_attr(radreq, RADIUS_TYPE_NAS_IDENTIFIER,
assigned->nas_id, sizeof(assigned->nas_id));
}
if (self->name_server[0].s_addr != 0) {
@ -937,7 +944,7 @@ ipcp_resdeco(void *ctx, u_int q_id, const u_char *req, size_t reqlen,
RADIUS_VTYPE_MS_SECONDARY_NBNS_SERVER,
self->netbios_server[1]);
}
if (!self->no_session_timeout &&
if (!self->no_session_timeout && assigned != NULL &&
radius_has_attr(radres, RADIUS_TYPE_SESSION_TIMEOUT)) {
radius_get_uint32_attr(radres, RADIUS_TYPE_SESSION_TIMEOUT,
&assigned->session_timeout);