Официальный форум СВД Встраиваемые Системы
15 Ноября, 2018, 02:45:32 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: PRNGD для QNX4  (Прочитано 2551 раз)
Олег Большаков
Администратор
Житель форума

Сообщений: 3072



WWW
« : 07 Ноября, 2010, 00:29:11 »

PRNGD -- сервис генератора псевдослучайных чисел

 - PRNGD -- это генератор псевдослучайных чисел (Pseudo Random Number Generator Daemon). Системный сервис обеспечивает EGD-совместимый интерфейс для получения случайных данных и нацелен на использование энтропийного источника для обслуживания другого ПО, особенно основанного на OpenSSL.

 - Запускает системные программы как и EGD.

 - В отличие от EGD не генерирует пул случайных бит, который может быть вызван другим ПО. И даже больше, сервис предоставляет собранные биты тогда, когда "случайные биты" запрашиваются. Таким образом, PRNGD никогда не истощается и не может заблокироваться (в отличие от EGD), так что сервис подходит для программ, запускаемых при помощи inetd. PRNGD также создаёт файл для хранения случайных значений, таким образом сервис будет доступен сразу после старта.


Лицензия

Это свободное ПО и Вы можете делать с ним всё что угодно. Однако, автор (Lutz Jänicke) любезно бы попросил вас признать использование этого пакета, если вы собираетесь использовать PRNGD в вашем ПО, которое вы может быть будете распространять. Автор был бы также признателен получить известие от довольных пользователей. Smiley


Сборка из исходных кодов

Будем собирать под QNX 4.25 последнюю версию PRNGD (на момент написания этого сообщения — PRNGD 0.9.29). В этом описании предполагается, что сборка будет осуществляться на инструментальной машине под управлением Linux при помощи OpenWatcom 1.9 и утилиты wacc. Сборка и проверка работоспособности программы осуществлялась совместно с TCP/IP 5.0.

1. Подготовка исходных кодов

Исходный код доступен на SourceForge, скачиваем файл prngd-0.9.29.tar.gz. Также понадобится патч для QNX4, который добавляет настройки Makefile для QNX4, небольшие изменения исходного кода и дополнительный файлы для подготовки дистрибутива для QNX4. После этого распаковываем исходный код и накладываем патч следующими командами:

Код:
$ tar zxf prngd-0.9.29.tar.gz
$ cd prngd-0.9.29
$ zcat ../prngd-0.9.29-qnx4.patch.gz | patch -p1

2. Сборка

Скрипт configure отсутствует и сборка осуществляется достаточно просто:

Код:
$ make

3. Подготовка дистрибутива

Подготовка дистрибутива также осуществляется достаточно просто, т.к. все необходимые файлы добавились после применения патча. Достаточно выполнить следующие команды:

Код:
$ cd contrib/QNX-4.25
$ make

В результате будет создан файл prngd-0.9.29-qnx4-bin-YYYYMMDD.tar.gz, где YYYYMMDD дата создания архива.

4. Установка дистрибутива и запуск программы

Скопируйте файл prngd-0.9.29-qnx4-bin-20180712.tar.gz в корневой каталог QNX4 и выполните следующие команды в QNX4 от пользователя root:

Код:
# cd /
# /etc/install -u /prngd-0.9.29-qnx4-bin-20180712.tar.gz

Запустить PRNGD можно, например, следующим образом:

Код:
# prngd /etc/egd-pool


Ссылки

 - Домашняя страница проекта PRNGD
 - Дистрибутив для QNX4
 - Патч для QNX4
 - Настройка OpenWatcom для QNX4
 - Утилита wacc

(щёлкните чтобы показать/скрыть)
« Последнее редактирование: 12 Июля, 2018, 11:16:25 от Олег Большаков » Записан

LH
Опытный пользователь

Сообщений: 324


« Ответ #1 : 10 Июля, 2018, 09:33:04 »

При запуске в QNX4 с включенным TCPIP 5.1 RunTime

#prngd /etc/edg-spool

Will not touch /etc/edg-spool: no socket: Block device required

Пож. подскажите причину проблемы.
Записан
Олег Большаков
Администратор
Житель форума

Сообщений: 3072



WWW
« Ответ #2 : 10 Июля, 2018, 18:11:51 »

