Add rfc2866 dict

This commit is contained in:
moznion
2020-11-25 23:14:00 +09:00
parent e95a1d3071
commit e003e7fb99
3 changed files with 285 additions and 0 deletions

58
dicts/dictionary.rfc2866 Normal file
View File

@@ -0,0 +1,58 @@
# -*- text -*-
# Copyright (C) 2011 The FreeRADIUS Server project and contributors
#
# Attributes and values defined in RFC 2866.
# http://www.ietf.org/rfc/rfc2866.txt
#
# $Id$
#
ATTRIBUTE Acct-Status-Type 40 integer
ATTRIBUTE Acct-Delay-Time 41 integer
ATTRIBUTE Acct-Input-Octets 42 integer
ATTRIBUTE Acct-Output-Octets 43 integer
ATTRIBUTE Acct-Session-Id 44 string
ATTRIBUTE Acct-Authentic 45 integer
ATTRIBUTE Acct-Session-Time 46 integer
ATTRIBUTE Acct-Input-Packets 47 integer
ATTRIBUTE Acct-Output-Packets 48 integer
ATTRIBUTE Acct-Terminate-Cause 49 integer
ATTRIBUTE Acct-Multi-Session-Id 50 string
ATTRIBUTE Acct-Link-Count 51 integer
# Accounting Status Types
VALUE Acct-Status-Type Start 1
VALUE Acct-Status-Type Stop 2
VALUE Acct-Status-Type Alive 3 # dup
VALUE Acct-Status-Type Interim-Update 3
VALUE Acct-Status-Type Accounting-On 7
VALUE Acct-Status-Type Accounting-Off 8
VALUE Acct-Status-Type Failed 15
# Authentication Types
VALUE Acct-Authentic RADIUS 1
VALUE Acct-Authentic Local 2
VALUE Acct-Authentic Remote 3
VALUE Acct-Authentic Diameter 4
# Acct Terminate Causes
VALUE Acct-Terminate-Cause User-Request 1
VALUE Acct-Terminate-Cause Lost-Carrier 2
VALUE Acct-Terminate-Cause Lost-Service 3
VALUE Acct-Terminate-Cause Idle-Timeout 4
VALUE Acct-Terminate-Cause Session-Timeout 5
VALUE Acct-Terminate-Cause Admin-Reset 6
VALUE Acct-Terminate-Cause Admin-Reboot 7
VALUE Acct-Terminate-Cause Port-Error 8
VALUE Acct-Terminate-Cause NAS-Error 9
VALUE Acct-Terminate-Cause NAS-Request 10
VALUE Acct-Terminate-Cause NAS-Reboot 11
VALUE Acct-Terminate-Cause Port-Unneeded 12
VALUE Acct-Terminate-Cause Port-Preempted 13
VALUE Acct-Terminate-Cause Port-Suspended 14
VALUE Acct-Terminate-Cause Service-Unavailable 15
VALUE Acct-Terminate-Cause Callback 16
VALUE Acct-Terminate-Cause User-Error 17
VALUE Acct-Terminate-Cause Host-Request 18

View File

@@ -10,5 +10,6 @@ pub mod packet;
pub mod request;
pub mod request_handler;
pub mod rfc2865;
pub mod rfc2866;
pub mod secret_provider;
pub mod server;

226
src/rfc2866.rs Normal file
View File

