Solaris Bandwidth Manager 1.6 の開発

ba_encode_ifname()

名前

ba_encode_ifname() - Solaris Bandwidth Manager のインタフェース名を生成します。

形式

#include <netinet/ba_stat.h>

int ba_encode_ifname(
   const char *interface, /*interface name*/
   const uint_t direction, /*traffic direction*/
   char *ifname
);

説明

ba_encode_ifname() 関数は、物理的なインタフェース名 interface と通信方向から、インタフェースによって扱われるインタフェース名 ifname を生成します。たとえば、インタフェースが le0 で方向が BA_DIR_INCOMING の場合、ifnamele0_in になります。

引数

ba_encode_ifname() 関数には次の引数を渡します。

interface

管理されるインタフェース名が入った文字列を指すポインタ (le0hme0 など)

direction

インタフェース方向 (BA_DIR_INCOMING または BA_DIR_OUTGOING) を示す整数

ifname

コード化されたインタフェース名を指すポインタ。十分なメモリーを割り当ててください。 

戻り値

ba_encode_ifname() 関数は、正常に終了した場合には書き込まれた文字数、エラー時には -1 を返します。

エラー

ba_encode_ifname() 呼び出しの際にエラーが発生すると、変数 ba_errno表 4-2 に示したエラーコードの 1 つに設定されます。