LINUX.ORG.RU

Форум

Активные теги:

 , , , , , , , , , , , , , ,

Можно ли дергать crow api из других (собственных) потоков?

Форум — Development

Привет, заюзал crow для http сервера. Вопрос, который я не понял - а можно ли дергать crow апи из других (своих) потоков? Ведь он работает на базе asio, а там свой event_loop, thread_pool и всё такое, и надо помещать задание в очередь asio, которое будет выполнено его потоками. Сомнения были сразу, но после того как увидел Crow::tick(), которое даёт возможность помещать функцию в очередь на выполнение, задумался конкретно. Пример набросал, отдельный мой поток играет в пинг-понг с websocket коннектами и закрывает мертвые. Так можно?

std::mutex g_ws_mtx;
std::unordered_map<crow::websocket::connection*, steady_clock_t::time_point>
   g_ws_connections;


void ws_ping_thread_fn()
{
   while (true) {
      std::this_thread::sleep_for(...);
      if (true) {
         std::lock_guard lck(g_ws_mtx);
         for (auto i : g_ws_connections) {
            ...
            if (last time > threshold)
               // close connection
            else
               i.first->send_ping(...);
            ...
         }
      }
   }
}

int main() {
   crow::SimpleApp app;
   ...
   CROW_WEBSOCKET_ROUTE(app, "/ws")
      .onopen([&](crow::websocket::connection &conn) {
            std::lock_guard lck(g_ws_mtx);
         auto res = g_ws_connections.insert({&conn, steady_clock_t::now()});
      })
      .onclose([&](crow::websocket::connection &conn,
            const std::string& reason, uint16_t) {
         std::lock_guard lck(g_ws_mtx);
         auto res = g_ws_connections.erase(&conn);
      })
      .onmessage([&](crow::websocket::connection &conn,
            const std::string& data,
            bool is_binary) {
         std::lock_guard lck(g_ws_mtx);
         auto e = g_ws_connections.find(&conn);
         e->second = steady_clock_t::now();
      });

   std::thread ws_ping_thread(ws_ping_thread_fn);
   app.port(g_server_port).bindaddr("127.0.0.1").multithreaded().run();
   ws_ping_thread.join();
}

Может здесь есть люди знающие данный framework. Смотреть реализацию больно, там всё виртуальное, надо расчехлять отладчик и прочее. В доках тоже голяк

 

kvpfs_2
()

Thunar не монтирует файловые системы.

Форум — Desktop

Через thunar я открываю smb дирректорию, она открывается нормально но я могу посмотреть содержимое, но ни один файл я не могу открыть на ней. она по чему то не монтирует ее в /run/user/1000/gvfs Запускаю вручную демон

fusermount3: failed to access mountpoint /run/user/1000/gvfs: Permission denied
drwx------    2 andrew   andrew        40 Jan 23 10:05 gvfs

вручную правлю права

chmod -R 777 "/run/user/1000/gvfs"

Все работает нормально, файловая систем монтируется.

Из-за чего это происходит как это пофиксить?

 , , ,

Loafter
()

Как работаю VPN приложения, в крайне общем виде

Форум — Development

Добрый день, можете подсказать, допустим вот есть какое-то впн приложение для линукс. В самом общем виде, был допустим у нас какое-то TCP приложение которое открывало сокет и отсылало туда содержимое буфера в памяти. Затем ядро наверное там писало в буфер сетевой карты и дальше уже пакет шел по ethernet. А что при запуске VPN происходит, у нас приложение все также наверное делаешь connect к требуемому нами адресу, а дальше строится что-то типа внутренней таблицы маршрутизации и пакет идет на адрес впн, а на том конце деинкапсулируются? Понимаю, что очень сумбурно написал, что бы такое почитать, максимально доходчивое и просто?

 

da17
()

Чем лучше открыть 3д КТ челюсти?

Форум — Multimedia

Снимки КТ в dcm файлах - пробовал anthem dicom expert - что-то мало вариантов в меню

 ,

doomer
()

Нужна помощь с прошивкой OpenWrt

Форум — Linux-hardware

