URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 121006
[ Назад ]

Исходное сообщение
"Релиз NightShift, свободной реализации сервиса управления сигнализацией Астра Дозор"

Отправлено opennews , 21-Июн-20 08:41 
Опубликован свободный проект NightShift, который выполняет роль сервера для приборов охранно-пожарной сигнализации Астра Дозор. Сервер реализует такие функции, как ведение лога и разбор сообщений от прибора, а также передачу команд управления на прибор (постановка и снятие с охраны, включение и выключение зон, реле, перезагрузка устройства). Код написан на языке Си и распространяется под лицензией GPLv3...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=53201


Содержание

Сообщения в этом обсуждении
"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено iPony129412 , 21-Июн-20 08:41 
Какие-то странные название придумывали

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 09:05 
нормальное название, night shift - ночная смена.
Вот iPony129412 действительно звучит странно.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Fracta1L , 21-Июн-20 10:01 
> iPony129412

Я как увидел в этом нике слово "ипонутый", так и не могу развидеть.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 18:35 
Ты и ипоня - два сапога пара. Пара хайпонубов.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Сейд , 21-Июн-20 11:40 
Единорог.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено iPony129412 , 21-Июн-20 13:48 
Уже завербовано — в этом проблема.
Искать трудно.

ЗЫ: истории GVFS можно вспомнить. Microsoft же переименовали или нет?


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 14:33 
Какие проблемы? Напишите в Надзор. Он других забанит.
Сразу будет легко найти.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 23:23 
Это движок opennet так парсит некоторые символы.

Например: http://unicode.scarfboy.com/?s=🦄

Т.е. это должно быть iPony🦄 -> iPony🦄

Точно так же, по рассказу Аноним84701, он должен был называться Аноним𔫝 -> Аноним№1

http://unicode.scarfboy.com/?s=№


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 23:27 
Простите, опять парсер всё скушал. Вот тут мой ответ без форматирования: https://paste.debian.net/1153235/

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 18:33 
> Какие-то странные название придумывали

Предлагаю Night Watch. Хорошее дополнение к министерству мира.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 23:25 
Пейсатель может засудить.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено IRASoldier_registered , 22-Июн-20 02:43 
Это пейсателю повезло, что его не может засудить Рембрандт, поскольку очень уж давно умер.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Billy Bones , 22-Июн-20 08:55 
>Dead men don't bite

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 22-Июн-20 10:41 
>>Dead men don't bite

Дисней с мышонком Микки готов с этим поспорить :P


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 22-Июн-20 16:50 
> Это пейсателю повезло, что его не может засудить Рембрандт, поскольку очень уж давно умер.

Нелогично. Могут засудить наследники, собственники произведений или поклонники.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 08:50 
AstraLinux, коллектив, абонентский пункт ... безопасный и отечественный.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 12:55 
> ... безопасный и отечественный.

ем йогурт и одновременно красивая!
ня!

а тут все такие опасные и иностранные!


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 08:53 
> Астра
> GPLv3

O_o
Отлично, но посмотрим как будут латать дыры тогда.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 09:03 
Соблюдать лицензии в стране, где до сих пор карательная психиатрия..

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 09:14 
> Соблюдать лицензии в стране, где до сих пор карательная психиатрия..

И тут вы такой врываетесь с толстой папкой отчётов, статистик, расследований огромного числа случаев, которые дают право заявлять об этом, как о очевидно присутствуещем явлении, настолько ясным для всех, что об этом можно так, запросто, между делом, "упомянуть" на форуме.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Ананимус , 21-Июн-20 09:36 
Про реформу ПНИ только глухой не слышал.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено YetAnotherOnanym , 21-Июн-20 20:57 
> Соблюдать лицензии в стране, где до сих пор карательная психиатрия..

А тебя, бедненького, галоперидолом обделили?


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 10:24 
libdozor.c:21:10: fatal error: dozor-crypto.h: Нет такого файла или каталога
device-event.c:23:10: fatal error: device-event.h: Нет такого файла или каталога
dozor-crypto.c:20:10: fatal error: dozor-crypto.h: Нет такого файла или каталога
rc4.c:22:10: fatal error: rc4.h: Нет такого файла или каталога
event.c:20:10: fatal error: event.h: Нет такого файла или каталога
../libdozor/dozor.h:20:10: fatal error: session.h: Нет такого файла или каталога
../libdozor/dozor.h:20:10: fatal error: session.h: Нет такого файла или каталога
command.c:22:10: fatal error: ./command.h: Нет такого файла или каталога
event-stream.c:21:10: fatal error: event-stream.h: Нет такого файла или каталога
../libdozor/dozor.h:20:10: fatal error: session.h: Нет такого файла или каталога

