1*433cd47bSdlg /* $OpenBSD: if_sec.h,v 1.1 2023/08/07 01:57:33 dlg Exp $ */ 2*433cd47bSdlg 3*433cd47bSdlg /* 4*433cd47bSdlg * Copyright (c) 2023 David Gwynne <dlg@openbsd.org> 5*433cd47bSdlg * 6*433cd47bSdlg * Permission to use, copy, modify, and distribute this software for any 7*433cd47bSdlg * purpose with or without fee is hereby granted, provided that the above 8*433cd47bSdlg * copyright notice and this permission notice appear in all copies. 9*433cd47bSdlg * 10*433cd47bSdlg * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11*433cd47bSdlg * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12*433cd47bSdlg * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13*433cd47bSdlg * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14*433cd47bSdlg * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15*433cd47bSdlg * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16*433cd47bSdlg * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17*433cd47bSdlg */ 18*433cd47bSdlg 19*433cd47bSdlg #ifndef _NET_IF_SEC_H 20*433cd47bSdlg #define _NET_IF_SEC_H 21*433cd47bSdlg 22*433cd47bSdlg #ifdef _KERNEL 23*433cd47bSdlg struct sec_softc; 24*433cd47bSdlg struct tdb; 25*433cd47bSdlg 26*433cd47bSdlg /* 27*433cd47bSdlg * let the IPsec stack hand packets to sec(4) for input 28*433cd47bSdlg */ 29*433cd47bSdlg 30*433cd47bSdlg struct sec_softc *sec_get(unsigned int); 31*433cd47bSdlg void sec_input(struct sec_softc * , int, int, 32*433cd47bSdlg struct mbuf *); 33*433cd47bSdlg void sec_put(struct sec_softc *); 34*433cd47bSdlg 35*433cd47bSdlg /* 36*433cd47bSdlg * let the IPsec stack give tdbs to sec(4) for output 37*433cd47bSdlg */ 38*433cd47bSdlg 39*433cd47bSdlg void sec_tdb_insert(struct tdb *); 40*433cd47bSdlg void sec_tdb_remove(struct tdb *); 41*433cd47bSdlg 42*433cd47bSdlg #endif /* _KERNEL */ 43*433cd47bSdlg 44*433cd47bSdlg #endif /* _NET_IF_SEC_H */ 45