diff options
author | Richard Lowe <richlowe@richlowe.net> | 2011-03-14 14:05:30 -0400 |
---|---|---|
committer | Richard Lowe <richlowe@richlowe.net> | 2011-03-14 14:05:30 -0400 |
commit | c10c16dec587a0662068f6e2991c29ed3a9db943 (patch) | |
tree | f414286f4bba41d75683ed4fbbaa6bfa4bf7fabd /usr/src/man/man3dlpi | |
parent | 68caef18a23a498d9e3017b983562c0f4fd8ab23 (diff) | |
download | illumos-joyent-c10c16dec587a0662068f6e2991c29ed3a9db943.tar.gz |
243 system manual pages should live with the software
Reviewed by: garrett@nexenta.com
Reviewed by: gwr@nexenta.com
Reviewed by: trisk@opensolaris.org
Approved by: gwr@nexenta.com
--HG--
extra : rebase_source : 0c599d0bec0dc8865fbba67721a7a6cd6b1feefb
Diffstat (limited to 'usr/src/man/man3dlpi')
22 files changed, 2566 insertions, 0 deletions
diff --git a/usr/src/man/man3dlpi/Makefile b/usr/src/man/man3dlpi/Makefile new file mode 100644 index 0000000000..eaf62e2dd0 --- /dev/null +++ b/usr/src/man/man3dlpi/Makefile @@ -0,0 +1,55 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet +# at http://www.illumos.org/license/CDDL. +# + +# Copyright 2011, Richard Lowe + +include ../../Makefile.master + +MANSECT = 3dlpi + +MANFILES = dlpi_arptype.3dlpi \ + dlpi_bind.3dlpi \ + dlpi_close.3dlpi \ + dlpi_disabnotify.3dlpi \ + dlpi_enabmulti.3dlpi \ + dlpi_enabnotify.3dlpi \ + dlpi_fd.3dlpi \ + dlpi_get_physaddr.3dlpi \ + dlpi_iftype.3dlpi \ + dlpi_info.3dlpi \ + dlpi_linkname.3dlpi \ + dlpi_mactype.3dlpi \ + dlpi_open.3dlpi \ + dlpi_promiscon.3dlpi \ + dlpi_recv.3dlpi \ + dlpi_send.3dlpi \ + dlpi_set_physaddr.3dlpi \ + dlpi_set_timeout.3dlpi \ + dlpi_strerror.3dlpi \ + dlpi_unbind.3dlpi \ + dlpi_walk.3dlpi + +MANSOFILES = dlpi_disabmulti.3dlpi \ + dlpi_promiscoff.3dlpi + +MANFILES += $(MANSOFILES) + +dlpi_disabmulti.3dlpi := SOSRC = man3dlpi/dlpi_enabmulti.3dlpi + +dlpi_promiscoff.3dlpi := SOSRC = man3dlpi/dlpi_promiscon.3dlpi + +.KEEP_STATE: + +include ../Makefile.man + +install: $(ROOTMANFILES) + + diff --git a/usr/src/man/man3dlpi/dlpi_arptype.3dlpi b/usr/src/man/man3dlpi/dlpi_arptype.3dlpi new file mode 100644 index 0000000000..0a46986d02 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_arptype.3dlpi @@ -0,0 +1,49 @@ +'\" te +.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_arptype 3DLPI "8 Feb 2008" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_arptype \- convert a DLPI MAC type to an ARP hardware type +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-ldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> +\fBuint_t\fR \fBdlpi_arptype\fR(\fBuint_t\fR \fIdlpitype\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_arptype()\fR function converts a DLPI MAC type to an ARP hardware +type defined in \fB<netinet/arp.h>\fR +.SH RETURN VALUES +.sp +.LP +Upon success, the corresponding \fBARP\fR hardware type is returned. Otherwise, +zero is returned. +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_bind.3dlpi b/usr/src/man/man3dlpi/dlpi_bind.3dlpi new file mode 100644 index 0000000000..ad3cd77c0e --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_bind.3dlpi @@ -0,0 +1,116 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_bind 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_bind \- bind DLPI handle +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_bind\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBuint_t\fR \fIsap\fR, \fBuint_t *\fR\fIboundsap\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_bind()\fR function attempts to bind the \fBDLPI\fR handle \fIdh\fR +to the \fBSAP\fR \fIsap\fR. The handle must be in the \fBDL_UNBOUND\fR +\fBDLPI\fR state and will transition to the \fBDL_IDLE\fR \fBDLPI\fR state upon +success. Some \fBDLPI\fR \fBMAC\fR types can bind to a different \fBSAP\fR than +the \fBSAP\fR requested, in which case \fIboundsap\fR returns the actual bound +\fBSAP\fR. If \fIboundsap\fR is set to \fBNULL\fR, \fBdlpi_bind()\fR fails if +the bound \fBSAP\fR does not match the requested \fBSAP\fR. If the caller does +not care which \fBSAP\fR is chosen, \fBDLPI_ANY_SAP\fR can be specified for +\fIsap\fR. This is primarily useful in conjunction with \fBdlpi_promiscon()\fR +and \fBDL_PROMISC_SAP\fR to receive traffic from all \fBSAP\fRs. If +\fBDLPI_ANY_SAP\fR is specified, any transmitted messages must explicitly +specify a \fBSAP\fR using \fBdlpi_send\fR(3DLPI). +.sp +.LP +Upon success, the caller can use \fBdlpi_recv\fR(3DLPI) to receive data +matching the bound \fBSAP\fR that is sent to the \fBDLPI\fR link associated +with \fIdh\fR. In addition, the caller can use \fBdlpi_send\fR(3DLPI) to send +data over the bound \fBSAP\fR address associated with \fBDLPI\fR handle +\fIdh\fR. The physical address of the bound handle can be retrieved with +\fBdlpi_info\fR(3DLPI). +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or an error value listed +in the following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADMSG\fR\fR +.ad +.RS 20n +.rt +Bad DLPI message +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 20n +.rt +Invalid \fBDLPI\fR handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 20n +.rt +\fBDLPI\fR operation timed out +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EUNAVAILSAP\fR\fR +.ad +.RS 20n +.rt +Unavailable \fBDLPI\fR \fBSAP\fR +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_info\fR(3DLPI), \fBdlpi_recv\fR(3DLPI), \fBdlpi_send\fR(3DLPI), +\fBdlpi_unbind\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_close.3dlpi b/usr/src/man/man3dlpi/dlpi_close.3dlpi new file mode 100644 index 0000000000..53257f89de --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_close.3dlpi @@ -0,0 +1,46 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_close 3DLPI "15 Jun 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_close \- close DLPI link +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBvoid\fR \fIdlpi_close\fR(\fBdlpi_handle_t\fR \fIdh\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_close()\fR function closes the open \fBDLPI\fR link instance +associated with \fIdh\fR and destroys \fIdh\fR after closing the \fBDLPI\fR +link instance. +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_open\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_disabnotify.3dlpi b/usr/src/man/man3dlpi/dlpi_disabnotify.3dlpi new file mode 100644 index 0000000000..37bcad28b6 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_disabnotify.3dlpi @@ -0,0 +1,105 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems Inc. All Rights Reserved. +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_disabnotify 3DLPI "21 Sep 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_disabnotify \- disable DLPI notification +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... -\fBldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_disabnotify\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBdlpi_notifyid_t\fR \fIid\fR, + \fBvoid **\fR\fIargp\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_disabnotify()\fR function disables the notification registration +associated with identifier \fIid\fR. If \fIargp\fR is not NULL, the argument +\fIarg\fR that was passed to \fBdlpi_enabnotify\fR(3DLPI) during registration +is also returned. This operation can be performed in any DLPI state of a +handle. +.sp +.LP +Closing the DLPI handle \fIdh\fR will also remove all associated callback +functions. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a DLPI +error value defined in \fB<sys/dlpi.h>\fR or an error value listed in the +following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 21n +.rt +A DLPI handle is invalid. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 21n +.rt +An argument is invalid. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ENOTEIDINVAL\fR\fR +.ad +.RS 21n +.rt +The DLPI notification ID is invalid. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_FAILURE\fR\fR +.ad +.RS 21n +.rt +The DLPI operation failed. +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for descriptions of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_enabnotify\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_enabmulti.3dlpi b/usr/src/man/man3dlpi/dlpi_enabmulti.3dlpi new file mode 100644 index 0000000000..c9cfe184e7 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_enabmulti.3dlpi @@ -0,0 +1,114 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_enabmulti 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_enabmulti, dlpi_disabmulti \- enable or disable DLPI multicast messages +for an address +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-ldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_enabmulti\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBconst void *\fR\fIaddrp\fR, + \fBsize_t\fR \fIaddrlen\fR); +.fi + +.LP +.nf +\fBint\fR \fBdlpi_disabmulti\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBconst void *\fR\fIaddrp\fR, + \fBsize_t\fR \fIaddrlen\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_enabmulti()\fR function enables reception of messages destined to +the multicast address pointed to by \fIaddrp\fR on the \fBDLPI\fR link instance +associated with \fBDLPI\fR handle \fIdh\fR. The \fBDLPI\fR link instance will +pass up only those messages destined for enabled multicast addresses. This +operation can be performed in any \fBDLPI\fR state of a handle. +.sp +.LP +The \fBdlpi_disabmulti()\fR function disables a specified multicast address +pointed to by \fIaddrp\fR on the \fBDLPI\fR link instance associated with +\fBDLPI\fR handle \fIdh\fR. This operation can be performed in any \fBDLPI\fR +state of a handle. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or \fBDLPI_EINHANDLE\fR is +returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADMSG\fR\fR +.ad +.RS 18n +.rt +Bad DLPI message +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 18n +.rt +Invalid \fBDLPI\fR handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 18n +.rt +Invalid argument +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 18n +.rt +\fBDLPI\fR operation timed out +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_enabnotify.3dlpi b/usr/src/man/man3dlpi/dlpi_enabnotify.3dlpi new file mode 100644 index 0000000000..6dd68c2177 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_enabnotify.3dlpi @@ -0,0 +1,229 @@ +'\" te +.\" Copyright (c) 2009, Sun Microsystems Inc. All Rights Reserved. +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_enabnotify 3DLPI "10 Mar 2009" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_enabnotify \- enable DLPI notification +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... -\fBldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_enabnotify\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBuint_t\fR \fInotes\fR, + \fBdlpi_notifyfunc_t *\fR\fIfuncp\fR, \fBvoid *\fR\fIarg\fR, \fBdlpi_notifyid_t *\fR\fIid\fR); +.fi + +.LP +.nf +\fBtypedef void\fR \fBdlpi_notifyfunc_t\fR(\fBdlpi_handle_t\fR, + \fBdlpi_notifyinfo_t *\fR, \fBvoid *\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_enabnotify()\fR function enables a notification callback for the +set of events specified in \fInotes\fR, which must be one or more (by a logical +OR operation) of the DLPI notifications documented in \fBdlpi\fR(7P). The +callback function \fIfuncp\fR is registered with the DLPI handle \fIdh\fR and +is invoked when \fIdh\fR receives notification for any of the specified event +types. Upon success, \fIid\fR contains the identifier associated with the +registration. +.sp +.LP +Multiple event types can be registered for a callback function on the DLPI +handle \fIdh\fR. Similarly, the same event type can be registered multiple +times on the same handle. +.sp +.LP +Once a callback has been registered, \fBlibdlpi\fR will check for notification +events on the DLPI handle \fIdh\fR, when exchanging DLPI messages with the +underlying DLPI link instance. The \fBdlpi_recv\fR(3DLPI) function will always +check for notification events, but other \fBlibdlpi\fR operations may also lead +to an event callback being invoked. Although there may be no expected data +messages to be received, \fBdlpi_recv()\fR can be called, as shown below, with +a null buffer to force a check for pending events on the underlying DLPI link +instance. +.sp +.in +2 +.nf +dlpi_recv(dh, NULL, NULL, NULL, NULL, 0, NULL); +.fi +.in -2 + +.sp +.LP +When a notification event of interest occurs, the callback function is invoked +with the arguments \fIarg\fR, originally passed to +\fBdlpi_disabnotify\fR(3DLPI), and \fIinfop\fR, whose members are described +below. +.sp +.ne 2 +.mk +.na +\fB\fBuint_t\fR \fIdni_note\fR\fR +.ad +.RS 27n +.rt +Notification event type. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBuint_t\fR \fIdni_speed\fR\fR +.ad +.RS 27n +.rt +Current speed, in kilobits per second, of the DLPI link. Valid only for +\fBDL_NOTE_SPEED\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBuint_t\fR \fIdni_size\fR\fR +.ad +.RS 27n +.rt +Current maximum message size, in bytes, that the DLPI link is able to accept +for transmission. Valid only for \fBDL_NOTE_SDU_SIZE\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBuchar_t\fR \fIdni_physaddrlen\fR\fR +.ad +.RS 27n +.rt +Link-layer physical address length, in bytes. Valid only for +\fBDL_NOTE_PHYS_ADDR\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBuchar_t\fR \fIdni_physaddr\fR[]\fR +.ad +.RS 27n +.rt +Link-layer physical address of DLPI link. Valid only for +\fBDL_NOTE_PHYS_ADDR\fR. +.RE + +.sp +.LP +The \fBlibdlpi\fR library will allocate and free the \fBdlpi_notifyinfo_t\fR +structure and the caller must not allocate the structure or perform any +operations that require its size to be known. +.sp +.LP +The callback is not allowed to block. This precludes calling +\fBdlpi_enabnotify()\fR from a callback, but non-blocking \fBlibdlpi\fR +functions, including \fBdlpi_disabnotify()\fR, can be called. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +DLPI error value defined in \fB<sys/dlpi.h>\fR or an error value listed in the +following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 21n +.rt +A DLPI handle is invalid. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 21n +.rt +An argument is invalid. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ENOTEIDINVAL\fR\fR +.ad +.RS 21n +.rt +The DLPI notification ID is invalid. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ENOTENOTSUP\fR\fR +.ad +.RS 21n +.rt +The DLPI notification is not supported by the link. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 21n +.rt +The DLPI operation timed out. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_FAILURE\fR\fR +.ad +.RS 21n +.rt +The DLPI operation failed. +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for descriptions of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_disabnotify\fR(3DLPI), \fBdlpi_recv\fR(3DLPI), \fBlibdlpi\fR(3LIB), +\fBattributes\fR(5), \fBdlpi\fR(7P) diff --git a/usr/src/man/man3dlpi/dlpi_fd.3dlpi b/usr/src/man/man3dlpi/dlpi_fd.3dlpi new file mode 100644 index 0000000000..e3b2e4f167 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_fd.3dlpi @@ -0,0 +1,63 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_fd 3DLPI "15 Jun 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_fd \- get DLPI file descriptor +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBint\fR \fIdlpi_fd\fR(\fBdlpi_handle_t\fR \fIdh\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_fd()\fR function returns the integer file descriptor that can be +used to directly operate on the open \fBDLPI\fR stream associated with the +\fBDLPI\fR handle \fIdh\fR. This file descriptor can be used to perform +non-\fBDLPI\fR operations that do not alter the state of the \fBDLPI\fR stream, +such as waiting for an event using \fBpoll\fR(2), or pushing and configuring +additional \fBSTREAMS\fR modules, such as \fBpfmod\fR(7M). If \fBDLPI\fR +operations are directly performed on the file descriptor, or a \fBSTREAMS\fR +module is pushed that alters the message-passing interface such that \fBDLPI\fR +operations can no longer be issued, future operations on \fIdh\fR might not +behave as documented. +.sp +.LP +The returned file descriptor is managed by \fBlibdlpi\fR(3LIB) and the +descriptor must not be closed. +.SH RETURN VALUES +.sp +.LP +The function returns the integer file descriptor associated with the \fBDLPI\fR +handle \fIdh\fR. If \fIdh\fR is invalid, \fB-1\fR is returned. +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBpoll\fR(2), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5), \fBdlpi\fR(7P), +\fBpfmod\fR(7M) diff --git a/usr/src/man/man3dlpi/dlpi_get_physaddr.3dlpi b/usr/src/man/man3dlpi/dlpi_get_physaddr.3dlpi new file mode 100644 index 0000000000..1b13d56d18 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_get_physaddr.3dlpi @@ -0,0 +1,131 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_get_physaddr 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_get_physaddr \- get physical address using DLPI +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-ldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_get_physaddr\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBuint_t\fR \fItype\fR, + \fBvoid *\fR\fIaddrp\fR,\fBsize_t *\fR\fIaddrlenp\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_get_physaddr()\fR function gets a physical address from the +\fBDLPI\fR link instance associated with \fBDLPI\fR handle \fIdh\fR. The +retrieved address depends upon \fItype\fR, which can be: +.sp +.ne 2 +.mk +.na +\fB\fBDL_FACT_PHYS_ADDR\fR\fR +.ad +.RS 21n +.rt +Factory physical address +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDL_CURR_PHYS_ADDR\fR\fR +.ad +.RS 21n +.rt +Current physical address +.RE + +.sp +.LP +The operation can be performed in any \fBDLPI\fR state of \fIdh\fR. +.sp +.LP +The caller must ensure that \fIaddrp\fR is at least \fBDLPI_PHYSADDR_MAX\fR +bytes in size and \fIaddrlenp\fR must contain the length of \fIaddrp\fR. Upon +success, \fIaddrp\fR contains the specified physical address, and +\fIaddrlenp\fR contains the physical address length. If a physical address is +not available, \fIaddrp\fR is not filled in and \fIaddrlenp\fR is set to zero. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or an error value listed +in the following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADMSG\fR\fR +.ad +.RS 18n +.rt +Bad DLPI message +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 18n +.rt +Invalid \fBDLPI\fR handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 18n +.rt +Invalid argument +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 18n +.rt +\fBDLPI\fR operation timed out +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_set_physaddr\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_iftype.3dlpi b/usr/src/man/man3dlpi/dlpi_iftype.3dlpi new file mode 100644 index 0000000000..854acc5b00 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_iftype.3dlpi @@ -0,0 +1,50 @@ +'\" te +.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_iftype 3DLPI "8 Feb 2008" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_iftype \- convert a DLPI MAC type to a BSD socket interface type +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-ldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBuint_t\fR \fBdlpi_iftype\fR(\fBuint_t\fR \fIdlpitype\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_iftype()\fR function converts a DLPI MAC type to a \fBBSD\fR socket +interface type defined in \fB<net/if_types.h>\fR. +.SH RETURN VALUES +.sp +.LP +Upon success, the corresponding \fBBSD\fR socket interface type is returned. +Otherwise, zero is returned. +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_info.3dlpi b/usr/src/man/man3dlpi/dlpi_info.3dlpi new file mode 100644 index 0000000000..30e0f750a2 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_info.3dlpi @@ -0,0 +1,367 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_info 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_info \- get DLPI information +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBint\fR \fIdlpi_info\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBdlpi_info_t *\fR\fIinfop\fR, + \fBuint_t\fR \fIopt\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_info()\fR function provides \fBDLPI\fR information about the open +\fBDLPI\fR link instance associated with \fBDLPI\fR handle \fIdh\fR. \fBDLPI\fR +information can be retrieved in any state of \fIdh\fR, but some of the +information might not be available if \fIdh\fR is in the \fBDL_UNBOUND\fR +\fBDLPI\fR state. The \fBDLPI\fR information received is copied into +\fIinfop\fR, which must point to a \fBdlpi_info_t\fR allocated by the caller. +The \fIopt\fR argument is reserved for future use and must be set to 0. +.sp +.LP +The \fBdlpi_info_t\fR is a structure defined in \fB<libdlpi.h>\fR as follows: +.sp +.in +2 +.nf +typedef struct { + uint_t di_opts; + uint_t di_max_sdu; + uint_t di_min_sdu; + uint_t di_state; + uchar_t di_mactype; + char di_linkname[DLPI_LINKNAME_MAX]; + uchar_t di_physaddr[DLPI_PHYSADDR_MAX]; + uchar_t di_physaddrlen; + uchar_t di_bcastaddr[DLPI_PHYSADDR_MAX]; + uchar_t di_bcastaddrlen; + uint_t di_sap; + int di_timeout; + dl_qos_cl_sel1_t di_qos_sel; + dl_qos_cl_range1_t di_qos_range; +} dlpi_info_t; +.fi +.in -2 + +.sp +.ne 2 +.mk +.na +\fB\fIdi_opts\fR\fR +.ad +.RS 19n +.rt +Reserved for future \fBdlpi_info_t\fR expansion. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_max_sdu\fR\fR +.ad +.RS 19n +.rt +Maximum message size, in bytes, that the \fBDLPI\fR link is able to accept for +transmission. The value is guaranteed to be greater than or equal to +\fIdi_min_sdu\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_min_sdu\fR\fR +.ad +.RS 19n +.rt +Minimum message size, in bytes, that the \fBDLPI\fR link is able to accept for +transmission. The value is guaranteed to be greater than or equal to one. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_state\fR\fR +.ad +.RS 19n +.rt +Current \fBDLPI\fR state of \fIdh\fR; either \fBDL_UNBOUND\fR or \fBDL_IDLE\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_mactype\fR\fR +.ad +.RS 19n +.rt +\fBMAC\fR type supported by the \fBDLPI\fR link associated with \fIdh\fR. See +\fB<sys/dlpi.h>\fR for the list of possible \fBMAC\fR types. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_linkname\fR\fR +.ad +.RS 19n +.rt +Link name associated with \fBDLPI\fR handle \fIdh\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_physaddr\fR\fR +.ad +.RS 19n +.rt +Link-layer physical address of bound \fIdh\fR. If \fIdh\fR is in the +\fBDL_UNBOUND\fR \fBDLPI\fR state, the contents of \fIdi_physaddr\fR are +unspecified. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_physaddrlen\fR\fR +.ad +.RS 19n +.rt +Physical address length, in bytes. If \fIdh\fR is in the \fBDL_UNBOUND\fR +\fBDLPI\fR state, \fIdi_physaddrlen\fR is set to zero. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_bcastaddr\fR\fR +.ad +.RS 19n +.rt +Link-layer broadcast address. If the \fIdi_mactype\fR of the \fBDLPI\fR link +does not support broadcast, the contents of \fIdi_bcastaddr\fR are unspecified. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_bcastaddrlen\fR\fR +.ad +.RS 19n +.rt +Link-layer broadcast address length, in bytes. If the \fIdi_mactype\fR of the +\fBDLPI\fR link does not support broadcast, \fIdi_bcastaddrlen\fR is set to +zero. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_sap\fR\fR +.ad +.RS 19n +.rt +\fBSAP\fR currently bound to handle. If \fIdh\fR is in the \fBDL_UNBOUND\fR +\fBDLPI\fR state, \fIdi_sap\fR is set to zero. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_timeout\fR\fR +.ad +.RS 19n +.rt +Current timeout value, in seconds, set on the \fBdlpi\fR handle. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_qos_sel\fR\fR +.ad +.RS 19n +.rt +Current \fBQOS\fR parameters supported by the \fBDLPI\fR link instance +associated with \fIdh\fR. Unsupported \fBQOS\fR parameters are set to +\fBDL_UNKNOWN\fR. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIdi_qos_range\fR\fR +.ad +.RS 19n +.rt +Available range of \fBQOS\fR parameters supported by a \fBDLPI\fR link instance +associated with the \fBDLPI\fR handle \fIdh\fR. Unsupported \fBQOS\fR range +values are set to \fBDL_UNKNOWN\fR. +.RE + +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or an error value listed +in the following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADMSG\fR\fR +.ad +.RS 20n +.rt +Bad DLPI message +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 20n +.rt +Invalid \fBDLPI\fR handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 20n +.rt +Invalid argument +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EMODENOTSUP\fR\fR +.ad +.RS 20n +.rt +Unsupported \fBDLPI\fR connection mode +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 20n +.rt +\fBDLPI\fR operation timed out +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EVERNOTSUP\fR\fR +.ad +.RS 20n +.rt +Unsupported \fBDLPI\fR Version +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_FAILURE\fR\fR +.ad +.RS 20n +.rt +\fBDLPI\fR operation failed +.RE + +.SH EXAMPLES +.LP +\fBExample 1 \fRGet link-layer broadcast address +.sp +.LP +The following example shows how \fBdlpi_info()\fR can be used. + +.sp +.in +2 +.nf +#include <libdlpi.h> + +uchar_t * +get_bcastaddr(const char *linkname, uchar_t *baddrlenp) +{ + dlpi_handle_t dh; + dlpi_info_t dlinfo; + uchar_t *baddr; + + if (dlpi_open(linkname, &dh, 0) != DLPI_SUCCESS) + return (NULL); + + if (dlpi_info(dh, &dlinfo, 0) != DLPI_SUCCESS) { + dlpi_close(dh); + return (NULL); + } + dlpi_close(dh); + + *baddrlenp = dlinfo.di_bcastaddrlen; + if ((baddr = malloc(*baddrlenp)) == NULL) + return (NULL); + + return (memcpy(baddr, dlinfo.di_bcastaddr, *baddrlenp)); +} +.fi +.in -2 + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_bind\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_linkname.3dlpi b/usr/src/man/man3dlpi/dlpi_linkname.3dlpi new file mode 100644 index 0000000000..94a8716aec --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_linkname.3dlpi @@ -0,0 +1,54 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_linkname 3DLPI "15 Jun 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_linkname \- get DLPI link name +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBconst char *\fR\fIdlpi_linkname\fR(\fBdlpi_handle_t\fR \fIdh\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_linkname()\fR function returns a pointer to the link name of the +\fBDLPI\fR link instance associated with the \fBDLPI\fR handle \fIdh\fR. +.sp +.LP +The returned string is managed by \fBlibdlpi\fR and must not be modified or +freed by the caller. +.SH RETURN VALUES +.sp +.LP +Upon success, the function returns a pointer to the link name associated with +the \fBDLPI\fR handle. +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_mactype.3dlpi b/usr/src/man/man3dlpi/dlpi_mactype.3dlpi new file mode 100644 index 0000000000..a7c5967edc --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_mactype.3dlpi @@ -0,0 +1,53 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_mactype 3DLPI "15 Jun 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_mactype \- convert a DLPI MAC type to a string +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBconst char\fR *\fIdlpi_mactype\fR(\fBuint_t\fR \fImactype\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_mactype()\fR function returns a pointer to a string that describes +the specified \fImactype\fR. Possible \fBMAC\fR types are defined in +\fB<sys/dlpi.h>\fR\&. The string is not dynamically allocated and must not be +freed by the caller. +.SH RETURN VALUES +.sp +.LP +Upon success, the function returns a pointer string that describes the +\fBMAC\fR type. If \fImactype\fR is unknown, the string "Unknown MAC Type" is +returned. +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_open.3dlpi b/usr/src/man/man3dlpi/dlpi_open.3dlpi new file mode 100644 index 0000000000..4a2cc37b29 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_open.3dlpi @@ -0,0 +1,239 @@ +'\" te +.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_open 3DLPI "17 Nov 2008" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_open \- open DLPI link +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_open\fR(\fBconst char *\fR\fIlinkname\fR, \fBdlpi_handle_t *\fR\fIdhp\fR, + \fBuint_t\fR \fIflags\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_open()\fR function creates an open instance of the \fBDLPI\fR +Version 2 link named by \fIlinkname\fR and associates it with a +dynamically-allocated \fBdlpi_handle_t\fR, which is returned to the caller in +\fIdhp\fR upon success. The \fBDLPI\fR handle is left in the \fBDL_UNBOUND\fR +\fBDLPI\fR state after a successful open of the \fBDLPI\fR link. The DLPI +handles can only be used by one thread at a time, but multiple handles can be +used by multiple threads. This function can open both \fBDL_STYLE1\fR and +\fBDL_STYLE2\fR \fBDLPI\fR links. +.sp +.LP +By default (if \fBDLPI_DEVIPNET\fR is not set in \fIflags\fR), the +\fBdlpi_open()\fR function scans the \fB/dev/net\fR and \fB/dev\fR directories +for DLPI links, in order. Within each scanned directory, \fBdlpi_open()\fR +first looks for a matching \fBDL_STYLE1\fR link, then for a matching +\fBDL_STYLE2\fR link. If \fIprovider\fR is considered the \fIlinkname\fR with +its trailing digits removed, a matching \fBDL_STYLE1\fR link has a filename of +\fIlinkname\fR, and a matching \fBDL_STYLE2\fR link has a filename of +\fIprovider\fR. If a \fBDL_STYLE2\fR link is opened, \fBdlpi_open()\fR +automatically performs the necessary \fBDLPI\fR operations to place the +\fBDLPI\fR link instance and the associated \fBDLPI\fR handle in the +\fBDL_UNBOUND\fR state. See \fBdlpi\fR(7P) for the definition of +\fIlinkname\fR. +.sp +.LP +If \fBDLPI_DEVIPNET\fR is set in \fIflags\fR, \fBdlpi_open()\fR opens the file +\fIlinkname\fR in \fB/dev/ipnet\fR as a \fBDL_STYLE1\fR DLPI device and does +not look in any other directories. +.sp +.LP +The value of \fIflags\fR is constructed by a bitwise-inclusive-OR of the flags +listed below, defined in \fB<libdlpi.h>\fR. +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_DEVIPNET\fR\fR +.ad +.RS 18n +.rt +Specify that the named DLPI device is an IP observability device (see +\fBipnet\fR(7D)), and \fBdl_open()\fR will open the device from the +\fB/dev/ipnet/\fR directory. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_IPNETINFO\fR\fR +.ad +.RS 18n +.rt +This flag is applicable only when opening IP Observability devices (with +\fBDLPI_DEVIPNET\fR or by opening the \fB/dev/lo0\fR device). This flag causes +the \fBipnet\fR driver to prepend an \fBipnet\fR header to each received IP +packet. See \fBipnet\fR(7D) for the contents of this header. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_NATIVE\fR\fR +.ad +.RS 18n +.rt +Enable \fBDLPI\fR native mode (see \fBDLIOCNATIVE\fR in \fBdlpi\fR(7P)) on a +\fBDLPI\fR link instance. Native mode persists until the \fBDLPI\fR handle is +closed by \fBdlpi_close\fR(3DLPI). +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_PASSIVE\fR\fR +.ad +.RS 18n +.rt +Enable \fBDLPI\fR passive mode (see \fBDL_PASSIVE_REQ\fR in \fBdlpi\fR(7P)) on +a \fBDLPI\fR link instance. Passive mode persists until the \fBDLPI\fR handle +is closed by \fBdlpi_close\fR(3DLPI). +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_RAW\fR\fR +.ad +.RS 18n +.rt +Enable \fBDLPI\fR raw mode (see \fBDLIOCRAW\fR in \fBdlpi\fR(7P)) on a +\fBDLPI\fR link instance. Raw mode persists until the \fBDLPI\fR handle is +closed by \fBdlpi_close\fR(3DLPI). +.RE + +.sp +.LP +Each \fBDLPI\fR handle has an associated timeout value that is used as a +timeout interval for certain \fBlibdlpi\fR operations. The default timeout +value ensures that \fBDLPI_ETIMEDOUT\fR is returned from a \fBlibdlpi\fR +operation only in the event that the \fBDLPI\fR link becomes unresponsive. The +timeout value can be changed with \fBdlpi_set_timeout\fR(3DLPI), although this +should seldom be necessary. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or listed in the following +section is returned. +.SH ERRORS +.sp +.LP +The \fBdlpi_open()\fR function will fail if: +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADLINK\fR\fR +.ad +.RS 25n +.rt +Bad \fBDLPI\fR link +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EIPNETINFONOTSUP\fR\fR +.ad +.RS 25n +.rt +The \fBDLPI_IPNETINFO\fR flag was set but the device opened does not support +the \fBDLIOCIPNETINFO\fR ioctl. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ELINKNAMEINVAL\fR\fR +.ad +.RS 25n +.rt +Invalid \fBDLPI\fR \fIlinkname\fR +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ENOLINK\fR\fR +.ad +.RS 25n +.rt +\fBDLPI\fR link does not exist +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ERAWNOTSUP\fR\fR +.ad +.RS 25n +.rt +DLPI raw mode not supported +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 25n +.rt +\fBDLPI\fR operation timed out +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_FAILURE\fR\fR +.ad +.RS 25n +.rt +DLPI operation failed +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_close\fR(3DLPI), \fBdlpi_set_timeout\fR(3DLPI), \fBlibdlpi\fR(3LIB), +\fBattributes\fR(5), \fBdlpi\fR(7P), \fBipnet\fR(7D) diff --git a/usr/src/man/man3dlpi/dlpi_promiscon.3dlpi b/usr/src/man/man3dlpi/dlpi_promiscon.3dlpi new file mode 100644 index 0000000000..0c53c9c4b5 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_promiscon.3dlpi @@ -0,0 +1,148 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_promiscon 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_promiscon, dlpi_promiscoff \- enable or disable DLPI promiscuous mode +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-ldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_promiscon\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBuint_t\fR \fIlevel\fR); +.fi + +.LP +.nf +\fBint\fR \fBdlpi_promiscoff\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBuint_t\fR \fIlevel\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_promiscon()\fR function enables promiscuous mode on a \fBDLPI\fR +link instance associated with \fBDLPI\fR handle \fIdh\fR, at the specified +\fIlevel\fR. After enabling promiscuous mode, the caller will be able to +receive all messages destined for the \fBDLPI\fR link instance at the specified +\fIlevel\fR. This operation can be performed in any \fBDLPI\fR state of a +handle. +.sp +.LP +The \fBdlpi_promiscoff()\fR function disables promiscuous mode on a \fBDLPI\fR +link instance associated with \fBDLPI\fR handle \fIdh\fR, at the specified +level. This operation can be performed in any \fBDLPI\fR state of a handle in +which promiscuous mode is enabled at the specified \fIlevel\fR. +.sp +.LP +The \fIlevel\fR modes are: +.sp +.ne 2 +.mk +.na +\fB\fBDL_PROMISC_PHYS\fR\fR +.ad +.RS 20n +.rt +Promiscuous mode at the physical level +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDL_PROMISC_SAP\fR\fR +.ad +.RS 20n +.rt +Promiscuous mode at the \fBSAP\fR level +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDL_PROMISC_MULTI\fR\fR +.ad +.RS 20n +.rt +Promiscuous mode for all multicast addresses +.RE + +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or an error value listed +in the following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADMSG\fR\fR +.ad +.RS 18n +.rt +Bad DLPI message +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 18n +.rt +Invalid \fBDLPI\fR handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 18n +.rt +Invalid argument +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 18n +.rt +\fBDLPI\fR operation timed out +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_recv.3dlpi b/usr/src/man/man3dlpi/dlpi_recv.3dlpi new file mode 100644 index 0000000000..d6cf12465d --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_recv.3dlpi @@ -0,0 +1,177 @@ +'\" te +.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_recv 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_recv \- receive a data message using DLPI +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_recv\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBvoid *\fR\fIsaddrp\fR, + \fBsize_t *\fR \fIsaddrlenp\fR, \fBvoid *\fR\fImsgbuf\fR, \fBsize_t *\fR\fImsglenp\fR, + \fBint\fR \fImsec\fR, \fBdlpi_recvinfo_t *\fR\fIrecvp\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_recv()\fR function attempts to receive data messages over the +\fBDLPI\fR link instance associated with the \fBDLPI\fR handle \fIdh\fR. If +\fIdh\fR is not in the \fBDL_IDLE\fR \fBDLPI\fR state, the attempt fails. The +caller must ensure that \fImsgbuf\fR is at least \fImsglenp\fR bytes in size. +Upon success, \fImsgbuf\fR contains the data message received, \fImsglenp\fR +contains the number of bytes placed in \fImsgbuf\fR. +.sp +.LP +The caller must ensure that \fIsaddrp\fR is at least \fBDLPI_PHYSADDR_MAX\fR +bytes in size and \fIsaddrlenp\fR must contain the length of \fIsaddrp\fR. Upon +success, \fIsaddrp\fR contains the address of the source sending the data +message and \fIsaddrlenp\fR contains the source address length. If the caller +is not interested in the source address, both \fIsaddrp\fR and \fIsaddrlenp\fR +can be left as \fINULL\fR. If the source address is not available, \fIsaddrp\fR +is not filled in and \fIsaddrlenp\fR is set to zero. +.sp +.LP +The \fIdlpi_recvinfo_t\fR is a structure defined in \fB<libdlpi.h>\fR as +follows: +.sp +.in +2 +.nf +typedef struct { + uchar_t dri_destaddr[DLPI_PHYSADDR_MAX]; + uchar_t dri_destaddrlen; + dlpi_addrtype_t dri_destaddrtype; + size_t dri_totmsglen; +} dlpi_recvinfo_t; +.fi +.in -2 + +.sp +.LP +Upon success, if \fIrecvp\fR is not set to \fINULL\fR, \fIdri_destaddr\fR +contains the destination address, \fIdri_destaddrlen\fR contains the +destination address length, and \fIdri_totmsglen\fR contains the total length +of the message received. If the destination address is unicast, +\fIdri_destaddrtype\fR is set to \fBDLPI_ADDRTYPE_UNICAST\fR. Otherwise, it is +set to \fBDLPI_ADDRTYPE_GROUP\fR. +.sp +.LP +The values of \fImsglenp\fR and \fIdri_totmsglen\fR might vary when a message +larger than the size of \fImsgbuf\fR is received. In that case, the caller can +use \fIdri_totmsglen\fR to determine the original total length of the message. +.sp +.LP +If the handle is in raw mode, as described in \fBdlpi_open\fR(3DLPI), +\fImsgbuf\fR starts with the link-layer header. See \fBdlpi\fR(7P). The values +of \fIsaddrp\fR, \fIsaddrlenp\fR, and all the members of \fIdlpi_recvinfo_t\fR +except \fIdri_totmsglen\fR are invalid because the address information is +already included in the link-layer header returned by \fImsgbuf\fR. +.sp +.LP +If no message is received within \fImsec\fR milliseconds, \fBdlpi_recv()\fR +returns \fBDLPI_ETIMEDOUT\fR. If \fImsec\fR is \fB0\fR, \fBdlpi_recv()\fR does +not block. If \fImsec\fR is \fB-1\fR, \fBdlpi_recv()\fR does block until a data +message is received. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or an error value listed +in the following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADMSG\fR\fR +.ad +.RS 20n +.rt +Bad DLPI message +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 20n +.rt +Invalid \fBDLPI\fR handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 20n +.rt +Invalid argument +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 20n +.rt +\fBDLPI\fR operation timed out +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EUNAVAILSAP\fR\fR +.ad +.RS 20n +.rt +Unavailable \fBDLPI\fR \fBSAP\fR +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_FAILURE\fR\fR +.ad +.RS 20n +.rt +\fBDLPI\fR operation failed +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_bind\fR(3DLPI), \fBdlpi_open\fR(3DLPI), \fBlibdlpi\fR(3LIB), +\fBattributes\fR(5), \fBdlpi\fR(7P) diff --git a/usr/src/man/man3dlpi/dlpi_send.3dlpi b/usr/src/man/man3dlpi/dlpi_send.3dlpi new file mode 100644 index 0000000000..7d113a5ac7 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_send.3dlpi @@ -0,0 +1,120 @@ +'\" te +.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_send 3DLPI "15 Jul 2008" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_send \- send a data message using DLPI +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-ldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_send\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBconst void *\fR\fIdaddrp\fR, + \fBsize_t\fR \fIdaddrlen\fR, \fBconst void *\fR\fImsgbuf\fR, \fBsize_t\fR \fImsglen\fR, + \fBconst dlpi_sendinfo_t *\fR\fIsendp\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_send()\fR function attempts to send the contents of \fImsgbuf\fR +over the \fBDLPI\fR link instance associated with the \fBDLPI\fR handle +\fIdh\fR to the destination address specified by \fIdaddrp\fR. The size of +\fImsgbuf\fR and \fIdaddrp\fR are provided by the \fImsglen\fR and +\fIdaddrlen\fR arguments, respectively. The attempt will fail if \fIdh\fR is +not in the \fBDL_IDLE\fR \fBDLPI\fR state, the address named by \fIdaddrp\fR is +invalid, \fIdaddrlen\fR is larger than \fBDLPI_PHYSADDR_MAX\fR, or \fImsglen\fR +is outside the range reported by \fBdlpi_info\fR(3DLPI). +.sp +.LP +If the \fBsendp\fR argument is \fINULL\fR, data is sent using the bound SAP +associated with \fIdh\fR (see \fBdlpi_bind\fR(3DLPI)) and with default +priority. Otherwise, \fIsendp\fR must point to a \fBdlpi_sendinfo_t\fR +structure defined in \fB<libdlpi.h>\fR as follows: +.sp +.in +2 +.nf +typedef struct { + uint_t dsi_sap; + dl_priority_t dsi_prio; +} dlpi_sendinfo_t; +.fi +.in -2 + +.sp +.LP +The \fIdsi_sap\fR value indicates the SAP to use for the message and the +\fIdsi_prio\fR argument indicates the priority. The priority range spans from +0 to 100, with 0 being the highest priority. If one wishes to only alter the +SAP or priority (but not both), the current SAP can be retrieved using +\fBdlpi_info\fR(3DLPI), and the default priority can be specified by using the +\fBDL_QOS_DONT_CARE\fR constant. +.sp +.LP +If the handle is in raw mode (see \fBDLPI_RAW\fR in \fBdlpi_open\fR(3DLPI)), +\fImsgbuf\fR must start with the link-layer header (see \fBdlpi\fR(7P)). In raw +mode, the contents of \fIdaddrp\fR and \fIsendp\fR are ignored, as they are +already specified by the link-layer header in \fImsgbuf\fR. +.sp +.LP +If \fImsgbuf\fR is accepted for delivery, no error is returned. However, +because only unacknowledged connectionless service (\fBDL_CLDLS\fR) is +currently supported, a successful return does not guarantee that the data will +be successfully delivered to \fIdaddrp\fR. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or an error value listed +in the following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 18n +.rt +Invalid \fBDLPI\fR handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 18n +.rt +Invalid argument +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_bind\fR(3DLPI), \fBdlpi_info\fR(3DLPI), \fBdlpi_open\fR(3DLPI), +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5), \fBdlpi\fR(7P) diff --git a/usr/src/man/man3dlpi/dlpi_set_physaddr.3dlpi b/usr/src/man/man3dlpi/dlpi_set_physaddr.3dlpi new file mode 100644 index 0000000000..532e5b0cd2 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_set_physaddr.3dlpi @@ -0,0 +1,103 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_set_physaddr 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_set_physaddr \- set physical address using DLPI +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-ldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_set_physaddr\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBuint_t\fR \fItype\fR, + \fBconst void *\fR\fIaddrp\fR, \fBsize_t *\fR\fIaddrlen\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_set_physaddr()\fR function sets the physical address via \fBDLPI\fR +handle \fIdh\fR associated with the \fBDLPI\fR link instance. Upon success, the +physical address is set to \fIaddrp\fR with a length of \fIaddrlen\fR bytes. +.sp +.LP +In this release, \fItype\fR must be set to \fBDL_CURR_PHYS_ADDR\fR, which sets +the current physical address. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or an error value listed +in the following section is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADMSG\fR\fR +.ad +.RS 18n +.rt +Bad DLPI message +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 18n +.rt +Invalid \fBDLPI\fR handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINVAL\fR\fR +.ad +.RS 18n +.rt +Invalid argument +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 18n +.rt +\fBDLPI\fR operation timed out +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_get_physaddr\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi b/usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi new file mode 100644 index 0000000000..536d9af47c --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi @@ -0,0 +1,88 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_set_timeout 3DLPI "21 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_set_timeout \- set DLPI handle timeout interval +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBint\fR \fIdlpi_set_timeout\fR(\fBdlpi_handle_t\fR \fIdh\fR, \fBint\fR \fIsec\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_set_timeout()\fR function sets the timeout interval to \fIsec\fR +seconds on DLPI handle \fIdh\fR. This timeout is used by \fBlibdlpi\fR(3LIB) +functions that require explicit acknowledgment from the associated DLPI link, +and bounds the number of seconds that a function will wait for an +acknowledgment before returning \fBDLPI_ETIMEDOUT\fR. Except for +\fBdlpi_recv\fR(3DLPI), which has a \fItimeout\fR argument, any function that +is documented to return \fBDLPI_ETIMEDOUT\fR can take up to the \fItimeout\fR +interval to complete. +.sp +.LP +Callers that do not require an upper bound on timeouts are strongly encouraged +to never call \fBdlpi_set_timeout()\fR, and allow \fBlibdlpi\fR to use its +default \fItimeout\fR value. The default \fItimeout\fR value is intended to +ensure that \fBDLPI_ETIMEDOUT\fR will only be returned if the DLPI link has +truly become unresponsive. The default \fItimeout\fR value is intended to +ensure that \fBDLPI_ETIMEDOUT\fR will be returned only if the DLPI link has +truly become unresponsive. +.sp +.LP +Callers that do require an explicit upper bound can specify that value at any +time by calling \fBdlpi_set_timeout()\fR. However, note that values less than +5 seconds may trigger spurious failures on certain DLPI links and systems under +high load, and thus are discouraged. Attempts to set the \fItimeout\fR value to +less than 1 second will fail. +.sp +.LP +If \fIsec\fR is set to \fBDLPI_DEF_TIMEOUT\fR, the default \fItimeout\fR value +is restored. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. Otherwise, a \fBDLPI\fR error +value is returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 18n +.rt +Invalid \fBDLPI\fR handle +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_strerror.3dlpi b/usr/src/man/man3dlpi/dlpi_strerror.3dlpi new file mode 100644 index 0000000000..d7e7d1aff9 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_strerror.3dlpi @@ -0,0 +1,59 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_strerror 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_strerror \- get DLPI error message +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-ldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBconst char *\fR\fBdlpi_strerror\fR(\fBint\fR \fIerr\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_strerror()\fR function maps the error code in \fIerr\fR into an +error message string and returns a pointer to that string. +.sp +.LP +If \fIerr\fR is \fBDL_SYSERR\fR, a string that describes the current value of +\fBerrno\fR is returned. Otherwise, if \fIerr\fR corresponds to an error code +listed in \fB<libdlpi.h>\fR or \fB<sys/dlpi.h>\fR, a string which describes +that error is returned. +.sp +.LP +The string is not dynamically allocated and must not be freed by the caller. +.SH RETURN VALUES +.sp +.LP +Upon success, the function returns a pointer to the error message string. If +the error code is unknown, the string "Unknown DLPI error" is returned. +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_unbind.3dlpi b/usr/src/man/man3dlpi/dlpi_unbind.3dlpi new file mode 100644 index 0000000000..fe3b89dc62 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_unbind.3dlpi @@ -0,0 +1,91 @@ +'\" te +.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_unbind 3DLPI "22 Aug 2007" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_unbind \- unbind DLPI handle +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldlpi\fR [ \fIlibrary\fR ... ] +#include <libdlpi.h> + +\fBint\fR \fBdlpi_unbind\fR(\fBdlpi_handle_t\fR \fIdh\fR); +.fi + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_unbind()\fR function unbinds to bind the \fBDLPI\fR handle \fIdh\fR +from the bound \fBSAP\fR. The handle must be in the \fBDL_IDLE\fR \fBDLPI\fR +state and upon success, the handle transitions to the \fBDL_UNBOUND\fR state. +.sp +.LP +Upon success, the caller will no longer be able to send or receive data using +the \fBDLPI\fR link associated with \fIdh\fR. +.SH RETURN VALUES +.sp +.LP +Upon success, \fBDLPI_SUCCESS\fR is returned. If \fBDL_SYSERR\fR is returned, +\fBerrno\fR contains the specific UNIX system error value. Otherwise, a +\fBDLPI\fR error value defined in \fB<sys/dlpi.h>\fR or an error value +\fBDLPI_ETIMEDOUT\fR will be returned. +.SH ERRORS +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EBADMSG\fR\fR +.ad +.RS 18n +.rt +Bad DLPI message +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_EINHANDLE\fR\fR +.ad +.RS 18n +.rt +Invalid DLPI handle +.RE + +.sp +.ne 2 +.mk +.na +\fB\fBDLPI_ETIMEDOUT\fR\fR +.ad +.RS 18n +.rt +\fBDLPI\fR operation timed out +.RE + +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for description of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBdlpi_bind\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5) diff --git a/usr/src/man/man3dlpi/dlpi_walk.3dlpi b/usr/src/man/man3dlpi/dlpi_walk.3dlpi new file mode 100644 index 0000000000..b20b242928 --- /dev/null +++ b/usr/src/man/man3dlpi/dlpi_walk.3dlpi @@ -0,0 +1,109 @@ +'\" te +.\" Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved. +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH dlpi_walk 3DLPI "18 Sep 2008" "SunOS 5.11" "Data Link Provider Interface Library Functions" +.SH NAME +dlpi_walk \- traverse DLPI links +.SH SYNOPSIS +.LP +.nf +\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... -\fBldlpi\fR [ \fIlibrary\fR... ] +#include <libdlpi.h> + +\fBvoid\fR \fBdlpi_walk\fR(\fBdlpi_walkfunc_t *\fR\fIfn\fR, \fBvoid *\fR\fIarg\fR, \fBuint_t\fR \fIflags\fR); +.fi + +.LP +.nf +\fBtypedef boolean_t\fR \fBdlpi_walkfunc_t\fR(\fBconst char *\fR\fIname\fR, \fBvoid *\fR\fIarg\fR); +.fi + +.SH PARAMETERS +.sp +.ne 2 +.mk +.na +\fB\fIfn\fR\fR +.ad +.RS 13n +.rt +Function to invoke for each link. Arguments are: +.sp +.ne 2 +.mk +.na +\fB\fIname\fR\fR +.ad +.RS 8n +.rt +The name of the DLPI interface. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIarg\fR\fR +.ad +.RS 8n +.rt +The \fIarg\fR parameter passed in to \fBdlpi_walk()\fR. +.RE + +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIarg\fR\fR +.ad +.RS 13n +.rt +An opaque argument that is passed transparently to the user-supplied \fIfn\fR() +function. +.RE + +.sp +.ne 2 +.mk +.na +\fB\fIflags\fR\fR +.ad +.RS 13n +.rt +This parameter is reserved for future use. The caller should pass in 0. +.RE + +.SH DESCRIPTION +.sp +.LP +The \fBdlpi_walk()\fR function visits all DLPI links on the system. For each +link visited, the user-supplied fn() function is invoked. The walk terminates +either when all links have been visited or when \fIfn\fR() returns +\fBB_TRUE\fR. +.SH ATTRIBUTES +.sp +.LP +See \fBattributes\fR(5) for descriptions of the following attributes: +.sp + +.sp +.TS +tab() box; +cw(2.75i) |cw(2.75i) +lw(2.75i) |lw(2.75i) +. +ATTRIBUTE TYPEATTRIBUTE VALUE +_ +Interface StabilityCommitted +_ +MT-LevelSafe +.TE + +.SH SEE ALSO +.sp +.LP +\fBlibdlpi\fR(3LIB), \fBattributes\fR(5) |