Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ adjmsg(D3DK) — Motorola System V 88k Release 4 Version 4.3

Media Vault

Software Library

Restoration Projects

Artifacts Sought

adjmsg(D3DK)  —  

.IX \f4adjmsg\fP(D3DK)

NAME

adjmsg − trim bytes from a message .IX STREAMS messages

SYNOPSIS

#include <sys/stream.h>
int adjmsg(mblk_t ∗mp, int len);

ARGUMENTS

mpPointer to the message to be trimmed. 

lenThe number of bytes to be removed. 

DESCRIPTION

adjmsg removes bytes from a message.  |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. 

RETURN VALUE

If the message can be trimmed successfully, 1 is returned.  Otherwise, 0 is returned. 

LEVEL

Base or Interrupt. 

NOTES

Does not sleep. 

Driver-defined basic locks, read/write locks, and sleep locks may be held across calls to this function. 

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. 

SEE ALSO

msgb(D4DK)

DDI/DKI  —  STREAMS

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026