Есть ли безопасный способ создать каталоги с помощью файловой системы Std ::?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Есть ли безопасный способ создать каталоги с помощью файловой системы Std ::?

Сообщение Anonymous »

Я сравнил описание posix mkdir против
  • Описание std :: fileSystem :: create_directory ,
  • Спецификация для STD :: FileSystem :: Create_Directory и и
    и PreeTem> или
    . /> < /ol>
    Однако первый подход выглядит как условие гонки. Между созданием каталога и настройками разрешения злоумышленник может злоупотреблять уже существующим каталогом. Кроме того, поскольку API, по -видимому, основан на (текстовых) путях, фактический каталог может быть каким -то образом изменен, сделав второй вызов недопустимым. Как и функциональность mkdirat вообще не покрывается. Вместо этого, поскольку API, по -видимому, основан на (текстовых) путях, это полностью склонные компоненты пути, изменяющие их «значение», в то время как функции выполняются.
    Интересно, как примечание Cppreference.com и спецификационный черновик, кажется, отличаются от поведения в окнах. случай может быть рассмотрен, игнорируя проблему create_directory и проверка последующего разрешения вызов, я не проверял, если это так. А также, кажется, что настоящая проблема все еще была бы там под капотом. Интересно, почему эти функции create_directory /create_directories были разработаны таким образом ...

    Подробнее здесь: https://stackoverflow.com/questions/797 ... filesystem
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»