beldmit: (Программизм)
[personal profile] beldmit
Из Changelog новой версии ядра Linux (3.11, "Linux for workgroups"):

В системные вызовы open() и openat() добавлена поддержка флага O_TMPFILE, позволяющего передать файловой системе информацию о создании временного файла, не видимого в иерархии ФС, что позволяет применить для данного типа файлов отдельные оптимизации. Создаваемые при помощи O_TMPFILE временные файлы не имеют имени, в качестве пути передаётся только директория. Создание невидимого временного файла без имени позволяет разработчикам приложений не задумываться о возможных уязвимостях, таких, как атака через символические ссылки;

В ряде мест такая возможность сильно упростит жизнь. Но до широкого распространения, боюсь, еще долго.

Date: 2013-09-04 07:01 am (UTC)
From: [identity profile] beldmit.livejournal.com
Но в твоем варианте возможны гонки между созданием и удалением. Или нет?

Date: 2013-09-04 07:15 am (UTC)
tobotras: (Default)
From: [personal profile] tobotras
А в чём гонка-то? Не торопясь создал, потом не торопясь удалил, потом не торопясь работаешь с ним себе. Если тебя в неудачный момент застрелили -- ну, останется валяться нулевой длины /tmp/tmpsomething...

Date: 2013-09-04 07:42 am (UTC)
From: [identity profile] qkowlew.livejournal.com
как будто не бывает no free inodes :-)

Date: 2013-09-04 09:13 am (UTC)
From: [identity profile] potan.livejournal.com
В современных fs не бывает.

Date: 2013-09-05 10:56 am (UTC)
From: [identity profile] beldmit.livejournal.com
Два процесса создали файл с одинаковым именем.

Date: 2013-09-05 11:11 am (UTC)
tobotras: (Default)
From: [personal profile] tobotras
/tmp/tmpfile.MyApplication.$$ ? :)

Date: 2013-09-05 11:12 am (UTC)
From: [identity profile] beldmit.livejournal.com
Не, это само собой решение. Пока у тебя не мультитред.

Date: 2013-09-05 11:38 am (UTC)
tobotras: (Default)
From: [personal profile] tobotras
s/PID/TID/ :-)

Date: 2013-09-04 07:30 am (UTC)
From: [identity profile] qkowlew.livejournal.com
да. Атака по ошибке в коде на этом этапе рано или поздно ведет к no free inodes

Profile

beldmit: (Default)
Dmitry Belyavskiy

December 2025

S M T W T F S
 123456
78910111213
14151617181920
2122 2324252627
28 29 3031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 12th, 2026 05:56 am
Powered by Dreamwidth Studios