Попробуйте использовать новую сборку PRNGD 0.9.29. В этой сборке реализована корректная проверка типа файла.
Записан

LH
Опытный пользователь

Сообщений: 324


« Ответ #3 : 11 Июля, 2018, 06:33:51 »

Спасибо, теперь prngd запускается без ошибки "no socket".

Правда выдается несколько сообщений

ERROR: Invalid packet command type (0)
ERROR: Invalid packet command type (0)
...

Однако далее все равно не запускается ntpd , установленный отсюда:
http://forum.kpda.ru/index.php/topic,508.0.html

#ntpd
fatal: PRNG is not seeded: Connection refused


#sin ver | grep Tcpip
//1/usr/ucb/Tcpip Tcpip 5.10A May 10 2012

Олег Большаков: Заменил ссылку на загрузку ссылкой на тему.
« Последнее редактирование: 12 Июля, 2018, 11:17:58 от Олег Большаков » Записан
deadarcher
Пользователь

Сообщений: 83


« Ответ #4 : 11 Июля, 2018, 14:57:38 »

Со сборкой prngd-0.9.29 действительно не работают ни ntpd ни sshd. Откатил prngd на версию 0.9.28 - с ней всё запускается. Tcpip ver 5.10A Nov 11 2010
« Последнее редактирование: 11 Июля, 2018, 15:02:48 от deadarcher » Записан
Олег Большаков
Администратор
Житель форума

Сообщений: 3072



WWW
« Ответ #5 : 11 Июля, 2018, 17:30:23 »

Посмотрим, в чём может быть дело.
Записан

Олег Большаков
Администратор
Житель форума

Сообщений: 3072



WWW
« Ответ #6 : 12 Июля, 2018, 11:18:58 »

Загрузил новую сборку PRNGD 20180712. Сервис ntpd у меня с этой сборкой запускается.
Записан

LH
Опытный пользователь

Сообщений: 324


« Ответ #7 : 12 Июля, 2018, 13:23:17 »

ntpd установлен из архива openntpd-3.9p1-qx4-bin-20101107.tar.gz

в /etc/ntpd.conf :
server 127.127.1.0

#prngd /etc/edg-spool
#ntpd -d
fatal: bad privsep dir permissions:No such file or directory
dispatch_imsg in main: pipe closed
Lost child: child exited
Terminating
Записан
deadarcher
Пользователь

Сообщений: 83


« Ответ #8 : 12 Июля, 2018, 14:38:11 »

Загрузил новую сборку PRNGD 20180712. Сервис ntpd у меня с этой сборкой запускается.

Проверил, да, sshd и ntpd стартуют ! Спасибо за оперативность !

ntpd установлен из архива openntpd-3.9p1-qx4-bin-20101107.tar.gz

в /etc/ntpd.conf :
server 127.127.1.0

#prngd /etc/edg-spool
#ntpd -d
fatal: bad privsep dir permissions:No such file or directory
dispatch_imsg in main: pipe closed
Lost child: child exited
Terminating

Проверьте наличие пользователя ntp в /etc/passwd с нерутовыми полномочиями и наличие директории для него. Я создал /home/ntp, дописал в /etc/passwd пользователя и ntpd стартанул и написал ntp engine ready и начал синхронизироваться с pool.ntp.org
Записан
LH
Опытный пользователь

Сообщений: 324


« Ответ #9 : 13 Июля, 2018, 07:16:23 »

cпасибо

ntp engine ready

получен.

Однако не удается синхронизировать время Windows со временем узла  QNX4, где работает
ntpd:

"Ошибка синхронизации. Этот узел не доступен"

Пинг на узел QNX4 из Windows проходит.

В /etc/services добавлены:
...
ntp 123/tcp
ntp 123/udp
...

Содержание ntpd.conf:

server 127.127.1.0



« Последнее редактирование: 13 Июля, 2018, 08:26:06 от LH » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP © 2002-2018 СВД Встраиваемые Системы.
При использовании материалов сайта ссылка на forum.kpda.ru обязательна.

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines | © Aiwan. Kolobok smiles | Sitemap
Valid XHTML 1.0! Valid CSS!
Сайт СВД ВС

В последний раз google посещал эту страницу 25 Октября, 2018, 15:46:47