Как прочитать конфигурацию сетевого интерфейса в VxWorks - PullRequest
0 голосов
/ 04 апреля 2019

Я могу проверить адрес из оболочки vxworks с помощью команды оболочки ifconfig.

Я хотел бы выполнить эквивалентную функцию программно, в загружаемом модуле ядра (DKM).

Какя могу определить IP-адрес интерфейса "gem0" в моем DKM?

В документации разработчика VxWorks я вижу функцию ifAddrGet () в ifLib.h, которая, кажется, выполняет именно то, что я хочу.Однако эта функция, по-видимому, недоступна для меня:

C interp: unknown symbol name 'ifAddrGet'

Зависит ли включение этого ядра библиотеки?

Ответы [ 2 ]

1 голос
/ 04 апреля 2019

В DKM вы сможете использовать эту команду. Вы пытались использовать ifconfig("gem0 something..."); вместо этого для тестирования, если вы можете получить доступ к настройкам сети в целом? Возможно, убедитесь, что вы можете использовать эти команды (установленные пакеты) в «Конфигурации ядра».

0 голосов
/ 05 апреля 2019

В случае основного адреса,

-> myBuf = malloc(128)
myBuf = 0x833d8e8: value = 301883024 = 0x11fe5e90
-> ifAddrGet "qfec0", myBuf
value = 0 = 0x0
-> puts myBuf
192.168.1.9
value = 10 = 0xa
-> free myBuf
value = 0 = 0x0
-> 
...