compat_mod.h revision 1.10
11.10Spgoyette/*	$NetBSD: compat_mod.h,v 1.10 2023/12/09 15:21:01 pgoyette Exp $	*/
21.1Spgoyette
31.1Spgoyette/*-
41.6Schristos * Copyright (c) 2013, 2019 The NetBSD Foundation, Inc.
51.1Spgoyette * All rights reserved.
61.1Spgoyette *
71.1Spgoyette * This code is derived from software contributed to The NetBSD Foundation
81.1Spgoyette * by Christos Zoulas.
91.1Spgoyette *
101.1Spgoyette * Redistribution and use in source and binary forms, with or without
111.1Spgoyette * modification, are permitted provided that the following conditions
121.1Spgoyette * are met:
131.1Spgoyette * 1. Redistributions of source code must retain the above copyright
141.1Spgoyette *    notice, this list of conditions and the following disclaimer.
151.1Spgoyette * 2. Redistributions in binary form must reproduce the above copyright
161.1Spgoyette *    notice, this list of conditions and the following disclaimer in the
171.1Spgoyette *    documentation and/or other materials provided with the distribution.
181.1Spgoyette *
191.1Spgoyette * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
201.1Spgoyette * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
211.1Spgoyette * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
221.1Spgoyette * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
231.1Spgoyette * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
241.1Spgoyette * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
251.1Spgoyette * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
261.1Spgoyette * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
271.1Spgoyette * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
281.1Spgoyette * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
291.1Spgoyette * POSSIBILITY OF SUCH DAMAGE.
301.1Spgoyette */
311.1Spgoyette
321.1Spgoyette#ifndef	_COMPAT_MOD_H
331.1Spgoyette#define	_COMPAT_MOD_H
341.1Spgoyette
351.7Spgoyette#ifdef COMPAT_100
361.7Spgoyetteint compat_100_init(void);
371.7Spgoyetteint compat_100_fini(void);
381.8Schristosint kern_event_100_init(void);
391.8Schristosint kern_event_100_fini(void);
401.9Schristosvoid usb_100_init(void);
411.9Schristosvoid usb_100_fini(void);
421.7Spgoyette#endif
431.7Spgoyette
441.6Schristos#ifdef COMPAT_90
451.6Schristosint compat_90_init(void);
461.6Schristosint compat_90_fini(void);
471.6Schristosint vfs_syscalls_90_init(void);
481.6Schristosint vfs_syscalls_90_fini(void);
491.10Spgoyetteint net_inet6_nd_90_init(void);
501.10Spgoyetteint net_inet6_nd_90_fini(void);
511.6Schristos#endif
521.6Schristos
531.2Spgoyette#ifdef COMPAT_80
541.2Spgoyetteint compat_80_init(void);
551.2Spgoyetteint compat_80_fini(void);
561.2Spgoyettevoid kern_mod_80_init(void);
571.2Spgoyettevoid kern_mod_80_fini(void);
581.5Smsaitohvoid ifmedia_80_init(void);
591.5Smsaitohvoid ifmedia_80_fini(void);
601.2Spgoyette#endif
611.1Spgoyette
621.2Spgoyette#ifdef COMPAT_70
631.2Spgoyetteint compat_70_init(void);
641.2Spgoyetteint compat_70_fini(void);
651.2Spgoyette#endif
661.2Spgoyette
671.2Spgoyette#ifdef COMPAT_60
681.2Spgoyetteint compat_60_init(void);
691.2Spgoyetteint compat_60_fini(void);
701.2Spgoyetteint kern_time_60_init(void);
711.2Spgoyetteint kern_time_60_fini(void);
721.2Spgoyetteint kern_sa_60_init(void);
731.2Spgoyetteint kern_sa_60_fini(void);
741.2Spgoyettevoid kern_tty_60_init(void);
751.2Spgoyettevoid kern_tty_60_fini(void);
761.2Spgoyette#endif
771.2Spgoyette
781.2Spgoyette#ifdef COMPAT_50
791.2Spgoyetteint compat_50_init(void);
801.2Spgoyetteint compat_50_fini(void);
811.2Spgoyetteint kern_50_init(void);
821.2Spgoyetteint kern_50_fini(void);
831.2Spgoyetteint kern_time_50_init(void);
841.2Spgoyetteint kern_time_50_fini(void);
851.2Spgoyetteint kern_select_50_init(void);
861.2Spgoyetteint kern_select_50_fini(void);
871.2Spgoyettevoid uvm_50_init(void);
881.2Spgoyettevoid uvm_50_fini(void);
891.2Spgoyetteint vfs_syscalls_50_init(void);
901.2Spgoyetteint vfs_syscalls_50_fini(void);
911.2Spgoyettevoid uipc_syscalls_50_init(void);
921.2Spgoyettevoid uipc_syscalls_50_fini(void);
931.2Spgoyettevoid vnd_50_init(void);
941.2Spgoyettevoid vnd_50_fini(void);
951.2Spgoyettevoid rndpseudo_50_init(void);
961.2Spgoyettevoid rndpseudo_50_fini(void);
971.2Spgoyettevoid rtsock_50_init(void);
981.2Spgoyettevoid rtsock_50_fini(void);
991.4Spgoyettevoid kern_uipc_socket_50_init(void);
1001.4Spgoyettevoid kern_uipc_socket_50_fini(void);
1011.2Spgoyette#endif
1021.2Spgoyette
1031.2Spgoyette#ifdef COMPAT_40
1041.2Spgoyetteint compat_40_init(void);
1051.2Spgoyetteint compat_40_fini(void);
1061.2Spgoyettevoid uipc_syscalls_40_init(void);
1071.2Spgoyettevoid uipc_syscalls_40_fini(void);
1081.2Spgoyetteint vfs_syscalls_40_init(void);
1091.2Spgoyetteint vfs_syscalls_40_fini(void);
1101.2Spgoyettevoid sysmon_power_40_init(void);
1111.2Spgoyettevoid sysmon_power_40_fini(void);
1121.2Spgoyette#endif
1131.2Spgoyette
1141.2Spgoyette#ifdef COMPAT_30
1151.2Spgoyetteint compat_30_init(void);
1161.2Spgoyetteint compat_30_fini(void);
1171.2Spgoyetteint kern_time_30_init(void);
1181.2Spgoyetteint kern_time_30_fini(void);
1191.2Spgoyetteint vfs_syscalls_30_init(void);
1201.2Spgoyetteint vfs_syscalls_30_fini(void);
1211.2Spgoyetteint uipc_syscalls_30_init(void);
1221.2Spgoyetteint uipc_syscalls_30_fini(void);
1231.2Spgoyettevoid bio_30_init(void);
1241.2Spgoyettevoid bio_30_fini(void);
1251.2Spgoyettevoid vnd_30_init(void);
1261.2Spgoyettevoid vnd_30_fini(void);
1271.2Spgoyettevoid usb_30_init(void);
1281.2Spgoyettevoid usb_30_fini(void);
1291.2Spgoyette#endif
1301.2Spgoyette
1311.2Spgoyette#ifdef COMPAT_20
1321.2Spgoyetteint compat_20_init(void);
1331.2Spgoyetteint compat_20_fini(void);
1341.2Spgoyetteint vfs_syscalls_20_init(void);
1351.2Spgoyetteint vfs_syscalls_20_fini(void);
1361.2Spgoyettevoid ieee80211_20_init(void);
1371.2Spgoyettevoid ieee80211_20_fini(void);
1381.2Spgoyettevoid if43_20_init(void);
1391.2Spgoyettevoid if43_20_fini(void);
1401.2Spgoyette#endif
1411.2Spgoyette
1421.2Spgoyette#ifdef COMPAT_16
1431.2Spgoyetteint compat_16_init(void);
1441.2Spgoyetteint compat_16_fini(void);
1451.2Spgoyetteint kern_sig_16_init(void);
1461.2Spgoyetteint kern_sig_16_fini(void);
1471.2Spgoyette#endif
1481.2Spgoyette
1491.2Spgoyette#ifdef COMPAT_14
1501.2Spgoyetteint compat_14_init(void);
1511.2Spgoyetteint compat_14_fini(void);
1521.2Spgoyettevoid rtsock_14_init(void);
1531.2Spgoyettevoid rtsock_14_fini(void);
1541.2Spgoyette#endif
1551.2Spgoyette
1561.2Spgoyette#ifdef COMPAT_13
1571.2Spgoyetteint compat_13_init(void);
1581.2Spgoyetteint compat_13_fini(void);
1591.2Spgoyetteint kern_sig_13_init(void);
1601.2Spgoyetteint kern_sig_13_fini(void);
1611.2Spgoyettevoid uvm_13_init(void);
1621.2Spgoyettevoid uvm_13_fini(void);
1631.2Spgoyette#endif
1641.2Spgoyette
1651.2Spgoyette#ifdef COMPAT_12
1661.2Spgoyetteint compat_12_init(void);
1671.2Spgoyetteint compat_12_fini(void);
1681.2Spgoyetteint kern_xxx_12_init(void);
1691.2Spgoyetteint kern_xxx_12_fini(void);
1701.2Spgoyetteint vm_12_init(void);
1711.2Spgoyetteint vm_12_fini(void);
1721.2Spgoyetteint vfs_syscalls_12_init(void);
1731.2Spgoyetteint vfs_syscalls_12_fini(void);
1741.2Spgoyette#endif
1751.2Spgoyette
1761.2Spgoyette#ifdef COMPAT_10
1771.2Spgoyetteint compat_10_init(void);
1781.2Spgoyetteint compat_10_fini(void);
1791.2Spgoyettevoid vfs_syscalls_10_init(void);
1801.2Spgoyettevoid vfs_syscalls_10_fini(void);
1811.2Spgoyette#endif
1821.2Spgoyette
1831.2Spgoyette#ifdef COMPAT_09
1841.2Spgoyetteint compat_09_init(void);
1851.2Spgoyetteint compat_09_fini(void);
1861.2Spgoyetteint kern_info_09_init(void);
1871.2Spgoyetteint kern_info_09_fini(void);
1881.2Spgoyette#endif
1891.2Spgoyette
1901.2Spgoyette#ifdef COMPAT_43
1911.2Spgoyetteint compat_43_init(void);
1921.2Spgoyetteint compat_43_fini(void);
1931.2Spgoyetteint kern_exit_43_init(void);
1941.2Spgoyetteint kern_exit_43_fini(void);
1951.2Spgoyetteint kern_info_43_init(void);
1961.2Spgoyetteint kern_info_43_fini(void);
1971.2Spgoyetteint kern_resource_43_init(void);
1981.2Spgoyetteint kern_resource_43_fini(void);
1991.2Spgoyetteint kern_sig_43_init(void);
2001.2Spgoyetteint kern_sig_43_fini(void);
2011.3Schristosint kern_tty_43_init(void);
2021.3Schristosint kern_tty_43_fini(void);
2031.2Spgoyetteint uipc_syscalls_43_init(void);
2041.2Spgoyetteint uipc_syscalls_43_fini(void);
2051.2Spgoyetteint vfs_syscalls_43_init(void);
2061.2Spgoyetteint vfs_syscalls_43_fini(void);
2071.2Spgoyetteint vm_43_init(void);
2081.2Spgoyetteint vm_43_fini(void);
2091.2Spgoyetteint if_43_init(void);
2101.2Spgoyetteint if_43_fini(void);
2111.2Spgoyette#endif
2121.2Spgoyette
2131.2Spgoyette#if defined(COMPAT_09) || defined(COMPAT_43)
2141.2Spgoyetteint compat_sysctl_09_43_init(void);
2151.2Spgoyetteint compat_sysctl_09_43_fini(void);
2161.2Spgoyette#endif
2171.1Spgoyette
2181.1Spgoyette#endif /* !_COMPAT_MOD_H_ */
219