#include <stdint.h>
#include <errno.h>
#include <string.h>
#include <time.h>
#include <linux/if_ether.h>
#include <stdio.h>
#include "mac.h"
Go to the source code of this file.
Data Structures | |
struct | rtu_request |
RTU request: input for the RTU. More... | |
struct | filtering_entry |
RTU Filtering Database Entry Object. More... | |
struct | vlan_table_entry |
RTU VLAN registration entry object. More... | |
Defines | |
#define | RTU_BANKS 2 |
#define | RTU_BUCKETS 4 |
#define | LAST_RTU_BUCKET ((RTU_BUCKETS)-1) |
#define | RTU_ENTRIES (16384/(RTU_BANKS)) |
#define | HTAB_ENTRIES ((RTU_ENTRIES)/(RTU_BUCKETS)) |
#define | LAST_HTAB_ENTRY ((HTAB_ENTRIES)-1) |
#define | ENTRY_WORDS 8 |
#define | CAM_ENTRIES (((RTU_HCAM_WORDS)/(ENTRY_WORDS))/(RTU_BANKS)) |
#define | LAST_CAM_ENTRY ((CAM_ENTRIES)-1) |
#define | MIN_PORT 0 |
#define | MAX_PORT 9 |
#define | NIC_PORT 10 |
#define | NUM_VLANS 4096 |
#define | NUM_RESERVED_ADDR 16 |
#define | DEFAULT_AGING_TIME 300 |
#define | MIN_AGING_TIME 10 |
#define | MAX_AGING_TIME 10000 |
#define | DEFAULT_AGING_RES 20 |
#define | time_after(a, b) ((long)(b) - (long)(a) < 0) |
#define | TRACE_DBG(...) |
Functions | |
static struct filtering_entry * | rtu_fe_copy (struct filtering_entry *dst, struct filtering_entry *src) |
Copies src filtering entry body into dst filtering entry body. | |
static struct filtering_entry * | rtu_fe_clean (struct filtering_entry *ent) |
Cleans MAC entry from mirror MAC table. All entry fields are reset. | |
static unsigned long | now () |
Returns number of seconds since the epoch. | |
int | rtud_init_exports () |
void | rtud_handle_wripc () |
#define CAM_ENTRIES (((RTU_HCAM_WORDS)/(ENTRY_WORDS))/(RTU_BANKS)) |
#define DEFAULT_AGING_RES 20 |
#define DEFAULT_AGING_TIME 300 |
#define ENTRY_WORDS 8 |
#define HTAB_ENTRIES ((RTU_ENTRIES)/(RTU_BUCKETS)) |
#define LAST_CAM_ENTRY ((CAM_ENTRIES)-1) |
#define LAST_HTAB_ENTRY ((HTAB_ENTRIES)-1) |
#define LAST_RTU_BUCKET ((RTU_BUCKETS)-1) |
#define MAX_AGING_TIME 10000 |
#define MAX_PORT 9 |
#define MIN_AGING_TIME 10 |
#define MIN_PORT 0 |
#define NIC_PORT 10 |
#define NUM_RESERVED_ADDR 16 |
#define NUM_VLANS 4096 |
#define RTU_BANKS 2 |
#define RTU_BUCKETS 4 |
#define RTU_ENTRIES (16384/(RTU_BANKS)) |
#define time_after | ( | a, | |
b | |||
) | ((long)(b) - (long)(a) < 0) |
#define TRACE_DBG | ( | ... ) |
static unsigned long now | ( | ) | [inline, static] |
Returns number of seconds since the epoch.
static struct filtering_entry* rtu_fe_clean | ( | struct filtering_entry * | ent ) | [static, read] |
Cleans MAC entry from mirror MAC table. All entry fields are reset.
ent | pointer to entry to clean (either in HCAM or HTAB) |
static struct filtering_entry* rtu_fe_copy | ( | struct filtering_entry * | dst, |
struct filtering_entry * | src | ||
) | [static, read] |
Copies src filtering entry body into dst filtering entry body.
void rtud_handle_wripc | ( | ) |
int rtud_init_exports | ( | ) |