Lines Matching defs:h

30 #include "error.h"
31 #include "time_utils.h"
36 # include <io.h>
37 # include <windows.h>
38 # include <winioctl.h>
40 # include <fcntl.h>
41 # include <sys/stat.h>
42 # include <sys/statvfs.h>
43 # include <sys/time.h>
44 # include <unistd.h>
46 #include <stdlib.h>
47 #include <time.h>
133 h = CreateFileW(
143 if (h != INVALID_HANDLE_VALUE)
144 CloseHandle(h);
146 operator HANDLE() const { return h; }
147 operator bool() const { return h != INVALID_HANDLE_VALUE; }
150 HANDLE h;
153 inline int stat_handle(HANDLE h, StatT* buf) {
155 if (!GetFileInformationByHandleEx(h, FileBasicInfo, &basic, sizeof(basic)))
170 if (!GetFileInformationByHandleEx(h, FileAttributeTagInfo, &tag, sizeof(tag)))
176 if (!GetFileInformationByHandleEx(h, FileStandardInfo, &standard, sizeof(standard)))
181 if (!GetFileInformationByHandle(h, &info))
190 WinHandle h(path, FILE_READ_ATTRIBUTES, flags);
191 if (!h)
193 int ret = stat_handle(h, buf);
202 HANDLE h = reinterpret_cast<HANDLE>(_get_osfhandle(fd));
203 return stat_handle(h, buf);
243 detail::WinHandle h(path, DELETE, FILE_FLAG_OPEN_REPARSE_POINT);
244 if (!h)
248 if (!SetFileInformationByHandle(h, FileDispositionInfo, &info, sizeof(info)))
253 inline int truncate_handle(HANDLE h, off_t length) {
256 if (!SetFilePointerEx(h, size_param, 0, FILE_BEGIN))
258 if (!SetEndOfFile(h))
264 HANDLE h = reinterpret_cast<HANDLE>(_get_osfhandle(fd));
265 return truncate_handle(h, length);
269 detail::WinHandle h(path, GENERIC_WRITE, 0);
270 if (!h)
272 return truncate_handle(h, length);
343 WinHandle h(path, FILE_READ_ATTRIBUTES, 0);
344 if (!h) {
350 DWORD retval = GetFinalPathNameByHandleW(h, buff.get(), buff_size, FILE_NAME_NORMALIZED | VOLUME_NAME_DOS);
354 retval = GetFinalPathNameByHandleW(h, buff.get(), buff_size, FILE_NAME_NORMALIZED | VOLUME_NAME_DOS);
376 inline int fchmod_handle(HANDLE h, int perms) {
378 if (!GetFileInformationByHandleEx(h, FileBasicInfo, &basic, sizeof(basic)))
384 if (basic.FileAttributes != orig_attributes && !SetFileInformationByHandle(h, FileBasicInfo, &basic, sizeof(basic)))
398 detail::WinHandle h(path, FILE_READ_ATTRIBUTES | FILE_WRITE_ATTRIBUTES, 0);
399 if (!h)
401 return fchmod_handle(h, perms);
416 HANDLE h = reinterpret_cast<HANDLE>(_get_osfhandle(fd));
417 return fchmod_handle(h, perms);
425 detail::WinHandle h(path, FILE_READ_ATTRIBUTES, FILE_FLAG_OPEN_REPARSE_POINT);
426 if (!h)
429 if (!DeviceIoControl(h, FSCTL_GET_REPARSE_POINT, nullptr, 0, buf, sizeof(buf), &out, 0))