Всем доброго дня! Может уже кто то шил данный роутер https://aliexpress.ru/item/1_140365309.html?businessType=ProductDetail&sku_id=5000000514482012&spreadType=socialShare&srcSns=sns_More&utm_medium=sharing ? Был бы благодарен за помощь в прошивке.

 

yanistyle
()

CSI разъёмы на одноплатниках, как их различать?

Форум — Linux-hardware

На руках есть одноплатные компьютеры, на каждом есть CSI-разъём:

  • Orange Pi PC2
  • Raspberry Pi 3B+
  • ESP32-P4-ETH, Luckfox Pico Zero
  • Radxa Rock 5B
  • Китайские noname с RV1109/RV1126

У всех (по пунктам) физически CSI-разъёмы различаются. Бывает сильно (1 мм площадь контакта или 0.5), бывает совсем чуть-чуть (есть шляйфы 0.5, на одном 22 контакта, на другом 20 контактов, а маркировка одинаковая).

Как в этом зоопарке CSI-разъёмов ориентироваться?

 , , , ,

Jullyfish
()

Звук больше чем стерео (Yamaha SR-C20A)

Форум — Desktop

Предыстория: есть Yamaha SR-C20A в системе, которая подробно расписана в топике: Steam Deck PC +1

Кроме стерео в этом саундбаре есть сабвуфер. То есть кроме простого право/лево есть центральный и сабвуферный каналы. Сейчас Yamaha SR-C20A подключается через кабель USB → оптика. В случае Steam Deck (SteamOS) на выбор даётся вывод в стерео или 5.1. Само собой в случае 5.1 для право/лево разделение на сзади/спереди отсутствует, зато появляется дополнительный центральный и сабвуферный каналы. А вот в случае Ubuntu 24.04 есть только Digital S/PDIF output (тестировать в настройках предлагается при этом только два канала стерео).

Вопрос Будет ли в случае Digital S/PDIF output потока задействоваться дополнительный сабвуферный канал без дополнительных телодвижений? Если нет, то какие именно движения нужно будет сделать?

Update Обнаружилась, что в Ubuntu 24.04 с Digital S/PDIF output возникают «шумы в оптическом канале» (втыкание/вытыкание usb-кабеля помогает). Возможно это связано с kvm-переключателем и переключением между машинами.

Update 2 Установка переменной

#pulse.min.quantum      = 128/48000     # 2.7ms                                                                                                                  
 pulse.min.quantum      = 1024/48000     # 2.7ms  
в /usr/share/pipewire/pipewire-pulse.conf +
> systemctl --user restart wireplumber pipewire pipewire-pulse
ситуацию меняет к лучшему, но не окончательно. Предположительно проблемы встроек AMD и ядра Linux.

 , цифровой звук

Evgueni
()

Проблема с настройкой LED индикаторов на роутере

Форум — General

Стоит роутер ASUS RT-AX53U с прошивкой Openwrt 23.05.5. Хочу полностью отключить на нем все индикаторы, но в меню конфигурации LED отсутствуют индикаторы WAN и LAN, все остальные отключились без проблем.

 

Default-111
()

Об ИИ автомодерации

Форум — Talks

В общем хочу поведать кулстори, которая со мной приключилась вот только что.

Сидел я в телеграм-группе IT-тематики мигрантов. Попалась мне в местном новостном телеграм-паблике новость про то, что местным предпринимателям запретят принимать оплату через QR из-за чего те перешли на наличку (чтобы не платить процент банку, QR бесплатный). Ссылка на саму новость: https://t.me/kaktus_mediakg/40443 (особо не важна)

Что примечательно в новости - так это КДПВ: https://ibb.co/pjqJStsC (для Ъ: там рука держит веер денег и зеленая галочка).

Так вот, решил я эту новость репостнуть в канал с мигрантами в соответствующий раздел («новости»). И… тут же получил автобан. Не от админа или модератора. А от бота, который добавлен в группу как антиспам (@SpamBot). Бота используют 33 миллиона пользователей в месяц.

Как мы с админом группы выяснили - бот стриггерился на картинку «веер денег», посчитав, что я запостил какую-то мутку-разводняк. Сообщение было мгновенно удалено и тут же выдан бан.

