Changeset View
Changeset View
Standalone View
Standalone View
sys/fs/msdosfs/denode.h
Show First 20 Lines • Show All 188 Lines • ▼ Show 20 Lines | #define DE_INTERNALIZE(dep, dp) \ | ||||
(dep)->de_CDate = getushort((dp)->deCDate), \ | (dep)->de_CDate = getushort((dp)->deCDate), \ | ||||
(dep)->de_ADate = getushort((dp)->deADate), \ | (dep)->de_ADate = getushort((dp)->deADate), \ | ||||
(dep)->de_MTime = getushort((dp)->deMTime), \ | (dep)->de_MTime = getushort((dp)->deMTime), \ | ||||
(dep)->de_MDate = getushort((dp)->deMDate), \ | (dep)->de_MDate = getushort((dp)->deMDate), \ | ||||
(dep)->de_StartCluster = getushort((dp)->deStartCluster), \ | (dep)->de_StartCluster = getushort((dp)->deStartCluster), \ | ||||
(dep)->de_FileSize = getulong((dp)->deFileSize), \ | (dep)->de_FileSize = getulong((dp)->deFileSize), \ | ||||
(FAT32((dep)->de_pmp) ? DE_INTERNALIZE32((dep), (dp)) : 0)) | (FAT32((dep)->de_pmp) ? DE_INTERNALIZE32((dep), (dp)) : 0)) | ||||
#define DE_EXTERNALIZE(dp, dep) \ | #define DE_EXTERNALIZE(dp, dep) \ | ||||
(memcpy((dp)->deName, (dep)->de_Name, 11), \ | (memcpy((dp)->deName, (dep)->de_Name, 11), \ | ||||
emaste: This came in with NetBSD's FAT32 support
http://cvsweb.netbsd.org/bsdweb. | |||||
(dp)->deAttributes = (dep)->de_Attributes, \ | (dp)->deAttributes = (dep)->de_Attributes, \ | ||||
(dp)->deLowerCase = (dep)->de_LowerCase, \ | (dp)->deLowerCase = (dep)->de_LowerCase, \ | ||||
Not Done Inline ActionsPR/32003: Brian Buhrow: msdosfs doesn't properly zero out high cluster data on non-FAT32 msdos filesystems. emaste: ```
PR/32003: Brian Buhrow: msdosfs doesn't properly zero out high cluster data
on non-FAT32… | |||||
(dp)->deCHundredth = (dep)->de_CHun, \ | (dp)->deCHundredth = (dep)->de_CHun, \ | ||||
putushort((dp)->deCTime, (dep)->de_CTime), \ | putushort((dp)->deCTime, (dep)->de_CTime), \ | ||||
putushort((dp)->deCDate, (dep)->de_CDate), \ | putushort((dp)->deCDate, (dep)->de_CDate), \ | ||||
putushort((dp)->deADate, (dep)->de_ADate), \ | putushort((dp)->deADate, (dep)->de_ADate), \ | ||||
putushort((dp)->deMTime, (dep)->de_MTime), \ | putushort((dp)->deMTime, (dep)->de_MTime), \ | ||||
putushort((dp)->deMDate, (dep)->de_MDate), \ | putushort((dp)->deMDate, (dep)->de_MDate), \ | ||||
putushort((dp)->deStartCluster, (dep)->de_StartCluster), \ | putushort((dp)->deStartCluster, (dep)->de_StartCluster), \ | ||||
putulong((dp)->deFileSize, \ | putulong((dp)->deFileSize, \ | ||||
((dep)->de_Attributes & ATTR_DIRECTORY) ? 0 : (dep)->de_FileSize), \ | ((dep)->de_Attributes & ATTR_DIRECTORY) ? 0 : (dep)->de_FileSize), \ | ||||
putushort((dp)->deHighClust, (dep)->de_StartCluster >> 16)) | putushort((dp)->deHighClust, (dep)->de_StartCluster >> 16)) | ||||
#if defined(_KERNEL) || defined(MAKEFS) | #if defined(_KERNEL) || defined(MAKEFS) | ||||
#define VTODE(vp) ((struct denode *)(vp)->v_data) | #define VTODE(vp) ((struct denode *)(vp)->v_data) | ||||
#define DETOV(de) ((de)->de_vnode) | #define DETOV(de) ((de)->de_vnode) | ||||
#ifdef _KERNEL | |||||
#define DETIMES(dep, acc, mod, cre) do { \ | #define DETIMES(dep, acc, mod, cre) do { \ | ||||
if ((dep)->de_flag & DE_UPDATE) { \ | if ((dep)->de_flag & DE_UPDATE) { \ | ||||
(dep)->de_flag |= DE_MODIFIED; \ | (dep)->de_flag |= DE_MODIFIED; \ | ||||
timespec2fattime((mod), 0, &(dep)->de_MDate, \ | timespec2fattime((mod), 0, &(dep)->de_MDate, \ | ||||
&(dep)->de_MTime, NULL); \ | &(dep)->de_MTime, NULL); \ | ||||
(dep)->de_Attributes |= ATTR_ARCHIVE; \ | (dep)->de_Attributes |= ATTR_ARCHIVE; \ | ||||
} \ | } \ | ||||
if ((dep)->de_pmp->pm_flags & MSDOSFSMNT_NOWIN95) { \ | if ((dep)->de_pmp->pm_flags & MSDOSFSMNT_NOWIN95) { \ | ||||
Show All 32 Lines | |||||
}; | }; | ||||
extern struct vop_vector msdosfs_vnodeops; | extern struct vop_vector msdosfs_vnodeops; | ||||
int msdosfs_lookup(struct vop_cachedlookup_args *); | int msdosfs_lookup(struct vop_cachedlookup_args *); | ||||
int msdosfs_inactive(struct vop_inactive_args *); | int msdosfs_inactive(struct vop_inactive_args *); | ||||
int msdosfs_reclaim(struct vop_reclaim_args *); | int msdosfs_reclaim(struct vop_reclaim_args *); | ||||
#endif /* _KERNEL */ | |||||
/* | /* | ||||
* Internal service routine prototypes. | * Internal service routine prototypes. | ||||
*/ | */ | ||||
struct componentname; | |||||
struct direntry; | |||||
struct buf; | |||||
struct ucred; | |||||
emasteAuthorUnsubmitted Not Done Inline ActionsWe should sort these (no need to re-upload for just this). emaste: We should sort these (no need to re-upload for just this). | |||||
int deget(struct msdosfsmount *, u_long, u_long, struct denode **); | int deget(struct msdosfsmount *, u_long, u_long, struct denode **); | ||||
int uniqdosname(struct denode *, struct componentname *, u_char *); | int uniqdosname(struct denode *, struct componentname *, u_char *); | ||||
int readep(struct msdosfsmount *pmp, u_long dirclu, u_long dirofs, struct buf **bpp, struct direntry **epp); | int readep(struct msdosfsmount *pmp, u_long dirclu, u_long dirofs, struct buf **bpp, struct direntry **epp); | ||||
int readde(struct denode *dep, struct buf **bpp, struct direntry **epp); | int readde(struct denode *dep, struct buf **bpp, struct direntry **epp); | ||||
int deextend(struct denode *dep, u_long length, struct ucred *cred); | int deextend(struct denode *dep, u_long length, struct ucred *cred); | ||||
int fillinusemap(struct msdosfsmount *pmp); | int fillinusemap(struct msdosfsmount *pmp); | ||||
void reinsert(struct denode *dep); | void reinsert(struct denode *dep); | ||||
Show All 9 Lines |
This came in with NetBSD's FAT32 support
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/msdosfs/Attic/denode.h.diff?r1=1.23&r2=1.24&only_with_tag=MAIN&f=h