Created
August 24, 2020 16:02
-
-
Save u1735067/7025b4eac8d417e2d5461ae3a4e3ce78 to your computer and use it in GitHub Desktop.
Quick & dirty Radius Kaitai format
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
meta: | |
id: radius | |
file-extension: radius | |
endian: be | |
doc-ref: "https://www.iana.org/assignments/radius-types/radius-types.xhtml" | |
doc-ref: "https://tools.ietf.org/html/rfc2865" | |
doc-ref: "https://wiki.wireshark.org/SampleCaptures#RADIUS_.28RFC_2865.29" | |
seq: | |
- id: code | |
type: u1 | |
enum: pkt_types | |
- id: identifier | |
type: u1 | |
- id: pkt_length | |
type: u2 | |
- id: authenticator | |
size: 16 | |
- id: attributes | |
type: attributes_section | |
repeat: eos | |
types: | |
attributes_section: | |
meta: | |
encoding: ascii | |
seq: | |
- id: attribute_type | |
type: u1 | |
enum: attributes_types | |
- id: attribute_length | |
type: u1 | |
- id: attribute_value | |
size: attribute_length-2 | |
type: | |
switch-on: attribute_type | |
cases: | |
'attributes_types::acct_session_id': str | |
enums: | |
pkt_types: | |
1: access_request | |
2: access_accept | |
3: access_reject | |
4: accounting_request | |
5: accounting_response | |
6: accounting_status # (now interim accounting) | |
7: password_request | |
8: password_ack | |
9: password_reject | |
10: accounting_message | |
11: access_challenge | |
12: status_server # (experimental) | |
13: status_client # (experimental) | |
21: resource_free_request | |
22: resource_free_response | |
23: resource_query_request | |
24: resource_query_response | |
25: alternate_resource_reclaim_request | |
26: nas_reboot_request | |
27: nas_reboot_response | |
28: reserved | |
29: next_passcode | |
30: new_pin | |
31: terminate_session | |
32: password_expired | |
33: event_request | |
34: event_response | |
#35_39: unassigned | |
40: disconnect_request | |
41: disconnect_ack | |
42: disconnect_nak | |
43: coa_request | |
44: coa_ack | |
45: coa_nak | |
#46_49: unassigned | |
50: ip_address_allocate | |
51: ip_address_release | |
52: protocol_error | |
#53_249: unassigned | |
#250_253: experimental use | |
254: reserved | |
255: reserved | |
attributes_types: | |
1: user_name | |
2: user_password | |
3: chap_password | |
4: nas_ip_address | |
5: nas_port | |
6: service_type | |
7: framed_protocol | |
8: framed_ip_address | |
9: framed_ip_netmask | |
10: framed_routing | |
11: filter_id | |
12: framed_mtu | |
13: framed_compression | |
14: login_ip_host | |
15: login_service | |
16: login_tcp_port | |
17: unassigned | |
18: reply_message | |
19: callback_number | |
20: callback_id | |
21: unassigned | |
22: framed_route | |
23: framed_ipx_network | |
24: state | |
25: class | |
26: vendor_specific | |
27: session_timeout | |
28: idle_timeout | |
29: termination_action | |
30: called_station_id | |
31: calling_station_id | |
32: nas_identifier | |
33: proxy_state | |
34: login_lat_service | |
35: login_lat_node | |
36: login_lat_group | |
37: framed_appletalk_link | |
38: framed_appletalk_network | |
39: framed_appletalk_zone | |
40: acct_status_type | |
41: acct_delay_time | |
42: acct_input_octets | |
43: acct_output_octets | |
44: acct_session_id | |
45: acct_authentic | |
46: acct_session_time | |
47: acct_input_packets | |
48: acct_output_packets | |
49: acct_terminate_cause | |
50: acct_multi_session_id | |
51: acct_link_count | |
52: acct_input_gigawords | |
53: acct_output_gigawords | |
54: unassigned | |
55: event_timestamp | |
56: egress_vlanid | |
57: ingress_filters | |
58: egress_vlan_name | |
59: user_priority_table | |
60: chap_challenge | |
61: nas_port_type | |
62: port_limit | |
63: login_lat_port | |
64: tunnel_type | |
65: tunnel_medium_type | |
66: tunnel_client_endpoint | |
67: tunnel_server_endpoint | |
68: acct_tunnel_connection | |
69: tunnel_password | |
70: arap_password | |
71: arap_features | |
72: arap_zone_access | |
73: arap_security | |
74: arap_security_data | |
75: password_retry | |
76: prompt | |
77: connect_info | |
78: configuration_token | |
79: eap_message | |
80: message_authenticator | |
81: tunnel_private_group_id | |
82: tunnel_assignment_id | |
83: tunnel_preference | |
84: arap_challenge_response | |
85: acct_interim_interval | |
86: acct_tunnel_packets_lost | |
87: nas_port_id | |
88: framed_pool | |
89: cui | |
90: tunnel_client_auth_id | |
91: tunnel_server_auth_id | |
92: nas_filter_rule | |
93: unassigned | |
94: originating_line_info | |
95: nas_ipv6_address | |
96: framed_interface_id | |
97: framed_ipv6_prefix | |
98: login_ipv6_host | |
99: framed_ipv6_route | |
100: framed_ipv6_pool | |
101: error_cause # attribute | |
102: eap_key_name | |
103: digest_response | |
104: digest_realm | |
105: digest_nonce | |
106: digest_response_auth | |
107: digest_nextnonce | |
108: digest_method | |
109: digest_uri | |
110: digest_qop | |
111: digest_algorithm | |
112: digest_entity_body_hash | |
113: digest_cnonce | |
114: digest_nonce_count | |
115: digest_username | |
116: digest_opaque | |
117: digest_auth_param | |
118: digest_aka_auts | |
119: digest_domain | |
120: digest_stale | |
121: digest_ha1 | |
122: sip_aor | |
123: delegated_ipv6_prefix | |
124: mip6_feature_vector | |
125: mip6_home_link_prefix | |
126: operator_name | |
127: location_information | |
128: location_data | |
129: basic_location_policy_rules | |
130: extended_location_policy_rules | |
131: location_capable | |
132: requested_location_info | |
133: framed_management_protocol | |
134: management_transport_protection | |
135: management_policy_id | |
136: management_privilege_level | |
137: pkm_ss_cert | |
138: pkm_ca_cert | |
139: pkm_config_settings | |
140: pkm_cryptosuite_list | |
141: pkm_said | |
142: pkm_sa_descriptor | |
143: pkm_auth_key | |
144: ds_lite_tunnel_name | |
145: mobile_node_identifier | |
146: service_selection | |
147: pmip6_home_lma_ipv6_address | |
148: pmip6_visited_lma_ipv6_address | |
149: pmip6_home_lma_ipv4_address | |
150: pmip6_visited_lma_ipv4_address | |
151: pmip6_home_hn_prefix | |
152: pmip6_visited_hn_prefix | |
153: pmip6_home_interface_id | |
154: pmip6_visited_interface_id | |
155: pmip6_home_ipv4_hoa | |
156: pmip6_visited_ipv4_hoa | |
157: pmip6_home_dhcp4_server_address | |
158: pmip6_visited_dhcp4_server_address | |
159: pmip6_home_dhcp6_server_address | |
160: pmip6_visited_dhcp6_server_address | |
161: pmip6_home_ipv4_gateway | |
162: pmip6_visited_ipv4_gateway | |
163: eap_lower_layer | |
164: gss_acceptor_service_name | |
165: gss_acceptor_host_name | |
166: gss_acceptor_service_specifics | |
167: gss_acceptor_realm_name | |
168: framed_ipv6_address | |
169: dns_server_ipv6_address | |
170: route_ipv6_information | |
171: delegated_ipv6_prefix_pool | |
172: stateful_ipv6_address_pool | |
173: ipv6_6rd_configuration | |
174: allowed_called_station_id | |
175: eap_peer_id | |
176: eap_server_id | |
177: mobility_domain_id | |
178: preauth_timeout | |
179: network_id_name | |
180: eapol_announcement | |
181: wlan_hessid | |
182: wlan_venue_info | |
183: wlan_venue_language | |
184: wlan_venue_name | |
185: wlan_reason_code | |
186: wlan_pairwise_cipher | |
187: wlan_group_cipher | |
188: wlan_akm_suite | |
189: wlan_group_mgmt_cipher | |
190: wlan_rf_band | |
191: unassigned |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
https://github.com/kaitai-io/kaitai_struct_formats