При этом бот при нажатии «подробно» в сообщении «вам запрещено писать в публичных группах» начинает мне рассказывать, что меня забанили за «спам в личных сообщениях» и что «команда модераторов уже проверила жалобы других пользователей и подтвердила легитимность». Для справки - в личку я последние недели две писал только жене и коллеге по работе.

Итог:

  • Я получил бан на 4 дня
  • Я не могу постить в любые группы, админ которых использует этого бота
  • Админ не может снять бан, потому что не контролирует бота

Добро пожаловать в dystopian future.

 автомодерация, ,

PPP328
()

Посоветуйте по кубер и NixOS

Форум — Admin

Всем привет!

Тут по дешевке нашел Lenovo m910q в tiny корпусе, кажется, что можно заменить wifi модуль и получить 5гигабит на 7й версии wifi.

Вот думаю используя NixOS и k3s связать 3 таких неттопа, цель сугубо развить навыки кубера и NixOS.

Кто-то сталкивался? Че там делать надо? Можно ли сразу в конфиге прописать связь между узлами?

 , lenovo tiny,

AntonyRF
()

Посоветуйте DE для вялого планшета

Форум — Desktop

Есть планшетик на Atom x7-Z8750, нерасширяемой 8Гб озу и emmc вместо ssd
Гном из дебиана 13 на нем еле-еле волохается, кде подозреваю будут так-же - какие де/вм из легковесных умеют в экранную клавиатуру и прочие планшетные прелести?

 

rukez
()

БЦП будет давать россиянам смартфоны бесплатно. Вместо денег — просмотр рекламы

Форум — Talks

Тесты начнутся весной.

Летом 2026 года в России может появиться новая модель получения смартфона. Компания «Бюро цифровых проектов» планирует выдавать устройства без предоплаты и ежемесячных абонентских плат. Стоимость телефона и связи покроет просмотр рекомендаций (например, баннеров или видеороликов) в интерфейсе телефона.

Чтобы получить смартфон, нужно будет пройти идентификацию по паспорту. Просмотр рекомендаций не будет мешать звонкам или использованию приложений. Однако если пользователь полностью отключит показ любой рекламы, ему придется вернуть устройство, как указано в соглашении. Телефон при этом не блокируется.

Просмотр рекомендаций не является обязательным условием для совершения звонков, отправки сообщений или использования приложений. Устройство будет работать на Android 16. Все приложения и сбор данных будут подключаться только с согласия пользователя и в рамках российского законодательства.

Первые 1500 устройств весной 2026 года получат участники закрытого тестирования. Подать заявку на участие сможет любой желающий через сайт проекта.

Источник

 , ,

Sm0ke85
()

Сбросить Rustdesk Host-Self Server

Форум — Admin

Требуется что бы выданный ранее ключ для Ретранслятора перестал работать.

 

petav
()

Несоответствие мануала с действительностью

Форум — General

Прочитал манул, полез в файл parse.y в исходниках и понял что мануал не соответсвует тому как работает баш. Множество синтаксических конктрукций не задокументировано, а некоторые задокументированы неправильно.

Например:

for name; { echo $name; }

в мануеле нет констнукции for без do, тем неменее в баше есть несколько вариантов таких конструкций

также в while/until ; опциональна, хотя в мануле написано что нет

 

mishka06
()

А не нужны ли участникам форума персональные значки?

Форум — Linux-org-ru

Пусть рядом с ником показываются. Допустим:

🔨 - модератор.

🪠 - сантехник (особо активный модератор).

✍️ - корректор.

🧐 - эксперт (можно вычислять по положительным реакциям в технических разделах или присуждать лично).

📜 - гонец (активный автор новостей).

🧑‍🏫 - профессор (активный автор статей).

🧑‍🎨 - художник (активный наполнитель галереи).

📚 - писатель (для активно создающих темы на форуме).

🕵️ - шпион (который создает много опросов).

🪰🪈 - повелитель мух (автор наиболее обсуждаемых тем).

 , , ,

Vidrele
()

Дискусс о безопасности некоторых компонентов загрузки

Форум — Desktop

