home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 3 / PDCD_3.iso / internet / netlite / NET / h / MBUF < prev    next >
Text File  |  1992-03-01  |  1KB  |  32 lines

  1. /* Basic message buffer structure */
  2. struct mbuf {
  3.         struct mbuf *next;      /* Links mbufs belonging to single packets */
  4.         struct mbuf *anext;     /* Links packets on queues */
  5.         int16 size;             /* Size of associated data buffer */
  6.         char *data;             /* Active working pointers */
  7.         int16 cnt;
  8. };
  9. #define NULLBUF (struct mbuf *)0
  10. #define NULLBUFP (struct mbuf **)0
  11.  
  12. struct mbuf *alloc_mbuf(int16);
  13. struct mbuf *free_mbuf(struct mbuf *);
  14. struct mbuf *free_p(struct mbuf *);
  15. void   free_q(struct mbuf **);
  16. int16  len_mbuf(struct mbuf *);
  17. int16  len_q(struct mbuf *);
  18. void   trim_mbuf(struct mbuf **, int16);
  19. int16  dup_p(struct mbuf **, struct mbuf *, int16, int16);
  20. struct mbuf *copy_p(struct mbuf *, int16);
  21. int16  pullup(struct mbuf **, char *, int16);
  22. void   append(struct mbuf **, struct mbuf *);
  23. struct mbuf *pushdown(struct mbuf *, int16);
  24. void   enqueue(struct mbuf **, struct mbuf *);
  25. struct mbuf *dequeue(struct mbuf **);
  26. struct mbuf *qdata(char *, int16);
  27. int16  dqdata(struct mbuf *, char *, unsigned int);
  28. int32  pull32(struct mbuf **);
  29. int16  pull16(struct mbuf **);
  30. char   pullchar(struct mbuf **);
  31.  
  32.