-int soo_read __P((struct file *fp, struct uio *uio,
- struct ucred *cred, int flags, struct proc *p));
-int soo_write __P((struct file *fp, struct uio *uio,
- struct ucred *cred, int flags, struct proc *p));
-int soo_close __P((struct file *fp, struct proc *p));
-
-int soo_select __P((struct file *fp, int which, void * wql, struct proc *p));
-
-int soo_kqfilter __P((struct file *fp, struct knote *kn, struct proc *p));
+/*
+ * File operations on sockets.
+ */
+int soo_read(struct fileproc *fp, struct uio *uio, kauth_cred_t cred,
+ int flags, struct proc *p);
+int soo_write(struct fileproc *fp, struct uio *uio, kauth_cred_t cred,
+ int flags, struct proc *p);
+int soo_close(struct fileglob *fp, struct proc *p);
+int soo_ioctl(struct fileproc *fp, u_long cmd, caddr_t data, struct proc *p);
+int soo_stat(struct socket *so, struct stat *ub);
+int soo_select(struct fileproc *fp, int which, void * wql, struct proc *p);
+int soo_kqfilter(struct fileproc *fp, struct knote *kn, struct proc *p);
+int soo_drain(struct fileproc *fp, struct proc *p);