nulldev and nullioctl return values
[unix-history] / usr / src / sys / kern / sys_generic.c
index c0dec1c..7c00b67 100644 (file)
@@ -1,4 +1,4 @@
-/*     sys_generic.c   5.13    82/09/06        */
+/*     sys_generic.c   5.16    82/10/13        */
 
 #include "../h/param.h"
 #include "../h/systm.h"
 
 #include "../h/param.h"
 #include "../h/systm.h"
@@ -9,7 +9,6 @@
 #include "../h/inode.h"
 #include "../h/buf.h"
 #include "../h/proc.h"
 #include "../h/inode.h"
 #include "../h/buf.h"
 #include "../h/proc.h"
-#include "../h/inline.h"
 #include "../h/conf.h"
 #include "../h/socket.h"
 #include "../h/socketvar.h"
 #include "../h/conf.h"
 #include "../h/socket.h"
 #include "../h/socketvar.h"
@@ -143,21 +142,21 @@ rwuio(uio, rw)
                }
        }
        count = uio->uio_resid;
                }
        }
        count = uio->uio_resid;
-       if ((u.u_procp->p_flag&SNUSIG) && setjmp(u.u_qsav)) {
+       if ((u.u_procp->p_flag&SNUSIG) && setjmp(&u.u_qsave)) {
                if (uio->uio_resid == count)
                        u.u_eosys = RESTARTSYS;
        } else if (fp->f_type == DTYPE_SOCKET) {
                int sosend(), soreceive();
                u.u_error = 
                    (*(rw==UIO_READ?soreceive:sosend))
                if (uio->uio_resid == count)
                        u.u_eosys = RESTARTSYS;
        } else if (fp->f_type == DTYPE_SOCKET) {
                int sosend(), soreceive();
                u.u_error = 
                    (*(rw==UIO_READ?soreceive:sosend))
-                     (fp->f_socket, (struct sockaddr *)0, uio);
+                     (fp->f_socket, (struct sockaddr *)0, uio, 0);
        } else {
                ip = fp->f_inode;
                uio->uio_offset = fp->f_offset;
                if ((ip->i_mode&IFMT) == IFREG) {
        } else {
                ip = fp->f_inode;
                uio->uio_offset = fp->f_offset;
                if ((ip->i_mode&IFMT) == IFREG) {
-                       ilock(ip);
+                       ILOCK(ip);
                        u.u_error = rwip(ip, uio, rw);
                        u.u_error = rwip(ip, uio, rw);
-                       iunlock(ip);
+                       IUNLOCK(ip);
                } else
                        u.u_error = rwip(ip, uio, rw);
                fp->f_offset += count - uio->uio_resid;
                } else
                        u.u_error = rwip(ip, uio, rw);
                fp->f_offset += count - uio->uio_resid;
@@ -220,10 +219,10 @@ rwip(ip, uio, rw)
                register c = uio->uio_resid;
 #endif
                if (rw == UIO_READ)
                register c = uio->uio_resid;
 #endif
                if (rw == UIO_READ)
-                       (*cdevsw[major(dev)].d_read)(dev, uio);
+                       u.u_error = (*cdevsw[major(dev)].d_read)(dev, uio);
                else {
                        ip->i_flag |= IUPD|ICHG;
                else {
                        ip->i_flag |= IUPD|ICHG;
-                       (*cdevsw[major(dev)].d_write)(dev, uio);
+                       u.u_error = (*cdevsw[major(dev)].d_write)(dev, uio);
                }
                CHARGE(sc_tio * (c - uio->uio_resid));
                return (u.u_error);
                }
                CHARGE(sc_tio * (c - uio->uio_resid));
                return (u.u_error);
@@ -536,7 +535,7 @@ ioctl()
                }
                dev = ip->i_rdev;
                u.u_r.r_val1 = 0;
                }
                dev = ip->i_rdev;
                u.u_r.r_val1 = 0;
-               if ((u.u_procp->p_flag&SNUSIG) && setjmp(u.u_qsav)) {
+               if ((u.u_procp->p_flag&SNUSIG) && setjmp(&u.u_qsave)) {
                        u.u_eosys = RESTARTSYS;
                        return;
                }
                        u.u_eosys = RESTARTSYS;
                        return;
                }