libdlpi_impl.h revision 2b24ab6b3865caeede9eeb9db6b83e1d89dcd1ea
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * CDDL HEADER START
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * The contents of this file are subject to the terms of the
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Common Development and Distribution License (the "License").
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * You may not use this file except in compliance with the License.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * See the License for the specific language governing permissions
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * and limitations under the License.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * When distributing Covered Code, include this CDDL HEADER in each
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * If applicable, add the following below this CDDL HEADER, with the
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * fields enclosed by brackets "[]" replaced with your own identifying
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * information: Portions Copyright [yyyy] [name of copyright owner]
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * CDDL HEADER END
2b24ab6b3865caeede9eeb9db6b83e1d89dcd1eaSebastien Roy * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Use is subject to license terms.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ssextern "C" {
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Maximum DLPI response size, in bytes.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Maximum SAP length, in bytes.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Number of elements in 'arr'.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Allocate buffer size for DLPI message, in bytes and set DLPI primitive.
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4ss * Publicly available DLPI notification types. This list may change if
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4ss * new DLPI notification types are made public. See dlpi(7P).
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4ss#define DLPI_NOTIFICATION_TYPES (DL_NOTE_LINK_DOWN | DL_NOTE_LINK_UP | \
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Used in a mactype lookup table.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4sstypedef struct dlpi_mactype_s {
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Used to get the maximum DLPI message buffer size, in bytes.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4sstypedef struct dlpi_primsz {
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss /* max. message size, in bytes, for dp_prim */
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Used to create DLPI message.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4sstypedef struct dlpi_msg {
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss /* store DLPI primitive message */
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss /* provide buffer size for dlm_msg */
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4sstypedef struct dlpi_notifyent {
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4ss /* notification types registered */
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4ss /* callback to call */
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss * Private libdlpi structure associated with each DLPI handle.
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4sstypedef struct dlpi_impl_s {
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss /* full linkname including PPA */
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss /* only provider name */
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss boolean_t dli_sapbefore; /* true if SAP precedes address */
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4ss /* true if notification is being */
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4ss /* processed */
3ab45760e29dbab3ec3197fc452899c4d4b1c4c4ss /* list of registered notifications */
c7e4935f5b755b4bbeaec416f1ad24337aeac7a4ss#endif /* _LIBDLPI_IMPL_H */