summaryrefslogtreecommitdiff
path: root/sys/arch/mvme88k/dev/dart.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/mvme88k/dev/dart.c')
-rw-r--r--sys/arch/mvme88k/dev/dart.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/sys/arch/mvme88k/dev/dart.c b/sys/arch/mvme88k/dev/dart.c
index bd10b54a4cf..218eb3d4c79 100644
--- a/sys/arch/mvme88k/dev/dart.c
+++ b/sys/arch/mvme88k/dev/dart.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dart.c,v 1.46 2006/04/15 22:32:42 miod Exp $ */
+/* $OpenBSD: dart.c,v 1.47 2006/04/17 13:30:02 miod Exp $ */
/*
* Mach Operating System
@@ -389,7 +389,7 @@ dartmctl(dev_t dev, int flags, int how)
if (dart_cd.cd_ndevs == 0 || port >= NDARTPORTS)
return (ENODEV);
- sc = (struct dartsoftc *) dart_cd.cd_devs[0];
+ sc = (struct dartsoftc *)dart_cd.cd_devs[0];
dart = &sc->sc_dart[port];
s = spltty();
@@ -426,8 +426,8 @@ dartioctl(dev_t dev, u_long cmd, caddr_t data, int flag, struct proc *p)
struct dart_info *dart;
struct dartsoftc *sc;
- sc = (struct dartsoftc *) dart_cd.cd_devs[0];
port = DART_PORT(dev);
+ sc = (struct dartsoftc *)dart_cd.cd_devs[0];
dart = &sc->sc_dart[port];
tp = dart->tty;
@@ -634,8 +634,10 @@ dartopen(dev_t dev, int flag, int mode, struct proc *p)
struct dartsoftc *sc;
struct tty *tp;
- sc = (struct dartsoftc *) dart_cd.cd_devs[0]; /* the only one */
port = DART_PORT(dev);
+ if (dart_cd.cd_ndevs == 0 || port >= NDARTPORTS)
+ return (ENODEV);
+ sc = (struct dartsoftc *)dart_cd.cd_devs[0]; /* the only one */
dart = &sc->sc_dart[port];
s = spltty();
@@ -686,7 +688,7 @@ dartclose(dev_t dev, int flag, int mode, struct proc *p)
struct dartsoftc *sc;
int port;
- sc = (struct dartsoftc *) dart_cd.cd_devs[0];
+ sc = (struct dartsoftc *)dart_cd.cd_devs[0];
port = DART_PORT(dev);
dart = &sc->sc_dart[port];
@@ -705,7 +707,7 @@ dartread(dev_t dev, struct uio *uio, int flag)
struct dart_info *dart;
struct dartsoftc *sc;
- sc = (struct dartsoftc *) dart_cd.cd_devs[0];
+ sc = (struct dartsoftc *)dart_cd.cd_devs[0];
port = DART_PORT(dev);
dart = &sc->sc_dart[port];