From 4ab01673be758ed190576f9a085dea2fbcccf987 Mon Sep 17 00:00:00 2001 From: "Earle F. Philhower, III" Date: Sat, 15 Jun 2024 12:31:24 -0700 Subject: [PATCH] Add creation timestamp to LittleFS directories (#9127) * Add creation timestamp to LittleFS directories Partial fix #9120. This is simple enough to include and does not increase the amount of flash writes on file updates significantly (which a modified-time 't' attribute would). * Fix typo in debug message on error --- libraries/LittleFS/src/LittleFS.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libraries/LittleFS/src/LittleFS.h b/libraries/LittleFS/src/LittleFS.h index a3afbfe77f..d5203ae6e0 100644 --- a/libraries/LittleFS/src/LittleFS.h +++ b/libraries/LittleFS/src/LittleFS.h @@ -167,6 +167,14 @@ class LittleFSImpl : public FSImpl return false; } int rc = lfs_mkdir(&_lfs, path); + if ((rc == 0) && _timeCallback) { + time_t now = _timeCallback(); + // Add metadata with creation time to the directory marker + int rc = lfs_setattr(&_lfs, path, 'c', (const void *)&now, sizeof(now)); + if (rc < 0) { + DEBUGV("Unable to set creation time on '%s' to %ld\n", path, (long)now); + } + } return (rc==0); }