The FreeRADIUS server
$Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
src
listen
tacacs
proto_tacacs.h
Go to the documentation of this file.
1
#pragma once
2
/*
3
* proto_tacacs.h TACACS+ processing.
4
*
5
* Version: $Id: 07b9f6566a45543c1c6f7d1a70a8c907a9f71c51 $
6
*
7
* This program is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; either version 2 of the License, or
10
* (at your option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with this program; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20
*
21
* @copyright 2020 The FreeRADIUS server project
22
* @copyright 2020 Network RADIUS SAS (legal@networkradius.com)
23
*/
24
25
#include <freeradius-devel/io/master.h>
26
#include <freeradius-devel/tacacs/tacacs.h>
27
#include <freeradius-devel/protocol/tacacs/tacacs.h>
28
29
/** An instance of a proto_tacacs listen section
30
*
31
*/
32
typedef
struct
{
33
fr_io_instance_t
io
;
//!< wrapper for IO abstraction
34
35
char
const
**
allowed_types
;
//!< names for for 'type = ...'
36
bool
allowed[
FR_TACACS_CODE_MAX
];
//!< indexed by value
37
38
uint32_t
max_packet_size
;
//!< for message ring buffer.
39
uint32_t
num_messages
;
//!< for message ring buffer.
40
41
uint32_t
priorities[
FR_TACACS_CODE_MAX
];
//!< priorities for individual packets
42
}
proto_tacacs_t
;
43
44
/*
45
* Shorter version of the packet for deduping
46
*/
47
typedef
struct
{
48
uint8_t
type
;
49
uint32_t
session_id
;
50
}
proto_tacacs_track_t
;
fr_io_instance_t
The master IO instance.
Definition:
master.h:72
uint32_t
unsigned int uint32_t
Definition:
merged_model.c:33
uint8_t
unsigned char uint8_t
Definition:
merged_model.c:30
proto_tacacs_t::io
fr_io_instance_t io
wrapper for IO abstraction
Definition:
proto_tacacs.h:33
proto_tacacs_t::num_messages
uint32_t num_messages
for message ring buffer.
Definition:
proto_tacacs.h:39
proto_tacacs_t::max_packet_size
uint32_t max_packet_size
for message ring buffer.
Definition:
proto_tacacs.h:38
proto_tacacs_track_t::type
uint8_t type
Definition:
proto_tacacs.h:48
proto_tacacs_t::allowed_types
char const ** allowed_types
names for for 'type = ...'
Definition:
proto_tacacs.h:35
proto_tacacs_track_t::session_id
uint32_t session_id
Definition:
proto_tacacs.h:49
proto_tacacs_t
An instance of a proto_tacacs listen section.
Definition:
proto_tacacs.h:32
proto_tacacs_track_t
Definition:
proto_tacacs.h:47
FR_TACACS_CODE_MAX
@ FR_TACACS_CODE_MAX
Definition:
tacacs.h:317
Generated by
1.9.1