mbuf.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /******************************************************************************
  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. #ifndef _MBUF_
  15. #define _MBUF_
  16. #ifndef PCI
  17. #define M_SIZE 4550
  18. #else
  19. #define M_SIZE 4504
  20. #endif
  21. #ifndef MAX_MBUF
  22. #define MAX_MBUF 4
  23. #endif
  24. #ifndef NO_STD_MBUF
  25. #define sm_next         m_next
  26. #define sm_off          m_off
  27. #define sm_len          m_len
  28. #define sm_data         m_data
  29. #define SMbuf           Mbuf
  30. #define mtod smtod
  31. #define mtodoff smtodoff
  32. #endif
  33. struct s_mbuf {
  34. struct s_mbuf *sm_next ; /* low level linked list */
  35. short sm_off ; /* offset in m_data */
  36. u_int sm_len ; /* len of data */
  37. #ifdef PCI
  38. int sm_use_count ;
  39. #endif
  40. char sm_data[M_SIZE] ;
  41. } ;
  42. typedef struct s_mbuf SMbuf ;
  43. /* mbuf head, to typed data */
  44. #define smtod(x,t) ((t)((x)->sm_data + (x)->sm_off))
  45. #define smtodoff(x,t,o) ((t)((x)->sm_data + (o)))
  46. #endif /* _MBUF_ */