aboutsummaryrefslogtreecommitdiffstats
path: root/src/radius
diff options
context:
space:
mode:
Diffstat (limited to 'src/radius')
-rw-r--r--src/radius/radius_das.c6
-rw-r--r--src/radius/radius_das.h2
2 files changed, 8 insertions, 0 deletions
diff --git a/src/radius/radius_das.c b/src/radius/radius_das.c
index a9fcb69..8ecfffc 100644
--- a/src/radius/radius_das.c
+++ b/src/radius/radius_das.c
@@ -97,6 +97,12 @@ static struct radius_msg * radius_das_disconnect(struct radius_das_data *das,
attrs.acct_session_id_len = len;
}
+ if (radius_msg_get_attr_ptr(msg, RADIUS_ATTR_CHARGEABLE_USER_IDENTITY,
+ &buf, &len, NULL) == 0) {
+ attrs.cui = buf;
+ attrs.cui_len = len;
+ }
+
res = das->disconnect(das->ctx, &attrs);
switch (res) {
case RADIUS_DAS_NAS_MISMATCH:
diff --git a/src/radius/radius_das.h b/src/radius/radius_das.h
index d0719ed..738b18b 100644
--- a/src/radius/radius_das.h
+++ b/src/radius/radius_das.h
@@ -23,6 +23,8 @@ struct radius_das_attrs {
size_t user_name_len;
const u8 *acct_session_id;
size_t acct_session_id_len;
+ const u8 *cui;
+ size_t cui_len;
};
struct radius_das_conf {