| DLPI_PROMISCON(3DLPI) | Data Link Provider Interface Library Functions | DLPI_PROMISCON(3DLPI) |
dlpi_promiscon,
dlpi_promiscoff — enable or
disable DLPI promiscuous mode
Data Link Provider Interface (DLPI) Library (libdlpi, -ldlpi)
#include
<libdlpi.h>
int
dlpi_promiscon(dlpi_handle_t,
dh, uint_t,
level);
int
dlpi_promiscoff(dlpi_handle_t,
dh, uint_t,
level);
dlpi_promiscon()
enables promiscuous mode on a dlpi(4P)
link instance associated with a DLPI handle dh, at the
specified level. Multiple levels can be combined; the
new level is enabled in addition to any previously enabled levels. After
enabling promiscuous mode, the caller will be able to receive all messages
destined for the DLPI link instance at the specified
level. This operation can be performed in any DLPI
state of a handle.
dlpi_promiscoff()
disables promiscuous mode on a dlpi(4P)
link instance associated with DLPI handle dh, at the
specified level. This operation can be performed in any DLPI state of a
handle in which promiscuous mode is enabled at the specified
level.
The level modes are:
DL_PROMISC_PHYSDL_PROMISC_SAPDL_PROMISC_MULTIDL_PROMISC_RX_ONLYDL_PROMISC_INCOMINGDL_PROMISC_OUTGOINGNote that only one of
DL_PROMISC_RX_ONLY,
DL_PROMISC_INCOMING or
DL_PROMISC_OUTGOING may be enabled at a time. Trying
to enable one of DL_PROMISC_RX_ONLY,
DL_PROMISC_INCOMING or
DL_PROMISC_OUTGOING while another is active will
result in an error. To switch between them, you must first call
dlpi_promiscoff()
to turn off the current one before passing the desired one to
dlpi_promiscon().
On successful completion, dlpi_promiscon()
and dlpi_promiscoff() return
DLPI_SUCCESS. If DL_SYSERR
is returned, errno contains the specific UNIX system
error value. Otherwise, a DLPI error value defined in
<sys/dlpi.h>, or an error
value listed in the following section is returned.
DLPI_EBADMSGDLPI_EINHANDLEDLPI_EINVALDLPI_ETIMEDOUT| November 3, 2025 | OmniOS |