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

Исходное сообщение
"Вопрос по inet.pp на FreePascal"

Отправлено i_destr , 13-Июл-05 16:31 
Здравствуйте ALL!

Интересует следующий вопрос. Как на fpc написать программу для следующего определения: принадлежит ли какой-нибудь IP адрес, например 10.0.0.1 (задается в программе) какой-то конкретной подсети, например 10.0.0.0/255.255.255.0 (задается в программе), ну и как продолжение, проверить, принадлежит ли 10.0.0.1 подсети 10.10.10.0/255.255.255.0

Заранее спасибо за ответ.


Содержание

Сообщения в этом обсуждении
"Вопрос по inet.pp на FreePascal"
Отправлено Simps , 13-Июл-05 16:55 
>Здравствуйте ALL!
>
>Интересует следующий вопрос. Как на fpc написать программу для следующего определения: принадлежит
>ли какой-нибудь IP адрес, например 10.0.0.1 (задается в программе) какой-то конкретной
>подсети, например 10.0.0.0/255.255.255.0 (задается в программе), ну и как продолжение, проверить,
>принадлежит ли 10.0.0.1 подсети 10.10.10.0/255.255.255.0
>
>Заранее спасибо за ответ.

Посмотри исходники ipcalc


"Вопрос по inet.pp на FreePascal"
Отправлено i_destr , 13-Июл-05 17:01 

>Посмотри исходники ipcalc


Я нашел ipcalc только на Perl, в том то и дело, что на перле я могу это сделать, но мне надо именно на FreePascal...


"Вопрос по inet.pp на FreePascal"
Отправлено i_destr , 13-Июл-05 18:03 
>
>>Посмотри исходники ipcalc
>

В принципе можно перефразировать вопрос. Я нашел здесь совет на перле, называется Операции проверки IP на вхождение в сеть a.b.c.d/N или a.b.c.d/n.n.n.n, там есть один момент, который я не могу перевести на паскаль:

($subnethost & $subnetmask) eq ($testhost & $subnetmask)

то есть операция побитового сложения.

Скажите, есть ли такая в фрипаскале?



"Вопрос по inet.pp на FreePascal"
Отправлено i_destr , 13-Июл-05 18:11 
>>
>>>Посмотри исходники ipcalc
>>
>
>В принципе можно перефразировать вопрос. Я нашел здесь совет на перле, называется
>Операции проверки IP на вхождение в сеть a.b.c.d/N или a.b.c.d/n.n.n.n, там
>есть один момент, который я не могу перевести на паскаль:
>
>($subnethost & $subnetmask) eq ($testhost & $subnetmask)
>
>то есть операция побитового сложения.
>
>Скажите, есть ли такая в фрипаскале?


Все, вопрос снят. в Фрипаскале вместо & используется and

Все гениальное - просто... ;)


"Вопрос по inet.pp на FreePascal"
Отправлено Simps , 13-Июл-05 18:13 
>>>
>>>>Посмотри исходники ipcalc
>>>
>>
>>В принципе можно перефразировать вопрос. Я нашел здесь совет на перле, называется
>>Операции проверки IP на вхождение в сеть a.b.c.d/N или a.b.c.d/n.n.n.n, там
>>есть один момент, который я не могу перевести на паскаль:
>>
>>($subnethost & $subnetmask) eq ($testhost & $subnetmask)
>>
>>то есть операция побитового сложения.
>>
>>Скажите, есть ли такая в фрипаскале?
>
>
>Все, вопрос снят. в Фрипаскале вместо & используется and
>
>Все гениальное - просто... ;)

А ведь мог бы и не засорять форум если подумать =)


"Вопрос по inet.pp на FreePascal"
Отправлено Forth , 14-Июл-05 10:31 
(subnethost and subnetmask)=(testhost and subnetmask)
Кстати надо бы сначала хоть немного ознакомится с паскалем, прежде чем писать на нем что-нибудь.