diff --git a/ChangeLog b/ChangeLog index c1d44e01..94fe6811 100644 --- a/ChangeLog +++ b/ChangeLog @@ -6,6 +6,9 @@ xx/xx/2005 - 1.12.2-WIP - Rewrite gcc version detection logic using the -dumpversion option. Tested on various OS and architectures and gcc versions from 2.95 to 4.0.1 with some weird ones like 3.5-blah thrown in, too. (Anton) + - Fix bogus le16_to_cpu() which shouldbe le32_to_cpu() when accessing + the attribute list entry attribute type in some places in + libntfs/attrib.c. (Anton) 10/10/2005 - 1.12.1 - Minor fix to location of mount.ntfs-fuse and mkfs.ntfs. diff --git a/libntfs/attrib.c b/libntfs/attrib.c index 7dc79568..8ca7e857 100644 --- a/libntfs/attrib.c +++ b/libntfs/attrib.c @@ -1813,8 +1813,8 @@ static int ntfs_external_attr_find(ATTR_TYPES type, const ntfschar *name, * attribute. */ if ((type == AT_UNUSED) && is_first_search && - le16_to_cpu(al_entry->type) > - le16_to_cpu(AT_ATTRIBUTE_LIST)) + le32_to_cpu(al_entry->type) > + le32_to_cpu(AT_ATTRIBUTE_LIST)) goto find_attr_list_attr; } else { al_entry = (ATTR_LIST_ENTRY*)((char*)ctx->al_entry + @@ -1825,10 +1825,10 @@ static int ntfs_external_attr_find(ATTR_TYPES type, const ntfschar *name, * attribute list attribute from the base mft record as it is * not listed in the attribute list itself. */ - if ((type == AT_UNUSED) && le16_to_cpu(ctx->al_entry->type) < - le16_to_cpu(AT_ATTRIBUTE_LIST) && - le16_to_cpu(al_entry->type) > - le16_to_cpu(AT_ATTRIBUTE_LIST)) { + if ((type == AT_UNUSED) && le32_to_cpu(ctx->al_entry->type) < + le32_to_cpu(AT_ATTRIBUTE_LIST) && + le32_to_cpu(al_entry->type) > + le32_to_cpu(AT_ATTRIBUTE_LIST)) { int rc; find_attr_list_attr: