OpenBSD可加载内核模块编程完全指南(17) /* * 阻赛网络协议进程,我们把tcp_input函数指针改成我们自己的包装函数. */ s = splnet(); old_tcp_input = inetsw[2].pr_input; inetsw[2].pr_input = new_input; splx(s); break; case LKM_E_UNLOAD: /* * 当模块退出时返回原来的结构 */ s = splnet(); inetsw[2].pr_input = old_tcp_input; splx(s); break;