@zigc/lib 0.17.0-dev.332 → 0.17.0-dev.356
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/main.js +8 -8
- package/libc/darwin/SDKSettings.json +1 -1
- package/libc/darwin/libSystem.tbd +88 -87
- package/libc/include/aarch64-openbsd-none/arm64/cpu.h +7 -1
- package/libc/include/aarch64-openbsd-none/arm64/intr.h +9 -1
- package/libc/include/aarch64-openbsd-none/machine/cpu.h +7 -1
- package/libc/include/aarch64-openbsd-none/machine/intr.h +9 -1
- package/libc/include/any-darwin-any/AvailabilityInternal.h +10 -10
- package/libc/include/any-darwin-any/AvailabilityVersions.h +8 -0
- package/libc/include/any-darwin-any/mach/host_info.h +3 -1
- package/libc/include/any-darwin-any/mach/mach_voucher_types.h +2 -0
- package/libc/include/any-darwin-any/mach/vm_statistics.h +33 -2
- package/libc/include/any-darwin-any/spawn.h +3 -1
- package/libc/include/any-darwin-any/sys/_symbol_aliasing.h +12 -0
- package/libc/include/generic-openbsd/db.h +1 -7
- package/libc/include/generic-openbsd/ddb/db_interface.h +2 -1
- package/libc/include/generic-openbsd/fnmatch.h +6 -2
- package/libc/include/generic-openbsd/login_cap.h +3 -1
- package/libc/include/generic-openbsd/miscfs/fuse/fusefs_node.h +2 -1
- package/libc/include/generic-openbsd/net/bpf.h +3 -1
- package/libc/include/generic-openbsd/net/hfsc.h +4 -4
- package/libc/include/generic-openbsd/net/if.h +5 -1
- package/libc/include/generic-openbsd/net/if_bridge.h +48 -1
- package/libc/include/generic-openbsd/net/if_etherbridge.h +20 -7
- package/libc/include/generic-openbsd/net/if_media.h +26 -1
- package/libc/include/generic-openbsd/net/if_pflow.h +71 -20
- package/libc/include/generic-openbsd/net/if_pfsync.h +2 -2
- package/libc/include/generic-openbsd/net/if_sppp.h +2 -1
- package/libc/include/generic-openbsd/net/if_trunk.h +3 -2
- package/libc/include/generic-openbsd/net/if_types.h +2 -2
- package/libc/include/generic-openbsd/net/if_var.h +34 -12
- package/libc/include/generic-openbsd/net/netisr.h +1 -3
- package/libc/include/generic-openbsd/net/pfvar.h +154 -1
- package/libc/include/generic-openbsd/net/pfvar_priv.h +256 -1
- package/libc/include/generic-openbsd/net80211/ieee80211.h +76 -4
- package/libc/include/generic-openbsd/net80211/ieee80211_ioctl.h +3 -2
- package/libc/include/generic-openbsd/net80211/ieee80211_node.h +48 -2
- package/libc/include/generic-openbsd/net80211/ieee80211_proto.h +4 -1
- package/libc/include/generic-openbsd/net80211/ieee80211_var.h +18 -2
- package/libc/include/generic-openbsd/netinet/if_ether.h +12 -11
- package/libc/include/generic-openbsd/netinet/igmp_var.h +17 -3
- package/libc/include/generic-openbsd/netinet/in_pcb.h +2 -1
- package/libc/include/generic-openbsd/netinet/in_var.h +17 -59
- package/libc/include/generic-openbsd/netinet/ip.h +3 -2
- package/libc/include/generic-openbsd/netinet/tcp_timer.h +1 -2
- package/libc/include/generic-openbsd/netinet6/in6_var.h +15 -29
- package/libc/include/generic-openbsd/netinet6/ip6_var.h +1 -2
- package/libc/include/generic-openbsd/netinet6/mld6_var.h +17 -4
- package/libc/include/generic-openbsd/netinet6/nd6.h +2 -2
- package/libc/include/generic-openbsd/pthread.h +2 -2
- package/libc/include/generic-openbsd/signal.h +2 -2
- package/libc/include/generic-openbsd/sndio.h +6 -12
- package/libc/include/generic-openbsd/strings.h +5 -1
- package/libc/include/generic-openbsd/sys/device.h +4 -3
- package/libc/include/generic-openbsd/sys/disklabel.h +17 -5
- package/libc/include/generic-openbsd/sys/dkio.h +3 -5
- package/libc/include/generic-openbsd/sys/filedesc.h +3 -2
- package/libc/include/generic-openbsd/sys/mbuf.h +1 -1
- package/libc/include/generic-openbsd/sys/mman.h +7 -2
- package/libc/include/generic-openbsd/sys/mutex.h +10 -7
- package/libc/include/generic-openbsd/sys/namei.h +8 -7
- package/libc/include/generic-openbsd/sys/param.h +1 -1
- package/libc/include/generic-openbsd/sys/pledge.h +1 -3
- package/libc/include/generic-openbsd/sys/protosw.h +8 -1
- package/libc/include/generic-openbsd/sys/ptrace.h +4 -1
- package/libc/include/generic-openbsd/sys/sched.h +8 -1
- package/libc/include/generic-openbsd/sys/signal.h +4 -2
- package/libc/include/generic-openbsd/sys/socketvar.h +2 -1
- package/libc/include/generic-openbsd/sys/sockio.h +11 -1
- package/libc/include/generic-openbsd/sys/syscall.h +5 -3
- package/libc/include/generic-openbsd/sys/syscallargs.h +9 -2
- package/libc/include/generic-openbsd/sys/sysctl.h +7 -4
- package/libc/include/generic-openbsd/sys/types.h +6 -2
- package/libc/include/generic-openbsd/sys/videoio.h +143 -68
- package/libc/include/generic-openbsd/sys/xcall.h +2 -2
- package/libc/include/generic-openbsd/time.h +2 -2
- package/libc/include/generic-openbsd/unistd.h +2 -2
- package/libc/include/generic-openbsd/uvm/uvm_anon.h +2 -3
- package/libc/include/generic-openbsd/uvm/uvm_extern.h +1 -19
- package/libc/include/generic-openbsd/uvm/uvm_pager.h +3 -4
- package/libc/include/generic-openbsd/uvm/uvm_pmemrange.h +1 -2
- package/libc/include/generic-openbsd/uvm/uvm_swap.h +4 -1
- package/libc/include/generic-openbsd/uvm/uvm_vnode.h +3 -4
- package/libc/include/generic-openbsd/uvm/uvmexp.h +41 -35
- package/libc/include/mips64-openbsd-none/machine/octeonvar.h +1 -27
- package/libc/include/mips64-openbsd-none/octeon/octeonvar.h +1 -27
- package/libc/include/mips64el-openbsd-none/loongson/apmvar.h +1 -1
- package/libc/include/mips64el-openbsd-none/loongson/param.h +1 -5
- package/libc/include/mips64el-openbsd-none/machine/apmvar.h +1 -1
- package/libc/include/mips64el-openbsd-none/machine/param.h +1 -5
- package/libc/include/powerpc-openbsd-eabihf/powerpc/intr.h +1 -4
- package/libc/include/powerpc64-openbsd-none/machine/atomic.h +3 -3
- package/libc/include/powerpc64-openbsd-none/powerpc64/atomic.h +3 -3
- package/libc/include/riscv64-openbsd-none/machine/cpu.h +4 -8
- package/libc/include/riscv64-openbsd-none/machine/cpufunc.h +4 -4
- package/libc/include/riscv64-openbsd-none/machine/pmap.h +5 -1
- package/libc/include/riscv64-openbsd-none/machine/pte.h +9 -1
- package/libc/include/riscv64-openbsd-none/riscv64/cpu.h +4 -8
- package/libc/include/riscv64-openbsd-none/riscv64/cpufunc.h +4 -4
- package/libc/include/riscv64-openbsd-none/riscv64/pmap.h +5 -1
- package/libc/include/riscv64-openbsd-none/riscv64/pte.h +9 -1
- package/libc/include/x86-openbsd-none/i386/specialreg.h +3 -1
- package/libc/include/x86-openbsd-none/machine/specialreg.h +3 -1
- package/libc/include/x86_64-openbsd-none/amd64/conf.h +11 -2
- package/libc/include/x86_64-openbsd-none/amd64/cpu.h +14 -4
- package/libc/include/x86_64-openbsd-none/amd64/cpufunc.h +2 -3
- package/libc/include/x86_64-openbsd-none/amd64/ghcb.h +2 -1
- package/libc/include/x86_64-openbsd-none/amd64/i82489var.h +2 -4
- package/libc/include/x86_64-openbsd-none/amd64/i8259.h +1 -53
- package/libc/include/x86_64-openbsd-none/amd64/intr.h +5 -2
- package/libc/include/x86_64-openbsd-none/amd64/intrdefs.h +9 -7
- package/libc/include/x86_64-openbsd-none/amd64/kexec.h +48 -0
- package/libc/include/x86_64-openbsd-none/amd64/specialreg.h +4 -1
- package/libc/include/x86_64-openbsd-none/machine/conf.h +11 -2
- package/libc/include/x86_64-openbsd-none/machine/cpu.h +14 -4
- package/libc/include/x86_64-openbsd-none/machine/cpufunc.h +2 -3
- package/libc/include/x86_64-openbsd-none/machine/ghcb.h +2 -1
- package/libc/include/x86_64-openbsd-none/machine/i82489var.h +2 -4
- package/libc/include/x86_64-openbsd-none/machine/i8259.h +1 -53
- package/libc/include/x86_64-openbsd-none/machine/intr.h +5 -2
- package/libc/include/x86_64-openbsd-none/machine/intrdefs.h +9 -7
- package/libc/include/x86_64-openbsd-none/machine/kexec.h +48 -0
- package/libc/include/x86_64-openbsd-none/machine/specialreg.h +4 -1
- package/libc/openbsd/abilists +0 -0
- package/package.json +1 -1
- package/std/Io/File.zig +6 -0
- package/std/Target.zig +50 -38
- package/std/bit_set.zig +0 -1
- package/std/crypto/ascon.zig +0 -2
- package/std/crypto/salsa20.zig +0 -6
- package/std/crypto/sha3.zig +0 -2
- package/std/debug/cpu_context.zig +0 -21
- package/libc/include/mips64el-openbsd-none/loongson/hibernate.h +0 -33
- package/libc/include/mips64el-openbsd-none/loongson/hibernate_var.h +0 -39
- package/libc/include/mips64el-openbsd-none/machine/hibernate.h +0 -33
- package/libc/include/mips64el-openbsd-none/machine/hibernate_var.h +0 -39
|
@@ -97,6 +97,8 @@ typedef mach_voucher_attr_key_t *mach_voucher_attr_key_array_t;
|
|
|
97
97
|
#define MACH_VOUCHER_ATTR_KEY_PTHPRIORITY ((mach_voucher_attr_key_t)4)
|
|
98
98
|
#define MACH_VOUCHER_ATTR_KEY_USER_DATA ((mach_voucher_attr_key_t)7)
|
|
99
99
|
#define MACH_VOUCHER_ATTR_KEY_BITS MACH_VOUCHER_ATTR_KEY_USER_DATA
|
|
100
|
+
|
|
101
|
+
/* not used, for compatibility only */
|
|
100
102
|
#define MACH_VOUCHER_ATTR_KEY_TEST ((mach_voucher_attr_key_t)8)
|
|
101
103
|
|
|
102
104
|
/* not used, for compatibility only */
|
|
@@ -174,13 +174,44 @@ struct vm_statistics64 {
|
|
|
174
174
|
uint64_t total_uncompressed_pages_in_compressor; /* # of pages (uncompressed) held within the compressor. */
|
|
175
175
|
/* added for rev2 */
|
|
176
176
|
uint64_t swapped_count; /* # of compressor-stored pages currently stored in swap */
|
|
177
|
+
/* Added in rev3 */
|
|
178
|
+
/* The total number of physical pages in the tag storage region */
|
|
179
|
+
uint64_t total_tag_storage_pages;
|
|
180
|
+
/*
|
|
181
|
+
* The number of tag storage pages which hold non-tag data and are pageable
|
|
182
|
+
*/
|
|
183
|
+
uint64_t nontag_pageable_tag_storage_pages;
|
|
184
|
+
/* The number of tag storage pages which hold non-tag data and are wired */
|
|
185
|
+
uint64_t nontag_wired_tag_storage_pages;
|
|
186
|
+
/*
|
|
187
|
+
* The number of tag storage pages which are being used for neither tags nor
|
|
188
|
+
* regular memory
|
|
189
|
+
*/
|
|
190
|
+
uint64_t free_tag_storage_pages;
|
|
191
|
+
/* The number of tag storage pages which currently hold tags */
|
|
192
|
+
uint64_t tag_storing_tag_storage_pages;
|
|
193
|
+
|
|
194
|
+
/* The total number of virtual pages which are tagged */
|
|
195
|
+
uint64_t total_tagged_pages;
|
|
196
|
+
/* The number of resident, physical pages which are tagged */
|
|
197
|
+
uint64_t resident_tagged_pages;
|
|
198
|
+
/*
|
|
199
|
+
* The outstanding number of virtual tagged pages whose contents reside in the
|
|
200
|
+
* compressor
|
|
201
|
+
*/
|
|
202
|
+
uint64_t compressed_tagged_pages;
|
|
203
|
+
|
|
204
|
+
/* The number of tagged pages which have been compressed since boot */
|
|
205
|
+
uint64_t tagged_compressions;
|
|
206
|
+
/* The number of tagged pages which have been decompressed since boot */
|
|
207
|
+
uint64_t tagged_decompressions;
|
|
208
|
+
/* The current number of bytes consumed by compressed tag storage data */
|
|
209
|
+
uint64_t compressed_tag_storage_bytes;
|
|
177
210
|
} __attribute__((aligned(8)));
|
|
178
211
|
|
|
179
212
|
typedef struct vm_statistics64 *vm_statistics64_t;
|
|
180
213
|
typedef struct vm_statistics64 vm_statistics64_data_t;
|
|
181
214
|
|
|
182
|
-
kern_return_t vm_stats(void *info, unsigned int *count);
|
|
183
|
-
|
|
184
215
|
/*
|
|
185
216
|
* VM_STATISTICS_TRUNCATE_TO_32_BIT
|
|
186
217
|
*
|
|
@@ -160,7 +160,9 @@ int posix_spawnattr_setexceptionports_np(posix_spawnattr_t * __restrict,
|
|
|
160
160
|
int posix_spawnattr_setspecialport_np(posix_spawnattr_t * __restrict,
|
|
161
161
|
mach_port_t, int) __API_AVAILABLE(macos(10.5), ios(2.0)) __API_UNAVAILABLE(watchos, tvos);
|
|
162
162
|
|
|
163
|
-
int posix_spawnattr_setnosmt_np(const posix_spawnattr_t * __restrict
|
|
163
|
+
int posix_spawnattr_setnosmt_np(const posix_spawnattr_t * __restrict) __API_AVAILABLE(macos(11.0));
|
|
164
|
+
|
|
165
|
+
int posix_spawnattr_set_4k_page_size_np(const posix_spawnattr_t * __restrict) __API_AVAILABLE(macos(26.0));
|
|
164
166
|
|
|
165
167
|
/*
|
|
166
168
|
* Set CPU Security Mitigation on the spawned process
|
|
@@ -587,6 +587,12 @@
|
|
|
587
587
|
#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_26_4(x)
|
|
588
588
|
#endif
|
|
589
589
|
|
|
590
|
+
#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 260500
|
|
591
|
+
#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_26_5(x) x
|
|
592
|
+
#else
|
|
593
|
+
#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_26_5(x)
|
|
594
|
+
#endif
|
|
595
|
+
|
|
590
596
|
#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1000
|
|
591
597
|
#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_0(x) x
|
|
592
598
|
#else
|
|
@@ -1049,3 +1055,9 @@
|
|
|
1049
1055
|
#define __DARWIN_ALIAS_STARTING_MAC___MAC_26_4(x)
|
|
1050
1056
|
#endif
|
|
1051
1057
|
|
|
1058
|
+
#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 260500
|
|
1059
|
+
#define __DARWIN_ALIAS_STARTING_MAC___MAC_26_5(x) x
|
|
1060
|
+
#else
|
|
1061
|
+
#define __DARWIN_ALIAS_STARTING_MAC___MAC_26_5(x)
|
|
1062
|
+
#endif
|
|
1063
|
+
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: db.h,v 1.
|
|
1
|
+
/* $OpenBSD: db.h,v 1.14 2026/03/10 04:30:34 deraadt Exp $ */
|
|
2
2
|
/* $NetBSD: db.h,v 1.13 1994/10/26 00:55:48 cgd Exp $ */
|
|
3
3
|
|
|
4
4
|
/*-
|
|
@@ -84,15 +84,9 @@ typedef enum { DB_BTREE, DB_HASH, DB_RECNO } DBTYPE;
|
|
|
84
84
|
* is so that the access methods can skip copying the key/data pair when
|
|
85
85
|
* the DB_LOCK flag isn't set.
|
|
86
86
|
*/
|
|
87
|
-
#if UINT_MAX > 65535
|
|
88
87
|
#define DB_LOCK 0x20000000 /* Do locking. */
|
|
89
88
|
#define DB_SHMEM 0x40000000 /* Use shared memory. */
|
|
90
89
|
#define DB_TXN 0x80000000 /* Do transactions. */
|
|
91
|
-
#else
|
|
92
|
-
#define DB_LOCK 0x2000 /* Do locking. */
|
|
93
|
-
#define DB_SHMEM 0x4000 /* Use shared memory. */
|
|
94
|
-
#define DB_TXN 0x8000 /* Do transactions. */
|
|
95
|
-
#endif
|
|
96
90
|
|
|
97
91
|
/* Access method description structure. */
|
|
98
92
|
typedef struct __db {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: db_interface.h,v 1.
|
|
1
|
+
/* $OpenBSD: db_interface.h,v 1.29 2026/02/02 15:20:51 claudio Exp $ */
|
|
2
2
|
/* $NetBSD: db_interface.h,v 1.1 1996/02/05 01:57:03 christos Exp $ */
|
|
3
3
|
|
|
4
4
|
/*
|
|
@@ -41,6 +41,7 @@ vaddr_t db_disasm(vaddr_t, int);
|
|
|
41
41
|
|
|
42
42
|
/* kern/kern_proc.c */
|
|
43
43
|
void db_kill_cmd(db_expr_t, int, db_expr_t, char *);
|
|
44
|
+
void db_stop_cmd(db_expr_t, int, db_expr_t, char *);
|
|
44
45
|
void db_show_all_procs(db_expr_t, int, db_expr_t, char *);
|
|
45
46
|
|
|
46
47
|
/* kern/kern_clockintr.c */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: fnmatch.h,v 1.
|
|
1
|
+
/* $OpenBSD: fnmatch.h,v 1.9 2026/03/29 14:08:46 daniel Exp $ */
|
|
2
2
|
/* $NetBSD: fnmatch.h,v 1.5 1994/10/26 00:55:53 cgd Exp $ */
|
|
3
3
|
|
|
4
4
|
/*-
|
|
@@ -43,11 +43,15 @@
|
|
|
43
43
|
#define FNM_NOESCAPE 0x01 /* Disable backslash escaping. */
|
|
44
44
|
#define FNM_PATHNAME 0x02 /* Slash must be matched by slash. */
|
|
45
45
|
#define FNM_PERIOD 0x04 /* Period must be matched by period. */
|
|
46
|
+
|
|
46
47
|
#if __BSD_VISIBLE
|
|
47
48
|
#define FNM_LEADING_DIR 0x08 /* Ignore /<tail> after Imatch. */
|
|
49
|
+
#define FNM_FILE_NAME FNM_PATHNAME
|
|
50
|
+
#endif
|
|
51
|
+
|
|
52
|
+
#if __BSD_VISIBLE || __POSIX_VISIBLE >= 202405
|
|
48
53
|
#define FNM_CASEFOLD 0x10 /* Case insensitive search. */
|
|
49
54
|
#define FNM_IGNORECASE FNM_CASEFOLD
|
|
50
|
-
#define FNM_FILE_NAME FNM_PATHNAME
|
|
51
55
|
#endif
|
|
52
56
|
|
|
53
57
|
__BEGIN_DECLS
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: login_cap.h,v 1.
|
|
1
|
+
/* $OpenBSD: login_cap.h,v 1.21 2025/11/24 12:37:15 jca Exp $ */
|
|
2
2
|
|
|
3
3
|
/*-
|
|
4
4
|
* Copyright (c) 1995,1997 Berkeley Software Design, Inc. All rights reserved.
|
|
@@ -56,6 +56,8 @@
|
|
|
56
56
|
#define LOGIN_SETENV 0x0080 /* Set environment */
|
|
57
57
|
#define LOGIN_SETRTABLE 0x0100 /* Set rtable */
|
|
58
58
|
#define LOGIN_SETALL 0x01ff /* Set all. */
|
|
59
|
+
/* The LOGIN defines below are not part of LOGIN_SETALL */
|
|
60
|
+
#define LOGIN_SETXDGENV 0x0200 /* Set XDG environment variables */
|
|
59
61
|
|
|
60
62
|
#define BI_AUTH "authorize" /* Accepted authentication */
|
|
61
63
|
#define BI_REJECT "reject" /* Rejected authentication */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: fusefs_node.h,v 1.
|
|
1
|
+
/* $OpenBSD: fusefs_node.h,v 1.6 2026/01/22 11:53:31 helg Exp $ */
|
|
2
2
|
/*
|
|
3
3
|
* Copyright (c) 2012-2013 Sylvestre Gallon <ccna.syl@gmail.com>
|
|
4
4
|
*
|
|
@@ -40,6 +40,7 @@ struct fusefs_node {
|
|
|
40
40
|
struct fusefs_mnt *i_ump;
|
|
41
41
|
dev_t i_dev; /* Device associated with the inode. */
|
|
42
42
|
ino_t i_number; /* The identity of the inode. */
|
|
43
|
+
ino_t i_parent_cache;/* Parent inode (only dirs). */
|
|
43
44
|
struct lockf_state *i_lockf; /* Byte-level lock state. */
|
|
44
45
|
struct rrwlock i_lock; /* Inode lock */
|
|
45
46
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: bpf.h,v 1.
|
|
1
|
+
/* $OpenBSD: bpf.h,v 1.75 2025/11/16 02:20:08 dlg Exp $ */
|
|
2
2
|
/* $NetBSD: bpf.h,v 1.15 1996/12/13 07:57:33 mikel Exp $ */
|
|
3
3
|
|
|
4
4
|
/*
|
|
@@ -255,6 +255,8 @@ struct bpf_hdr {
|
|
|
255
255
|
#define BPF_LSH 0x60
|
|
256
256
|
#define BPF_RSH 0x70
|
|
257
257
|
#define BPF_NEG 0x80
|
|
258
|
+
#define BPF_MOD 0x90
|
|
259
|
+
#define BPF_XOR 0xa0
|
|
258
260
|
#define BPF_JA 0x00
|
|
259
261
|
#define BPF_JEQ 0x10
|
|
260
262
|
#define BPF_JGT 0x20
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: hfsc.h,v 1.
|
|
1
|
+
/* $OpenBSD: hfsc.h,v 1.15 2026/03/19 14:59:05 sthen Exp $ */
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* Copyright (c) 2012-2013 Henning Brauer <henning@openbsd.org>
|
|
@@ -45,9 +45,9 @@ struct hfsc_pktcntr {
|
|
|
45
45
|
do { (cntr)->packets++; (cntr)->bytes += len; } while (0)
|
|
46
46
|
|
|
47
47
|
struct hfsc_sc {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
u_int
|
|
48
|
+
u_int64_t m1; /* slope of the first segment in bits/sec */
|
|
49
|
+
u_int64_t m2; /* slope of the second segment in bits/sec */
|
|
50
|
+
u_int d; /* the x-projection of the first segment in msec */
|
|
51
51
|
};
|
|
52
52
|
|
|
53
53
|
/* special class handles */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: if.h,v 1.
|
|
1
|
+
/* $OpenBSD: if.h,v 1.223 2025/12/09 03:33:06 dlg Exp $ */
|
|
2
2
|
/* $NetBSD: if.h,v 1.23 1996/05/07 02:40:27 thorpej Exp $ */
|
|
3
3
|
|
|
4
4
|
/*
|
|
@@ -526,6 +526,9 @@ struct if_sffpage {
|
|
|
526
526
|
#include <net/if_arp.h>
|
|
527
527
|
|
|
528
528
|
#ifdef _KERNEL
|
|
529
|
+
|
|
530
|
+
#define IF_MAX_VECTORS 8
|
|
531
|
+
|
|
529
532
|
struct socket;
|
|
530
533
|
struct ifnet;
|
|
531
534
|
struct ifq_ops;
|
|
@@ -555,6 +558,7 @@ void if_group_routechange(const struct sockaddr *, const struct sockaddr *);
|
|
|
555
558
|
struct ifnet *if_unit(const char *);
|
|
556
559
|
struct ifnet *if_get(unsigned int);
|
|
557
560
|
struct ifnet *if_ref(struct ifnet *);
|
|
561
|
+
struct ifnet *if_get_smr(unsigned int);
|
|
558
562
|
void if_put(struct ifnet *);
|
|
559
563
|
void ifnewlladdr(struct ifnet *);
|
|
560
564
|
void if_congestion(void);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: if_bridge.h,v 1.
|
|
1
|
+
/* $OpenBSD: if_bridge.h,v 1.77 2025/11/21 04:44:26 dlg Exp $ */
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* Copyright (c) 1999, 2000 Jason L. Wright (jason@thought.net)
|
|
@@ -39,6 +39,12 @@
|
|
|
39
39
|
#include <sys/timeout.h>
|
|
40
40
|
#include <net/pfvar.h>
|
|
41
41
|
|
|
42
|
+
#define IFBR_PVID_NULL EVL_VLID_NULL
|
|
43
|
+
#define IFBR_PVID_MIN EVL_VLID_MIN
|
|
44
|
+
#define IFBR_PVID_MAX EVL_VLID_MAX
|
|
45
|
+
#define IFBR_PVID_NONE 0xffff
|
|
46
|
+
#define IFBR_PVID_DECLINE 0xfffe
|
|
47
|
+
|
|
42
48
|
/*
|
|
43
49
|
* Bridge control request: add/delete member interfaces.
|
|
44
50
|
*/
|
|
@@ -51,6 +57,7 @@ struct ifbreq {
|
|
|
51
57
|
|
|
52
58
|
u_int8_t ifbr_state; /* member stp state */
|
|
53
59
|
u_int8_t ifbr_priority; /* member stp priority */
|
|
60
|
+
u_int16_t ifbr_pvid; /* member port vlan id */
|
|
54
61
|
u_int32_t ifbr_path_cost; /* member stp path cost */
|
|
55
62
|
u_int32_t ifbr_stpflags; /* member stp flags */
|
|
56
63
|
u_int8_t ifbr_proto; /* member stp protocol */
|
|
@@ -74,6 +81,8 @@ struct ifbreq {
|
|
|
74
81
|
#define IFBIF_BSTP_AUTOPTP 0x0080 /* member stp autoptp enabled */
|
|
75
82
|
#define IFBIF_SPAN 0x0100 /* ifs is a span port (ro) */
|
|
76
83
|
#define IFBIF_LOCAL 0x1000 /* local port in switch(4) */
|
|
84
|
+
#define IFBIF_LOCKED 0x2000 /* restrict rx src mac with fib */
|
|
85
|
+
#define IFBIF_PVLAN_PTAGS 0x4000 /* only use tags for primary pvlans */
|
|
77
86
|
#define IFBIF_RO_MASK 0x0f00 /* read only bits */
|
|
78
87
|
|
|
79
88
|
/* SIOCBRDGFLUSH */
|
|
@@ -133,15 +142,19 @@ struct ifbareq {
|
|
|
133
142
|
#define IFBAF_DYNAMIC 0x00 /* dynamically learned */
|
|
134
143
|
#define IFBAF_STATIC 0x01 /* static address */
|
|
135
144
|
|
|
145
|
+
struct ifbvareq;
|
|
146
|
+
|
|
136
147
|
struct ifbaconf {
|
|
137
148
|
char ifbac_name[IFNAMSIZ]; /* bridge ifs name */
|
|
138
149
|
u_int32_t ifbac_len; /* buffer size */
|
|
139
150
|
union {
|
|
140
151
|
caddr_t ifbacu_buf; /* buffer */
|
|
141
152
|
struct ifbareq *ifbacu_req; /* request pointer */
|
|
153
|
+
struct ifbvareq *ifbacu_vreq; /* request pointer */
|
|
142
154
|
} ifbac_ifbacu;
|
|
143
155
|
#define ifbac_buf ifbac_ifbacu.ifbacu_buf
|
|
144
156
|
#define ifbac_req ifbac_ifbacu.ifbacu_req
|
|
157
|
+
#define ifbac_vreq ifbac_ifbacu.ifbacu_vreq
|
|
145
158
|
};
|
|
146
159
|
|
|
147
160
|
struct ifbrparam {
|
|
@@ -237,6 +250,40 @@ struct ifbrlconf {
|
|
|
237
250
|
#define ifbrl_req ifbrl_ifbrlu.ifbrlu_req
|
|
238
251
|
};
|
|
239
252
|
|
|
253
|
+
struct ifbvareq {
|
|
254
|
+
char ifbva_name[IFNAMSIZ]; /* bridge name */
|
|
255
|
+
char ifbva_ifsname[IFNAMSIZ]; /* destination ifs */
|
|
256
|
+
time_t ifbva_created; /* monotime */
|
|
257
|
+
time_t ifbva_used; /* monotime */
|
|
258
|
+
unsigned int ifbva_flags; /* address flags */
|
|
259
|
+
uint16_t ifbva_vid; /* vlan */
|
|
260
|
+
struct ether_addr ifbva_dst; /* destination addr */
|
|
261
|
+
struct sockaddr_storage ifbva_dstsa; /* tunnel endpoint */
|
|
262
|
+
};
|
|
263
|
+
|
|
264
|
+
struct ifbrvidmap {
|
|
265
|
+
char ifbrvm_name[IFNAMSIZ];
|
|
266
|
+
char ifbrvm_ifsname[IFNAMSIZ];
|
|
267
|
+
unsigned int ifbrvm_op;
|
|
268
|
+
#define IFBRVM_OP_SET 0x0 /* kernel = ifbrvm_map */
|
|
269
|
+
#define IFBRVM_OP_OR 0x1 /* kernel |= ifbrvm_map */
|
|
270
|
+
#define IFBRVM_OP_ANDNOT 0x2 /* kernel &= ~ifbrvm_map */
|
|
271
|
+
unsigned int ifbrvm_gen;
|
|
272
|
+
uint8_t ifbrvm_map[512];
|
|
273
|
+
};
|
|
274
|
+
|
|
275
|
+
struct ifbrpvlan {
|
|
276
|
+
char ifbrpv_name[IFNAMSIZ];
|
|
277
|
+
uint16_t ifbrpv_primary;
|
|
278
|
+
uint16_t ifbrpv_secondary;
|
|
279
|
+
unsigned int ifbrpv_type;
|
|
280
|
+
#define IFBRPV_T_PRIMARY 0
|
|
281
|
+
#define IFBRPV_T_SECONDARY 1 /* for searching */
|
|
282
|
+
#define IFBRPV_T_ISOLATED 2
|
|
283
|
+
#define IFBRPV_T_COMMUNITY 3
|
|
284
|
+
unsigned int ifbrpv_gen;
|
|
285
|
+
};
|
|
286
|
+
|
|
240
287
|
#ifdef _KERNEL
|
|
241
288
|
|
|
242
289
|
#include <sys/mutex.h>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: if_etherbridge.h,v 1.
|
|
1
|
+
/* $OpenBSD: if_etherbridge.h,v 1.7 2025/11/21 04:44:26 dlg Exp $ */
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* Copyright (c) 2018, 2021 David Gwynne <dlg@openbsd.org>
|
|
@@ -44,16 +44,21 @@ struct eb_entry {
|
|
|
44
44
|
|
|
45
45
|
uint64_t ebe_addr;
|
|
46
46
|
void *ebe_port;
|
|
47
|
+
uint16_t ebe_vs; /* secondary vid */
|
|
47
48
|
unsigned int ebe_type;
|
|
48
49
|
#define EBE_DYNAMIC 0x0
|
|
49
50
|
#define EBE_STATIC 0x1
|
|
50
51
|
#define EBE_DEAD 0xdead
|
|
52
|
+
time_t ebe_created;
|
|
51
53
|
time_t ebe_age;
|
|
52
54
|
|
|
53
55
|
struct etherbridge *ebe_etherbridge;
|
|
54
56
|
struct smr_entry ebe_smr_entry;
|
|
55
57
|
};
|
|
56
58
|
|
|
59
|
+
#define etherbridge_port(_ebe) ((_ebe)->ebe_port)
|
|
60
|
+
#define etherbridge_vs(_ebe) ((_ebe)->ebe_vs)
|
|
61
|
+
|
|
57
62
|
SMR_TAILQ_HEAD(eb_list, eb_entry);
|
|
58
63
|
RBT_HEAD(eb_tree, eb_entry);
|
|
59
64
|
TAILQ_HEAD(eb_queue, eb_entry);
|
|
@@ -80,13 +85,19 @@ int etherbridge_up(struct etherbridge *);
|
|
|
80
85
|
int etherbridge_down(struct etherbridge *);
|
|
81
86
|
void etherbridge_destroy(struct etherbridge *);
|
|
82
87
|
|
|
83
|
-
void etherbridge_map(struct etherbridge *, void *,
|
|
88
|
+
void etherbridge_map(struct etherbridge *, void *,
|
|
89
|
+
uint16_t, uint16_t, uint64_t);
|
|
84
90
|
void etherbridge_map_ea(struct etherbridge *, void *,
|
|
85
|
-
const struct ether_addr *);
|
|
86
|
-
|
|
91
|
+
uint16_t, uint16_t, const struct ether_addr *);
|
|
92
|
+
struct eb_entry *
|
|
93
|
+
etherbridge_resolve_entry(struct etherbridge *,
|
|
94
|
+
uint16_t, uint64_t);
|
|
95
|
+
void *etherbridge_resolve(struct etherbridge *, uint16_t, uint64_t);
|
|
87
96
|
void *etherbridge_resolve_ea(struct etherbridge *,
|
|
88
|
-
const struct ether_addr *);
|
|
97
|
+
uint16_t, const struct ether_addr *);
|
|
89
98
|
void etherbridge_detach_port(struct etherbridge *, void *);
|
|
99
|
+
void etherbridge_filter(struct etherbridge *,
|
|
100
|
+
int (*)(struct etherbridge *, struct eb_entry *, void *), void *);
|
|
90
101
|
|
|
91
102
|
/* ioctl support */
|
|
92
103
|
int etherbridge_set_max(struct etherbridge *, struct ifbrparam *);
|
|
@@ -94,9 +105,11 @@ int etherbridge_get_max(struct etherbridge *, struct ifbrparam *);
|
|
|
94
105
|
int etherbridge_set_tmo(struct etherbridge *, struct ifbrparam *);
|
|
95
106
|
int etherbridge_get_tmo(struct etherbridge *, struct ifbrparam *);
|
|
96
107
|
int etherbridge_rtfind(struct etherbridge *, struct ifbaconf *);
|
|
108
|
+
int etherbridge_vareq(struct etherbridge *, struct ifbaconf *);
|
|
97
109
|
int etherbridge_add_addr(struct etherbridge *, void *,
|
|
98
|
-
const struct ether_addr *, unsigned int);
|
|
99
|
-
int etherbridge_del_addr(struct etherbridge *,
|
|
110
|
+
uint16_t, uint16_t, const struct ether_addr *, unsigned int);
|
|
111
|
+
int etherbridge_del_addr(struct etherbridge *,
|
|
112
|
+
uint16_t, const struct ether_addr *);
|
|
100
113
|
void etherbridge_flush(struct etherbridge *, uint32_t);
|
|
101
114
|
|
|
102
115
|
#endif /* _NET_ETHERBRIDGE_H_ */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: if_media.h,v 1.
|
|
1
|
+
/* $OpenBSD: if_media.h,v 1.47 2026/03/19 16:50:32 chris Exp $ */
|
|
2
2
|
/* $NetBSD: if_media.h,v 1.22 2000/02/17 21:53:16 sommerfeld Exp $ */
|
|
3
3
|
|
|
4
4
|
/*-
|
|
@@ -327,6 +327,18 @@ uint64_t ifmedia_baudrate(uint64_t);
|
|
|
327
327
|
#define IFM_IEEE80211_VHT_MCS7 103 /* 11ac MCS 7 */
|
|
328
328
|
#define IFM_IEEE80211_VHT_MCS8 104 /* 11ac MCS 8 */
|
|
329
329
|
#define IFM_IEEE80211_VHT_MCS9 105 /* 11ac MCS 9 */
|
|
330
|
+
#define IFM_IEEE80211_HE_MCS0 106 /* 11ax MCS 0 */
|
|
331
|
+
#define IFM_IEEE80211_HE_MCS1 107 /* 11ax MCS 1 */
|
|
332
|
+
#define IFM_IEEE80211_HE_MCS2 108 /* 11ax MCS 2 */
|
|
333
|
+
#define IFM_IEEE80211_HE_MCS3 109 /* 11ax MCS 3 */
|
|
334
|
+
#define IFM_IEEE80211_HE_MCS4 110 /* 11ax MCS 4 */
|
|
335
|
+
#define IFM_IEEE80211_HE_MCS5 111 /* 11ax MCS 5 */
|
|
336
|
+
#define IFM_IEEE80211_HE_MCS6 112 /* 11ax MCS 6 */
|
|
337
|
+
#define IFM_IEEE80211_HE_MCS7 113 /* 11ax MCS 7 */
|
|
338
|
+
#define IFM_IEEE80211_HE_MCS8 114 /* 11ax MCS 8 */
|
|
339
|
+
#define IFM_IEEE80211_HE_MCS9 115 /* 11ax MCS 9 */
|
|
340
|
+
#define IFM_IEEE80211_HE_MCS10 116 /* 11ax MCS 10 */
|
|
341
|
+
#define IFM_IEEE80211_HE_MCS11 117 /* 11ax MCS 11 */
|
|
330
342
|
|
|
331
343
|
#define IFM_IEEE80211_ADHOC 0x0000000000010000ULL /* Operate in Adhoc mode */
|
|
332
344
|
#define IFM_IEEE80211_HOSTAP 0x0000000000020000ULL /* Operate in Host AP mode */
|
|
@@ -341,6 +353,7 @@ uint64_t ifmedia_baudrate(uint64_t);
|
|
|
341
353
|
#define IFM_IEEE80211_FH 0x0000000400000000ULL /* 2GHz, GFSK mode */
|
|
342
354
|
#define IFM_IEEE80211_11N 0x0000000800000000ULL /* 11n/HT 2GHz/5GHz */
|
|
343
355
|
#define IFM_IEEE80211_11AC 0x0000001000000000ULL /* 11ac/VHT 5GHz */
|
|
356
|
+
#define IFM_IEEE80211_11AX 0x0000002000000000ULL /* 11ax/HE 2GHz/5GHz */
|
|
344
357
|
|
|
345
358
|
/*
|
|
346
359
|
* Digitally multiplexed "Carrier" Serial Interfaces
|
|
@@ -721,6 +734,18 @@ struct ifmedia_description {
|
|
|
721
734
|
{ IFM_IEEE80211|IFM_IEEE80211_VHT_MCS7, "VHT-MCS7" }, \
|
|
722
735
|
{ IFM_IEEE80211|IFM_IEEE80211_VHT_MCS8, "VHT-MCS8" }, \
|
|
723
736
|
{ IFM_IEEE80211|IFM_IEEE80211_VHT_MCS9, "VHT-MCS9" }, \
|
|
737
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS0, "HE-MCS0" }, \
|
|
738
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS1, "HE-MCS1" }, \
|
|
739
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS2, "HE-MCS2" }, \
|
|
740
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS3, "HE-MCS3" }, \
|
|
741
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS4, "HE-MCS4" }, \
|
|
742
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS5, "HE-MCS5" }, \
|
|
743
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS6, "HE-MCS6" }, \
|
|
744
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS7, "HE-MCS7" }, \
|
|
745
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS8, "HE-MCS8" }, \
|
|
746
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS9, "HE-MCS9" }, \
|
|
747
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS10, "HE-MCS10" }, \
|
|
748
|
+
{ IFM_IEEE80211|IFM_IEEE80211_HE_MCS11, "HE-MCS11" }, \
|
|
724
749
|
\
|
|
725
750
|
{ IFM_TDM|IFM_TDM_T1, "t1" }, \
|
|
726
751
|
{ IFM_TDM|IFM_TDM_T1_AMI, "t1-ami" }, \
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: if_pflow.h,v 1.
|
|
1
|
+
/* $OpenBSD: if_pflow.h,v 1.24 2025/11/13 17:12:30 chris Exp $ */
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* Copyright (c) 2008 Henning Brauer <henning@openbsd.org>
|
|
@@ -33,22 +33,26 @@
|
|
|
33
33
|
|
|
34
34
|
/* RFC 5102 Information Element Identifiers */
|
|
35
35
|
|
|
36
|
-
#define PFIX_IE_octetDeltaCount
|
|
37
|
-
#define PFIX_IE_packetDeltaCount
|
|
38
|
-
#define PFIX_IE_protocolIdentifier
|
|
39
|
-
#define PFIX_IE_ipClassOfService
|
|
40
|
-
#define PFIX_IE_sourceTransportPort
|
|
41
|
-
#define PFIX_IE_sourceIPv4Address
|
|
42
|
-
#define PFIX_IE_ingressInterface
|
|
43
|
-
#define PFIX_IE_destinationTransportPort
|
|
44
|
-
#define PFIX_IE_destinationIPv4Address
|
|
45
|
-
#define PFIX_IE_egressInterface
|
|
46
|
-
#define PFIX_IE_flowEndSysUpTime
|
|
47
|
-
#define PFIX_IE_flowStartSysUpTime
|
|
48
|
-
#define PFIX_IE_sourceIPv6Address
|
|
49
|
-
#define PFIX_IE_destinationIPv6Address
|
|
50
|
-
#define PFIX_IE_flowStartMilliseconds
|
|
51
|
-
#define PFIX_IE_flowEndMilliseconds
|
|
36
|
+
#define PFIX_IE_octetDeltaCount 1
|
|
37
|
+
#define PFIX_IE_packetDeltaCount 2
|
|
38
|
+
#define PFIX_IE_protocolIdentifier 4
|
|
39
|
+
#define PFIX_IE_ipClassOfService 5
|
|
40
|
+
#define PFIX_IE_sourceTransportPort 7
|
|
41
|
+
#define PFIX_IE_sourceIPv4Address 8
|
|
42
|
+
#define PFIX_IE_ingressInterface 10
|
|
43
|
+
#define PFIX_IE_destinationTransportPort 11
|
|
44
|
+
#define PFIX_IE_destinationIPv4Address 12
|
|
45
|
+
#define PFIX_IE_egressInterface 14
|
|
46
|
+
#define PFIX_IE_flowEndSysUpTime 21
|
|
47
|
+
#define PFIX_IE_flowStartSysUpTime 22
|
|
48
|
+
#define PFIX_IE_sourceIPv6Address 27
|
|
49
|
+
#define PFIX_IE_destinationIPv6Address 28
|
|
50
|
+
#define PFIX_IE_flowStartMilliseconds 152
|
|
51
|
+
#define PFIX_IE_flowEndMilliseconds 153
|
|
52
|
+
#define PFIX_IE_postNATSourceIPv4Address 225
|
|
53
|
+
#define PFIX_IE_postNATDestinationIPv4Address 226
|
|
54
|
+
#define PFIX_IE_postNAPTSourceTransportPort 227
|
|
55
|
+
#define PFIX_IE_postNAPTDestinationTransportPort 228
|
|
52
56
|
|
|
53
57
|
struct pflow_flow {
|
|
54
58
|
u_int32_t src_ip;
|
|
@@ -110,6 +114,28 @@ struct pflow_ipfix_tmpl_ipv4 {
|
|
|
110
114
|
#define PFLOW_IPFIX_TMPL_IPV4_ID 256
|
|
111
115
|
} __packed;
|
|
112
116
|
|
|
117
|
+
struct pflow_ipfix_tmpl_nat_ipv4 {
|
|
118
|
+
struct pflow_tmpl_hdr h;
|
|
119
|
+
struct pflow_tmpl_fspec src_ip;
|
|
120
|
+
struct pflow_tmpl_fspec dest_ip;
|
|
121
|
+
struct pflow_tmpl_fspec if_index_in;
|
|
122
|
+
struct pflow_tmpl_fspec if_index_out;
|
|
123
|
+
struct pflow_tmpl_fspec packets;
|
|
124
|
+
struct pflow_tmpl_fspec octets;
|
|
125
|
+
struct pflow_tmpl_fspec start;
|
|
126
|
+
struct pflow_tmpl_fspec finish;
|
|
127
|
+
struct pflow_tmpl_fspec post_src_ip;
|
|
128
|
+
struct pflow_tmpl_fspec post_dest_ip;
|
|
129
|
+
struct pflow_tmpl_fspec post_src_port;
|
|
130
|
+
struct pflow_tmpl_fspec post_dest_port;
|
|
131
|
+
struct pflow_tmpl_fspec src_port;
|
|
132
|
+
struct pflow_tmpl_fspec dest_port;
|
|
133
|
+
struct pflow_tmpl_fspec tos;
|
|
134
|
+
struct pflow_tmpl_fspec protocol;
|
|
135
|
+
#define PFLOW_IPFIX_TMPL_NAT_IPV4_FIELD_COUNT 16
|
|
136
|
+
#define PFLOW_IPFIX_TMPL_NAT_IPV4_ID 257
|
|
137
|
+
} __packed;
|
|
138
|
+
|
|
113
139
|
/* update pflow_clone_create() when changing pflow_ipfix_tmpl_v6 */
|
|
114
140
|
struct pflow_ipfix_tmpl_ipv6 {
|
|
115
141
|
struct pflow_tmpl_hdr h;
|
|
@@ -126,13 +152,14 @@ struct pflow_ipfix_tmpl_ipv6 {
|
|
|
126
152
|
struct pflow_tmpl_fspec tos;
|
|
127
153
|
struct pflow_tmpl_fspec protocol;
|
|
128
154
|
#define PFLOW_IPFIX_TMPL_IPV6_FIELD_COUNT 12
|
|
129
|
-
#define PFLOW_IPFIX_TMPL_IPV6_ID
|
|
155
|
+
#define PFLOW_IPFIX_TMPL_IPV6_ID 258
|
|
130
156
|
} __packed;
|
|
131
157
|
|
|
132
158
|
struct pflow_ipfix_tmpl {
|
|
133
159
|
struct pflow_set_header set_header;
|
|
134
|
-
struct pflow_ipfix_tmpl_ipv4
|
|
135
|
-
struct
|
|
160
|
+
struct pflow_ipfix_tmpl_ipv4 ipv4_tmpl;
|
|
161
|
+
struct pflow_ipfix_tmpl_nat_ipv4 ipv4_nat_tmpl;
|
|
162
|
+
struct pflow_ipfix_tmpl_ipv6 ipv6_tmpl;
|
|
136
163
|
} __packed;
|
|
137
164
|
|
|
138
165
|
struct pflow_ipfix_flow4 {
|
|
@@ -151,6 +178,26 @@ struct pflow_ipfix_flow4 {
|
|
|
151
178
|
/* XXX padding needed? */
|
|
152
179
|
} __packed;
|
|
153
180
|
|
|
181
|
+
struct pflow_ipfix_nat_flow4 {
|
|
182
|
+
u_int32_t src_ip; /* sourceIPv4Address*/
|
|
183
|
+
u_int32_t dest_ip; /* destinationIPv4Address */
|
|
184
|
+
u_int32_t if_index_in; /* ingressInterface */
|
|
185
|
+
u_int32_t if_index_out; /* egressInterface */
|
|
186
|
+
u_int64_t flow_packets; /* packetDeltaCount */
|
|
187
|
+
u_int64_t flow_octets; /* octetDeltaCount */
|
|
188
|
+
int64_t flow_start; /* flowStartMilliseconds */
|
|
189
|
+
int64_t flow_finish; /* flowEndMilliseconds */
|
|
190
|
+
u_int32_t post_src_ip; /* postNATSourceIPv4Address */
|
|
191
|
+
u_int32_t post_dest_ip; /* postNATDestinationIPv4Address */
|
|
192
|
+
u_int16_t post_src_port; /* postNAPTSourceTransportPort */
|
|
193
|
+
u_int16_t post_dest_port; /* postNAPTDestinationTransportPort */
|
|
194
|
+
u_int16_t src_port; /* sourceTransportPort */
|
|
195
|
+
u_int16_t dest_port; /* destinationTransportPort */
|
|
196
|
+
u_int8_t tos; /* ipClassOfService */
|
|
197
|
+
u_int8_t protocol; /* protocolIdentifier */
|
|
198
|
+
/* XXX padding needed? */
|
|
199
|
+
} __packed;
|
|
200
|
+
|
|
154
201
|
struct pflow_ipfix_flow6 {
|
|
155
202
|
struct in6_addr src_ip; /* sourceIPv6Address */
|
|
156
203
|
struct in6_addr dest_ip; /* destinationIPv6Address */
|
|
@@ -187,6 +234,7 @@ struct pflow_softc {
|
|
|
187
234
|
|
|
188
235
|
unsigned int sc_count; /* [m] */
|
|
189
236
|
unsigned int sc_count4; /* [m] */
|
|
237
|
+
unsigned int sc_count4_nat; /* [m] */
|
|
190
238
|
unsigned int sc_count6; /* [m] */
|
|
191
239
|
unsigned int sc_maxcount; /* [m] */
|
|
192
240
|
unsigned int sc_maxcount4; /* [m] */
|
|
@@ -196,6 +244,7 @@ struct pflow_softc {
|
|
|
196
244
|
struct timeout sc_tmo;
|
|
197
245
|
struct timeout sc_tmo6;
|
|
198
246
|
struct timeout sc_tmo_tmpl;
|
|
247
|
+
struct timeout sc_tmo_nat;
|
|
199
248
|
struct mbuf_queue sc_outputqueue;
|
|
200
249
|
struct task sc_outputtask;
|
|
201
250
|
struct socket *so; /* [p] */
|
|
@@ -208,6 +257,8 @@ struct pflow_softc {
|
|
|
208
257
|
mbuf */
|
|
209
258
|
struct mbuf *sc_mbuf6; /* [m] current cumulative
|
|
210
259
|
mbuf */
|
|
260
|
+
struct mbuf *sc_mbuf_nat; /* [m] current cumulative
|
|
261
|
+
mbuf */
|
|
211
262
|
SMR_SLIST_ENTRY(pflow_softc) sc_next;
|
|
212
263
|
};
|
|
213
264
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: if_pfsync.h,v 1.
|
|
1
|
+
/* $OpenBSD: if_pfsync.h,v 1.66 2026/04/12 03:16:04 deraadt Exp $ */
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* Copyright (c) 2001 Michael Shalayeff
|
|
@@ -112,7 +112,7 @@ struct pfsync_header {
|
|
|
112
112
|
u_int8_t version;
|
|
113
113
|
u_int8_t _pad;
|
|
114
114
|
u_int16_t len; /* in bytes */
|
|
115
|
-
u_int8_t
|
|
115
|
+
u_int8_t spare[16];
|
|
116
116
|
} __packed;
|
|
117
117
|
|
|
118
118
|
/*
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: if_sppp.h,v 1.
|
|
1
|
+
/* $OpenBSD: if_sppp.h,v 1.32 2025/11/02 08:04:04 dlg Exp $ */
|
|
2
2
|
/* $NetBSD: if_sppp.h,v 1.2.2.1 1999/04/04 06:57:39 explorer Exp $ */
|
|
3
3
|
|
|
4
4
|
/*
|
|
@@ -174,6 +174,7 @@ struct sppp {
|
|
|
174
174
|
time_t pp_last_receive; /* peer's last "sign of life" */
|
|
175
175
|
time_t pp_last_activity; /* second of last payload data s/r */
|
|
176
176
|
enum ppp_phase pp_phase; /* phase we're currently in */
|
|
177
|
+
struct task pp_autodial;
|
|
177
178
|
int state[IDX_COUNT]; /* state machine */
|
|
178
179
|
u_char confid[IDX_COUNT]; /* id of last configuration request */
|
|
179
180
|
int rst_counter[IDX_COUNT]; /* restart counter */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* $OpenBSD: if_trunk.h,v 1.
|
|
1
|
+
/* $OpenBSD: if_trunk.h,v 1.33 2025/11/24 23:40:00 dlg Exp $ */
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* Copyright (c) 2005, 2006, 2007 Reyk Floeter <reyk@openbsd.org>
|
|
@@ -159,6 +159,8 @@ struct trunk_softc;
|
|
|
159
159
|
struct trunk_port {
|
|
160
160
|
struct ifnet *tp_if; /* physical interface */
|
|
161
161
|
struct trunk_softc *tp_trunk; /* parent trunk */
|
|
162
|
+
struct refcnt tp_refs;
|
|
163
|
+
struct ether_port tp_ether_port;
|
|
162
164
|
u_int8_t tp_lladdr[ETHER_ADDR_LEN];
|
|
163
165
|
caddr_t tp_psc; /* protocol data */
|
|
164
166
|
|
|
@@ -172,7 +174,6 @@ struct trunk_port {
|
|
|
172
174
|
int (*tp_ioctl)(struct ifnet *, u_long, caddr_t);
|
|
173
175
|
int (*tp_output)(struct ifnet *, struct mbuf *, struct sockaddr *,
|
|
174
176
|
struct rtentry *);
|
|
175
|
-
void (*tp_input)(struct ifnet *, struct mbuf *, struct netstack *);
|
|
176
177
|
|
|
177
178
|
SLIST_ENTRY(trunk_port) tp_entries;
|
|
178
179
|
};
|