version 1.40, 2001/06/04 09:45:03 |
version 1.40.2.3, 2002/09/06 08:43:45 |
|
|
* @(#)cons.c 8.2 (Berkeley) 1/12/94 |
* @(#)cons.c 8.2 (Berkeley) 1/12/94 |
*/ |
*/ |
|
|
|
#include <sys/cdefs.h> |
|
__KERNEL_RCSID(0, "$NetBSD$"); |
|
|
#include <sys/param.h> |
#include <sys/param.h> |
#include <sys/proc.h> |
#include <sys/proc.h> |
#include <sys/user.h> |
#include <sys/user.h> |
Line 82 cnopen(dev, flag, mode, p) |
|
Line 85 cnopen(dev, flag, mode, p) |
|
* code. Panicing looks better than jumping into nowhere |
* code. Panicing looks better than jumping into nowhere |
* through cdevsw below.... |
* through cdevsw below.... |
*/ |
*/ |
panic("cnopen: cn_tab->cn_dev == NODEV\n"); |
panic("cnopen: no console device\n"); |
} |
} |
if (dev == cndev) { |
if (dev == cndev) { |
/* |
/* |
Line 238 cnpoll(dev, events, p) |
|
Line 241 cnpoll(dev, events, p) |
|
return ((*cdevsw[major(dev)].d_poll)(dev, events, p)); |
return ((*cdevsw[major(dev)].d_poll)(dev, events, p)); |
} |
} |
|
|
|
/*ARGSUSED*/ |
|
int |
|
cnkqfilter(dev, kn) |
|
dev_t dev; |
|
struct knote *kn; |
|
{ |
|
|
|
/* |
|
* Redirect the kqfilter, if that's appropriate. |
|
* I don't want to think of the possible side effects |
|
* of console redirection here. |
|
*/ |
|
if (constty != NULL && (cn_tab == NULL || cn_tab->cn_pri != CN_REMOTE)) |
|
dev = constty->t_dev; |
|
else if (cn_tab == NULL) |
|
return ENXIO; |
|
else |
|
dev = cn_tab->cn_dev; |
|
return ((*cdevsw[major(dev)].d_kqfilter)(dev, kn)); |
|
} |
|
|
int |
int |
cngetc() |
cngetc() |
{ |
{ |