From cbbdd74dab4b89c9f193af767602c514740ffe2a Mon Sep 17 00:00:00 2001 From: Jan Goldacker Date: Tue, 12 May 2026 07:56:17 +0200 Subject: [PATCH] Fix SFTP_GetAttributes with fatfs for root --- src/wolfsftp.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/wolfsftp.c b/src/wolfsftp.c index f86e27ecc..ad23e6987 100644 --- a/src/wolfsftp.c +++ b/src/wolfsftp.c @@ -4861,9 +4861,6 @@ static int SFTP_GetAttributes(void* fs, const char* fileName, (void) noFollow; (void) heap; - ret = f_stat(fileName, &info); - if (ret != FR_OK) - return -1; WMEMSET(atr, 0, sizeof(WS_SFTP_FILEATRB)); if (sz > 2 && fileName[sz - 2] == ':') { atr->flags |= WOLFSSH_FILEATRB_PERM; @@ -4872,12 +4869,14 @@ static int SFTP_GetAttributes(void* fs, const char* fileName, } /* handle case of "/" */ + /* Calling f_stat for "/" returns FR_INVALID_NAME. So we simulate the result. */ if (sz < 3 && fileName[0] == WS_DELIM) { atr->flags |= WOLFSSH_FILEATRB_PERM; atr->per |= 0x4000; return WS_SUCCESS; } + ret = f_stat(fileName, &info); if (ret != FR_OK) { return WS_BAD_FILE_E; }