Ignore:
Timestamp:
May 22, 2019, 10:03:37 PM (5 years ago)
Author:
coas-nagasima
Message:

ビルドが通るよう更新

File:
1 edited

Legend:

Unmodified
Added
Removed
  • azure_iot_hub/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
    r388 r389  
    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$
     
    115103
    116104/*
    117  *  アドレスの定義
     105 *  アドレスの定義
    118106 */
    119107
     
    149137
    150138/*
    151  *  特別なアドレスのチェック
    152  */
    153 
    154 /* IPv4 互換 */
     139 *  特別なアドレスのチェック
     140 */
     141
     142/* IPv4 互換 */
    155143
    156144#ifdef _NET_CFG_BYTE_ORDER
     
    160148#endif
    161149
    162 /* IPv4 射影 */
     150/* IPv4 射影 */
    163151
    164152#ifdef _NET_CFG_BYTE_ORDER
     
    169157#endif
    170158
    171 /* 要請マルチキャスト */
     159/* 要請マルチキャスト */
    172160
    173161#ifdef _NET_CFG_BYTE_ORDER
     
    182170
    183171/*
    184  *  アドレス有効時間構造体
     172 *  アドレス有効時間構造体
    185173 */
    186174
     
    188176
    189177        /*
    190          * expire と perferred は、システムが起動してからの経過時間
     178         * expire と perferred は、システムが起動してからの経過時間
    191179         */
    192         uint32_t        expire;         /* 有効時間が切れる時刻 [s]   */
    193         uint32_t        preferred;      /* 推奨有効時間が切れる時刻 [s]     */
     180        uint32_t        expire;         /* 有効時間が切れる時刻 [s]       */
     181        uint32_t        preferred;      /* 推奨有効時間が切れる時刻 [s]     */
    194182
    195183        /*
    196          * vltime と pltime は、追加/変更してからの相対時間
     184         * vltime と pltime は、追加/変更してからの相対時間
    197185         */
    198         uint32_t        vltime;         /* 有効時間 [us]                    */
    199         uint32_t        pltime;         /* 推奨有効時間 [us]              */
     186        uint32_t        vltime;         /* 有効時間 [us]                    */
     187        uint32_t        pltime;         /* 推奨有効時間 [us]          */
    200188        } __attribute__((packed, aligned(2)))T_IN6_ADDR_LIFETIME;
    201189
    202190/*
    203  *  インタフェースアドレス構造体
     191 *  インタフェースアドレス構造体
    204192 */
    205193
    206194typedef struct t_in6_ifaddr {
    207         T_IN6_ADDR              addr;           /* IPv6 アドレス            */
    208         T_IN6_ADDR_LIFETIME     lifetime;       /* 有効時間         */
    209         uint8_t                 flags;          /* フラグ            */
    210         uint8_t                 prefix_len;     /* プレフィックス長     */
    211         uint8_t                 router_index;   /* ルータインデックス  */
    212         uint8_t                 prefix_index;   /* プレフィックスインデックス      */
    213         uint8_t                 na_icount;      /* 重複アドレス検出 (DAD) 通知のå
    214 ¥åŠ›å›žæ•°      */
    215         uint8_t                 ns_icount;      /* 重複アドレス検出 (DAD) 要請のå
    216 ¥åŠ›å›žæ•°      */
    217         uint8_t                 ns_ocount;      /* 重複アドレス検出 (DAD) 要請の出力回数 */
     195        T_IN6_ADDR              addr;           /* IPv6 アドレス            */
     196        T_IN6_ADDR_LIFETIME     lifetime;       /* 有効時間         */
     197        uint8_t                 flags;          /* フラグ          */
     198        uint8_t                 prefix_len;     /* プレフィックス長     */
     199        uint8_t                 router_index;   /* ルータインデックス    */
     200        uint8_t                 prefix_index;   /* プレフィックスインデックス        */
     201        uint8_t                 na_icount;      /* 重複アドレス検出 (DAD) 通知の入力回数       */
     202        uint8_t                 ns_icount;      /* 重複アドレス検出 (DAD) 要請の入力回数       */
     203        uint8_t                 ns_ocount;      /* 重複アドレス検出 (DAD) 要請の出力回数       */
    218204        } __attribute__((packed, aligned(2)))T_IN6_IFADDR;
    219205
    220206/*
    221  *  アドレス状æ
    222 ‹ãƒ•ãƒ©ã‚°
    223  */
    224 
    225 #define IN6_IFF_ANYCAST         UINT_C(0x01)    /* エニーキャスト        */
    226 #define IN6_IFF_DEFINED         UINT_C(0x02)    /* 定義済み         */
    227 #define IN6_IFF_TENTATIVE       UINT_C(0x04)    /* 重複検出中              */
    228 #define IN6_IFF_DUPLICATED      UINT_C(0x08)    /* 重複を検出した        */
    229 #define IN6_IFF_DEPRECATED      UINT_C(0x10)    /* 非推奨            */
    230 #define IN6_IFF_NODAD           UINT_C(0x20)    /* 重複検出不要           */
    231 #define IN6_IFF_AUTOCONF        UINT_C(0x40)    /* 自動設定された        */
    232 #define IN6_IFF_DETACHED        UINT_C(0x80)    /* 非使用            */
    233 
    234 /*
    235  *  アドレスの有効性チェック
     207 *  アドレス状態フラグ
     208 */
     209
     210#define IN6_IFF_ANYCAST         UINT_C(0x01)    /* エニーキャスト      */
     211#define IN6_IFF_DEFINED         UINT_C(0x02)    /* 定義済み         */
     212#define IN6_IFF_TENTATIVE       UINT_C(0x04)    /* 重複検出中                */
     213#define IN6_IFF_DUPLICATED      UINT_C(0x08)    /* 重複を検出した      */
     214#define IN6_IFF_DEPRECATED      UINT_C(0x10)    /* 非推奨          */
     215#define IN6_IFF_NODAD           UINT_C(0x20)    /* 重複検出不要               */
     216#define IN6_IFF_AUTOCONF        UINT_C(0x40)    /* 自動設定された      */
     217#define IN6_IFF_DETACHED        UINT_C(0x80)    /* 非使用          */
     218
     219/*
     220 *  アドレスの有効性チェック
    236221 */
    237222
     
    248233
    249234/*
    250  *  ルータのインデックス
     235 *  ルータのインデックス
    251236 */
    252237
     
    254239
    255240/*
    256  *  制限値
    257  */
    258 
    259 #define IP6_HDR_NEST_LIMIT      50      /* IPv6 ヘッダのネスト制限値  */
    260 
    261 /*
    262  *  アドレスæƒ
    263 å ±é
    264 åˆ—のインデックス
     241 *  制限値
     242 */
     243
     244#define IP6_HDR_NEST_LIMIT      50      /* IPv6 ヘッダのネスト制限値      */
     245
     246/*
     247 *  アドレス情報配列のインデックス
    265248 */
    266249
     
    269252
    270253/*
    271  *  IPv6 マルチキャストアドレスé
    272 åˆ—のインデックス
    273  */
    274 
    275 #define IPV6_MADDR_IX_SOL_NODE          0       /* 要請マルチキャスト・アドレス                   */
    276 #define IPV6_MADDR_IX_LL_ALL_NODE       1       /* å
    277 ¨ãƒŽãƒ¼ãƒ‰ãƒ»ãƒªãƒ³ã‚¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒžãƒ«ãƒã‚­ãƒ£ã‚¹ãƒˆã‚¢ãƒ‰ãƒ¬ã‚¹  */
     254 *  IPv6 マルチキャストアドレス配列のインデックス
     255 */
     256
     257#define IPV6_MADDR_IX_SOL_NODE          0       /* 要請マルチキャスト・アドレス                       */
     258#define IPV6_MADDR_IX_LL_ALL_NODE       1       /* 全ノード・リンクローカル・マルチキャストアドレス     */
    278259#define IPV6_MADDR_IX_EXTRA             2
    279260
    280261#define MAX_IN6_MADDR_CNT               MAX_IF_MADDR_CNT
    281                                                 /* IPv6 マルチキャストアドレスé
    282 åˆ—の最大サイズ  */
    283 
    284 /* ルーティング表エントリ構造体 */
     262                                                /* IPv6 マルチキャストアドレス配列の最大サイズ     */
     263
     264/* ルーティング表エントリ構造体 */
    285265
    286266typedef struct t_in6_rtentry {
    287         T_IN6_ADDR      target;         /* 目標ネットワークアドレス */
    288         T_IN6_ADDR      gateway;        /* ゲートウェイの IP アドレス        */
    289         uint32_t        expire;         /* 有効時間が切れる時刻 [s]   */
    290         uint8_t         flags;          /* フラグ                    */
    291         uint8_t         prefix_len;     /* プレフィックス長             */
     267        T_IN6_ADDR      target;         /* 目標ネットワークアドレス */
     268        T_IN6_ADDR      gateway;        /* ゲートウェイの IP アドレス      */
     269        uint32_t        expire;         /* 有効時間が切れる時刻 [s]       */
     270        uint8_t         flags;          /* フラグ                  */
     271        uint8_t         prefix_len;     /* プレフィックス長             */
    292272        } __attribute__((packed, aligned(2)))T_IN6_RTENTRY;
    293273
    294274/*
    295  *  ホストキャッシュ
    296  */
    297 
    298 /* ホストキャッシュ構造体 */
     275 *  ホストキャッシュ
     276 */
     277
     278/* ホストキャッシュ構造体 */
    299279
    300280typedef struct t_in6_hostcache_entry {
    301         T_IN6_ADDR      dst;            /* 目標ネットワークアドレス */
    302         uint32_t        expire;         /* 有効時間が切れる時刻 [s]   */
     281        T_IN6_ADDR      dst;            /* 目標ネットワークアドレス */
     282        uint32_t        expire;         /* 有効時間が切れる時刻 [s]       */
    303283        uint32_t        mtu;            /* Path MTU                     */
    304284        } __attribute__((packed, aligned(2)))T_IN6_HOSTCACHE_ENTRY;
    305285
    306 #define IN6_HOSTCACHE_EXPIRE    (60*60*SYSTIM_HZ)       /* 有効時間 */
    307 #define IN6_HOSTCACHE_PRUNE     (5*60*SYSTIM_HZ)        /* 更新間隔 */
    308 #define IN6_HOSTCACHE_INCREASE  (10*60*SYSTIM_HZ)       /* 増加する場合の保護時間    */
     286#define IN6_HOSTCACHE_EXPIRE    (60*60*SYSTIM_HZ)       /* 有効時間 */
     287#define IN6_HOSTCACHE_PRUNE     (5*60*SYSTIM_HZ)        /* 更新間隔 */
     288#define IN6_HOSTCACHE_INCREASE  (10*60*SYSTIM_HZ)       /* 増加する場合の保護時間  */
    309289
    310290#define IN6_IS_HOSTCACHE_FREE(e)        IN6_IS_ADDR_UNSPECIFIED(&((e)->dst))
     
    312292
    313293/*
    314  *  ルーティング表
     294 *  ルーティング表
    315295 */
    316296
     
    318298
    319299/*
    320  *  前方参ç
    321 §
     300 *  前方参照
    322301 */
    323302
     
    331310
    332311/*
    333  *  変数
     312 *  変数
    334313 */
    335314
     
    337316
    338317/*
    339  *  関数シミュレーションマクロ
     318 *  関数シミュレーションマクロ
    340319 */
    341320
     
    345324
    346325/*
    347  *  関数
     326 *  関数
    348327 */
    349328
Note: See TracChangeset for help on using the changeset viewer.