mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-12-22 09:41:54 +00:00
Cleanup in sysdep KRT code, part 4.
Adding some files that was accidentally removed (instead of moved) in cleanup part 2.
This commit is contained in:
parent
064e7be5cd
commit
95616c8202
49
sysdep/bsd/krt-sys.h
Normal file
49
sysdep/bsd/krt-sys.h
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
/*
|
||||||
|
* BIRD -- *BSD Kernel Route Syncer
|
||||||
|
*
|
||||||
|
* (c) 2004 Ondrej Filip <feela@network.cz>
|
||||||
|
*
|
||||||
|
* Can be freely distributed and used under the terms of the GNU GPL.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _BIRD_KRT_SYS_H_
|
||||||
|
#define _BIRD_KRT_SYS_H_
|
||||||
|
|
||||||
|
|
||||||
|
/* Kernel interfaces */
|
||||||
|
|
||||||
|
struct kif_params {
|
||||||
|
};
|
||||||
|
|
||||||
|
struct kif_status {
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static inline void kif_sys_init(struct kif_proto *p UNUSED) { }
|
||||||
|
static inline int kif_sys_reconfigure(struct kif_proto *p UNUSED, struct kif_config *n UNUSED, struct kif_config *o UNUSED) { return 1; }
|
||||||
|
|
||||||
|
static inline void kif_sys_preconfig(struct config *c UNUSED) { }
|
||||||
|
static inline void kif_sys_postconfig(struct kif_config *c UNUSED) { }
|
||||||
|
static inline void kif_sys_init_config(struct kif_config *c UNUSED) { }
|
||||||
|
static inline void kif_sys_copy_config(struct kif_config *d UNUSED, struct kif_config *s UNUSED) { }
|
||||||
|
|
||||||
|
|
||||||
|
/* Kernel routes */
|
||||||
|
|
||||||
|
struct krt_params {
|
||||||
|
};
|
||||||
|
|
||||||
|
struct krt_status {
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static inline void krt_sys_init(struct krt_proto *p UNUSED) { }
|
||||||
|
static inline int krt_sys_reconfigure(struct krt_proto *p UNUSED, struct krt_config *n UNUSED, struct krt_config *o UNUSED) { return 1; }
|
||||||
|
|
||||||
|
static inline void krt_sys_preconfig(struct config *c UNUSED) { }
|
||||||
|
static inline void krt_sys_postconfig(struct krt_config *c UNUSED) { }
|
||||||
|
static inline void krt_sys_init_config(struct krt_config *c UNUSED) { }
|
||||||
|
static inline void krt_sys_copy_config(struct krt_config *d UNUSED, struct krt_config *s UNUSED) { }
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
22
sysdep/cf/linux.h
Normal file
22
sysdep/cf/linux.h
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* Configuration for Linux based systems
|
||||||
|
*
|
||||||
|
* (c) 1998--1999 Martin Mares <mj@ucw.cz>
|
||||||
|
*
|
||||||
|
* Can be freely distributed and used under the terms of the GNU GPL.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define CONFIG_AUTO_ROUTES
|
||||||
|
#define CONFIG_SELF_CONSCIOUS
|
||||||
|
#define CONFIG_MULTIPLE_TABLES
|
||||||
|
#define CONFIG_ALL_TABLES_AT_ONCE
|
||||||
|
|
||||||
|
#define CONFIG_MC_PROPER_SRC
|
||||||
|
#define CONFIG_UNIX_DONTROUTE
|
||||||
|
|
||||||
|
#define CONFIG_RESTRICTED_PRIVILEGES
|
||||||
|
|
||||||
|
/*
|
||||||
|
Link: sysdep/linux
|
||||||
|
Link: sysdep/unix
|
||||||
|
*/
|
46
sysdep/linux/krt-sys.h
Normal file
46
sysdep/linux/krt-sys.h
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
/*
|
||||||
|
* BIRD -- Linux Kernel Netlink Route Syncer
|
||||||
|
*
|
||||||
|
* (c) 1998--2000 Martin Mares <mj@ucw.cz>
|
||||||
|
*
|
||||||
|
* Can be freely distributed and used under the terms of the GNU GPL.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _BIRD_KRT_SYS_H_
|
||||||
|
#define _BIRD_KRT_SYS_H_
|
||||||
|
|
||||||
|
|
||||||
|
/* Kernel interfaces */
|
||||||
|
|
||||||
|
struct kif_params {
|
||||||
|
};
|
||||||
|
|
||||||
|
struct kif_status {
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static inline void kif_sys_init(struct kif_proto *p UNUSED) { }
|
||||||
|
static inline int kif_sys_reconfigure(struct kif_proto *p UNUSED, struct kif_config *n UNUSED, struct kif_config *o UNUSED) { return 1; }
|
||||||
|
|
||||||
|
static inline void kif_sys_preconfig(struct config *c UNUSED) { }
|
||||||
|
static inline void kif_sys_postconfig(struct kif_config *c UNUSED) { }
|
||||||
|
static inline void kif_sys_init_config(struct kif_config *c UNUSED) { }
|
||||||
|
static inline void kif_sys_copy_config(struct kif_config *d UNUSED, struct kif_config *s UNUSED) { }
|
||||||
|
|
||||||
|
|
||||||
|
/* Kernel routes */
|
||||||
|
|
||||||
|
#define NL_NUM_TABLES 256
|
||||||
|
|
||||||
|
struct krt_params {
|
||||||
|
int table_id; /* Kernel table ID we sync with */
|
||||||
|
};
|
||||||
|
|
||||||
|
struct krt_status {
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static inline void krt_sys_init(struct krt_proto *p UNUSED) { }
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
32
sysdep/linux/netlink.Y
Normal file
32
sysdep/linux/netlink.Y
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
/*
|
||||||
|
* BIRD -- Linux Netlink Configuration
|
||||||
|
*
|
||||||
|
* (c) 1999--2000 Martin Mares <mj@ucw.cz>
|
||||||
|
*
|
||||||
|
* Can be freely distributed and used under the terms of the GNU GPL.
|
||||||
|
*/
|
||||||
|
|
||||||
|
CF_HDR
|
||||||
|
|
||||||
|
CF_DECLS
|
||||||
|
|
||||||
|
CF_KEYWORDS(ASYNC, KERNEL, TABLE, KRT_PREFSRC, KRT_REALM)
|
||||||
|
|
||||||
|
CF_GRAMMAR
|
||||||
|
|
||||||
|
CF_ADDTO(kern_proto, kern_proto nl_item ';')
|
||||||
|
|
||||||
|
nl_item:
|
||||||
|
KERNEL TABLE expr {
|
||||||
|
if ($3 <= 0 || $3 >= NL_NUM_TABLES)
|
||||||
|
cf_error("Kernel routing table number out of range");
|
||||||
|
THIS_KRT->sys.table_id = $3;
|
||||||
|
}
|
||||||
|
;
|
||||||
|
|
||||||
|
CF_ADDTO(dynamic_attr, KRT_PREFSRC { $$ = f_new_dynamic_attr(EAF_TYPE_IP_ADDRESS, T_IP, EA_KRT_PREFSRC); })
|
||||||
|
CF_ADDTO(dynamic_attr, KRT_REALM { $$ = f_new_dynamic_attr(EAF_TYPE_INT, T_INT, EA_KRT_REALM); })
|
||||||
|
|
||||||
|
CF_CODE
|
||||||
|
|
||||||
|
CF_END
|
1149
sysdep/linux/netlink.c
Normal file
1149
sysdep/linux/netlink.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user