dect
/
linux-2.6
Archived
13
0
Fork 0

[ATM]: net/atm/ioctl.c: autoload pppoatm and br2684

Signed-off-by: Roman Kagan <rkagan@mail.ru>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
This commit is contained in:
Roman Kagan 2005-09-28 16:34:24 -07:00 committed by David S. Miller
parent 6b251858d3
commit e2c4b72158
1 changed files with 26 additions and 8 deletions

View File

@ -105,17 +105,35 @@ int vcc_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
if (!error)
sock->state = SS_CONNECTED;
goto done;
default:
case ATM_SETBACKEND:
case ATM_NEWBACKENDIF:
{
atm_backend_t backend;
error = get_user(backend, (atm_backend_t __user *) argp);
if (error)
goto done;
switch (backend) {
case ATM_BACKEND_PPP:
request_module("pppoatm");
break;
case ATM_BACKEND_BR2684:
request_module("br2684");
break;
}
}
break;
case ATMMPC_CTRL:
case ATMMPC_DATA:
request_module("mpoa");
break;
case ATMARPD_CTRL:
request_module("clip");
break;
case ATMLEC_CTRL:
request_module("lec");
break;
}
if (cmd == ATMMPC_CTRL || cmd == ATMMPC_DATA)
request_module("mpoa");
if (cmd == ATMARPD_CTRL)
request_module("clip");
if (cmd == ATMLEC_CTRL)
request_module("lec");
error = -ENOIOCTLCMD;
down(&ioctl_mutex);