Выходные провел, наконец-то, в полной "просрации": попил пивка (да, сорвался, надеюсь вернуться обратно в трезвое русло к отпуску), ну и не только пивка…
Тем временем кое-кто, нарушив
"священный обет" логику, умудрился переполюсовать питание. ОК, вместо актуальной и очень нужной работы занимался тем, что починял (благо, еще молодой коллега неплохо помог, а то бы я точно в абсолютный запой ушел) помершее оборудование. К счастью, отделались "легко". А другой коллега предложил "штрафовать" за сожженое оборудование. Ну, на этот раз вышло примерно от ~15тыр (если реально смотреть на то, что мы все починили) до ~300тыр (если смотреть на то, что нужно полностью компенсировать стоимость уничтоженного, хоть и частично, оборудования).
А и ладно.
В своей "сниппетобиблиотеке" добавил функцию "демонизации" (т.к. классический
int daemon(int nochdir, int noclose);
вообще не пригоден к реальному использованию: он первым делам форкается, а потом убивает "папу", соответственно, если его из-под openrc или sysv-init запускать, супервайзер решит, что демон помер, начнет пытаться его восстановить, и отвалится с ошибкой "too much respawn" (или как оно там).
В "демон" астросибовского телескопа добавил сохранение фитс-шапки (почему-то раньше я об этом не думал, а таки нужная штука), ну и теперь можно управлять вентиляцией главного зеркала и подогревом вторичного (если оно есть, конечно).
"Демон монтировки" переписал в минимуме под свою "snippets-library", т.к., напомню, "внезапно" оказалось, что в таперешной glibc не существует
struct termio, а тупо переименовать ее в
termios, сами понимаете, нельзя. Ну, в моей библиотеке используется
struct termios2, поэтому есть надежда, что, пока не появится "3", оно deprecated не будет.
Ну и для будущих "железных разработок" вынес урок: лучшей защитой "от дурака" будет включение "обратных диодов" вообще везде! И по питанию, и по входным интерфейсам (когда по "земле" USB фигачит +12В, будет плохо; благо, сработал USBLC6, взяв на себья обратку, и токоограничивающие резисторы по 22Ом тупо сгорели, правда, вместе с USBLC6 — зато, МК не помер).