diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/fs/ntapi_tt_istat.c | 7 | ||||
-rw-r--r-- | src/fs/ntapi_tt_stat.c | 4 | ||||
-rw-r--r-- | src/fs/ntapi_tt_statfs.c | 13 |
3 files changed, 12 insertions, 12 deletions
diff --git a/src/fs/ntapi_tt_istat.c b/src/fs/ntapi_tt_istat.c index 99e0a1d..f54f8ea 100644 --- a/src/fs/ntapi_tt_istat.c +++ b/src/fs/ntapi_tt_istat.c @@ -131,11 +131,12 @@ int32_t __stdcall __ntapi_tt_istat( for (; *wch!='\\'; ) wch++; + istat->obj_name_strlen = sdev->strlen; + istat->obj_name_maxlen = istat->dev_name_maxlen; istat->dev_name_strlen = (uint16_t)((wch - sdev->buffer) * sizeof(uint16_t)); istat->dev_name_hash = __ntapi->tt_buffer_crc32( - hash, - wch_mark, - (uintptr_t)wch - (uintptr_t)wch_mark); + hash,wch_mark, + sizeof(wchar16_t)*(wch-wch_mark)); if (!(flags & NT_ISTAT_DEV_NAME_COPY)) return NT_STATUS_SUCCESS; diff --git a/src/fs/ntapi_tt_stat.c b/src/fs/ntapi_tt_stat.c index b94b08f..b7ad52d 100644 --- a/src/fs/ntapi_tt_stat.c +++ b/src/fs/ntapi_tt_stat.c @@ -81,8 +81,6 @@ int32_t __stdcall __ntapi_tt_stat( /* record the file name length, but do not hash */ fai = (nt_fai *)buffer; stat->file_name_length = fai->name_info.file_name_length; - stat->file_name_hash = 0; - /* file system size information */ if ((status = __ntapi->zw_query_volume_information_file( @@ -139,6 +137,8 @@ int32_t __stdcall __ntapi_tt_stat( for (; *wch!='\\'; ) wch++; + stat->obj_name_strlen = sdev->strlen; + stat->obj_name_maxlen = stat->dev_name_maxlen; stat->dev_name_strlen = (uint16_t)((wch - sdev->buffer) * sizeof(uint16_t)); stat->dev_name_hash = __ntapi->tt_buffer_crc32( hash,wch_mark, diff --git a/src/fs/ntapi_tt_statfs.c b/src/fs/ntapi_tt_statfs.c index f38509e..450d2bc 100644 --- a/src/fs/ntapi_tt_statfs.c +++ b/src/fs/ntapi_tt_statfs.c @@ -179,13 +179,12 @@ int32_t __stdcall __ntapi_tt_statfs( for (; *wch!='\\'; ) wch++; - statfs->dev_name_strlen = (uint16_t)((wch - sdev->buffer) * sizeof(uint16_t)); - statfs->record_name_strlen = sdev->strlen - statfs->dev_name_strlen; - - statfs->dev_name_hash = __ntapi->tt_buffer_crc32( - hash, - wch_mark, - sizeof(wchar16_t) * (wch - wch_mark)); + statfs->obj_name_strlen = sdev->strlen; + statfs->obj_name_maxlen = statfs->dev_name_maxlen; + statfs->dev_name_strlen = (uint16_t)((wch - sdev->buffer) * sizeof(uint16_t)); + statfs->dev_name_hash = __ntapi->tt_buffer_crc32( + hash,wch_mark, + sizeof(wchar16_t)*(wch-wch_mark)); /* device name */ if (!(flags & NT_STATFS_DEV_NAME_COPY)) |