ARP handler for ethernet.
More...
#include <netdb.h>
#include <freeradius-devel/server/protocol.h>
#include <freeradius-devel/util/trie.h>
#include <freeradius-devel/io/application.h>
#include <freeradius-devel/io/listen.h>
#include <freeradius-devel/io/schedule.h>
#include "proto_arp.h"
Go to the source code of this file.
|
static int | mod_instantiate (module_inst_ctx_t const *mctx) |
|
static char const * | mod_name (fr_listen_t *li) |
|
static int | mod_open (fr_listen_t *li) |
| Open a pcap file for ARP.
|
|
static ssize_t | mod_read (fr_listen_t *li, UNUSED void **packet_ctx, fr_time_t *recv_time_p, uint8_t *buffer, size_t buffer_len, size_t *leftover) |
|
static ssize_t | mod_write (fr_listen_t *li, UNUSED void *packet_ctx, UNUSED fr_time_t request_time, uint8_t *buffer, size_t buffer_len, UNUSED size_t written) |
|
ARP handler for ethernet.
- Id
- 63b09eddaf43fa36efcf0f75215eaffdc43a7312
- Copyright
- 2016 The FreeRADIUS server project.
-
2016 Alan DeKok (aland.nosp@m.@dep.nosp@m.loyin.nosp@m.grad.nosp@m.ius.c.nosp@m.om)
Definition in file proto_arp_ethernet.c.
◆ proto_arp_ethernet_t
struct proto_arp_ethernet_t |
Definition at line 41 of file proto_arp_ethernet.c.
Data Fields |
CONF_SECTION * |
cs |
our configuration |
char const * |
filter |
Additional PCAP filter. |
char const * |
interface |
Interface to bind to. |
◆ proto_arp_ethernet_thread_t
struct proto_arp_ethernet_thread_t |
Definition at line 36 of file proto_arp_ethernet.c.
Data Fields |
char const * |
name |
socket name |
fr_pcap_t * |
pcap |
PCAP handler. |
◆ mod_instantiate()
◆ mod_name()
◆ mod_open()
◆ mod_read()
◆ mod_write()
◆ arp_listen_config
Initial value:= {
interface), .dflt = "eth0" },
}
#define CONF_PARSER_TERMINATOR
#define FR_CONF_OFFSET(_name, _struct, _field)
conf_parser_t which parses a single CONF_PAIR, writing the result to a field in a struct
#define FR_CONF_OFFSET_FLAGS(_name, _flags, _struct, _field)
conf_parser_t which parses a single CONF_PAIR, writing the result to a field in a struct
@ CONF_FLAG_NOT_EMPTY
CONF_PAIR is required to have a non zero length value.
How to parse an ARP listen section.
Definition at line 51 of file proto_arp_ethernet.c.
◆ proto_arp_ethernet
Initial value:= {
.common = {
.name = "arp_ethernet",
},
}
#define FR_ARP_PACKET_SIZE
#define MODULE_MAGIC_INIT
Stop people using different module/library/server versions together.
static ssize_t mod_write(fr_listen_t *li, UNUSED void *packet_ctx, UNUSED fr_time_t request_time, uint8_t *buffer, size_t buffer_len, UNUSED size_t written)
static conf_parser_t const arp_listen_config[]
How to parse an ARP listen section.
static int mod_open(fr_listen_t *li)
Open a pcap file for ARP.
static ssize_t mod_read(fr_listen_t *li, UNUSED void **packet_ctx, fr_time_t *recv_time_p, uint8_t *buffer, size_t buffer_len, size_t *leftover)
static char const * mod_name(fr_listen_t *li)
static int mod_instantiate(module_inst_ctx_t const *mctx)
Definition at line 228 of file proto_arp_ethernet.c.