Исходников недоложили. И зачем было заливать эту помойку в git? Такое в виде архивов выкладывают.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 13:01 
так ведь тандер его логистик!

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено frozer , 21-Июн-20 14:42 
Исправил, не пинайте сильно)) Первый опыт с autotools...

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 17:05 
> Исправил, не пинайте сильно)) Первый опыт с autotools...

Ладно, объяснительную напишешь, на стол положишь, на первый раз с тебя не спишут.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 18:43 
Что за жирные тролли повылезли? Штука довольно прикольная на вид, хоть и для непонятной проприетарной фигни. Видимо она у чела была - ну он и накодил. И вообще, dozord определенно доставляет :)

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 20:10 
> Первый опыт с autotools...

Раз такое дело, то разовью свою мысль. Во-первых, либо надо уж разбивать проект на три и выкладывать их по отдельности, либо объединить в один, без дублирования configure.ac и всего прочего в каждом подкаталоге. Во-вторых, автоматически сгенерированные файлы (configure, Makefile.in, compile, install-sh и т. д.) в VCS не коммитятся. Это лишено смысла, потому что при чекауте файлы получат рандомные временные метки, и может оказаться, например, что configure.ac якобы новее, чем configure, и в таком случае юзер запускает ./configure, потом make, а make решает перегенерировать «устаревший» configure, после чего перезепустит его заново, и только потом начнёт что-то компилировать (ну или упадёт, потому что в системе нет autoconf). То есть добавление этих файлов в репозиторий не только не облегчает сборку и не уменьшает число сборочных зависимостей, но, наоборот, может её удлинить. Чтобы юзер мог гарантированно собрать код привычным ./configure && make, не имея в системе autoconf & co., надо выдавать ему архив, сделанный make dist. Там хаоса временных меток не будет, и всё соберётся как должно.
А более глобально, не вижу смысла сейчас использовать в новом проекте autotools. Это просто сборник граблей, создающий проблем больше, чем решает. Есть ведь cmake, есть всякое прочее модное и не очень, но вот найти что-то более уродливое, чем autotools — затруднительно.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено frozer , 21-Июн-20 20:46 
ОК, если используем autotools, то коммитить имеет смысл только *.in файлы, описывающие сборку? А результат выполнения make dist выкладывать как release на github?

CMake я рассматривал, и понятнее оно не показалось. Возможно, нужно было пройти этап с autotools, получить работающий билд, и потом вернуться к cmake.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 20:53 
> если используем autotools, то коммитить имеет смысл только *.in файлы, описывающие сборку?

configure.ac, Makefile.am, нестандартные макросы, если таковые есть. В общем, только то, что написано руками, а не нагенерировано скриптами.

> А результат выполнения make dist выкладывать как release на github?

Ну да, он для этого предназначен.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено frozer , 21-Июн-20 21:46 
>> если используем autotools, то коммитить имеет смысл только *.in файлы, описывающие сборку?
> configure.ac, Makefile.am, нестандартные макросы, если таковые есть. В общем, только то,
> что написано руками, а не нагенерировано скриптами.
>> А результат выполнения make dist выкладывать как release на github?
> Ну да, он для этого предназначен.

Супер, наконец у меня в голове на место встало, как все должно быть! Внес изменения.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 23:45 
Разложил по полкам! А ещё некоторые на Анонимов бочку катят, что мол от них ничего хорошего! Анонимы то как раз и делают весь основной контент!

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 22-Июн-20 16:02 
> Анонимы то как раз и делают весь основной контент!

Учист у Аноним (9) как контент правильно делать. Вот он крут, да - почитал код, отписался о лаже. Эпичный чувак.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 20:49 
И по сишечке.
https://github.com/frozer/nightshift/blob/master/libdozor/li... — совсем детский use after free.
Утечки памяти тут: https://github.com/frozer/nightshift/blob/master/libdozor/de... и в https://github.com/frozer/nightshift/blob/master/libdozor/ev... в куче мест (не освобождаешь полученное от getData() и getCommonEventData()).
Кругом strcpy, strcat — ну нельзя же так… И с strncpy вот так https://github.com/frozer/nightshift/blob/master/dozord/comm... тоже нельзя. Там настолько до фига возможных переполнений буфера, что даже пытаться перечислять лень.
Неиспользуемые переменные:
https://github.com/frozer/nightshift/blob/master/libdozor/ut...
https://github.com/frozer/nightshift/blob/master/tools/parse...
Ну и, само собой, вот это всё не переносимо на big endian-архитектуры:
https://github.com/frozer/nightshift/blob/989effce7148ae3d07...

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено frozer , 21-Июн-20 20:58 
о-о-о, круто!

