OpenSS7
SS7 for the
Common Man
© Copyright 1997-2007 OpenSS7 Corporation All Rights Reserved.
Last modified: Sat, 01 Nov 2008 10:41:57 GMT
Home TopIndex FirstPrev Next LastMore Download Info FAQ Mail  Home -> Documentation -> Man Pages -> Manpage of STRQSET
Quick Links

Download

SCTP

SIGTRAN

SS7

Hardware

STREAMS

Asterisk

Related

Package

Manual

FAQ

Man Pages

Applications

SS7 Stack

ISDN Stack

SIGTRAN Stack

VoIP Stack

MG Stack

SS7/ISDN Devices

IP Transport

Embedded Systems

OS

Documentation

FAQ

SIGTRAN

Design

Conformance

Performance

References

Man Pages

Manuals

Papers

Home

Overview

Status

Documentation

Resources

About

News

Manpage of STRQSET

Description: Manual Page

Keywords: ss7 ss7/ip ss7 over ip ss7 mtp ss7 sccp ss7 tcap sigtran mtp sccp tcap openss7 acb56 linux telephony pstn linux telephony linux nebs linux compactpci


STRQSET

Section: Linux Fast-STREAMS DDI/DKI (9)
Updated: 2008-10-31
Index Return to Main Contents

NAME

strqset - sets attributes of a STREAMS message queue

SYNOPSIS

#include <sys/stream.h>

int strqset(queue_t *q, qfields_t what, unsigned char band, long val);

ARGUMENTS

q

the queue for which to set values.
what
what values of the associated queue to set.
band
the band for the specified settings.
val
the value to set.

INTERFACE

STREAMS.

DESCRIPTION

strqset() sets the attribute requested by what for the queue pointed to by q and band specified by band to the value specified by val. The value set can be either a scalar or a pointer.

When band is zero, strqset() will set the attribute specified by what for the queue. When band is non-zero (between 1 and 255), strqset() will set the attribute specified by what for the queue band specified by band.

The argument what specifies the queue (or queue band if band is non-zero) attribute to be set. what can be one of the following values.

QHIWAT
Sets the high water mark associated with the q or queue band.
QLOWAT
Sets the low water mark associated with the q or queue band.
QMAXPSZ
Sets the maximum packet size associated with the q. For this operation band must be zero (0).
QMINPSZ
Sets the minimum packet size associated with the q. For this operation band must be zero (0).

strqset() provides a mechanism whereby a STREAMS(4) driver or module can change information about a queue or queue band without directly accessing the queue or qband structures. Values set by strqset() are equivalent to directly accessing the queue or qband structure members described below.

The queue structure contains at least the following members:

size_t q_hiwat - the high water mark for the queue.
size_t q_lowat - the low water mark for the queue.
ssize_t q_maxpsz - the maximum message size accepted by the queue.
ssize_t q_minpsz - the minimum message size accepted by the queue.


The qband structure contains at least the following members:

size_t qb_hiwat - the high water mark for the band.
size_t qb_lowat - the low water mark for the band.

RETURN


Upon success, strqset() returns zero (0) and sets the appropriate attribute to the appropriate value; upon failure, a non-zero error number.

ERRORS

When strqset() fails, the requested attribute remains unchanged, and it returns one of the following errors:

[EINVAL]
The queue pointer q is NULL; q does not point to a valid queue structure; QMAXPSZ or QMINPSZ was specified for what and band was non-zero; what is not a valid queue or queue band attribute.
[ENOMEM]
the queue band specified in band does not exist and a qband(9) structure could not be immediately allocated.
[EPERM]
what specified an attribute that is appropriate for strqget(9), but which is invalid for strqset(): QCOUNT, QFIRST, QLAST or QFLAG.

CONTEXT

strqset() can be called from any context, including user context, module procedures, callouts, callbacks, soft interrupts (tasklets and bottom halves), and interrupt service routines.

MP-STREAMS

strqset() is MP-safe.

Calling strqset() on a queue and stream previously frozen with freezestr(9) could result in single-party deadlock.

SEE ALSO

strqget(9).

BUGS

strqset(9) has no known bugs.

COMPATIBILITY

strqset(9) is source-level compatible with SVR 4.2 MP DDI/DKI[1], and systems based on SVR 4[2], with the following portability considerations:

---
UnixWare®[3] and SUPER-UX®[4] require that a stream be frozen with freezestr(9) for the duration of the call to strqset().
---
HP-UX®[5] lists strqset() as a function that can only be passed a queue in the queue pair currently being synchronized within a module procedure. HP-UX®[5] also lists strqset() as a utility that cannot be called from user functions or non-STREAMS code; that is, contexts asynchronous to the Stream containing q.
HP-UX® compatible drivers and modules will not call strqset() from outside of a qinit(9) routine for the queue pair of q.
---
Binary compatibility is not guaranteed.

See STREAMS(9) for additional compatibility information.

CONFORMANCE

SVR 4.2 MP DDI/DKI[1].

HISTORY

strqset() first appeared in SVR 4.0 STREAMS[2].

REFERENCES

[1]
USL DDI/DKI, Device Driver Interface/Driver-Kernel Interface (DDI/DKI) Reference Manual for Intel Processors, 1992, (Englewood Cliffs, New Jersey), AT&T UNIX System Laboratories, Inc., Prentice Hall.
[2]
SVR 4, UNIX® System V Release 4 STREAMS Programmer's Guide, 1990, (Englewood Cliffs, New Jersey), AT&T UNIX System Laboratories, Inc., Prentice Hall.
[3]
UnixWare® 7.1.3, UnixWare® 7 STREAMS Programmer's Guide, 2002, (Lindon, Utah), Caldera International, Inc., Caldera. <http://uw713doc.sco.com/>
[4]
SUPER-UX® Release 9.2, SUPER-UX STREAMS Programmers Guide, 1999, NEC Corporation, NEC.
[5]
HP-UX STREAMS, STREAMS Programmer's Guide -- HP 9000 and Integrity Server Computer Systems, October 2005, (Palo Alto, California), Hewlett-Packard Development Company L.P., HP. <http://docs.hp.com/>

TRADEMARKS

OpenSS7tm
is a trademark of OpenSS7 Corporation.
Linux®
is a registered trademark of Linus Torvalds.
UNIX®
is a registered trademark of The Open Group.
Solaris®
is a registered trademark of Sun Microsystems.

Other trademarks are the property of their respective owners.

IDENTIFICATION


Linux Fast-STREAMS: Package streams version 0.9.2.4 released 2008-10-31.

Copyright©1997-2008OpenSS7 Corp. All Rights Reserved.
(See roff source for permission notice.)



Index

NAME
SYNOPSIS
ARGUMENTS
INTERFACE
DESCRIPTION
RETURN
ERRORS
CONTEXT
MP-STREAMS
SEE ALSO
BUGS
COMPATIBILITY
CONFORMANCE
HISTORY
REFERENCES
TRADEMARKS
IDENTIFICATION

This document was created by man2html, using the manual pages.
Time: 22:38:30 GMT, May 20, 2013
OpenSS7
SS7 for the
Common Man
Home TopIndex FirstPrev Next LastMore Download Info FAQ Mail  Home -> Documentation -> Man Pages -> Manpage of STRQSET
Last modified: Sat, 01 Nov 2008 10:41:57 GMT
© Copyright 1997-2007 OpenSS7 Corporation All Rights Reserved.