unlinkb(D3) unlinkb(D3)
NAME
unlinkb - remove a message block from the head of a message
SYNOPSIS
#include <sys/stream.h>
#include <sys/ddi.h>
mblk_t *unlinkb(mblk_t *mp);
Arguments
mp Pointer to the message.
DESCRIPTION
unlinkb removes the first message block from the message
pointed to by mp.
Return Values
unlinkb returns a pointer to the remainder of the message
after the first message block has been removed. If there is
only one message block in the message, NULL is returned.
USAGE
The removed message block is not freed. It is the caller's
responsibility to free it.
Level
Base or Interrupt.
Synchronization Constraints
Does not sleep.
Driver-defined basic locks, read/write locks, and sleep locks
may be held across calls to this function.
Examples
The routine expects to get passed an M_PROTO T_DATA_IND
message. It will remove and free the M_PROTO header and
return the remaining M_DATA portion of the message.
1 mblk_t *
2 makedata(mp)
3 mblk_t *mp;
4 {
5 mblk_t *nmp;
6 nmp = unlinkb(mp);
7 freeb(mp);
8 return(nmp);
9 }
Copyright 1994 Novell, Inc. Page 1
unlinkb(D3) unlinkb(D3)
REFERENCES
linkb(D3)
NOTICES
Portability
All processors
Applicability
ddi: 1, 2, 3, 4, 5, 5mp, 6, 6mp, 7, 7mp
Copyright 1994 Novell, Inc. Page 2