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)