if_ppp_vdcmd.c

来自「经典的ppp程序」· C语言 代码 · 共 58 行

C
58
字号
#include <sys/types.h>#include <sys/errno.h>#include <sys/conf.h>#include <sun/vddrv.h>extern struct streamtab if_pppinfo;static struct vdldrv vd = {    VDMAGIC_USER,    "if_ppp"};static int fmodsw_index = -1;intif_ppp_vdcmd(fun, vdp, vdi, vds)    unsigned int fun;    struct vddrv *vdp;    addr_t vdi;    struct vdstat *vds;{    int n, error;    switch (fun) {    case VDLOAD:	vdp->vdd_vdtab = (struct vdlinkage *) &vd;	if (fmodsw_index >= 0)	    return EBUSY;	for (n = 0; n < fmodcnt; ++n)	    if (fmodsw[n].f_str == 0)		break;	if (n >= fmodcnt)	    return ENODEV;	strncpy(fmodsw[n].f_name, vd.Drv_name, FMNAMESZ+1);	fmodsw[n].f_str = &if_pppinfo;	fmodsw_index = n;	break;    case VDUNLOAD:	if (fmodsw_index <= 0)	    return EINVAL;	error = if_ppp_unload();	if (error != 0)	    return error;	fmodsw[fmodsw_index].f_name[0] = 0;	fmodsw[fmodsw_index].f_str = 0;	fmodsw_index = -1;	break;    case VDSTAT:	break;    default:	return EIO;    }    return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?