summaryrefslogtreecommitdiffhomepage
path: root/src/fs
diff options
context:
space:
mode:
Diffstat (limited to 'src/fs')
-rw-r--r--src/fs/ntapi_tt_istat.c7
-rw-r--r--src/fs/ntapi_tt_stat.c4
-rw-r--r--src/fs/ntapi_tt_statfs.c13
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))