diff options
author | midipix <writeonce@midipix.org> | 2017-01-30 04:42:45 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2017-01-29 23:57:20 -0500 |
commit | 85b39215b7264022460d3895e755e337485807b8 (patch) | |
tree | 25240b6f31b614fe22e3eb5d99faf105544f4ece /src/fs | |
parent | 8bdef095fae423cd9264ea94da914f3d8c13d5a3 (diff) | |
download | ntapi-85b39215b7264022460d3895e755e337485807b8.tar.bz2 ntapi-85b39215b7264022460d3895e755e337485807b8.tar.xz |
{i}stat{fs} interfaces(): hold the operating system's hand as needed.
Diffstat (limited to 'src/fs')
-rw-r--r-- | src/fs/ntapi_tt_istat.c | 4 | ||||
-rw-r--r-- | src/fs/ntapi_tt_stat.c | 4 | ||||
-rw-r--r-- | src/fs/ntapi_tt_statfs.c | 4 |
3 files changed, 12 insertions, 0 deletions
diff --git a/src/fs/ntapi_tt_istat.c b/src/fs/ntapi_tt_istat.c index f17c8b1..67545a0 100644 --- a/src/fs/ntapi_tt_istat.c +++ b/src/fs/ntapi_tt_istat.c @@ -39,6 +39,10 @@ int32_t __stdcall __ntapi_tt_istat( istat->hfile = hfile; istat->dev_name_maxlen = (uint16_t)infolen - sizeof(*istat); + /* sigh */ + if (buffer_size >= 65536) + buffer_size = 65535; + /* file index number */ if (!(flags & NT_ISTAT_DEV_NAME_ONLY)) if ((status = __ntapi->zw_query_information_file( diff --git a/src/fs/ntapi_tt_stat.c b/src/fs/ntapi_tt_stat.c index 762535f..4d40fba 100644 --- a/src/fs/ntapi_tt_stat.c +++ b/src/fs/ntapi_tt_stat.c @@ -39,6 +39,10 @@ int32_t __stdcall __ntapi_tt_stat( stat->hfile = hfile; stat->dev_name_maxlen = (uint16_t)infolen - sizeof(*stat); + /* sigh */ + if (buffer_size >= 65536) + buffer_size = 65535; + /* system-unique device name */ if ((status = __ntapi->zw_query_information_file( hfile, diff --git a/src/fs/ntapi_tt_statfs.c b/src/fs/ntapi_tt_statfs.c index d131758..5d5de60 100644 --- a/src/fs/ntapi_tt_statfs.c +++ b/src/fs/ntapi_tt_statfs.c @@ -44,6 +44,10 @@ int32_t __stdcall __ntapi_tt_statfs( statfs->hfile = hfile; statfs->dev_name_maxlen = (uint16_t)infolen - sizeof(*statfs); + /* sigh */ + if (buffer_size >= 65536) + buffer_size = 65535; + /* maximum component length, file system type */ if ((status = __ntapi->zw_query_volume_information_file( hfile, |