/**************************************************************************** Aaru Data Preservation Suite ----------------------------------------------------------------------------- Author(s) : Natalia Portillo --[ License ] --------------------------------------------------------------- This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . ----------------------------------------------------------------------------- Copyright (C) 2011-2021 Natalia Portillo *****************************************************************************/ #ifndef AARU_FSTESTER_SETTER_SRC_DOS_TIME_H_ #define AARU_FSTESTER_SETTER_SRC_DOS_TIME_H_ #include #define DATETIME_FORMAT "This file is dated %04d/%02d/%02d %02d:%02d:%02d for %s\n" typedef struct { char filename[9]; unsigned short date; unsigned short time; unsigned short function; char definition[13]; } dos_time_tests_t; #define KNOWN_DOS_TIMES 12 #define WIN_SET_CREATION_DATE_AND_TIME 0x5707 #define DOS_SET_LAST_WRITTEN_DATE_AND_TIME 0x5701 #define WIN_SET_LAST_ACCESS_DATE_AND_TIME 0x5705 #define MAX_TIME 0xBF7D #define MAX_DATE 0xFF9F #define Y1K_DATE 0x2621 #define Y2K_DATE 0x2821 #define MIN_DATE 0x0021 static const dos_time_tests_t dos_times[KNOWN_DOS_TIMES] = { {"MAXCTIME", MAX_DATE, MAX_TIME, WIN_SET_CREATION_DATE_AND_TIME, "creation"}, {"MINCTIME", MIN_DATE, 0, WIN_SET_CREATION_DATE_AND_TIME, "creation"}, {"Y19CTIME", Y1K_DATE, MAX_TIME, WIN_SET_CREATION_DATE_AND_TIME, "creation"}, {"Y2KCTIME", Y2K_DATE, MAX_TIME, WIN_SET_CREATION_DATE_AND_TIME, "creation"}, {"MAXWTIME", MAX_DATE, MAX_TIME, DOS_SET_LAST_WRITTEN_DATE_AND_TIME, "last written"}, {"MINWTIME", MIN_DATE, 0, DOS_SET_LAST_WRITTEN_DATE_AND_TIME, "last written"}, {"Y19WTIME", Y1K_DATE, MAX_TIME, DOS_SET_LAST_WRITTEN_DATE_AND_TIME, "last written"}, {"Y2KWTIME", Y2K_DATE, MAX_TIME, DOS_SET_LAST_WRITTEN_DATE_AND_TIME, "last written"}, {"MAXATIME", MAX_DATE, MAX_TIME, WIN_SET_LAST_ACCESS_DATE_AND_TIME, "last access"}, {"MINATIME", MIN_DATE, 0, WIN_SET_LAST_ACCESS_DATE_AND_TIME, "last access"}, {"Y19ATIME", Y1K_DATE, MAX_TIME, WIN_SET_LAST_ACCESS_DATE_AND_TIME, "last access"}, {"Y2KATIME", Y2K_DATE, MAX_TIME, WIN_SET_LAST_ACCESS_DATE_AND_TIME, "last access"}, }; #endif // AARU_FSTESTER_SETTER_SRC_DOS_TIME_H_