способ изменить IP-адрес __be32 на символ в пространстве ядра - PullRequest
1 голос
/ 30 марта 2012

Я делаю модуль, в котором мне нужно изменить формат адреса __be 32 на char, какую функцию я могу использовать и в какой заголовочный файл он входит (я знаю, что для преобразования char в __be32 мы используем in_aton).

1 Ответ

1 голос
/ 30 марта 2012

Для ядер старше 2.6.26 (если не ошибаюсь) вам необходимо использовать макрос NIPQUAD, например:

pritk("%d.%d.%d.%d\n", NIPQUAD(your_b32_address));

Для более новых ядер был добавлен переключатель на printk:

printk("%pI4\n", your_b32_address);

Посмотрите здесь: http://www.kernel.org/doc/htmldocs/kernel-hacking/common-routines.html

...