forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.HUSKY

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 06.11.2021, 21:40
Nil A
Guest
 
Сообщений: n/a
По умолчанию txt2pkt - race condition

Nil A написал(а) к All в Nov 21 20:24:02 по местному времени:

Нello, All!

При вызове txt2pkt, не безопасно указать имя каталога, например, inbound, из которого сразу тоссер сможет начать читать .pkt файл.
-d "<path>" - output directory

Race condition - txt2pkt ещё не завершил запись .pkt, а тоссер уже начал его обрабатывать.
txt2pkt не использует блокировки.

Сам hpt такой проблеме не подвержен, он пользуется createTempPktFileName(), который создаёт .pkt в tempOutbound, а потом переименовывает в рабочий.

Также, binkd такой проблеме не подвержен, он создаёт принимаемые файлы в каталоге temp-inbound, и потом уже переименовывает в рабочий.

Best Regards, Nil
--- GoldED+/LNX 1.1.5
Ответить с цитированием
  #2  
Старый 06.11.2021, 22:33
Michael Dukelsky
Guest
 
Сообщений: n/a
По умолчанию txt2pkt - race condition

Michael Dukelsky написал(а) к Nil A в Nov 21 21:22:04 по местному времени:

Привет, Nil!

06 November 2021 20:24, Nil A послал(а) письмо к All:

NA> При вызове txt2pkt, не безопасно указать имя каталога, например,
NA> inbound, из которого сразу тоссер сможет начать читать .pkt файл. -d
NA> "<path>" - output directory

NA> Race condition - txt2pkt ещё не завершил запись .pkt, а тоссер уже
NA> начал его обрабатывать. txt2pkt не использует блокировки.

NA> Сам hpt такой проблеме не подвержен, он пользуется
NA> createTempPktFileName(), который создаёт .pkt в tempOutbound, а потом
NA> переименовывает в рабочий.

NA> Также, binkd такой проблеме не подвержен, он создаёт принимаемые файлы
NA> в каталоге temp-inbound, и потом уже переименовывает в рабочий.

Пиши pull request.

Желаю успехов, Nil!
За сим откланиваюсь, Michael.

... node (at) f1042 (dot) ru
--- GoldED+/LNX 1.1.5-b20180707
Ответить с цитированием
  #3  
Старый 07.11.2021, 04:02
Alexey Vissarionov
Guest
 
Сообщений: n/a
По умолчанию txt2pkt - race condition

Alexey Vissarionov написал(а) к Nil A в Nov 21 02:52:52 по местному времени:

Доброго времени суток, Nil!
06 Nov 2021 20:24:02, ты -> All:

NA> При вызове txt2pkt, не безопасно указать имя каталога, например,
NA> inbound, из которого сразу тоссер сможет начать читать .pkt файл.
NA> -d "<path>" - output directory
NA> Race condition - txt2pkt ещё не завершил запись .pkt, а тоссер уже
NA> начал его обрабатывать. txt2pkt не использует блокировки.

И не должен.

man mktemp
man mv


--
Alexey V. Vissarionov aka Gremlin from Kremlin
gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii

... Опубликовано на правах антонима к ворочанью мешков
--- /bin/vi
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 05:26. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot