blob: b339d1f2e0e5c53e548ffd9db7224a40db80c229 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/******************************************************************************
2 *
3 * (C)Copyright 1998,1999 SysKonnect,
4 * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * The information in this file is provided "AS IS" without warranty.
12 *
13 ******************************************************************************/
14
15#ifndef _MBUF_
16#define _MBUF_
17
18#ifndef PCI
19#define M_SIZE 4550
20#else
21#define M_SIZE 4504
22#endif
23
24#ifndef MAX_MBUF
25#define MAX_MBUF 4
26#endif
27
28#ifndef NO_STD_MBUF
29#define sm_next m_next
30#define sm_off m_off
31#define sm_len m_len
32#define sm_data m_data
33#define SMbuf Mbuf
34#define mtod smtod
35#define mtodoff smtodoff
36#endif
37
38struct s_mbuf {
39 struct s_mbuf *sm_next ; /* low level linked list */
40 short sm_off ; /* offset in m_data */
41 u_int sm_len ; /* len of data */
42#ifdef PCI
43 int sm_use_count ;
44#endif
45 char sm_data[M_SIZE] ;
46} ;
47
48typedef struct s_mbuf SMbuf ;
49
50/* mbuf head, to typed data */
51#define smtod(x,t) ((t)((x)->sm_data + (x)->sm_off))
52#define smtodoff(x,t,o) ((t)((x)->sm_data + (o)))
53
54#endif /* _MBUF_ */