DUPMSG(9F)              Kernel Functions for Drivers              DUPMSG(9F)
NAME
       dupmsg - duplicate a message
SYNOPSIS
       #include <sys/stream.h>       
mblk_t *dupmsg(
mblk_t *mp);
INTERFACE LEVEL
       Architecture independent level 1 (DDI/DKI).
PARAMETERS
       mp              Pointer to the message.
DESCRIPTION
       dupmsg() forms a new message by copying the message block descriptors
       pointed to by  
mp and linking them. 
dupb(9F) is called for each
       message block. The data blocks themselves are not duplicated.
RETURN VALUES
       If successful,  
dupmsg() returns a pointer to the new message block.
       Otherwise, it returns a  
NULL pointer. A return value of  
NULL       indicates either memory depletion or the data block reference count,       
db_ref (see 
datab(9S)), has reached a limit  (
255). See 
dupb(9F).
CONTEXT
       dupmsg() can be called from user, kernel, or interrupt context.
EXAMPLES
       Example 1: Using dupmsg()
       See 
copyb(9F) for an example using 
dupmsg().
SEE ALSO
       copyb(9F), 
copymsg(9F), 
dupb(9F), 
datab(9S)       Writing Device Drivers       STREAMS Programming Guide                               April 11, 1991                     DUPMSG(9F)