1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-or-later */ 2*4882a593Smuzhiyun /****************************************************************************** 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * (C)Copyright 1998,1999 SysKonnect, 5*4882a593Smuzhiyun * a business unit of Schneider & Koch & Co. Datensysteme GmbH. 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * The information in this file is provided "AS IS" without warranty. 8*4882a593Smuzhiyun * 9*4882a593Smuzhiyun ******************************************************************************/ 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #ifndef _MBUF_ 12*4882a593Smuzhiyun #define _MBUF_ 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun #define M_SIZE 4504 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun #ifndef MAX_MBUF 17*4882a593Smuzhiyun #define MAX_MBUF 4 18*4882a593Smuzhiyun #endif 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun #ifndef NO_STD_MBUF 21*4882a593Smuzhiyun #define sm_next m_next 22*4882a593Smuzhiyun #define sm_off m_off 23*4882a593Smuzhiyun #define sm_len m_len 24*4882a593Smuzhiyun #define sm_data m_data 25*4882a593Smuzhiyun #define SMbuf Mbuf 26*4882a593Smuzhiyun #define mtod smtod 27*4882a593Smuzhiyun #define mtodoff smtodoff 28*4882a593Smuzhiyun #endif 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun struct s_mbuf { 31*4882a593Smuzhiyun struct s_mbuf *sm_next ; /* low level linked list */ 32*4882a593Smuzhiyun short sm_off ; /* offset in m_data */ 33*4882a593Smuzhiyun u_int sm_len ; /* len of data */ 34*4882a593Smuzhiyun #ifdef PCI 35*4882a593Smuzhiyun int sm_use_count ; 36*4882a593Smuzhiyun #endif 37*4882a593Smuzhiyun char sm_data[M_SIZE] ; 38*4882a593Smuzhiyun } ; 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun typedef struct s_mbuf SMbuf ; 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun /* mbuf head, to typed data */ 43*4882a593Smuzhiyun #define smtod(x,t) ((t)((x)->sm_data + (x)->sm_off)) 44*4882a593Smuzhiyun #define smtodoff(x,t,o) ((t)((x)->sm_data + (o))) 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun #endif /* _MBUF_ */ 47