编写适用于 Oracle® Solaris 11.2 的设备驱动程序

退出打印视图

更新时间: 2014 年 9 月
 
 

GLDv2 I/O 控制函数

GLDv2 可实现以下将介绍的 ioctl ioc_cmd 函数。如果 GLDv2 收到无法识别的 ioctl 命令,则 GLDv2 会将此命令传递给特定于设备的驱动程序的 gldm_ioctl() 例程,如 gld(9E) 中所述。

DLIOCRAW ioctl 函数可供某些 DLPI 应用程序(尤其是 snoop(1M) 命令)使用。DLIOCRAW 命令可将流置于原始模式。在原始模式下,驱动程序将在 M_DATA 消息中传递 MAC 级别的完整传入包,而不是将包转换为 DL_UNITDATA_IND 形式。DL_UNITDATA_IND 形式通常用于报告传入包。包 SAP 过滤仍将在处于原始模式下的流上执行。如果流用户要接收所有传入包,则此用户还必须选择相应的混杂模式。成功选择原始模式之后,还允许应用程序将完全格式化的包作为 M_DATA 消息发送到驱动程序以便传输。DLIOCRAW 不使用任何参数。启用之后,流将保持此模式直到关闭。