adjmsg(D3) adjmsg(D3)
NAME
adjmsg - trim bytes from a message
SYNOPSIS
#include <sys/stream.h>
#include <sys/ddi.h>
int adjmsg(mblk_t *mp, int len);
Arguments
mp Pointer to the message to be trimmed.
len The number of bytes to be removed.
DESCRIPTION
adjmsg removes bytes from a message.
Return Values
If the message can be trimmed successfully, 1 is returned.
Otherwise, 0 is returned.
USAGE
|len| (the absolute value of len) specifies how many bytes are
to be removed. If len is greater than 0, bytes are removed
from the head of the message. If len is less than 0, bytes
are removed from the tail. adjmsg fails if |len| is greater
than the number of bytes in mp. If len spans more than one
message block in the message, the messages blocks must be the
same type, or else adjmsg will fail.
If len is greater than the amount of data in a single message
block, that message block is not freed. Rather, it is left
linked in the message, and its read and write pointers are set
equal to each other, indicating no data present in the block.
Level
Base or Interrupt.
Synchronization Constraints
Does not sleep.
Driver-defined basic locks, read/write locks, and sleep locks
may be held across calls to this function.
REFERENCES
msgb(D4)
Copyright 1994 Novell, Inc. Page 1
adjmsg(D3) adjmsg(D3)
NOTICES
Portability
All processors
Applicability
ddi: 1, 2, 3, 4, 5, 5mp, 6, 6mp, 7, 7mp
Copyright 1994 Novell, Inc. Page 2