Вхід Реєстрація
Реклама
Ваше рекламне місце
Забронюйте цей слот без конкуренції на обраний період.
Купити рекламу →
Логотип телеграм спільноти - 🇺🇦 Комора Лінуксоїда | Linux
Додано 14 лип 2024 🌐 UK

🇺🇦 Комора Лінуксоїда | Linux

@linux_ukraine
Кількість підписників: 964
Фото: 696
Відео: 117
Посилання: 1,180
Опис:
Все про *nix та IT українською! https://tlp-media.github.io Чат: @unix_ukraine Адмін: @herbstluft
Джерело

🇺🇦 Комора Лінуксоїда | Linux | У конфігураційних файлах curl випадково реалізовано повноту за Тюрінго...

Логотип телеграм спільноти - 🇺🇦 Комора Лінуксоїда | Linux 🇺🇦 Комора Лінуксоїда | Linux @linux_ukraine
414 Охват/переглядів 2026-11-04 16:23 Повідомлення №1838
У конфігураційних файлах curl випадково реалізовано повноту за Тюрінгом

Ця особливість проявляється лише у версіях Curl з 8.12 по 8.16 і зумовлена ненавмисною реалізацією повноти за Тьюрингом, що дозволяє створювати машини Тьюринга, використовуючи можливість вилучати байтові діапазони зі значень змінних та необмежену глибину вкладеності під час підключення зовнішніх конфігураційних файлів.

Як приклад, за допомогою Curl було реалізовано симуляцію роботи дволічильникової регістрової машини (машини Мінського) для додавання чисел та реалізації програми "99 пляшок пива", яка використовується під час навчання роботі з циклами.

На практиці обчислювальні можливості, що реалізуються через файли конфігурації, обмежені розміром стека, оскільки кожен крок виконання програми вимагає завантаження нового вкладеного файлу конфігурації.

При стеку в 8 МБ переповнення виникає приблизно після 922 кроків. На можливості також впливає обмеження на розмір розгортаних змінних (параметр MAX_EXPAND_CONTENT встановлено на 10 МБ) та велике споживання пам’яті через збереження всіх старих версій змінних.