MSGPULLUP(9F) Kernel Functions for Drivers MSGPULLUP(9F)
msgpullup - concatenate bytes in a message
#include <sys/stream.h>
mblk_t *msgpullup(mblk_t *mp, ssize_t len);
Architecture independent level 1 (DDI/DKI).
mp
Pointer to the message whose blocks are to be concatenated.
len
Number of bytes to concatenate.
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.
The msgpullup function returns the following values:
Non-null
Successful completion. A pointer to the new message is
returned.
NULL
An error occurred.
The msgpullup() function can be called from user, interrupt, or
kernel context.
srv(9E), allocb(9F), pullupmsg(9F), msgb(9S)
Writing Device Drivers
STREAMS Programming Guide
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)
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 Guide
NOTES
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)