MSGPULLUP(9F) Kernel Functions for Drivers MSGPULLUP(9F)
NAME
msgpullup - concatenate bytes in a message
SYNOPSIS
#include <sys/stream.h>
mblk_t *msgpullup(
mblk_t *mp,
ssize_t len);
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
PARAMETERS
mp Pointer to the message whose blocks are to be concatenated.
len Number of bytes to concatenate.
DESCRIPTION
The
msgpullup() function concatenates and aligns the first
len data bytes
of the message pointed to by
mp, copying the data into a new message. Any
remaining bytes in the remaining message blocks will be copied and linked
onto the new message. The original message is unaltered. If
len equals
-1, all data are concatenated. If
len bytes of the same message type
cannot be found,
msgpullup() fails and returns
NULL.
RETURN VALUES
The
msgpullup function returns the following values:
Non-null Successful completion. A pointer to the new message is
returned.
NULL An error occurred.
CONTEXT
The
msgpullup() function can be called from user, interrupt, or kernel
context.
SEE ALSO
srv(9E),
allocb(9F),
pullupmsg(9F),
msgb(9S) Writing Device Drivers STREAMS Programming GuideNOTES
The
msgpullup() function is a
DKI-compliant replacement for the older
pullupmsg(9F) routine. Users are strongly encouraged to use
msgpullup() instead of
pullupmsg(9F).
January 16, 2006
MSGPULLUP(9F)