Annotation of fwsync/driver/fwsync_proto.h, revision 1.7
1.7 ! misho 1: /*-
! 2: * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
! 3: *
! 4: * Copyright (c) 2022 Michael Pounov <misho@elwix.org>, CloudSigma AG
! 5: *
! 6: * Redistribution and use in source and binary forms, with or without
! 7: * modification, are permitted provided that the following conditions
! 8: * are met:
! 9: * 1. Redistributions of source code must retain the above copyright
! 10: * notice, this list of conditions and the following disclaimer.
! 11: * 2. Redistributions in binary form must reproduce the above copyright
! 12: * notice, this list of conditions and the following disclaimer in the
! 13: * documentation and/or other materials provided with the distribution.
! 14: *
! 15: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
! 16: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
! 17: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
! 18: * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
! 19: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
! 20: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
! 21: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
! 22: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
! 23: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
! 24: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
! 25: * SUCH DAMAGE.
! 26: */
1.1 misho 27: #ifndef __FWSYNC_PROTO_H
28: #define __FWSYNC_PROTO_H
29:
30:
31: struct fws_proto {
32: uint8_t fws_version;
33: uint8_t fws_fib;
34: uint8_t fws_addrtype;
35: uint8_t fws_proto;
1.5 misho 36: uint8_t fws_cmdtype;
37: uint16_t fws_kidx;
1.4 misho 38: uint16_t fws_rulenum;
39: uint32_t fws_ruleid;
1.6 misho 40: uint32_t fws_linktype;
1.1 misho 41: uint16_t fws_sport;
42: uint16_t fws_dport;
1.3 misho 43: uint16_t fws_aport;
44: uint16_t fws_pport;
45: struct in_addr fws_aaddr;
46: struct in_addr fws_paddr;
1.1 misho 47: union {
48: struct in_addr fws_saddr;
49: struct in6_addr fws_saddr6;
50: };
51: union {
52: struct in_addr fws_daddr;
53: struct in6_addr fws_daddr6;
54: };
55: uint32_t fws_scopeid;
56: } __packed;
57:
58: #define FWS_PKTVER_STATE 'S'
1.3 misho 59: #define FWS_PKTVER_ALIAS 'N'
1.1 misho 60:
61:
62: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>