STRQGET(9F) Kernel Functions for Drivers STRQGET(9F)

strqget - get information about a queue or band of the queue

#include <sys/stream.h>
int strqget(queue_t *q, qfields_t what, unsigned char pri, void *valp);

Architecture independent level 1 (DDI/DKI).

q

Pointer to the queue.

what

Field of the queue structure for (or the specified priority band) to return information about. Valid values are one of:

QHIWAT

High water mark.

QLOWAT

Low water mark.

QMAXPSZ

Largest packet accepted.

QMINPSZ

Smallest packet accepted.

QCOUNT

Approximate size (in bytes) of data.

QFIRST

First message.

QLAST

Last message.

QFLAG

Status.

pri

Priority band of interest.

valp

The address of where to store the value of the requested field.

The strqget() function gives drivers and modules a way to get information about a queue or a particular band of a queue without directly accessing STREAMS data structures, thus insulating them from changes in the implementation of these data structures from release to release.

On success, 0 is returned and the value of the requested field is stored in the location pointed to by valp. An error number is returned on failure.

The strqget() function can be called from user, interrupt, or kernel context.

strqset(9F), queue(9S)

Writing Device Drivers

STREAMS Programming Guide

January 16, 2006 OmniOS