|
|
| version 1.1.1.1, 2022/06/22 13:01:55 | version 1.9, 2022/08/18 11:30:27 |
|---|---|
| Line 21 | Line 21 |
| #include <sys/un.h> | #include <sys/un.h> |
| #include <sys/module.h> | #include <sys/module.h> |
| #include <sys/kthread.h> | #include <sys/kthread.h> |
| #include <sys/priority.h> | |
| #include <sys/taskqueue.h> | #include <sys/taskqueue.h> |
| #include <sys/queue.h> | |
| #include <sys/tree.h> | |
| #include <sys/mutex.h> | |
| #include <sys/uio.h> | #include <sys/uio.h> |
| #include <sys/poll.h> | #include <sys/poll.h> |
| #include <netinet/libalias/alias.h> | |
| #include <netinet/libalias/alias_local.h> | |
| #include <netinet/libalias/alias_db.h> | |
| #include <net/if.h> | #include <net/if.h> |
| #include <net/if_var.h> | #include <net/if_var.h> |
| #include <net/if_dl.h> | #include <net/if_dl.h> |
| Line 31 | Line 40 |
| #include <netinet/ip.h> | #include <netinet/ip.h> |
| #include <netinet/ip_var.h> | #include <netinet/ip_var.h> |
| #include <netinet/udp.h> | #include <netinet/udp.h> |
| #define IPFW_INTERNAL | |
| #include <netinet/ip_fw.h> | #include <netinet/ip_fw.h> |
| #include <netpfil/ipfw/ip_fw_private.h> | #include <netpfil/ipfw/ip_fw_private.h> |
| #include "fwsync_proto.h" | #include "fwsync_proto.h" |
| #include "fwsync_utils.h" | |
| #include "fwsync_workers.h" | #include "fwsync_workers.h" |
| #if 0 | |
| #include <sys/uio.h> | |
| #include <sys/taskqueue.h> | |
| #include <sys/rwlock.h> | |
| #include <sys/queue.h> | |
| #include <sys/tree.h> | |
| #include <sys/ioccom.h> | |
| #include <sys/poll.h> | |
| #include <sys/event.h> | |
| #include <sys/selinfo.h> | |
| #include <sys/fcntl.h> | |
| #include <sys/syslog.h> | |
| #include <sys/rwlock.h> | |
| #endif | |
| #define IFT_FWSYNC 0xfc | #define IFT_FWSYNC 0xfc |
| #define DRV_NAME "fwsync" | #define DRV_NAME "fwsync" |
| Line 135 struct fwsync_context { | Line 127 struct fwsync_context { |
| #define CTX_COLLECTOR_2_ONLINE 0x100 | #define CTX_COLLECTOR_2_ONLINE 0x100 |
| #if 0 | #if 0 |
| #define DRV_PKTSTART 0xDEADBEEF | |
| #define DRV_PKTEND 0xDEBADEBA | |
| #define DRETFLUSH _IOW('D', 1, u_char) | #define DRETFLUSH _IOW('D', 1, u_char) |
| #define DRETADDFILT _IOW('D', 2, struct dret_filter) | #define DRETADDFILT _IOW('D', 2, struct dret_filter) |
| #define DRETDELFILT _IOW('D', 3, struct dret_filter) | #define DRETDELFILT _IOW('D', 3, struct dret_filter) |
| Line 168 struct dret_filter { | Line 156 struct dret_filter { |
| } while (0) | } while (0) |
| #endif | #endif |
| struct fws_sndpkt { | |
| struct fws_proto sp_proto; | |
| TAILQ_ENTRY(fws_sndpkt) sp_next; | |
| }; | |
| typedef TAILQ_HEAD(, fws_sndpkt) fwsync_sndpkt_t; | |
| extern int fwsync_debug; | extern int fwsync_debug; |
| extern struct fwsync_context fws_ctx; | extern struct fwsync_context fws_ctx; |
| extern struct cfg_sync fws_cfg; | extern struct cfg_sync fws_cfg; |
| extern struct task fws_sndpkt_task; | extern struct task fws_sndpkt_task; |
| extern struct taskqueue *fws_tq; | |
| extern struct callout fws_co; | |
| extern struct mtx fws_mtx_c, fws_mtx_e, fws_mtx_u, fws_mtx_n; | |
| extern struct mbuf *fws_sndpkt; | |
| extern fwsync_sndpkt_t fwsync_sndpkt, fwsync_updpkt, fwsync_natpkt; | |
| int fwsync_cfg(struct ip_fw_chain *ch, ip_fw3_opheader *op3, struct sockopt_data *sd); | int fwsync_cfg(struct ip_fw_chain *ch, ip_fw3_opheader *op3, struct sockopt_data *sd); |
| int fwsync_destroy(struct ip_fw_chain *ch, ip_fw3_opheader *op3, struct sockopt_data *sd); | int fwsync_destroy(struct ip_fw_chain *ch, ip_fw3_opheader *op3, struct sockopt_data *sd); |