@@ -0,0 +1,226 @@
// Code generated by machine generator; DO NOT EDIT.
use std::net::Ipv4Addr;
use crate::attribute::Attribute;
use crate::attributes::AVPType;
use crate::packet::Packet;
pub type AcctAuthentic = u32;
pub const ACCT_AUTHENTIC_RADIUS: AcctAuthentic = 1;
pub const ACCT_AUTHENTIC_LOCAL: AcctAuthentic = 2;
pub const ACCT_AUTHENTIC_REMOTE: AcctAuthentic = 3;
pub const ACCT_AUTHENTIC_DIAMETER: AcctAuthentic = 4;
pub type AcctStatusType = u32;
pub const ACCT_STATUS_TYPE_START: AcctStatusType = 1;
pub const ACCT_STATUS_TYPE_STOP: AcctStatusType = 2;
pub const ACCT_STATUS_TYPE_ALIVE: AcctStatusType = 3;
pub const ACCT_STATUS_TYPE_INTERIM_UPDATE: AcctStatusType = 3;
pub const ACCT_STATUS_TYPE_ACCOUNTING_ON: AcctStatusType = 7;
pub const ACCT_STATUS_TYPE_ACCOUNTING_OFF: AcctStatusType = 8;
pub const ACCT_STATUS_TYPE_FAILED: AcctStatusType = 15;
pub type AcctTerminateCause = u32;
pub const ACCT_TERMINATE_CAUSE_USER_REQUEST: AcctTerminateCause = 1;
pub const ACCT_TERMINATE_CAUSE_LOST_CARRIER: AcctTerminateCause = 2;
pub const ACCT_TERMINATE_CAUSE_LOST_SERVICE: AcctTerminateCause = 3;
pub const ACCT_TERMINATE_CAUSE_IDLE_TIMEOUT: AcctTerminateCause = 4;
pub const ACCT_TERMINATE_CAUSE_SESSION_TIMEOUT: AcctTerminateCause = 5;
pub const ACCT_TERMINATE_CAUSE_ADMIN_RESET: AcctTerminateCause = 6;
pub const ACCT_TERMINATE_CAUSE_ADMIN_REBOOT: AcctTerminateCause = 7;
pub const ACCT_TERMINATE_CAUSE_PORT_ERROR: AcctTerminateCause = 8;
pub const ACCT_TERMINATE_CAUSE_NAS_ERROR: AcctTerminateCause = 9;
pub const ACCT_TERMINATE_CAUSE_NAS_REQUEST: AcctTerminateCause = 10;
pub const ACCT_TERMINATE_CAUSE_NAS_REBOOT: AcctTerminateCause = 11;
pub const ACCT_TERMINATE_CAUSE_PORT_UNNEEDED: AcctTerminateCause = 12;
pub const ACCT_TERMINATE_CAUSE_PORT_PREEMPTED: AcctTerminateCause = 13;
pub const ACCT_TERMINATE_CAUSE_PORT_SUSPENDED: AcctTerminateCause = 14;
pub const ACCT_TERMINATE_CAUSE_SERVICE_UNAVAILABLE: AcctTerminateCause = 15;
pub const ACCT_TERMINATE_CAUSE_CALLBACK: AcctTerminateCause = 16;
pub const ACCT_TERMINATE_CAUSE_USER_ERROR: AcctTerminateCause = 17;
pub const ACCT_TERMINATE_CAUSE_HOST_REQUEST: AcctTerminateCause = 18;
pub const ACCT_STATUS_TYPE_TYPE: AVPType = 40;
pub fn delete_acct_status_type(packet: &mut Packet) {
packet.delete(ACCT_STATUS_TYPE_TYPE);
}
pub fn lookup_acct_status_type(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_STATUS_TYPE_TYPE)
}
pub fn lookup_all_acct_status_type(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_STATUS_TYPE_TYPE)
}
pub fn add_acct_status_type(packet: &mut Packet, value: AcctStatusType) {
let attr = Attribute::from_u32(value as u32);
packet.add(ACCT_STATUS_TYPE_TYPE, &attr);
}
pub const ACCT_DELAY_TIME_TYPE: AVPType = 41;
pub fn delete_acct_delay_time(packet: &mut Packet) {
packet.delete(ACCT_DELAY_TIME_TYPE);
}
pub fn lookup_acct_delay_time(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_DELAY_TIME_TYPE)
}
pub fn lookup_all_acct_delay_time(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_DELAY_TIME_TYPE)
}
pub fn add_acct_delay_time(packet: &mut Packet, value: u32) {
let attr = Attribute::from_u32(value);
packet.add(ACCT_DELAY_TIME_TYPE, &attr);
}
pub const ACCT_INPUT_OCTETS_TYPE: AVPType = 42;
pub fn delete_acct_input_octets(packet: &mut Packet) {
packet.delete(ACCT_INPUT_OCTETS_TYPE);
}
pub fn lookup_acct_input_octets(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_INPUT_OCTETS_TYPE)
}
pub fn lookup_all_acct_input_octets(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_INPUT_OCTETS_TYPE)
}
pub fn add_acct_input_octets(packet: &mut Packet, value: u32) {
let attr = Attribute::from_u32(value);
packet.add(ACCT_INPUT_OCTETS_TYPE, &attr);
}
pub const ACCT_OUTPUT_OCTETS_TYPE: AVPType = 43;
pub fn delete_acct_output_octets(packet: &mut Packet) {
packet.delete(ACCT_OUTPUT_OCTETS_TYPE);
}
pub fn lookup_acct_output_octets(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_OUTPUT_OCTETS_TYPE)
}
pub fn lookup_all_acct_output_octets(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_OUTPUT_OCTETS_TYPE)
}
pub fn add_acct_output_octets(packet: &mut Packet, value: u32) {
let attr = Attribute::from_u32(value);
packet.add(ACCT_OUTPUT_OCTETS_TYPE, &attr);
}
pub const ACCT_SESSION_ID_TYPE: AVPType = 44;
pub fn delete_acct_session_id(packet: &mut Packet) {
packet.delete(ACCT_SESSION_ID_TYPE);
}
pub fn lookup_acct_session_id(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_SESSION_ID_TYPE)
}
pub fn lookup_all_acct_session_id(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_SESSION_ID_TYPE)
}
pub fn add_acct_session_id(packet: &mut Packet, value: &str) {
let attr = Attribute::from_string(value);
packet.add(ACCT_SESSION_ID_TYPE, &attr);
}
pub const ACCT_AUTHENTIC_TYPE: AVPType = 45;
pub fn delete_acct_authentic(packet: &mut Packet) {
packet.delete(ACCT_AUTHENTIC_TYPE);
}
pub fn lookup_acct_authentic(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_AUTHENTIC_TYPE)
}
pub fn lookup_all_acct_authentic(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_AUTHENTIC_TYPE)
}
pub fn add_acct_authentic(packet: &mut Packet, value: AcctAuthentic) {
let attr = Attribute::from_u32(value as u32);
packet.add(ACCT_AUTHENTIC_TYPE, &attr);
}
pub const ACCT_SESSION_TIME_TYPE: AVPType = 46;
pub fn delete_acct_session_time(packet: &mut Packet) {
packet.delete(ACCT_SESSION_TIME_TYPE);
}
pub fn lookup_acct_session_time(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_SESSION_TIME_TYPE)
}
pub fn lookup_all_acct_session_time(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_SESSION_TIME_TYPE)
}
pub fn add_acct_session_time(packet: &mut Packet, value: u32) {
let attr = Attribute::from_u32(value);
packet.add(ACCT_SESSION_TIME_TYPE, &attr);
}
pub const ACCT_INPUT_PACKETS_TYPE: AVPType = 47;
pub fn delete_acct_input_packets(packet: &mut Packet) {
packet.delete(ACCT_INPUT_PACKETS_TYPE);
}
pub fn lookup_acct_input_packets(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_INPUT_PACKETS_TYPE)
}
pub fn lookup_all_acct_input_packets(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_INPUT_PACKETS_TYPE)
}
pub fn add_acct_input_packets(packet: &mut Packet, value: u32) {
let attr = Attribute::from_u32(value);
packet.add(ACCT_INPUT_PACKETS_TYPE, &attr);
}
pub const ACCT_OUTPUT_PACKETS_TYPE: AVPType = 48;
pub fn delete_acct_output_packets(packet: &mut Packet) {
packet.delete(ACCT_OUTPUT_PACKETS_TYPE);
}
pub fn lookup_acct_output_packets(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_OUTPUT_PACKETS_TYPE)
}
pub fn lookup_all_acct_output_packets(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_OUTPUT_PACKETS_TYPE)
}
pub fn add_acct_output_packets(packet: &mut Packet, value: u32) {
let attr = Attribute::from_u32(value);
packet.add(ACCT_OUTPUT_PACKETS_TYPE, &attr);
}
pub const ACCT_TERMINATE_CAUSE_TYPE: AVPType = 49;
pub fn delete_acct_terminate_cause(packet: &mut Packet) {
packet.delete(ACCT_TERMINATE_CAUSE_TYPE);
}
pub fn lookup_acct_terminate_cause(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_TERMINATE_CAUSE_TYPE)
}
pub fn lookup_all_acct_terminate_cause(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_TERMINATE_CAUSE_TYPE)
}
pub fn add_acct_terminate_cause(packet: &mut Packet, value: AcctTerminateCause) {
let attr = Attribute::from_u32(value as u32);
packet.add(ACCT_TERMINATE_CAUSE_TYPE, &attr);
}
pub const ACCT_MULTI_SESSION_ID_TYPE: AVPType = 50;
pub fn delete_acct_multi_session_id(packet: &mut Packet) {
packet.delete(ACCT_MULTI_SESSION_ID_TYPE);
}
pub fn lookup_acct_multi_session_id(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_MULTI_SESSION_ID_TYPE)
}
pub fn lookup_all_acct_multi_session_id(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_MULTI_SESSION_ID_TYPE)
}
pub fn add_acct_multi_session_id(packet: &mut Packet, value: &str) {
let attr = Attribute::from_string(value);
packet.add(ACCT_MULTI_SESSION_ID_TYPE, &attr);
}
pub const ACCT_LINK_COUNT_TYPE: AVPType = 51;
pub fn delete_acct_link_count(packet: &mut Packet) {
packet.delete(ACCT_LINK_COUNT_TYPE);
}
pub fn lookup_acct_link_count(packet: &Packet) -> Option<&Attribute> {
packet.lookup(ACCT_LINK_COUNT_TYPE)
}
pub fn lookup_all_acct_link_count(packet: &Packet) -> Vec<&Attribute> {
packet.lookup_all(ACCT_LINK_COUNT_TYPE)
}
pub fn add_acct_link_count(packet: &mut Packet, value: u32) {
let attr = Attribute::from_u32(value);
packet.add(ACCT_LINK_COUNT_TYPE, &attr);
}