4

デバイス上のイーサネットデバイスが正しく機能していることを確認しようとしています。私はコマンドを実行しています:

ifconfig("interfaceName dhcp")

イーサネットインターフェイスごとに。

また、各デバイスがIPアドレスを取得していることを確認します。'ifconfig'を単独で実行して出力を確認できることはわかっていますが、自動テストコードを作成しています。では、VxWorksの特定のインターフェイスのIPアドレスを返すことができる関数はありますか?

4

1 に答える 1

3

ifLib.hのifAddrGet()があなたが探しているものかもしれないと私は信じています。最初の引数はインターフェイス名を取り、2番目の引数はバッファを取ります。このバッファにアドレスが返されます。

私は実際のターゲットで以下をテストしていませんが、それはあなたが必要とするものへの出発点であるはずです:

#include <stdlib.h>
#include <stdio.h>
#include "inetLib.h"
#include "ifLib.h"

void print_if_address (void);

void print_if_address ()
{
    char if_name[] = "dhcp";
    char ip_address[INET_ADDR_LEN] = {0};

    ifAddrGet (if_name, ip_address);

    printf ("%s\n", ip_address);
}
于 2012-11-30T19:42:01.117 に答える