cfd314ffa2
Безопасность: - Сервер bind на loopback (127.0.0.1) вместо 0.0.0.0 - Лимит соединений: Semaphore(10) для защиты от DoS - Валидация fileSize: max 10 ГБ, reject при превышении - Валидация пути файла: canonicalPath must startWith downloadsDir - FileUtils.resolveUniqueFile: max counter 1000 - FileUtils.deleteIfExists: исправлен TOCTOU race - Скрытие путей в ошибках (не泄漏 internal paths) - Трансфер-история ограничена 50 записями - Таймаут сокета увеличен до 60 сек - compareAndSet для защиты от double-bind - require(file.exists()) в sendFile Сборка: - Android: APK подписан debug keystore (self-signed) - Android: конвертирован из library в application - macOS: AeroToss.app (113 МБ) + JAR (28 МБ) - LICENSE: GPLv3 Тесты: все 71+ проходят
20 lines
821 B
Plaintext
20 lines
821 B
Plaintext
GNU GENERAL PUBLIC LICENSE
|
|
Version 3, 29 June 2007
|
|
|
|
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
|
Everyone is permitted to copy and distribute verbatim copies
|
|
of this license document, but changing it is not allowed.
|
|
|
|
Preamble
|
|
|
|
The GNU General Public License is a free, copyleft license for
|
|
software and other kinds of works.
|
|
|
|
The licenses for most software and other practical works are designed
|
|
to take away your freedom to share and change the works. By contrast,
|
|
the GNU General Public License is intended to guarantee your freedom to
|
|
share and change all versions of a program--to make sure it remains free
|
|
software for all its users.
|
|
|
|
For the complete license text, see https://www.gnu.org/licenses/gpl-3.0.txt
|