diff options
author | peter <peter@FreeBSD.org> | 1999-11-08 03:31:01 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1999-11-08 03:31:01 +0000 |
commit | be8eba35406cc6d689af2b06690b08bea32aec04 (patch) | |
tree | 6a96dbe82b04f2d79cde7031792186faa604c790 /sys | |
parent | 1a4a3558e504ad97460718691f07aa75332defc7 (diff) | |
download | FreeBSD-src-be8eba35406cc6d689af2b06690b08bea32aec04.zip FreeBSD-src-be8eba35406cc6d689af2b06690b08bea32aec04.tar.gz |
Update socket file type for fo_stat(). soo_stat() becomes a fileops
switch entry point rather than being used externally with knowledge of the
internals of the DTYPE_SOCKET f_data contents.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/kern/sys_socket.c | 10 | ||||
-rw-r--r-- | sys/sys/socketvar.h | 2 |
2 files changed, 7 insertions, 5 deletions
diff --git a/sys/kern/sys_socket.c b/sys/kern/sys_socket.c index aa892e3..f0f2717 100644 --- a/sys/kern/sys_socket.c +++ b/sys/kern/sys_socket.c @@ -50,7 +50,7 @@ #include <net/route.h> struct fileops socketops = - { soo_read, soo_write, soo_ioctl, soo_poll, soo_close }; + { soo_read, soo_write, soo_ioctl, soo_poll, soo_stat, soo_close }; /* ARGSUSED */ int @@ -155,10 +155,12 @@ soo_poll(fp, events, cred, p) } int -soo_stat(so, ub) - register struct socket *so; - register struct stat *ub; +soo_stat(fp, ub, p) + struct file *fp; + struct stat *ub; + struct proc *p; { + struct socket *so = (struct socket *)fp->f_data; bzero((caddr_t)ub, sizeof (*ub)); ub->st_mode = S_IFSOCK; diff --git a/sys/sys/socketvar.h b/sys/sys/socketvar.h index 471ddbe..57ddca7 100644 --- a/sys/sys/socketvar.h +++ b/sys/sys/socketvar.h @@ -296,7 +296,7 @@ int soo_ioctl __P((struct file *fp, u_long cmd, caddr_t data, struct proc *p)); int soo_poll __P((struct file *fp, int events, struct ucred *cred, struct proc *p)); -int soo_stat __P((struct socket *so, struct stat *ub)); +int soo_stat __P((struct file *fp, struct stat *ub, struct proc *p)); /* * From uipc_socket and friends |