add synamically allocated file descriptors
authorKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Fri, 11 Jan 1991 15:53:15 +0000 (07:53 -0800)
committerKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Fri, 11 Jan 1991 15:53:15 +0000 (07:53 -0800)
SCCS-vsn: sys/nfs/nfs_syscalls.c 7.21

usr/src/sys/nfs/nfs_syscalls.c

index e9505d6..8179ff8 100644 (file)
@@ -7,7 +7,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)nfs_syscalls.c      7.20 (Berkeley) %G%
+ *     @(#)nfs_syscalls.c      7.21 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -40,7 +40,6 @@ extern struct buf nfs_bqueue;
 extern int nfs_asyncdaemons;
 extern struct proc *nfs_iodwant[NFS_MAXASYNCDAEMON];
 extern int nfs_tcpnodelay;
 extern int nfs_asyncdaemons;
 extern struct proc *nfs_iodwant[NFS_MAXASYNCDAEMON];
 extern int nfs_tcpnodelay;
-struct file *getsock();
 struct mbuf *nfs_compress();
 
 #define        TRUE    1
 struct mbuf *nfs_compress();
 
 #define        TRUE    1
@@ -140,10 +139,9 @@ nfssvc(p, uap, retval)
         * Must be super user
         */
        if (error = suser(u.u_cred, &u.u_acflag))
         * Must be super user
         */
        if (error = suser(u.u_cred, &u.u_acflag))
-               goto bad;
-       fp = getsock(uap->s);
-       if (fp == 0)
-               return;
+               return (error);
+       if (error = getsock(p->p_fd, uap->s, &fp))
+               return (error);
        so = (struct socket *)fp->f_data;
        if (sosendallatonce(so))
                siz = NFS_MAXPACKET;
        so = (struct socket *)fp->f_data;
        if (sosendallatonce(so))
                siz = NFS_MAXPACKET;