Getmac - модуль с XS для Windows

| Нет комментариев

Модуль для Windows, с использованием технологии XSUB (включение в модуль на perl частей на языке С). Модуль предлагает всего одну функцию getmac, которая возвращает MAC-адрес подключившегося клиента. То есть идея именно в получении MAC-адреса удаленного Eth-интерфейса. Модуль разрабатывался для сервера удаленного выполнения комманд, и требовалась авторизация по Mac-адресу. Так как сервер был кроссплатформенный (планировался запуск как на UNIX, так и на Windows), то пришлось разрабатывать этот модуль для получения Mac-адреса на Windows-машинах (на момент написания сервера, средств для этого не было). Для сборки требуется наличие утилиты nmake.

Скачать

Докуемнтацию по нему я не писал, но думаю в этом и нет смысла, лучше приведу пример использования:

use Getmac;

my ($ip, $uip) = (' 169.254.50.156') x 2;

my $res = Getmac::getmac($ip, $uip);

print "Test: $res";

Не могу также не привести сюда те давние посты мои с xpoint.ru (сейчас их уже нет, видимо база у них частично утеряна):

Я писал свой небольшой сервер для удаленного выполнения одной команды в защищенном режиме. Не буду касаться тонкостей проекта, так как к теме вопроса это не имеет отношения. Так вот - в одной из ступеней авторизации требовалось получить MAC адрес клиента по его IP. сервер работал на FreeBSD но планировалось что он будет работать и на Win32 платформах, и я начал искать способы решения данной задачи максимально простыми методами. Для никс систем это вылилось в функцию:
sub mac2ip {
my $ip=shift || return 0;

$mac=`/usr/sbin/arp -n $ip`;
my $haddr=(stat(split(/\s+/,$mac)))[3];
return $haddr;
}
Позже я нашел кое-какие модули на CPAN для реализации примерно того же (но это все только для никс систем); Для получения IP на Win я перекопал весь СПАН но решения так и не нашел. Поэтому было решено писать функцию на С для этого.

Хотел бы выразить благодарность said за помощь в реализации С-функции.

Комментировать

Об этой записи

Сообщение опубликовано 22.03.2009 16:46. Автор — Monks.

Предыдущая запись — SimpleMail - отправка почты с вложениями.

Следующая запись — Основатель движения свободного ПО нашел в браузере несвободные скрипты

Смотрите новые записи на главной странице или загляните в архив, где есть ссылки на все сообщения.

Страницы


 


 

Page copy protected against web site content infringement by Copyscape