OpenSS7
SS7 for the
Common Man
© Copyright 1997-2007 OpenSS7 Corporation All Rights Reserved.
Last modified: Sat, 01 Nov 2008 10:41:54 GMT
Home TopIndex FirstPrev Next LastMore Download Info FAQ Mail  Home -> Documentation -> Man Pages -> Manpage of DUPB
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 DUPB

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


DUPB

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

NAME

dupb - duplicate a STREAMS message block

SYNOPSIS

#include <sys/stream.h>

mblk_t *dupb(mblk_t *bp);

ARGUMENTS

bp

a pointer to the message block to duplicate.

INTERFACE

STREAMS.

DESCRIPTION

dupb() generates a new copy of the message block which references the same data block as the passed in data block. The b_wptr and b_rptr pointers of the new message block are set to the same values as the duplicated message block. The data block remains untouched.

RETURN

Upon success, dupb() returns a pointer to the duplicated message block.

Upon failure, dupb() returns a NULL pointer.

ERRORS

When dupb() fails, it returns a NULL pointer. dupb() can fail because the passed in message pointer, bp, is NULL; the new message block cannot be allocated; or, the reference count, db_ref, of the data block to be duplicated has reached 255. Normaly if dupb() fails, esbbcall(9) should be called with the priority associated with the message for which duplication failed. However, the reference count db_ref, on the data block to be duplicated should be checked for 255. When the duplication fails due to this maximum count, copying the data block using copyb(9) could succeed.

CONTEXT

dupb() 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

dupb() is MP-safe; however, it is the responsibility of the caller to ensure exclusive access to the passed in message block. On return, the caller has the only reference to the returned message block.

NOTICES

dupb() allocates message blocks with priority BPRI_MED. See allocb(9).

SEE ALSO

esbbcall(9), copyb(9), copymsg(9), dupmsg(9).

BUGS

dubp() has no known bugs.

Versions of Linux Fast-STREAMS previous to 0.9.2.3 had the bug that the reference count on the data block was be permitted to wrap to zero.

COMPATIBILITY

dupb() is source-level compatible with SVR 4.2 MP DDI/DKI[1], Solaris®[2] and LiS[3] with the following exceptions:

---
When dupb() is passed a NULL bp pointer, the results are undefined. When LiS dupb() is passed a NULL bp pointer, it returns NULL.
---
Solaris®[4] is the only other implementation that documents that the call fails when the db_ref member has reached the maximum of 255.
---
Binary compatibility is not guaranteed.

See STREAMS(9) for additional compatibility information.

CONFORMANCE

SVR 3[5].

HISTORY

dupb() appears as part of SVR 4.0 STREAMS [6].

dupb() first appeared in SVR 3[7].

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]
Solaris® 8, STREAMS Programming Guide, August 1999, (Palo Alto, California), Sun Microsystems, Inc., Sun. [Part No: 805-7478-05] <http://docs-pdf.sun.com/>
[3]
LIS 2.18, Linux STREAMS (LiS) 2.18.6 Source Code, Brian Bidulock, ed., OpenSS7 Corporation. <http://www.openss7.org/>
[4]
Solaris® 8, Solaris 8 Docmentation, 2001, (Santa Clara, California), Sun Microsystems, Inc., Sun. <http://docs.sun.com/>
[5]
SVR 3, UNIX® System V Release 3 Programmer's Manual, (Englewood Cliffs, New Jersey), AT&T UNIX System Laboratories, Inc., Prentice Hall.
[6]
SVR 4, UNIX® System V Release 4 STREAMS Programmer's Guide, 1990, (Englewood Cliffs, New Jersey), AT&T UNIX System Laboratories, Inc., Prentice Hall.
[7]
SVR 3, UNIX® System V Release 3 STREAMS Programmer's Guide, (Englewood Cliffs, New Jersey), AT&T UNIX System Laboratories, Inc., Prentice Hall.

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
NOTICES
SEE ALSO
BUGS
COMPATIBILITY
CONFORMANCE
HISTORY
REFERENCES
TRADEMARKS
IDENTIFICATION

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