#include <sys/stream.h> mblk_t *msgpullup(mblk_t *mp, ssize_t len);
Architecture independent level 1 (DDI/DKI).
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:
Successful completion. A pointer to the new message is returned.
An error occurred.
The msgpullup() function can be called from user, interrupt, or kernel context.