По некоторым обстоятельствам, пришлось переустанавливать ОС на моем Thinkpad X260. И встал вопрос: Стоит ли включать в BIOS UEFI для работы системы с GRUB 2 вместо GRUB 1? Стоит ли включать secure-boot? Стоит ли использовать TPM 2.0 (сканера отпечатков у меня нет)? В тему призываются параноики, так как я считаю что все эти навороты не нужны. Дуалбута у меня нет, пароль на BIOS стоит. Диск шифрую стандартным LUKS (надо бы еще научиться шифровать /boot), LVM ненужен. Но возможно, сейчас, в 2026 все изменилось и появились действительно полезные и секурные возможности, от включения всех этих наворотов.

 , , ,

Riniko
()

А как танцуете вы?

Форум — Talks

Поцаны, подскажите название стиля (или как его там) под что тащатся тут: https://www.youtube.com/shorts/2RqIVJkd28I

 ,

superuser
()

Помогите пожалуйста разобраться с JACK

Форум — Multimedia

вот лог с ошибкой:

jackdmp 1.9.22
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2016 Grame.
Copyright 2016-2023 Filipe Coelho.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
Could not open component .so '/usr/lib/jack/jack_firewire.so': libffado.so.2: cannot open shared object file: No such file or directory
Could not open component .so '/usr/lib/jack/jack_firewire.so': libffado.so.2: cannot open shared object file: No such file or directory
jack_get_descriptor : dll 
jack_get_descriptor returns null for 'jack_firewire.so'
Could not open component .so '/usr/lib/jack/jack_firewire.so': libffado.so.2: cannot open shared object file: No such file or directory
JACK server starting in realtime mode with priority 10
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init
Acquire audio card Audio0
creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to capture-only mode
Released audio card Audio0
audio_reservation_finish
Cannot initialize driver
JackServer::Open failed with -1
Failed to open server

 ,

mihail9999
()

Gsm-шлюз Dinstar, как-то к нему подключаются извне...

Форум — General

Gsm-шлюз Dinstar, в который вставлена СИМ-карта, настроен в связке с SIP-сервером sip.server.com:5060

Схема такая: Gsm-шлюз Dinstar Device Model UC2000-VE Business -> Router TP-link Archer C54 1.0

Archer подключен к интернету через белый ip. На нем локальная сеть, в которой устройство Dinstar.

Никакие порты не проброшены с роутера на Dinstar.

И при этом на Dinstar есть вот такой лог:

============================================================
Дата:        2026-01-19
Время:       07:43:11
Направление: IP -> GSM
ID:          2000
IP:          185.210.157.117
Номер:       9001+++48123236389
Событие:     Called
Статус:      NO CARRIER (1)
Кодек:       G.711U
Длительность:292
Качество:    100%
============================================================

============================================================
Дата:        2026-01-19
Время:       07:42:49
Направление: IP -> GSM
ID:          2000
IP:          185.210.157.117
Номер:       9001+±481232363.
Событие:     Called
Статус:      NO CARRIER (1)
Кодек:       G.711U
Длительность:276
Качество:    100%
============================================================

============================================================
Дата:        2026-01-19
Время:       07:42:28
Направление: IP -> GSM
ID:          2000
IP:          185.210.157.117
Номер:       9001+48123236389
Событие:     Called
Статус:      NO CARRIER (1)
Кодек:       G.711U

Не могу понять: как адрес 185.210.157.117 мог завладеть шлюзом Dinstar?

 ,

truebin
()

Хакеры обошли защиту telnetd и почти 10 лет давали root-доступ

Форум — Talks

Специалист по информационной безопасности Саймон Йозефссон обнаружил опасную уязвимость в компоненте telnetd, входящем в пакет GNU InetUtils. Проблема затрагивает все версии GNU InetUtils с 1.9.3 по 2.7 включительно.В итоге сервер автоматически аутентифицирует подключение как root — полностью обходя процесс валидации. Как поясняет Йозефссон, сервер telnetd запускает системную утилиту /usr/bin/login, обычно от имени root, и передаёт ей имя пользователя.

 , нинужен

Neresar
()

RSS подписка на новые темы