LinuxFanatic
Пользователь
Сообщений: 26
|
|
« : 03 Март, 2020, 16:43:39 » |
|
Добрый день! Всё происходит на QNX 4.25
Есть некая серверная программа с доступным исходным кодом, скомпилированная в отладочном режиме. К ней подключается клиент и взаимодействует с сервером, в результате чего сервер падает из-за ошибки памяти. Попытка отладки сервера при помощи Watcom Debugger приводит к тому, что клиент получает ошибку EHOSTUNREACH 265 (No route to host) при вызове ServerProxyAttach. Но без клиента и сервер не отладить.
Замечено, что sin name показывает, что под отладчиком сервер, который является также приложением Photon, не регистрируется под своим именем, но если остановиться отладчиком после функции регистрации qnx_name_attach (расположено в стандартной фотоновской функции WindowSetup), и затем продолжить выполнение, но sin name уже показывает успешную регистрацию. Однако это не приводит к решение проблемы, клиент все равно получает EHOSTUNREACH. И так лишь в режиме отладки.
Может нельзя работать с qnx_name_attach в фотоновских функциях? Или отладчик блокирует что-то? В use wd ничего не нашел на тему блокировки. Другие похожие программы с qnx_name_attach и графической оболочкой отрабатывают в отладчике нормально.
Вопрос: с чем связана подобная проблема ошибки EHOSTUNREACH и как ее можно было бы обойти?
UPDATE: ServerProxyAttach оказалась самописной функцией из другой библиотеки, и там не срабатывал qnx_proxy_rem_attach под отладчиком, а без отладчика срабатывала. Предполагаю, отладка меняла настройки сервера, и видимо поэтому эта функция рушила процесс
|