📄 frame_relay.h
字号:
/* * Cisco router simulation platform. * Copyright (c) 2006 Christophe Fillot (cf@utc.fr) * * Frame-Relay definitions. */#ifndef __FRAME_RELAY_H__#define __FRAME_RELAY_H__#include <pthread.h>#include "utils.h"#include "mempool.h"#include "net_io.h"/* DLCIs used for LMI */#define FR_DLCI_LMI_ANSI 0 /* ANSI LMI */#define FR_DLCI_LMI_CISCO 1023 /* Cisco LMI */#define FR_LMI_ANSI_STATUS_OFFSET 5#define FR_LMI_ANSI_STATUS_ENQUIRY 0x75 /* sent by user */#define FR_LMI_ANSI_STATUS 0x7d /* sent by network *//* Maximum packet size */#define FR_MAX_PKT_SIZE 2048/* Frame-Relay switch table */typedef struct frsw_conn frsw_conn_t;struct frsw_conn { frsw_conn_t *hash_next,*next,**pprev; netio_desc_t *input,*output; u_int dlci_in,dlci_out; m_uint64_t count;};/* Virtual Frame-Relay switch table */#define FRSW_HASH_SIZE 256typedef struct frsw_table frsw_table_t;struct frsw_table { char *name; pthread_mutex_t lock; mempool_t mp; m_uint64_t drop; frsw_conn_t *dlci_table[FRSW_HASH_SIZE];};#define FRSW_LOCK(t) pthread_mutex_lock(&(t)->lock)#define FRSW_UNLOCK(t) pthread_mutex_unlock(&(t)->lock)/* Acquire a reference to a Frame-Relay switch (increment reference count) */frsw_table_t *frsw_acquire(char *name);/* Release a Frame-Relay switch (decrement reference count) */int frsw_release(char *name);/* Create a virtual switch table */frsw_table_t *frsw_create_table(char *name);/* Delete a Frame-Relay switch */int frsw_delete(char *name);/* Delete all Frame-Relay switches */int frsw_delete_all(void);/* Create a switch connection */int frsw_create_vc(frsw_table_t *t,char *nio_input,u_int dlci_in, char *nio_output,u_int dlci_out);/* Remove a switch connection */int frsw_delete_vc(frsw_table_t *t,char *nio_input,u_int dlci_in, char *nio_output,u_int dlci_out);/* Save the configuration of a Frame-Relay switch */void frsw_save_config(frsw_table_t *t,FILE *fd);/* Save configurations of all Frame-Relay switches */void frsw_save_config_all(FILE *fd);/* Start a virtual Frame-Relay switch */int frsw_start(char *filename);#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -