xref: /illumos-gate/usr/src/man/man9e/mc_open.9e (revision 72d3dbb9ab4481606cb93caca98ba3b3a8eb6ce2)
152d2369aSRobert Mustacchi.\"
252d2369aSRobert Mustacchi.\" This file and its contents are supplied under the terms of the
352d2369aSRobert Mustacchi.\" Common Development and Distribution License ("CDDL"), version 1.0.
452d2369aSRobert Mustacchi.\" You may only use this file in accordance with the terms of version
552d2369aSRobert Mustacchi.\" 1.0 of the CDDL.
652d2369aSRobert Mustacchi.\"
752d2369aSRobert Mustacchi.\" A full copy of the text of the CDDL should have accompanied this
852d2369aSRobert Mustacchi.\" source.  A copy of the CDDL is also available via the Internet at
952d2369aSRobert Mustacchi.\" http://www.illumos.org/license/CDDL.
1052d2369aSRobert Mustacchi.\"
1152d2369aSRobert Mustacchi.\"
1252d2369aSRobert Mustacchi.\" Copyright 2016 Joyent, Inc.
1352d2369aSRobert Mustacchi.\"
1452d2369aSRobert Mustacchi.Dd Aug 18, 2016
1552d2369aSRobert Mustacchi.Dt MC_OPEN 9E
1652d2369aSRobert Mustacchi.Os
1752d2369aSRobert Mustacchi.Sh NAME
1852d2369aSRobert Mustacchi.Nm mc_open ,
1952d2369aSRobert Mustacchi.Nm mc_close
2052d2369aSRobert Mustacchi.Nd optional device open and close entry points
2152d2369aSRobert Mustacchi.Sh SYNOPSIS
2252d2369aSRobert Mustacchi.In sys/mac_provider.h
2352d2369aSRobert Mustacchi.Ft int
2452d2369aSRobert Mustacchi.Fo prefix_m_open
2552d2369aSRobert Mustacchi.Fa "void *driver"
2652d2369aSRobert Mustacchi.Fc
2752d2369aSRobert Mustacchi.Ft void
2852d2369aSRobert Mustacchi.Fo prefix_m_close
2952d2369aSRobert Mustacchi.Fa "void *driver"
3052d2369aSRobert Mustacchi.Fc
3152d2369aSRobert Mustacchi.Sh INTERFACE LEVEL
3252d2369aSRobert Mustacchiillumos DDI specific
3352d2369aSRobert Mustacchi.Sh PARAMETERS
3452d2369aSRobert Mustacchi.Bl -tag -width Fa
3552d2369aSRobert Mustacchi.It Fa driver
3652d2369aSRobert MustacchiA pointer to the driver's private data that was passed in via the
3752d2369aSRobert Mustacchi.Sy m_pdata
3852d2369aSRobert Mustacchimember of the
3952d2369aSRobert Mustacchi.Xr mac_register 9S
4052d2369aSRobert Mustacchistructure to the
4152d2369aSRobert Mustacchi.Xr mac_register 9F
4252d2369aSRobert Mustacchifunction.
4352d2369aSRobert Mustacchi.El
4452d2369aSRobert Mustacchi.Sh DESCRIPTION
4552d2369aSRobert MustacchiThe
4652d2369aSRobert Mustacchi.Fn mc_open
4752d2369aSRobert Mustacchiand
4852d2369aSRobert Mustacchi.Fn mc_close
4952d2369aSRobert Mustacchientry points are called when the file system node corresponding to the
50*72d3dbb9SYuri Pankovdevice is opened.
51*72d3dbb9SYuri PankovStandard device drivers do not need to implement this function and should not
52*72d3dbb9SYuri Pankovdefine the callback.
5352d2369aSRobert Mustacchi.Pp
5452d2369aSRobert MustacchiThe GLDv3 guarantees that calls to the
5552d2369aSRobert Mustacchi.Fn mc_open
5652d2369aSRobert Mustacchiand
5752d2369aSRobert Mustacchi.Fn mc_close
58*72d3dbb9SYuri Pankoventry points are serialized.
59*72d3dbb9SYuri PankovOnly one such call will be issued to the device driver at any time.
6052d2369aSRobert Mustacchi.Sh RETURN VALUES
6152d2369aSRobert MustacchiUpon successful completion, the device driver should return
6252d2369aSRobert Mustacchi.Sy 0
6352d2369aSRobert Mustacchifor its
6452d2369aSRobert Mustacchi.Fn mc_open
65*72d3dbb9SYuri Pankoventry point.
66*72d3dbb9SYuri PankovOtherwise, it should return a non-zero error number to indicate an error
67*72d3dbb9SYuri Pankovoccurred.
6852d2369aSRobert Mustacchi.Sh SEE ALSO
6952d2369aSRobert Mustacchi.Xr mac 9E ,
7052d2369aSRobert Mustacchi.Xr mac_register 9F ,
7152d2369aSRobert Mustacchi.Xr mac_register 9S
72