Спасибо за код-ревью :-) С одной стороны, задачи перенести на big-endian у меня разумеется не стояло, с другой - всегда полезно узнавать что-то новое.

Кстати, а что не так с strcpy/strcat? Вроде память не течет... проверял примерно неделю, ничего не падает. Хотя, возможно это эффект "на моей машине работает".


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 21:03 
> что не так с strcpy/strcat?

Не так с ними то, что можно записать за границы буфера-получателя. Особенно если речь идёт о данных, полученных извне (от сетевого устройства, из пользовательской команды).


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Michael Shigorin , 22-Июн-20 00:45 
> Исправил, не пинайте сильно)) Первый опыт с autotools...

На будущее -- перед анонсом проектов полезно хотя бы попытаться их собрать, ну и когда разработка/публикация носит характер экспериментальной -- тоже как-то это отметить.

Если что, в текст новости можно предложить правки и постфактум (ссылка "исправить" под ним).

Но всяко с почином ;-)


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено frozer , 22-Июн-20 10:46 
Спасибо, учту.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 10:35 
ржунимагу
https://www.teko.biz/catalog/434/1362/
Снят с призводства! Самое время выложить софт для него.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 12:59 
Одна из заявленных целей опенсорса - поддерживать то, на что положил болт разработчик. Чтобы пользователи сами могли доработать и использовать, а не выкидывать на свалку. Правда, далеко не все опенсорсники сами этому следуют. Таких монстров клепают, что только самое свежее железо это хоть как-то тянет.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено frozer , 21-Июн-20 14:45 
Писалось для себя - являюсь одним из счастливых обладателей девайса, который сначала сняли с производства, а потом перестали обслуживать в "бесплатном" сервисе производителя. Ощущения, что в один прекрасный день твой дом остался без контроля - несколько напрягают.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 18:44 
Молодец человек, все правильно сделал. Не обращай внимание на троллоту, они иногда лютуют по причине флуктуаций магнитной активности солнца, или типа того.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 10:53 
О, а какое неожиданное архитектурное решение:

> Отправка команд осуществляется путем записи команд в файл commands.txt:


echo "REBOOT:" > commands.txt


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено mos87 , 21-Июн-20 12:21 
Ну дык правокликаИшь на раб стол выбиреИшь создать текстовый файл... Инженер знал только этот подход.
И дебагать удобно - клац-клац и файлик открывается в блокноте
Глобально и надежно!

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено n80 , 21-Июн-20 15:47 
Там же дальше написано про это: устройства с некоторой периодичностью стучатся на сервер, в ответ им можно послать команду. Постоянно поддерживаемым соединением или другим способом обхода NAT производитель, очевидно, не заморочился.

> отправить на устройство ничего нельзя пока устройство само не отправит сообщение


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено user90 , 21-Июн-20 13:08 
Минутка саморекламки? ;)

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено frozer , 21-Июн-20 14:43 
Неа, минутка альтруизма. Решение писалось для себя, кусок который можно выложить - выложил

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 21-Июн-20 18:45 
А чего такого в минуте саморекламы для опенсорсных проектов?

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 22-Июн-20 08:15 
RC4 дырявый же не?
или для данного решения и так сойдет?

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 22-Июн-20 10:40 
> RC4 дырявый же не?

Так это ж железкой навязано как я понял. Но ты в своем праве переписать неведомой вундервафле фирмварь если сможешь.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено SubGun , 22-Июн-20 12:39 
Очень странные коммиты: "...Thanks to anonym from opennet.ru". Это надежда на то, что человек зайдет в список коммитов и расплачется от умиления?
Ну отправка команд через текстовый файл в 21 веке - такое себе.

"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 22-Июн-20 15:43 
Лет десять назад написал свой сервер для пожаро-охранной сигнализации.

Ptython (риалтайм) + Postgresql

При поступлении события оно пишется в базу и принудительно шлется на все клиенты.

Сервер свободен. В инеты не выкладывал. А вот клиент написан другим человеком и проприетарный.


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 22-Июн-20 16:04 
> Ptython (риалтайм) + Postgresql

Ыгы, по сравнению с мелкой шняге на сях... ну ты понял :)))

> В инеты не выкладывал.

(и это к лучшему, вемакачьего гомна и так на планете завалы)


"Релиз NightShift, свободной реализации сервиса управления си..."
Отправлено Аноним , 22-Июн-20 17:22 
А что хоть за охранно-пожарная сигнализация? Если сервер свободен и нигде не выложен, то толку от проприетарного клиента никакого.