Ignore:
Timestamp:
Aug 23, 2017, 9:27:43 AM (7 years ago)
Author:
coas-nagasima
Message:

文字コードを設定

File:
1 edited

Legend:

Unmodified
Added
Removed
  • EcnlProtoTool/trunk/asp3_dcre/tinet/netinet6/in6_var.h

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-chdr to text/x-chdr;charset=UTF-8
    r270 r321  
    55 *                   Tomakomai National College of Technology, JAPAN
    66 *
    7  *  上記著作権è€
    8 ã¯ï¼Œä»¥ä¸‹ã® (1)~(4) の条件か,Free Software Foundation
    9  *  によってå
    10 ¬è¡¨ã•ã‚Œã¦ã„ã‚‹ GNU General Public License の Version 2 に記
    11  *  述されている条件を満たす場合に限り,本ソフトウェア(本ソフトウェア
    12  *  を改変したものを含む.以下同じ)を使用・複製・改変・再é
    13 å¸ƒï¼ˆä»¥ä¸‹ï¼Œ
    14  *  利用と呼ぶ)することを無償で許諾する.
    15  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    16  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    17  *      スコード中に含まれていること.
    18  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    19  *      用できる形で再é
    20 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    21 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    22  *      è€
    23 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    24  *      の無保証規定を掲載すること.
    25  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    26  *      用できない形で再é
    27 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®æ¡ä»¶ã‚’満たすこと.
    28  *    (a) 再é
    29 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    30 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    31  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
    32  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    33  *      害からも,上記著作権è€
    34 ãŠã‚ˆã³TOPPERSプロジェクトをå
    35 è²¬ã™ã‚‹ã“と.
    36  *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     7 *  上記著作権者は,以下の (1)~(4) の条件か,Free Software Foundation
     8 *  によって公表されている GNU General Public License の Version 2 に記
     9 *  述されている条件を満たす場合に限り,本ソフトウェア(本ソフトウェア
     10 *  を改変したものを含む.以下同じ)を使用・複製・改変・再配布(以下,
     11 *  利用と呼ぶ)することを無償で許諾する.
     12 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     13 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     14 *      スコード中に含まれていること.
     15 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     16 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     17 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     18 *      の無保証規定を掲載すること.
     19 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     20 *      用できない形で再配布する場合には,次の条件を満たすこと.
     21 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     22 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     23 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     24 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     25 *
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    117105
    118106/*
    119  *  アドレス有効時間構造体
     107 *  アドレス有効時間構造体
    120108 */
    121109
     
    123111
    124112        /*
    125          * expire と perferred は、システムが起動してからの経過時間
     113         * expire と perferred は、システムが起動してからの経過時間
    126114         */
    127         uint32_t        expire;         /* 有効時間が切れる時刻 [s]   */
    128         uint32_t        preferred;      /* 推奨有効時間が切れる時刻 [s]     */
     115        uint32_t        expire;         /* 有効時間が切れる時刻 [s]       */
     116        uint32_t        preferred;      /* 推奨有効時間が切れる時刻 [s]     */
    129117
    130118        /*
    131          * vltime と pltime は、追加/変更してからの相対時間
     119         * vltime と pltime は、追加/変更してからの相対時間
    132120         */
    133         uint32_t        vltime;         /* 有効時間 [ms]                    */
    134         uint32_t        pltime;         /* 推奨有効時間 [ms]              */
     121        uint32_t        vltime;         /* 有効時間 [ms]                    */
     122        uint32_t        pltime;         /* 推奨有効時間 [ms]          */
    135123        } __attribute__((packed, aligned(2)))T_IN6_ADDR_LIFETIME;
    136124
    137125/*
    138  *  インタフェースアドレス構造体
     126 *  インタフェースアドレス構造体
    139127 */
    140128
    141129typedef struct t_in6_ifaddr {
    142         T_IN6_ADDR              addr;           /* IPv6 アドレス            */
    143         T_IN6_ADDR_LIFETIME     lifetime;       /* 有効時間         */
    144         uint8_t                 flags;          /* フラグ            */
    145         uint8_t                 prefix_len;     /* プレフィックス長     */
    146         uint8_t                 router_index;   /* ルータインデックス  */
    147         uint8_t                 prefix_index;   /* プレフィックスインデックス      */
    148         uint8_t                 na_icount;      /* 重複アドレス検出 (DAD) 通知のå
    149 ¥åŠ›å›žæ•°      */
    150         uint8_t                 ns_icount;      /* 重複アドレス検出 (DAD) 要請のå
    151 ¥åŠ›å›žæ•°      */
    152         uint8_t                 ns_ocount;      /* 重複アドレス検出 (DAD) 要請の出力回数 */
     130        T_IN6_ADDR              addr;           /* IPv6 アドレス            */
     131        T_IN6_ADDR_LIFETIME     lifetime;       /* 有効時間         */
     132        uint8_t                 flags;          /* フラグ          */
     133        uint8_t                 prefix_len;     /* プレフィックス長     */
     134        uint8_t                 router_index;   /* ルータインデックス    */
     135        uint8_t                 prefix_index;   /* プレフィックスインデックス        */
     136        uint8_t                 na_icount;      /* 重複アドレス検出 (DAD) 通知の入力回数       */
     137        uint8_t                 ns_icount;      /* 重複アドレス検出 (DAD) 要請の入力回数       */
     138        uint8_t                 ns_ocount;      /* 重複アドレス検出 (DAD) 要請の出力回数       */
    153139        } __attribute__((packed, aligned(2)))T_IN6_IFADDR;
    154140
    155141/*
    156  *  アドレス状æ
    157 ‹ãƒ•ãƒ©ã‚°
    158  */
    159 
    160 #define IN6_IFF_ANYCAST         UINT_C(0x01)    /* エニーキャスト        */
    161 #define IN6_IFF_DEFINED         UINT_C(0x02)    /* 定義済み         */
    162 #define IN6_IFF_TENTATIVE       UINT_C(0x04)    /* 重複検出中              */
    163 #define IN6_IFF_DUPLICATED      UINT_C(0x08)    /* 重複を検出した        */
    164 #define IN6_IFF_DEPRECATED      UINT_C(0x10)    /* 非推奨            */
    165 #define IN6_IFF_NODAD           UINT_C(0x20)    /* 重複検出不要           */
    166 #define IN6_IFF_AUTOCONF        UINT_C(0x40)    /* 自動設定された        */
    167 #define IN6_IFF_DETACHED        UINT_C(0x80)    /* 非使用            */
    168 
    169 /*
    170  *  アドレスの有効性チェック
     142 *  アドレス状態フラグ
     143 */
     144
     145#define IN6_IFF_ANYCAST         UINT_C(0x01)    /* エニーキャスト      */
     146#define IN6_IFF_DEFINED         UINT_C(0x02)    /* 定義済み         */
     147#define IN6_IFF_TENTATIVE       UINT_C(0x04)    /* 重複検出中                */
     148#define IN6_IFF_DUPLICATED      UINT_C(0x08)    /* 重複を検出した      */
     149#define IN6_IFF_DEPRECATED      UINT_C(0x10)    /* 非推奨          */
     150#define IN6_IFF_NODAD           UINT_C(0x20)    /* 重複検出不要               */
     151#define IN6_IFF_AUTOCONF        UINT_C(0x40)    /* 自動設定された      */
     152#define IN6_IFF_DETACHED        UINT_C(0x80)    /* 非使用          */
     153
     154/*
     155 *  アドレスの有効性チェック
    171156 */
    172157
     
    183168
    184169/*
    185  *  ルータのインデックス
     170 *  ルータのインデックス
    186171 */
    187172
     
    189174
    190175/*
    191  *  制限値
    192  */
    193 
    194 #define IP6_HDR_NEST_LIMIT      50      /* IPv6 ヘッダのネスト制限値  */
    195 
    196 /*
    197  *  アドレスæƒ
    198 å ±é
    199 åˆ—のインデックス
     176 *  制限値
     177 */
     178
     179#define IP6_HDR_NEST_LIMIT      50      /* IPv6 ヘッダのネスト制限値      */
     180
     181/*
     182 *  アドレス情報配列のインデックス
    200183 */
    201184
     
    204187
    205188/*
    206  *  IPv6 マルチキャストアドレスé
    207 åˆ—のインデックス
    208  */
    209 
    210 #define IPV6_MADDR_IX_SOL_NODE          0       /* 要請マルチキャスト・アドレス                   */
    211 #define IPV6_MADDR_IX_LL_ALL_NODE       1       /* å
    212 ¨ãƒŽãƒ¼ãƒ‰ãƒ»ãƒªãƒ³ã‚¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒžãƒ«ãƒã‚­ãƒ£ã‚¹ãƒˆã‚¢ãƒ‰ãƒ¬ã‚¹  */
     189 *  IPv6 マルチキャストアドレス配列のインデックス
     190 */
     191
     192#define IPV6_MADDR_IX_SOL_NODE          0       /* 要請マルチキャスト・アドレス                       */
     193#define IPV6_MADDR_IX_LL_ALL_NODE       1       /* 全ノード・リンクローカル・マルチキャストアドレス     */
    213194#define IPV6_MADDR_IX_EXTRA             2
    214195
    215196#define MAX_IN6_MADDR_CNT               MAX_IF_MADDR_CNT
    216                                                 /* IPv6 マルチキャストアドレスé
    217 åˆ—の最大サイズ  */
    218 
    219 /*
    220  *  ルーティングの制御
    221  */
    222 
    223 /* ルーティング表エントリ構造体 */
     197                                                /* IPv6 マルチキャストアドレス配列の最大サイズ     */
     198
     199/*
     200 *  ルーティングの制御
     201 */
     202
     203/* ルーティング表エントリ構造体 */
    224204
    225205typedef struct t_in6_rtentry {
    226         T_IN6_ADDR      target;         /* 目標ネットワークアドレス */
    227         T_IN6_ADDR      gateway;        /* ゲートウェイの IP アドレス        */
    228         uint32_t        expire;         /* 有効時間が切れる時刻 [s]   */
    229         uint8_t         flags;          /* フラグ                    */
    230         uint8_t         prefix_len;     /* プレフィックス長             */
     206        T_IN6_ADDR      target;         /* 目標ネットワークアドレス */
     207        T_IN6_ADDR      gateway;        /* ゲートウェイの IP アドレス      */
     208        uint32_t        expire;         /* 有効時間が切れる時刻 [s]       */
     209        uint8_t         flags;          /* フラグ                  */
     210        uint8_t         prefix_len;     /* プレフィックス長             */
    231211        } __attribute__((packed, aligned(2)))T_IN6_RTENTRY;
    232212
    233213/*
    234  *  ホストキャッシュ
    235  */
    236 
    237 /* ホストキャッシュ構造体 */
     214 *  ホストキャッシュ
     215 */
     216
     217/* ホストキャッシュ構造体 */
    238218
    239219typedef struct t_in6_hostcache_entry {
    240         T_IN6_ADDR      dst;            /* 目標ネットワークアドレス */
    241         uint32_t        expire;         /* 有効時間が切れる時刻 [s]   */
     220        T_IN6_ADDR      dst;            /* 目標ネットワークアドレス */
     221        uint32_t        expire;         /* 有効時間が切れる時刻 [s]       */
    242222        uint32_t        mtu;            /* Path MTU                     */
    243223        } __attribute__((packed, aligned(2)))T_IN6_HOSTCACHE_ENTRY;
    244224
    245 #define IN6_HOSTCACHE_EXPIRE    (60*60*SYSTIM_HZ)       /* 有効時間 */
    246 #define IN6_HOSTCACHE_PRUNE     (5*60*SYSTIM_HZ)        /* 更新間隔 */
    247 #define IN6_HOSTCACHE_INCREASE  (10*60*SYSTIM_HZ)       /* 増加する場合の保護時間    */
     225#define IN6_HOSTCACHE_EXPIRE    (60*60*SYSTIM_HZ)       /* 有効時間 */
     226#define IN6_HOSTCACHE_PRUNE     (5*60*SYSTIM_HZ)        /* 更新間隔 */
     227#define IN6_HOSTCACHE_INCREASE  (10*60*SYSTIM_HZ)       /* 増加する場合の保護時間  */
    248228
    249229#define IN6_IS_HOSTCACHE_FREE(e)        IN6_IS_ADDR_UNSPECIFIED(&((e)->dst))
     
    251231
    252232/*
    253  *  IPv4 と IPv6 をコンパイル時に選択するためのマクロ
     233 *  IPv4 と IPv6 をコンパイル時に選択するためのマクロ
    254234 */
    255235
     
    266246
    267247/*
    268  *  前方参ç
    269 §
     248 *  前方参照
    270249 */
    271250
     
    279258
    280259/*
    281  *  変数
     260 *  変数
    282261 */
    283262
     
    285264
    286265/*
    287  *  関数
     266 *  関数
    288267 */
    289268
Note: See TracChangeset for help on using the changeset viewer.