diff options
author | 2009-06-24 13:04:24 +0000 | |
---|---|---|
committer | 2009-06-24 13:04:24 +0000 | |
commit | 9938c24341ec0d5787eacf9556da6c95d2e963b5 (patch) | |
tree | 338609c6dbe43f0d0e36b18c34ccae8292ffb7cb /lib/libkvm/kvm_file2.c | |
parent | Remove extra psignal/wakeup in exit1() which can cause the parent to (diff) | |
download | wireguard-openbsd-9938c24341ec0d5787eacf9556da6c95d2e963b5.tar.xz wireguard-openbsd-9938c24341ec0d5787eacf9556da6c95d2e963b5.zip |
Install ntfs includes and add libkvm (fstat) support. ntfs bits
adapted from NetBSD fstat. OK deraadt@
Diffstat (limited to 'lib/libkvm/kvm_file2.c')
-rw-r--r-- | lib/libkvm/kvm_file2.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/lib/libkvm/kvm_file2.c b/lib/libkvm/kvm_file2.c index 8778b63743e..e7e2279b657 100644 --- a/lib/libkvm/kvm_file2.c +++ b/lib/libkvm/kvm_file2.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kvm_file2.c,v 1.8 2009/06/20 20:20:43 millert Exp $ */ +/* $OpenBSD: kvm_file2.c,v 1.9 2009/06/24 13:04:24 millert Exp $ */ /* * Copyright (c) 2009 Todd C. Miller <Todd.Miller@courtesan.com> @@ -46,7 +46,7 @@ */ #if defined(LIBC_SCCS) && !defined(lint) -static char *rcsid = "$OpenBSD: kvm_file2.c,v 1.8 2009/06/20 20:20:43 millert Exp $"; +static char *rcsid = "$OpenBSD: kvm_file2.c,v 1.9 2009/06/24 13:04:24 millert Exp $"; #endif /* LIBC_SCCS and not lint */ /* @@ -623,8 +623,8 @@ fill_file2(kvm_t *kd, struct kinfo_file2 *kf, struct file *fp, struct vnode *vp, return (0); } -static mode_t -getftype(enum vtype v_type) +mode_t +_kvm_getftype(enum vtype v_type) { mode_t ftype = 0; @@ -732,7 +732,7 @@ msdos_filestat(kvm_t *kd, struct kinfo_file2 *kf, struct vnode *vp) kf->va_fsid = de.de_dev & 0xffff; kf->va_fileid = 0; /* XXX see msdosfs_vptofh() for more info */ - kf->va_mode = (mp.pm_mask & 0777) | getftype(vp->v_type); + kf->va_mode = (mp.pm_mask & 0777) | _kvm_getftype(vp->v_type); kf->va_size = de.de_FileSize; kf->va_rdev = 0; /* msdosfs doesn't support device files */ @@ -753,7 +753,7 @@ nfs_filestat(kvm_t *kd, struct kinfo_file2 *kf, struct vnode *vp) kf->va_fileid = nfsnode.n_vattr.va_fileid; kf->va_size = nfsnode.n_size; kf->va_rdev = nfsnode.n_vattr.va_rdev; - kf->va_mode = (mode_t)nfsnode.n_vattr.va_mode | getftype(vp->v_type); + kf->va_mode = (mode_t)nfsnode.n_vattr.va_mode | _kvm_getftype(vp->v_type); return (0); } @@ -832,6 +832,9 @@ filestat(kvm_t *kd, struct kinfo_file2 *kf, struct vnode *vp) case VT_UDF: ret = _kvm_stat_udf(kd, kf, vp); break; + case VT_NTFS: + ret = _kvm_stat_ntfs(kd, kf, vp); + break; case VT_NON: if (vp->v_flag & VCLONE) ret = spec_filestat(kd, kf, vp); |