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

ビルドが通るよう更新

Location:
azure_iot_hub/trunk/asp3_dcre/tinet/net
Files:
55 edited

Legend:

Unmodified
Added
Removed
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ether_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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    5038
    5139/*
    52  *  Ethernet 処理タスク
     40 *  Ethernet 処理タスク
    5341 */
    5442
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ethernet.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4533
    4634/*
    47  *  Ethernet 処理タスクの本体
     35 *  Ethernet 処理タスクの本体
    4836 */
    4937
     
    9381
    9482/*
    95  *  変数
     83 *  変数
    9684 */
    9785
     
    10694
    10795/*
    108  *  変数
    109  */
    110 
    111 /* ネットワークインタフェース構造体 */
     96 *  変数
     97 */
     98
     99/* ネットワークインタフェース構造体 */
    112100
    113101static T_IFNET ether_ifnet;
     
    115103#ifdef SUPPORT_MIB
    116104
    117 /*  SNMP の 管理æƒ
    118 å ±ãƒ™ãƒ¼ã‚¹ (MIB) */
     105/*  SNMP の 管理情報ベース (MIB) */
    119106
    120107T_IF_STATS if_stats;
     
    125112
    126113/*
    127  *  関数
     114 *  関数
    128115 */
    129116
     
    131118
    132119/*
    133  *  ieee_802_input -- IEEE 802.3 å
    134 ¥åŠ›å‡¦ç†
     120 *  ieee_802_input -- IEEE 802.3 入力処理
    135121 */
    136122
     
    150136
    151137/*
    152  *  ether_srand -- 乱数を初期値を返す。
     138 *  ether_srand -- 乱数を初期値を返す。
    153139 */
    154140
     
    178164
    179165/*
    180  *  ether_get_ifnet -- ネットワークインタフェース構造体を返す。
     166 *  ether_get_ifnet -- ネットワークインタフェース構造体を返す。
    181167 */
    182168
     
    190176
    191177/*
    192  *  ether_in6_resolve_multicast -- イーサネットのマルチキャストアドレスへの変換
     178 *  ether_in6_resolve_multicast -- イーサネットのマルチキャストアドレスへの変換
    193179 */
    194180
     
    196182ether_in6_resolve_multicast (T_ETHER_ADDR *ifaddr, const T_IN6_ADDR *maddr)
    197183{
    198         /* マルチキャストアドレスかチェックする。*/
     184        /* マルチキャストアドレスかチェックする。*/
    199185        if (!IN6_IS_ADDR_MULTICAST(maddr))
    200186                return E_PAR;
    201187
    202         /* イーサネットのマルチキャストアドレスへの変換 */
     188        /* イーサネットのマルチキャストアドレスへの変換 */
    203189        ether_map_ipv6_multicast(ifaddr, maddr);
    204190
     
    209195
    210196/**
    211  * ether_set_link_up -- リンクしたときにNICから呼び出される
     197 * ether_set_link_up -- リンクしたときにNICから呼び出される
    212198 */
    213199void
     
    219205                if (ether_ifnet.flags & IF_FLAG_UP) {
    220206#if defined(_IP4_CFG) && defined(SUPPORT_ETHER)
    221                         /* ARP再構築? */
     207                        /* ARP再構築? */
    222208#endif /* #if defined(_IP4_CFG) && defined(SUPPORT_ETHER) */
    223209
    224210#ifdef SUPPORT_IGMP
    225                         /* IGMP参加 */
     211                        /* IGMP参加 */
    226212#endif /* #ifdef SUPPORT_IGMP */
    227213                        }
     
    233219
    234220/**
    235  * ether_set_link_up -- リンクが切断したときにNICから呼び出される
     221 * ether_set_link_up -- リンクが切断したときにNICから呼び出される
    236222 */
    237223void
     
    247233
    248234/*
    249  * ether_set_up -- DHCPでアドレスが設定されたとき呼び出される
     235 * ether_set_up -- DHCPでアドレスが設定されたとき呼び出される
    250236 */
    251237
     
    262248
    263249/*
    264  * ether_set_down -- DHCPでアドレスが解放されたとき呼び出される
     250 * ether_set_down -- DHCPでアドレスが解放されたとき呼び出される
    265251 */
    266252
     
    277263
    278264/*
    279  * ether_set_link_callback -- リンク状æ
    280 ‹å¤‰åŒ–時のコールバック登録
     265 * ether_set_link_callback -- リンク状態変化時のコールバック登録
    281266 */
    282267
     
    291276
    292277/*
    293  *  ether_raw_output -- Ethernet インタフェースの出力関数、MAC アドレス解決無し
     278 *  ether_raw_output -- Ethernet インタフェースの出力関数、MAC アドレス解決無し
    294279 */
    295280
     
    299284        ER error = E_OK;
    300285
    301         /* Ethernet 出力キューに投å
    302 ¥ã™ã‚‹ã€‚*/
     286        /* Ethernet 出力キューに投入する。*/
    303287        if ((error = tsnd_dtq(DTQ_ETHER_OUTPUT, (intptr_t)output, tmout)) != E_OK) {
    304288                NET_COUNT_ETHER(net_count_ether.out_err_packets, 1);
    305289                NET_COUNT_MIB(if_stats.ifOutDiscards, 1);
    306290
    307                 /* IF でネットワークバッファを開放しないフラグをチェックする。*/
     291                /* IF でネットワークバッファを開放しないフラグをチェックする。*/
    308292                if ((output->flags & NB_FLG_NOREL_IFOUT) == 0) {
    309293                        syscall(rel_net_buf(output));
     
    318302
    319303/*
    320  *  ether_output -- Ethernet インタフェースの出力関数、MAC アドレス解決有り
     304 *  ether_output -- Ethernet インタフェースの出力関数、MAC アドレス解決有り
    321305 */
    322306
     
    328312        T_ETHER_HDR *eth;
    329313
    330         /* 送信å
    331 ƒ MAC アドレスを設定する。*/
     314        /* 送信元 MAC アドレスを設定する。*/
    332315        ic = IF_ETHER_NIC_GET_SOFTC();
    333316        eth = GET_ETHER_HDR(output);
     
    340323        case ETHER_TYPE_IP:             /* IPv4 */
    341324#ifdef ETHER_CFG_MULTICAST
    342                 /* マルチキャストアドレスの場合 */
     325                /* マルチキャストアドレスの場合 */
    343326                if(IN4_IS_ADDR_MULTICAST(*(uint32_t*)dst)){
    344                         /* イーサネットのマルチキャストアドレスへの変換 */
     327                        /* イーサネットのマルチキャストアドレスへの変換 */
    345328                        ether_map_ipv4_multicast((T_ETHER_ADDR *)&eth->dhost, *(T_IN4_ADDR*)dst);
    346329                        error = ether_raw_output(output, tmout);
     
    348331                        }
    349332#endif
    350                 if (arp_resolve(&ic->ifaddr, output, *(uint32_t*)dst)) {        /* true ならアドレス解決済 */
     333                if (arp_resolve(&ic->ifaddr, output, *(uint32_t*)dst)) {        /* true ならアドレス解決済 */
    351334                        error = ether_raw_output(output, tmout);
    352335                        }
     
    363346                        error = ether_raw_output(output, tmout);
    364347
    365                 /* IF でネットワークバッファを開放しないフラグをチェックする。*/
     348                /* IF でネットワークバッファを開放しないフラグをチェックする。*/
    366349                else if ((output->flags & NB_FLG_NOREL_IFOUT) == 0) {
    367350                        syscall(rel_net_buf(output));
     
    377360                NET_COUNT_MIB(if_stats.ifOutErrors, 1);
    378361
    379                 /* IF でネットワークバッファを開放しないフラグをチェックする。*/
     362                /* IF でネットワークバッファを開放しないフラグをチェックする。*/
    380363                if ((output->flags & NB_FLG_NOREL_IFOUT) == 0) {
    381364                        syscall(rel_net_buf(output));
     
    394377
    395378/*
    396  *  Ethernet 出力タスク
     379 *  Ethernet 出力タスク
    397380 */
    398381
     
    448431
    449432/*
    450  *  Ethernet å
    451 ¥åŠ›ã‚¿ã‚¹ã‚¯
     433 *  Ethernet 入力タスク
    452434 */
    453435
     
    462444        uint8_t         rcount = 0;
    463445
    464         /* ネットワークインタフェース管理を初期化する。*/
     446        /* ネットワークインタフェース管理を初期化する。*/
    465447        ifinit();
    466448
    467         /* イーサネットネットワークインタフェース管理を初期化する。*/
     449        /* イーサネットネットワークインタフェース管理を初期化する。*/
    468450
    469451#if defined(_IP4_CFG)
    470452
    471         ether_ifnet.in4_ifaddr.addr = IPV4_ADDR_LOCAL;          /* IPv4 アドレス            */
    472         ether_ifnet.in4_ifaddr.mask = IPV4_ADDR_LOCAL_MASK;     /* サブネットマスク             */
     453        ether_ifnet.in4_ifaddr.addr = IPV4_ADDR_LOCAL;          /* IPv4 アドレス            */
     454        ether_ifnet.in4_ifaddr.mask = IPV4_ADDR_LOCAL_MASK;     /* サブネットマスク             */
    473455
    474456#endif  /* of #if defined(_IP4_CFG) */
    475457
    476         /* NIC を初期化する。*/
     458        /* NIC を初期化する。*/
    477459        ic = IF_ETHER_NIC_GET_SOFTC();
    478460        IF_ETHER_NIC_PROBE(ic);
    479461        IF_ETHER_NIC_INIT(ic);
    480462
    481         /* Ethernet 出力タスクを起動する */
     463        /* Ethernet 出力タスクを起動する */
    482464        syscall(act_tsk(ETHER_OUTPUT_TASK));
    483465
    484         /* ネットワークタイマタスクを起動する */
     466        /* ネットワークタイマタスクを起動する */
    485467        syscall(act_tsk(NET_TIMER_TASK));
    486468
     
    492474#if defined(_IP4_CFG)
    493475
    494         /* ARP を初期化する。*/
     476        /* ARP を初期化する。*/
    495477        arp_init();
    496478
     
    499481        ether_ifnet.ic = ic;
    500482
    501         /* 乱数生成を初期化する。*/
     483        /* 乱数生成を初期化する。*/
    502484        net_srand(0);
    503485
     
    511493                        proto = ntohs(eth->type);
    512494
    513                         /* 乱数生成を初期化する。*/
     495                        /* 乱数生成を初期化する。*/
    514496                        if (rcount == 0) {
    515497
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ethernet.cfg

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/plain to text/plain;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4533
    4634/*
    47  *  Ethernet コンフィギュレーションファイル
     35 *  Ethernet コンフィギュレーションファイル
    4836 */
    4937
     
    5543CRE_DTQ(DTQ_ETHER_OUTPUT,  { TA_TFIFO, NUM_DTQ_ETHER_OUTPUT,  NULL });
    5644
    57 /* サポート関数 max2str 用セマフォ */
     45/* サポート関数 max2str 用セマフォ */
    5846
    5947CRE_SEM(SEM_MAC2STR_BUFF_LOCK,  { TA_TPRI, 1, 1 });
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ethernet.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$
     
    8876
    8977/*
    90  *  フィールド長
     78 *  フィールド長
    9179 */
    9280
     
    9684
    9785/*
    98  *  フレーム長 (Ethernet ヘッダと CRC を含む)
     86 *  フレーム長 (Ethernet ヘッダと CRC を含む)
    9987 */
    10088
     
    10391
    10492/*
    105  *  Ethernet ヘッダ
     93 *  Ethernet ヘッダ
    10694 */
    10795
     
    122110#if IF_ETHER_NIC_HDR_ALIGN != 0
    123111
    124         uint8_t         align[IF_ETHER_NIC_HDR_ALIGN];  /* アライン調整 */
     112        uint8_t         align[IF_ETHER_NIC_HDR_ALIGN];  /* アライン調整 */
    125113
    126114#endif  /* of #if IF_ETHER_NIC_HDR_ALIGN != 0 */
     
    137125#if IF_ETHER_NIC_HDR_ALIGN != 0
    138126
    139         uint8_t         align[IF_ETHER_NIC_HDR_ALIGN];  /* アライン調整 */
     127        uint8_t         align[IF_ETHER_NIC_HDR_ALIGN];  /* アライン調整 */
    140128
    141129#endif  /* of #if IF_ETHER_NIC_HDR_ALIGN != 0 */
     
    152140#if IF_ETHER_NIC_HDR_ALIGN != 0
    153141
    154         uint8_t         align[IF_ETHER_NIC_HDR_ALIGN];  /* アライン調整 */
     142        uint8_t         align[IF_ETHER_NIC_HDR_ALIGN];  /* アライン調整 */
    155143
    156144#endif  /* of #if IF_ETHER_NIC_HDR_ALIGN != 0 */
     
    166154
    167155/*
    168  *  MAC アドレスの定義
    169  */
    170 
    171 #define ETHER_MCAST_ADDR        UINT_C(0x01)    /* マルチキャスト・アドレス */
    172 #define ETHER_LOCAL_ADDR        UINT_C(0x02)    /* ローカル・アドレス          */
     156 *  MAC アドレスの定義
     157 */
     158
     159#define ETHER_MCAST_ADDR        UINT_C(0x01)    /* マルチキャスト・アドレス */
     160#define ETHER_LOCAL_ADDR        UINT_C(0x02)    /* ローカル・アドレス            */
    173161
    174162typedef struct t_ether_addr {
     
    183171
    184172/*
    185  *  Type フィールド
     173 *  Type フィールド
    186174 */
    187175
     
    191179
    192180/*
    193  *  インタフェースの選択マクロ
    194  */
    195 
    196 #define T_IF_HDR                T_ETHER_HDR             /* インタフェースのヘッダ                            */
    197 #define T_IF_ADDR               T_ETHER_ADDR            /* インタフェースのアドレス                 */
    198 #define IF_HDR_ALIGN            2                       /* ヘッダのアライン単位                               */
    199 #define IF_MTU                  1500                    /* インタフェースの MTU                         */
    200 #define IF_MIN_LEN              ETHER_MIN_LEN           /* インターフェースフレームの最短長             */
    201 
    202 #define IF_OUTPUT(o,d,g,t)      ether_output(o,d,g,t)   /* インタフェースの出力関数                 */
    203 #define IF_RAW_OUTPUT(o,t)      ether_raw_output(o,t)   /* インタフェースの出力関数、アドレス解決無し      */
     181 *  インタフェースの選択マクロ
     182 */
     183
     184#define T_IF_HDR                T_ETHER_HDR             /* インタフェースのヘッダ                          */
     185#define T_IF_ADDR               T_ETHER_ADDR            /* インタフェースのアドレス                 */
     186#define IF_HDR_ALIGN            2                       /* ヘッダのアライン単位                           */
     187#define IF_MTU                  1500                    /* インタフェースの MTU                         */
     188#define IF_MIN_LEN              ETHER_MIN_LEN           /* インターフェースフレームの最短長             */
     189
     190#define IF_OUTPUT(o,d,g,t)      ether_output(o,d,g,t)   /* インタフェースの出力関数                 */
     191#define IF_RAW_OUTPUT(o,t)      ether_raw_output(o,t)   /* インタフェースの出力関数、アドレス解決無し        */
    204192#define IF_SET_PROTO(b,p)       (GET_ETHER_HDR(b)->type = htons(p))
    205                                                         /* インタフェースのプロトコル設定関数          */
     193                                                        /* インタフェースのプロトコル設定関数            */
    206194#define IF_SOFTC_TO_IFADDR(s)   ((T_IF_ADDR*)(s)->ifaddr.lladdr)
    207                                                         /* ソフトウェアæƒ
    208 å ±ã‹ã‚‰ MAC アドレスを取り出す       */
    209 #define IF_GET_IFNET()          ether_get_ifnet()       /* ネットワークインタフェース構造体を返す。         */
    210 #define IF_TYPE                 IFT_ETHER               /* インタフェースの型                          */
    211 #define IF_SRAND()              ether_srand()   /* インタフェースの乱数初期値                      */
    212 
    213 /* IPv4 関係 */
    214 
    215 #define IF_PROTO_IP             ETHER_TYPE_IP           /* インタフェースの IPv4 プロトコル指定          */
    216 #define IF_PROTO_ARP            ETHER_TYPE_ARP          /* インタフェースの ARP プロトコル指定           */
    217 
    218 /* IPv6 関係 */
    219 
    220 #define MAX_IF_MADDR_CNT        2                       /* インタフェースのマルチキャストアドレスé
    221 åˆ—の最大サイズ  */
     195                                                        /* ソフトウェア情報から MAC アドレスを取り出す     */
     196#define IF_GET_IFNET()          ether_get_ifnet()       /* ネットワークインタフェース構造体を返す。         */
     197#define IF_TYPE                 IFT_ETHER               /* インタフェースの型                            */
     198#define IF_SRAND()              ether_srand()   /* インタフェースの乱数初期値                        */
     199
     200/* IPv4 関係 */
     201
     202#define IF_PROTO_IP             ETHER_TYPE_IP           /* インタフェースの IPv4 プロトコル指定                */
     203#define IF_PROTO_ARP            ETHER_TYPE_ARP          /* インタフェースの ARP プロトコル指定         */
     204
     205/* IPv6 関係 */
     206
     207#define MAX_IF_MADDR_CNT        2                       /* インタフェースのマルチキャストアドレス配列の最大サイズ  */
    222208#define IF_MADDR_INIT           { { { 0, 0, 0, 0, 0, 0 } }, { { 0, 0, 0, 0, 0, 0 } } }
    223                                                         /* インタフェースのマルチキャストアドレスé
    224 åˆ—の初期化        */
    225 #define IF_PROTO_IPV6           ETHER_TYPE_IPV6         /* インタフェースの IPv6 プロトコル指定                  */
     209                                                        /* インタフェースのマルチキャストアドレス配列の初期化    */
     210#define IF_PROTO_IPV6           ETHER_TYPE_IPV6         /* インタフェースの IPv6 プロトコル指定                        */
    226211#define IF_ADDMULTI(s)          IF_ETHER_NIC_ADDMULTI(s)
    227                                                         /* マルチキャストアドレスの登録                           */
    228 #define IF_IN6_NEED_CACHE(i)    (true)                  /* 近隣探索キャッシュを使用する。                                */
     212                                                        /* マルチキャストアドレスの登録                               */
     213#define IF_IN6_NEED_CACHE(i)    (true)                  /* 近隣探索キャッシュを使用する。                              */
    229214#define IF_IN6_IFID(i,a)        IF_ETHER_NIC_IN6_IFID(i,a)
    230                                                         /* インタフェース識別子の設定                              */
     215                                                        /* インタフェース識別子の設定                                */
    231216#define IF_IN6_RESOLVE_MULTICAST(i,m)   \
    232217                                ether_in6_resolve_multicast(i,m)
    233                                                         /* インタフェースのマルチキャストアドレスへの変換                */
     218                                                        /* インタフェースのマルチキャストアドレスへの変換              */
    234219
    235220#define IF_FLAG_UP                              0x01U
     
    237222
    238223/*
    239  *  前方参ç
    240 §
     224 *  前方参照
    241225 */
    242226
     
    274258
    275259/*
    276  *  ネットワークインタフェースに依存しないソフトウェアæƒ
    277 å ±
     260 *  ネットワークインタフェースに依存しないソフトウェア情報
    278261 */
    279262
     
    281264
    282265struct t_if_softc {
    283         T_IF_ADDR               ifaddr;                 /* ネットワークインタフェースのアドレス       */
    284         uint16_t                timer;                  /* 送信タイムアウト                     */
    285         T_IF_ETHER_NIC_SOFTC    *sc;                    /* ディバイス依存のソフトウェアæƒ
    286 å ±     */
    287         ID                      semid_txb_ready;        /* 送信セマフォ                           */
    288         ID                      semid_rxb_ready;        /* 受信セマフォ                           */
     266        T_IF_ADDR               ifaddr;                 /* ネットワークインタフェースのアドレス   */
     267        uint16_t                timer;                  /* 送信タイムアウト                     */
     268        T_IF_ETHER_NIC_SOFTC    *sc;                    /* ディバイス依存のソフトウェア情報     */
     269        ID                      semid_txb_ready;        /* 送信セマフォ                               */
     270        ID                      semid_rxb_ready;        /* 受信セマフォ                               */
    289271
    290272#ifdef _IP6_CFG
    291273
    292         T_IF_ADDR       maddrs[MAX_IF_MADDR_CNT];       /* マルチキャストアドレスリスト   */
     274        T_IF_ADDR       maddrs[MAX_IF_MADDR_CNT];       /* マルチキャストアドレスリスト       */
    293275
    294276#endif  /* of #ifdef _IP6_CFG */
     
    298280
    299281/*
    300  *  変数
     282 *  変数
    301283 */
    302284
     
    308290
    309291/*
    310  *  関数
     292 *  関数
    311293 */
    312294
    313295#ifdef _IP6_CFG
    314296
    315 /* 前方参ç
    316 § */
     297/* 前方参照 */
    317298
    318299#ifndef T_IN6_ADDR_DEFINED
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/fcstab.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;charset=UTF-8
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/genfcstab.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;charset=UTF-8
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    117105
    118106/*
    119  *  関数
     107 *  関数
    120108 */
    121109
     
    123111
    124112/*
    125  *  if_slowtimo -- インタフェースのワッチドッグタイマ制御
     113 *  if_slowtimo -- インタフェースのワッチドッグタイマ制御
    126114 */
    127115
     
    142130
    143131/*
    144  *  ifinit -- インタフェース管理の初期化
     132 *  ifinit -- インタフェース管理の初期化
    145133 */
    146134
     
    156144
    157145/*
    158  *  if_addmulti -- マルチキャストアドレスの登録
     146 *  if_addmulti -- マルチキャストアドレスの登録
    159147 */
    160148
     
    173161                        return E_PAR;
    174162
    175                 /* IPv6 マルチキャストアドレスを登録する。*/
     163                /* IPv6 マルチキャストアドレスを登録する。*/
    176164                ifp->in6_maddrs[ix] = *(T_IN6_ADDR*)maddr;
    177165
    178                 /* インタフェースのアドレスに変換し、登録する。*/
     166                /* インタフェースのアドレスに変換し、登録する。*/
    179167                error = IF_IN6_RESOLVE_MULTICAST(&llmaddr, (T_IN6_ADDR*)maddr);
    180168                if (error != E_OK)
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8472
    8573/*
    86  *  ネットワークインタフェース用タイマの定義
     74 *  ネットワークインタフェース用タイマの定義
    8775 */
    8876
    89 #define IF_TIMER_TMO            NET_TIMER_HZ    /* タイムアウト、1 [s]   */
    90 #define IF_TIMER_HZ             1               /* タイマの周波数、1 [s]        */
     77#define IF_TIMER_TMO            NET_TIMER_HZ    /* タイムアウト、1 [s] */
     78#define IF_TIMER_HZ             1               /* タイマの周波数、1 [s]        */
    9179
    9280/*
    93  *  ネットワークインタフェースのフラグ
     81 *  ネットワークインタフェースのフラグ
    9482 */
    9583
    96 #define IFF_UP                  UINT_C(0x0001)  /* 起動済み         */
    97 #define IFF_RUNNING             UINT_C(0x0002)  /* 動作中            */
     84#define IFF_UP                  UINT_C(0x0001)  /* 起動済み         */
     85#define IFF_RUNNING             UINT_C(0x0002)  /* 動作中          */
    9886
    9987/*
    100  *  汎用定義
     88 *  汎用定義
    10189 */
    10290
     
    10593
    10694/*
    107  *  関数
     95 *  関数
    10896 */
    10997
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if6_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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8169
    8270/*
    83  *  ネットワークインタフェース構造体
     71 *  ネットワークインタフェース構造体
    8472 */
    8573
     
    8977
    9078struct t_ifnet {
    91         T_IF_SOFTC      *ic;            /* ネットワークインタフェースのソフトウェアæƒ
    92 å ±     */
     79        T_IF_SOFTC      *ic;            /* ネットワークインタフェースのソフトウェア情報       */
    9380        T_IN6_IFADDR    in6_ifaddrs[NUM_IN6_IFADDR_ENTRY];
    94                                         /* IPv6 アドレスæƒ
    95 å ±                             */
     81                                        /* IPv6 アドレス情報                          */
    9682        T_IN6_ADDR      in6_maddrs [MAX_IN6_MADDR_CNT];
    97                                         /* マルチキャスト IPv6 アドレス                      */
    98         T_IN4_IFADDR    in4_ifaddr;     /* IPv4 アドレスæƒ
    99 å ±                             */
     83                                        /* マルチキャスト IPv6 アドレス                    */
     84        T_IN4_IFADDR    in4_ifaddr;     /* IPv4 アドレス情報                          */
    10085        ether_status_callback_fn link_callback;
    101         uint8_t         flags;          /* フラグ                                    */
     86        uint8_t         flags;          /* フラグ                                  */
    10287        };
    10388
     
    10590
    10691struct t_ifnet {
    107         T_IF_SOFTC      *ic;            /* ネットワークインタフェースのソフトウェアæƒ
    108 å ±     */
     92        T_IF_SOFTC      *ic;            /* ネットワークインタフェースのソフトウェア情報       */
    10993        T_IN6_IFADDR    in6_ifaddrs[NUM_IN6_IFADDR_ENTRY];
    110                                         /* IPv6 アドレスæƒ
    111 å ±                             */
     94                                        /* IPv6 アドレス情報                          */
    11295        T_IN6_ADDR      in6_maddrs [MAX_IN6_MADDR_CNT];
    113                                         /* マルチキャスト IPv6 アドレス                      */
     96                                        /* マルチキャスト IPv6 アドレス                    */
    11497        ether_status_callback_fn link_callback;
    115         uint8_t         flags;          /* フラグ                                    */
     98        uint8_t         flags;          /* フラグ                                  */
    11699        };
    117100
     
    123106
    124107struct t_ifnet {
    125         T_IF_SOFTC      *ic;            /* ネットワークインタフェースのソフトウェアæƒ
    126 å ±     */
    127         T_IN4_IFADDR    in4_ifaddr;     /* IPv4 アドレスæƒ
    128 å ±                             */
     108        T_IF_SOFTC      *ic;            /* ネットワークインタフェースのソフトウェア情報       */
     109        T_IN4_IFADDR    in4_ifaddr;     /* IPv4 アドレス情報                          */
    129110        ether_status_callback_fn link_callback;
    130         uint8_t         flags;          /* フラグ                                    */
     111        uint8_t         flags;          /* フラグ                                  */
    131112        };
    132113
     
    146127
    147128/*
    148  *  関数シミュレーションマクロ
     129 *  関数シミュレーションマクロ
    149130 */
    150131
     
    152133
    153134/*
    154  *  関数
     135 *  関数
    155136 */
    156137
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if_arp.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8876 *  Address Resolution Protocol.
    8977 *
    90  *  RFC 826 参ç
    91 §
     78 *  RFC 826 参照
    9279 */
    9380
    9481/*
    95  *  構造体
     82 *  構造体
    9683 */
    9784
    98 /* ARP ヘッダ */
     85/* ARP ヘッダ */
    9986
    10087typedef struct t_arp_hdr {
    101         uint16_t        hrd_addr;       /* 物理アドレスフォーマット */
    102         uint16_t        proto;          /* プロトコル                      */
    103         uint8_t         hdr_len;        /* 物理アドレス長                */
    104         uint8_t         proto_len;      /* プロトコル長                   */
    105         uint16_t        opcode;         /* 命令コード                      */
     88        uint16_t        hrd_addr;       /* 物理アドレスフォーマット */
     89        uint16_t        proto;          /* プロトコル                        */
     90        uint8_t         hdr_len;        /* 物理アドレス長              */
     91        uint8_t         proto_len;      /* プロトコル長                       */
     92        uint16_t        opcode;         /* 命令コード                        */
    10693        } __attribute__((packed, aligned(2))) T_ARP_HDR;
    10794
     
    113100#define GET_IF_ARP_HDR_SIZE(nbuf)       (IF_HDR_SIZE + ARP_HDR_SIZE)
    114101
    115 /* hrd_addr、物理アドレスフォーマットの値 */
     102/* hrd_addr、物理アドレスフォーマットの値 */
    116103
    117104#define ARPHRD_ETHER    1       /* Ethernet     */
    118105
    119 /* opcode, 命令コードの値 */
     106/* opcode, 命令コードの値 */
    120107
    121 #define ARPOP_REQUEST           UINT_C(1)       /* アドレス解決要求             */
    122 #define ARPOP_REPLY             UINT_C(2)       /* アドレス解決応答             */
    123 #define ARPOP_REV_REQUEST       UINT_C(3)       /* プロトコル・アドレス解決要求   */
    124 #define ARPOP_REV_REPLY         UINT_C(4)       /* プロトコル・アドレス解決要求   */
    125 #define ARPOP_INV_REQUEST       UINT_C(8)       /* 終端識別要求                   */
    126 #define ARPOP_INV_REPLY         UINT_C(9)       /* 終端識別要求                   */
     108#define ARPOP_REQUEST           UINT_C(1)       /* アドレス解決要求             */
     109#define ARPOP_REPLY             UINT_C(2)       /* アドレス解決応答             */
     110#define ARPOP_REV_REQUEST       UINT_C(3)       /* プロトコル・アドレス解決要求       */
     111#define ARPOP_REV_REPLY         UINT_C(4)       /* プロトコル・アドレス解決要求       */
     112#define ARPOP_INV_REQUEST       UINT_C(8)       /* 終端識別要求                       */
     113#define ARPOP_INV_REPLY         UINT_C(9)       /* 終端識別要求                       */
    127114
    128115/*
    129  *  イーサネットドライバモジュールで使用される ARP æƒ
    130 å ±
     116 *  イーサネットドライバモジュールで使用される ARP 情報
    131117 */
    132118
     
    136122
    137123/*
    138  *  ARP キャッシュ更新タイマの定義
     124 *  ARP キャッシュ更新タイマの定義
    139125 */
    140126
    141 #define ARP_TIMER_TMO           (60*NET_TIMER_HZ)       /* タイムアウト、60 [s]  */
     127#define ARP_TIMER_TMO           (60*NET_TIMER_HZ)       /* タイムアウト、60 [s]        */
    142128
    143129/*
    144  *  変数
     130 *  変数
    145131 */
    146132
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if_llc.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8674
    8775/*
    88  *  長さの定義
     76 *  長さの定義
    8977 */
    9078
     
    9381
    9482/*
    95  *  802.3 ヘッダ
     83 *  802.3 ヘッダ
    9684 */
    9785
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if_loop.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    119107
    120108/*
    121  *  ローカルループバックインタフェース
    122  */
    123 
    124 /*
    125  *  外部関数の定義
     109 *  ローカルループバックインタフェース
     110 */
     111
     112/*
     113 *  外部関数の定義
    126114 */
    127115
     
    129117
    130118/*
    131  *  変数
    132  */
    133 
    134 /* ネットワークインタフェース構造体 */
     119 *  変数
     120 */
     121
     122/* ネットワークインタフェース構造体 */
    135123
    136124#if defined(_IP6_CFG)
    137125
    138126static T_IFNET loop_ifnet = {
    139         NULL,                   /* ネットワークインタフェースのソフトウェアæƒ
    140 å ±     */
    141         {},                     /* IPv6 アドレスæƒ
    142 å ±                             */
    143         {},                     /* マルチキャスト IPv6 アドレス                      */
     127        NULL,                   /* ネットワークインタフェースのソフトウェア情報       */
     128        {},                     /* IPv6 アドレス情報                          */
     129        {},                     /* マルチキャスト IPv6 アドレス                    */
    144130        };
    145131
     
    147133
    148134static T_IFNET loop_ifnet = {
    149         NULL,                   /* ネットワークインタフェースのソフトウェアæƒ
    150 å ±     */
     135        NULL,                   /* ネットワークインタフェースのソフトウェア情報       */
    151136        {
    152                 IPV4_ADDR_LOOPBACK,             /* IPv4 アドレス                    */
    153                 IPV4_ADDR_LOOPBACK_MASK,        /* サブネットマスク                     */
     137                IPV4_ADDR_LOOPBACK,             /* IPv4 アドレス                    */
     138                IPV4_ADDR_LOOPBACK_MASK,        /* サブネットマスク                     */
    154139                },
    155140        };
     
    158143
    159144/*
    160  *  loop_get_ifnet -- ネットワークインタフェース構造体を返す。
     145 *  loop_get_ifnet -- ネットワークインタフェース構造体を返す。
    161146 */
    162147
     
    168153
    169154/*
    170  *  looutput -- ローカルループバックインタフェースの出力関数
     155 *  looutput -- ローカルループバックインタフェースの出力関数
    171156 */
    172157
     
    185170
    186171/*
    187  *  ローカルループバックインタフェース・出力タスク
     172 *  ローカルループバックインタフェース・出力タスク
    188173 */
    189174
     
    208193
    209194/*
    210  *  ローカルループバックインタフェース・å
    211 ¥åŠ›ã‚¿ã‚¹ã‚¯
     195 *  ローカルループバックインタフェース・入力タスク
    212196 */
    213197
     
    227211#if defined(_IP4_CFG)
    228212
    229                         /* IPv4 å
    230 ¥åŠ›é–¢æ•°ã‚’呼び出す */
     213                        /* IPv4 入力関数を呼び出す */
    231214                        if (IP4_VHL_V(GET_IP4_HDR(input)->vhl) == IPV4_VERSION)
    232215                                ip_input(input);
     
    236219#if defined(_IP6_CFG)
    237220
    238                         /* IPv6 å
    239 ¥åŠ›é–¢æ•°ã‚’呼び出す */
     221                        /* IPv6 入力関数を呼び出す */
    240222                        if (IP6_VCF_V(ntohl(GET_IP6_HDR(input)->vcf)) == IPV6_VERSION)
    241223                                ip6_input(input);
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if_loop.cfg

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/plain to text/plain;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4533
    4634/*
    47  *  ループバックインタフェース・コンフィギュレーションファイル
     35 *  ループバックインタフェース・コンフィギュレーションファイル
    4836 */
    4937
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if_loop.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8472
    8573/*
    86  *  ローカルループバックインタフェース・ヘッダとアドレス
     74 *  ローカルループバックインタフェース・ヘッダとアドレス
    8775 */
    8876
     
    9179
    9280/*
    93  *  インタフェースの選択マクロ
     81 *  インタフェースの選択マクロ
    9482 */
    9583
    96 #define T_IF_HDR                T_LOOP_HDR              /* インタフェースのヘッダ    */
    97 #define T_IF_ADDR               T_LOOP_ADDR             /* インタフェースのアドレス */
    98 #define IF_HDR_ALIGN            4                       /* ヘッダのアライン単位               */
    99 #define IF_MTU                  LOMTU                   /* インタフェースの MTU         */
     84#define T_IF_HDR                T_LOOP_HDR              /* インタフェースのヘッダ  */
     85#define T_IF_ADDR               T_LOOP_ADDR             /* インタフェースのアドレス */
     86#define IF_HDR_ALIGN            4                       /* ヘッダのアライン単位           */
     87#define IF_MTU                  LOMTU                   /* インタフェースの MTU         */
    10088
    101 #define IF_OUTPUT(o,d,g,t)      looutput(o,t)           /* インタフェースの出力関数 */
    102 #define IF_RAW_OUTPUT(o,t)      looutput(o,t)           /* インタフェースの出力関数、アドレス解決無し*/
    103 #define IF_SET_PROTO(b,p)                               /* インタフェースのプロトコル設定関数  */
    104 #define IF_GET_IFNET()          loop_get_ifnet()        /* ネットワークインタフェース構造体を返す。         */
    105 #define IF_SRAND()              (0)                     /* インターフェースの乱数初期値                   */
     89#define IF_OUTPUT(o,d,g,t)      looutput(o,t)           /* インタフェースの出力関数 */
     90#define IF_RAW_OUTPUT(o,t)      looutput(o,t)           /* インタフェースの出力関数、アドレス解決無し*/
     91#define IF_SET_PROTO(b,p)                               /* インタフェースのプロトコル設定関数    */
     92#define IF_GET_IFNET()          loop_get_ifnet()        /* ネットワークインタフェース構造体を返す。         */
     93#define IF_SRAND()              (0)                     /* インターフェースの乱数初期値                       */
    10694
    107 /* IPv4 関係 */
     95/* IPv4 関係 */
    10896
    109 #define IF_PROTO_IP             0                       /* インタフェースの IP プロトコル指定            */
     97#define IF_PROTO_IP             0                       /* インタフェースの IP プロトコル指定          */
    11098
    111 /* IPv6 関係 */
     99/* IPv6 関係 */
    112100
    113 #define MAX_IF_MADDR_CNT        0                       /* インタフェースのマルチキャストアドレスé
    114 åˆ—の最大サイズ  */
    115 #define IF_IN6_NEED_CACHE(i)    (false)                 /* 近隣探索キャッシュを使用する。                                */
     101#define MAX_IF_MADDR_CNT        0                       /* インタフェースのマルチキャストアドレス配列の最大サイズ  */
     102#define IF_IN6_NEED_CACHE(i)    (false)                 /* 近隣探索キャッシュを使用する。                              */
    116103
    117104/*
    118  *  前方参ç
    119 §
     105 *  前方参照
    120106 */
    121107
     
    145131
    146132/*
    147  *  ネットワークインタフェースに依存しないソフトウェアæƒ
    148 å ±
     133 *  ネットワークインタフェースに依存しないソフトウェア情報
    149134 */
    150135
     
    152137
    153138/*
    154  *  関数
     139 *  関数
    155140 */
    156141
     
    159144
    160145/*
    161  *  ローカルループバックインタフェース・処理タスク
     146 *  ローカルループバックインタフェース・処理タスク
    162147 */
    163148
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if_ppp.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    7159
    7260/*
    73  *  PPP アドレスの定義(ダミー)
     61 *  PPP アドレスの定義(ダミー)
    7462 */
    7563
     
    7967
    8068/*
    81  *  インタフェースの選択マクロ
     69 *  インタフェースの選択マクロ
    8270 */
    8371
    84 #define T_IF_HDR                T_PPP_HDR               /* インタフェースのヘッダ            */
    85 #define T_IF_ADDR               T_PPP_ADDR              /* インタフェースのアドレス                 */
    86 #define IF_HDR_ALIGN            2                       /* ヘッダのアライン単位                       */
    87 #define IF_MTU                  DEF_PPP_MTU             /* インタフェースの MTU                 */
     72#define T_IF_HDR                T_PPP_HDR               /* インタフェースのヘッダ          */
     73#define T_IF_ADDR               T_PPP_ADDR              /* インタフェースのアドレス                 */
     74#define IF_HDR_ALIGN            2                       /* ヘッダのアライン単位                   */
     75#define IF_MTU                  DEF_PPP_MTU             /* インタフェースの MTU                 */
    8876
    89 #define IF_OUTPUT(o,d,g,t)      ppp_output(o,t)         /* インタフェースの出力関数         */
    90 #define IF_RAW_OUTPUT(o,t)      ppp_output(o,t)         /* インタフェースの出力関数、アドレス解決無し*/
     77#define IF_OUTPUT(o,d,g,t)      ppp_output(o,t)         /* インタフェースの出力関数         */
     78#define IF_RAW_OUTPUT(o,t)      ppp_output(o,t)         /* インタフェースの出力関数、アドレス解決無し*/
    9179#define IF_SET_PROTO(b,p)       (*GET_PPP_HDR(b) = htons(p))
    92                                                         /* インタフェースのプロトコル設定関数  */
     80                                                        /* インタフェースのプロトコル設定関数    */
    9381#define IF_SOFTC_TO_IFADDR(s)   ((T_IF_ADDR*)(s)->ifaddr.lladdr)
    94                                                         /* ソフトウェアæƒ
    95 å ±ã‹ã‚‰ PPP アドレスを取り出す       */
    96 #define IF_GET_IFNET()          ppp_get_ifnet()         /* ネットワークインタフェース構造体を返す。*/
    97 #define IF_SRAND()              (0)                     /* インターフェースの乱数初期値                   */
     82                                                        /* ソフトウェア情報から PPP アドレスを取り出す     */
     83#define IF_GET_IFNET()          ppp_get_ifnet()         /* ネットワークインタフェース構造体を返す。*/
     84#define IF_SRAND()              (0)                     /* インターフェースの乱数初期値                       */
    9885
    99 /* IPv4 関係 */
     86/* IPv4 関係 */
    10087
    101 #define IF_PROTO_IP             PPP_IP                  /* インタフェースの IPv4 プロトコル指定  */
     88#define IF_PROTO_IP             PPP_IP                  /* インタフェースの IPv4 プロトコル指定        */
    10289
    103 /* IPv6 関係 */
     90/* IPv6 関係 */
    10491
    105 #define MAX_IF_MADDR_CNT        0                       /* インタフェースのマルチキャストアドレスé
    106 åˆ—の最大サイズ*/
    107 #define IF_PROTO_IPV6           PPP_IPV6                /* インタフェースの IPv6 プロトコル指定  */
    108 #define IF_IN6_NEED_CACHE(i)    (false)                 /* 近隣探索キャッシュを使用する。        */
    109 #define IF_IN6_IFID(i,a)        get_rand_ifid(i,a)      /* インタフェース識別子の設定              */
    110 #define IF_IN6_RESOLVE_MULTICAST(i,m)   {}              /* インタフェースのマルチキャストアドレスへの変換                */
     92#define MAX_IF_MADDR_CNT        0                       /* インタフェースのマルチキャストアドレス配列の最大サイズ*/
     93#define IF_PROTO_IPV6           PPP_IPV6                /* インタフェースの IPv6 プロトコル指定        */
     94#define IF_IN6_NEED_CACHE(i)    (false)                 /* 近隣探索キャッシュを使用する。      */
     95#define IF_IN6_IFID(i,a)        get_rand_ifid(i,a)      /* インタフェース識別子の設定                */
     96#define IF_IN6_RESOLVE_MULTICAST(i,m)   {}              /* インタフェースのマルチキャストアドレスへの変換              */
    11197
    11298/*
    113  *  MTU (MRU) に関する定義
     99 *  MTU (MRU) に関する定義
    114100 */
    115101
    116 #define DEF_PPP_MTU             1500    /* PPP の 標準 MTU   */
    117 #define MAX_PPP_MTU             16384   /* PPP の 最大 MTU   */
    118 #define MIN_PPP_MTU             128     /* PPP の 最小 MTU   */
     102#define DEF_PPP_MTU             1500    /* PPP の 標準 MTU */
     103#define MAX_PPP_MTU             16384   /* PPP の 最大 MTU */
     104#define MIN_PPP_MTU             128     /* PPP の 最小 MTU */
    119105
    120106/*
    121  *  PPP ヘッダ
     107 *  PPP ヘッダ
    122108 */
    123109
    124 typedef uint16_t T_PPP_HDR;                             /* 上位プロトコル                */
     110typedef uint16_t T_PPP_HDR;                             /* 上位プロトコル              */
    125111
    126112/*
    127  *  前方参ç
    128 §
     113 *  前方参照
    129114 */
    130115
     
    154139
    155140/*
    156  *  ネットワークインタフェースに依存しないソフトウェアæƒ
    157 å ±
     141 *  ネットワークインタフェースに依存しないソフトウェア情報
    158142 */
    159143
    160144struct t_if_softc {
    161         T_IF_ADDR       ifaddr;         /* ネットワークインタフェースのアドレス       */
     145        T_IF_ADDR       ifaddr;         /* ネットワークインタフェースのアドレス   */
    162146        };
    163147
    164148/*
    165  *  関数
     149 *  関数
    166150 */
    167151
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if_types.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8068
    8169/*
    82  *  インタフェースの型の定義
     70 *  インタフェースの型の定義
    8371 */
    8472
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/if_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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8573
    8674/*
    87  *  SNMP の 管理æƒ
    88 å ±ãƒ™ãƒ¼ã‚¹ (MIB)
     75 *  SNMP の 管理情報ベース (MIB)
    8976 */
    9077
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net.cfg

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/plain to text/plain;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4533
    4634/*
    47  *  å
    48 ±é€š 汎用ネットワークコンフィギュレーションファイル
     35 *  共通 汎用ネットワークコンフィギュレーションファイル
    4936 */
    5037
    5138/*
    52  * ネットワークタイマ
     39 * ネットワークタイマ
    5340 */
    5441
     
    6956                });
    7057
    71 /* ネットワークタイマの呼出しエントリ用セマフォ */
     58/* ネットワークタイマの呼出しエントリ用セマフォ */
    7259
    7360CRE_SEM(SEM_CALL_OUT_LOCK,      { TA_TPRI, 1, 1 });
    7461CRE_SEM(SEM_CALL_OUT_TIMEOUT,   { TA_TPRI, 0, NUM_NET_CALLOUT });
    7562
    76 /* サポート関数 ip2str、ipv62str 用セマフォ */
     63/* サポート関数 ip2str、ipv62str 用セマフォ */
    7764
    7865CRE_SEM(SEM_IP2STR_BUFF_LOCK,   { TA_TPRI, 1, 1 });
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8169
    8270/*
    83  *  プロトコルを識別するフラグに関する定義
     71 *  プロトコルを識別するフラグに関する定義
    8472 *
    85  *    ・統計æƒ
    86 å ±
     73 *    ・統計情報
    8774 */
    8875
     
    124111
    125112/*
    126  *  アドレス形式の定義
     113 *  アドレス形式の定義
    127114 */
    128115
    129 #define AT_ETHER                UINT_C(0x01)            /* イーサネット           */
    130 #define AT_INET4                UINT_C(0x10)            /* IPv4 アドレス    */
    131 #define AT_INET6                UINT_C(0x20)            /* IPv6 アドレス    */
     116#define AT_ETHER                UINT_C(0x01)            /* イーサネット               */
     117#define AT_INET4                UINT_C(0x10)            /* IPv4 アドレス    */
     118#define AT_INET6                UINT_C(0x20)            /* IPv6 アドレス    */
    132119
    133120/*
    134  *  IPv4 UDPオプションの定義
     121 *  IPv4 UDPオプションの定義
    135122 */
    136123
     
    145132
    146133/*
    147  *  TINET 独自関数
     134 *  TINET 独自関数
    148135 */
    149136
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_asp.cfg

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/plain to text/plain;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4533
    4634/*
    47  *  ASP用 汎用ネットワークコンフィギュレーションファイル
     35 *  ASP用 汎用ネットワークコンフィギュレーションファイル
    4836 */
    4937
    5038/*
    51  *  å
    52 ±é€š 汎用ネットワークコンフィギュレーションファイルのインクルード
     39 *  共通 汎用ネットワークコンフィギュレーションファイルのインクルード
    5340 */
    5441
     
    5845
    5946/*
    60  * ネットワークバッファ
     47 * ネットワークバッファ
    6148 */
    6249
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_buf.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8371
    8472/*
    85  *  関数
     73 *  関数
    8674 */
    8775
     
    8977
    9078/*
    91  *  変数
     79 *  変数
    9280 */
    9381
     
    295283
    296284/*
    297  *  nbuf_get_tbl -- ネットワークバッファ管理表を獲得する。
     285 *  nbuf_get_tbl -- ネットワークバッファ管理表を獲得する。
    298286 *
    299  *    注意: ネットワーク統計æƒ
    300 å ±ã®è¨ˆæ¸¬ç”¨
     287 *    注意: ネットワーク統計情報の計測用
    301288 */
    302289
     
    308295
    309296/*
    310  *  nbuf_get_tbl_size -- ネットワークバッファ管理エントリ数を獲得する。
     297 *  nbuf_get_tbl_size -- ネットワークバッファ管理エントリ数を獲得する。
    311298 *
    312  *    注意: ネットワーク統計æƒ
    313 å ±ã®è¨ˆæ¸¬ç”¨
     299 *    注意: ネットワーク統計情報の計測用
    314300 */
    315301
     
    323309
    324310/*
    325  *  tget_net_buf_up -- 大きなサイズの方向に探索して、ネットワークバッファを獲得する。
     311 *  tget_net_buf_up -- 大きなサイズの方向に探索して、ネットワークバッファを獲得する。
    326312 */
    327313
     
    332318        ER      error = E_OK;
    333319
    334         /* 最適なサイズの固定長メモリプールを探す。*/
     320        /* 最適なサイズの固定長メモリプールを探す。*/
    335321        ix = sizeof(net_buf_table) / sizeof(T_NET_BUF_ENTRY);
    336322        while (ix -- > 0 && minlen > net_buf_table[ix].size)
     
    365351
    366352/*
    367  *  tget_net_buf_down -- 小さなサイズの方向に探索して、ネットワークバッファを獲得する。
     353 *  tget_net_buf_down -- 小さなサイズの方向に探索して、ネットワークバッファを獲得する。
    368354 */
    369355
     
    374360        ER      error = E_OK;
    375361
    376         /* 最適なサイズの固定長メモリプールを探す。*/
     362        /* 最適なサイズの固定長メモリプールを探す。*/
    377363        ix = sizeof(net_buf_table) / sizeof(T_NET_BUF_ENTRY);
    378364        while (ix -- > 0 && maxlen > net_buf_table[ix].size)
     
    411397
    412398/*
    413  *  tget_net_buf_ex -- ネットワークバッファを獲得する(拡張機能)。
     399 *  tget_net_buf_ex -- ネットワークバッファを獲得する(拡張機能)。
    414400 */
    415401
     
    417403tget_net_buf_ex (T_NET_BUF **buf, uint_t minlen, uint_t maxlen, ATR nbatr, TMO tmout)
    418404{
    419         /* 最小サイズが最大サイズをè¶
    420 ãˆã¦ã„たらエラー */
     405        /* 最小サイズが最大サイズを超えていたらエラー */
    421406        if ((nbatr & NBA_SEARCH_DESCENT) != 0 && minlen > maxlen) {
    422407                syslog(LOG_WARNING, "[NET BUF] E_PAR, minlen=%4d > maxlen=%4d.", minlen, maxlen);
     
    424409                }
    425410
    426         /* 割当て可能な最大のサイズをè¶
    427 ãˆã¦ã„たらエラー */
     411        /* 割当て可能な最大のサイズを超えていたらエラー */
    428412        if (minlen > net_buf_table[0].size || maxlen > net_buf_table[0].size) {
    429413                syslog(LOG_WARNING, "[NET BUF] E_PAR, minlen=%4d or maxlen=%4d > %4d",
     
    434418#if defined(SUPPORT_TCP) && defined(TCP_CFG_SWBUF_CSAVE)
    435419
    436         /* TCP で予約したネットワークバッファを取り出す。*/
     420        /* TCP で予約したネットワークバッファを取り出す。*/
    437421        if ((nbatr & NBA_RESERVE_TCP) != 0) {
    438422                if ((*buf = TCP_PULL_RES_NBUF(nbatr)) != NULL) {
     
    454438
    455439/*
    456  *  tget_net_buf -- ネットワークバッファを獲得する(互換)。
     440 *  tget_net_buf -- ネットワークバッファを獲得する(互換)。
    457441 */
    458442
     
    464448
    465449/*
    466  * rel_net_buf -- ネットワークバッファを返却する。
     450 * rel_net_buf -- ネットワークバッファを返却する。
    467451 */
    468452
     
    472456        ER      error = E_OK;
    473457
    474         /* ネットワークバッファの ID の正当性を検証する。*/
     458        /* ネットワークバッファの ID の正当性を検証する。*/
    475459        if ((int_t)buf->idix >= (int_t)(sizeof(net_buf_table) / sizeof(T_NET_BUF_ENTRY))) {
    476460                syslog(LOG_WARNING, "[NET BUF] E_ID, ID=%d.", buf->idix);
     
    481465#if defined(SUPPORT_TCP) && defined(TCP_CFG_SWBUF_CSAVE)
    482466
    483                 /* TCP で、ネットワークバッファを予約する。*/
     467                /* TCP で、ネットワークバッファを予約する。*/
    484468                if (TCP_PUSH_RES_NBUF(buf) == NULL)
    485469                        return E_OK;
     
    487471#endif  /* of #if defined(SUPPORT_TCP) && defined(TCP_CFG_SWBUF_CSAVE) */
    488472
    489                 /* 固定メモリプールに返す。*/
     473                /* 固定メモリプールに返す。*/
    490474
    491475                int idix = buf->idix;
     
    501485
    502486/*
    503  * rus_net_buf -- ネットワークバッファを再利用する。
     487 * rus_net_buf -- ネットワークバッファを再利用する。
    504488 */
    505489
     
    522506
    523507/*
    524  * net_buf_siz -- ネットワークバッファのサイズを返す。
     508 * net_buf_siz -- ネットワークバッファのサイズを返す。
    525509 */
    526510
     
    537521
    538522/*
    539  * net_buf_max_siz -- ネットワークバッファの最大サイズを返す。
     523 * net_buf_max_siz -- ネットワークバッファの最大サイズを返す。
    540524 */
    541525
     
    550534
    551535/*
    552  *  tget_net_buf_ex -- ネットワークバッファを獲得する(拡張機能)。
     536 *  tget_net_buf_ex -- ネットワークバッファを獲得する(拡張機能)。
    553537 */
    554538
     
    569553
    570554/*
    571  *  tget_net_buf -- ネットワークバッファを獲得する(互換)。
     555 *  tget_net_buf -- ネットワークバッファを獲得する(互換)。
    572556 */
    573557
     
    580564
    581565/*
    582  * rel_net_buf -- ネットワークバッファを返却する。
     566 * rel_net_buf -- ネットワークバッファを返却する。
    583567 */
    584568
     
    593577
    594578/*
    595  * net_buf_max_siz -- ネットワークバッファの最大サイズを返す。
     579 * net_buf_max_siz -- ネットワークバッファの最大サイズを返す。
    596580 */
    597581
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_buf.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4836
    4937/*
    50  *  ネットワークバッファ
     38 *  ネットワークバッファ
    5139 *
    52  *    4 オクテットでアラインするå¿
    53 è¦ã®ã‚るプロセッサを考æ
    54 ®ã—て、
    55  *    IF ヘッダサイズが 4 オクテット境界でないの場合、
    56  *    IP ヘッダ以降を 4 オクテット境界に調整する。
     40 *    4 オクテットでアラインする必要のあるプロセッサを考慮して、
     41 *    IF ヘッダサイズが 4 オクテット境界でないの場合、
     42 *    IP ヘッダ以降を 4 オクテット境界に調整する。
    5743 */
    5844
     
    6248
    6349/*
    64  *  テンプレート
     50 *  テンプレート
    6551 */
    6652
    6753struct t_net_buf {
    68         uint16_t        len;    /* データの長さ           */
    69         uint8_t         idix;   /* mpfid のインデックス  */
    70         uint8_t         flags;  /* フラグ            */
    71 #ifdef IF_ETHER_NIC_NET_BUF_ALIGN
    72         uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
    73 #endif
    74 #if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
    75         uint8_t         halign[4 - IF_HDR_ALIGN];
    76 #endif
    77         uint8_t         buf[IF_MIN_LEN];        /* バッファ本体 */
     54        uint16_t        len;    /* データの長さ               */
     55        uint8_t         idix;   /* mpfid のインデックス        */
     56        uint8_t         flags;  /* フラグ          */
     57#ifdef IF_ETHER_NIC_NET_BUF_ALIGN
     58        uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
     59#endif
     60#if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
     61        uint8_t         halign[4 - IF_HDR_ALIGN];
     62#endif
     63        uint8_t         buf[IF_MIN_LEN];        /* バッファ本体 */
    7864        };
    7965
     
    8773
    8874/*
    89  *  64 オクテット
     75 *  64 オクテット
    9076 */
    9177
    9278typedef struct t_net_buf_64 {
    93         uint16_t        len;    /* データの長さ           */
    94         uint8_t         idix;   /* mpfid のインデックス  */
    95         uint8_t         flags;  /* フラグ            */
    96 #ifdef IF_ETHER_NIC_NET_BUF_ALIGN
    97         uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
    98 #endif
    99 #if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
    100         uint8_t         halign[4 - IF_HDR_ALIGN];
    101 #endif
    102         uint8_t         buf[64]; /* バッファ本体  */
     79        uint16_t        len;    /* データの長さ               */
     80        uint8_t         idix;   /* mpfid のインデックス        */
     81        uint8_t         flags;  /* フラグ          */
     82#ifdef IF_ETHER_NIC_NET_BUF_ALIGN
     83        uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
     84#endif
     85#if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
     86        uint8_t         halign[4 - IF_HDR_ALIGN];
     87#endif
     88        uint8_t         buf[64]; /* バッファ本体      */
    10389        } T_NET_BUF_64;
    10490
    10591/*
    106  *  128 オクテット
     92 *  128 オクテット
    10793 */
    10894
    10995typedef struct t_net_buf_128 {
    110         uint16_t        len;    /* データの長さ           */
    111         uint8_t         idix;   /* mpfid のインデックス  */
    112         uint8_t         flags;  /* フラグ            */
    113 #ifdef IF_ETHER_NIC_NET_BUF_ALIGN
    114         uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
    115 #endif
    116 #if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
    117         uint8_t         halign[4 - IF_HDR_ALIGN];
    118 #endif
    119         uint8_t         buf[128]; /* バッファ本体 */
     96        uint16_t        len;    /* データの長さ               */
     97        uint8_t         idix;   /* mpfid のインデックス        */
     98        uint8_t         flags;  /* フラグ          */
     99#ifdef IF_ETHER_NIC_NET_BUF_ALIGN
     100        uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
     101#endif
     102#if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
     103        uint8_t         halign[4 - IF_HDR_ALIGN];
     104#endif
     105        uint8_t         buf[128]; /* バッファ本体     */
    120106        } T_NET_BUF_128;
    121107
    122108/*
    123  *  256 オクテット
     109 *  256 オクテット
    124110 */
    125111
    126112typedef struct t_net_buf_256 {
    127         uint16_t        len;    /* データの長さ           */
    128         uint8_t         idix;   /* mpfid のインデックス  */
    129         uint8_t         flags;  /* フラグ            */
    130 #ifdef IF_ETHER_NIC_NET_BUF_ALIGN
    131         uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
    132 #endif
    133 #if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
    134         uint8_t         halign[4 - IF_HDR_ALIGN];
    135 #endif
    136         uint8_t         buf[256]; /* バッファ本体 */
     113        uint16_t        len;    /* データの長さ               */
     114        uint8_t         idix;   /* mpfid のインデックス        */
     115        uint8_t         flags;  /* フラグ          */
     116#ifdef IF_ETHER_NIC_NET_BUF_ALIGN
     117        uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
     118#endif
     119#if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
     120        uint8_t         halign[4 - IF_HDR_ALIGN];
     121#endif
     122        uint8_t         buf[256]; /* バッファ本体     */
    137123        } T_NET_BUF_256;
    138124
    139125/*
    140  *  512 オクテット
     126 *  512 オクテット
    141127 */
    142128
    143129typedef struct t_net_buf_512 {
    144         uint16_t        len;    /* データの長さ           */
    145         uint8_t         idix;   /* mpfid のインデックス  */
    146         uint8_t         flags;  /* フラグ            */
    147 #ifdef IF_ETHER_NIC_NET_BUF_ALIGN
    148         uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
    149 #endif
    150 #if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
    151         uint8_t         halign[4 - IF_HDR_ALIGN];
    152 #endif
    153         uint8_t         buf[512];/* バッファ本体  */
     130        uint16_t        len;    /* データの長さ               */
     131        uint8_t         idix;   /* mpfid のインデックス        */
     132        uint8_t         flags;  /* フラグ          */
     133#ifdef IF_ETHER_NIC_NET_BUF_ALIGN
     134        uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
     135#endif
     136#if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
     137        uint8_t         halign[4 - IF_HDR_ALIGN];
     138#endif
     139        uint8_t         buf[512];/* バッファ本体      */
    154140        } T_NET_BUF_512;
    155141
    156142/*
    157  *  1024 オクテット
     143 *  1024 オクテット
    158144 */
    159145
    160146typedef struct t_net_buf_1024 {
    161         uint16_t        len;    /* データの長さ           */
    162         uint8_t         idix;   /* mpfid のインデックス  */
    163         uint8_t         flags;  /* フラグ            */
    164 #ifdef IF_ETHER_NIC_NET_BUF_ALIGN
    165         uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
    166 #endif
    167 #if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
    168         uint8_t         halign[4 - IF_HDR_ALIGN];
    169 #endif
    170         uint8_t         buf[1024]; /* バッファ本体        */
     147        uint16_t        len;    /* データの長さ               */
     148        uint8_t         idix;   /* mpfid のインデックス        */
     149        uint8_t         flags;  /* フラグ          */
     150#ifdef IF_ETHER_NIC_NET_BUF_ALIGN
     151        uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
     152#endif
     153#if CPU_NET_ALIGN == 4 && IF_HDR_ALIGN != 4
     154        uint8_t         halign[4 - IF_HDR_ALIGN];
     155#endif
     156        uint8_t         buf[1024]; /* バッファ本体    */
    171157        } T_NET_BUF_1024;
    172158
    173159/*
    174  *  ネットワークインタフェースの最大 PDU サイズ
     160 *  ネットワークインタフェースの最大 PDU サイズ
    175161 */
    176162
     
    178164
    179165typedef struct t_net_buf_if_pdu {
    180         uint16_t        len;    /* データの長さ           */
    181         uint8_t         idix;   /* mpfid のインデックス  */
    182         uint8_t         flags;  /* フラグ            */
     166        uint16_t        len;    /* データの長さ               */
     167        uint8_t         idix;   /* mpfid のインデックス        */
     168        uint8_t         flags;  /* フラグ          */
    183169#ifdef IF_ETHER_NIC_NET_BUF_ALIGN
    184170        uint8_t         nalign[IF_ETHER_NIC_NET_BUF_ALIGN];
     
    188174#endif
    189175        uint8_t         buf[IF_PDU_SIZE];
    190                                 /* バッファ本体           */
     176                                /* バッファ本体               */
    191177#if defined(IF_PDU_HDR_PADDING)
    192178        uint8_t         padding[IF_PDU_HDR_PADDING];
    193 #endif                          /* ヘッダの余分           */
     179#endif                          /* ヘッダの余分               */
    194180        } T_NET_BUF_IF_PDU;
    195181
     
    197183
    198184/*
    199  *  ネットワークバッファ表
     185 *  ネットワークバッファ表
    200186 */
    201187
     
    218204
    219205/*
    220  *  ネットワークバッファ・フラグ 
    221  */
    222 
    223 /*
    224  *  ネットワークインタフェース出力後にネットワークバッファを開放しない。
    225  *  注意: 出力後にこのフラグはクリアされる。
     206 *  ネットワークバッファ・フラグ     
     207 */
     208
     209/*
     210 *  ネットワークインタフェース出力後にネットワークバッファを開放しない。
     211 *  注意: 出力後にこのフラグはクリアされる。
    226212 */
    227213#define NB_FLG_NOREL_IFOUT      UINT_C(0x80)
    228214
    229215/*
    230  *  ESP 用フラグ
     216 *  ESP 用フラグ
    231217 */
    232218#define NB_FLG_DECRYPED         UINT_C(0x40)
    233219
    234220/*
    235  *  ネットワークバッファ獲得属性
    236  */
    237 
    238 /* 探索属性 */
    239 
    240 #define NBA_SEARCH_ASCENT       UINT_C(0x1000)  /* 大きなサイズの方向に探索する。        */
    241 #define NBA_SEARCH_DESCENT      UINT_C(0x2000)  /* 小さなサイズの方向に探索する。        */
    242 #define NBA_RESERVE_TCP         UINT_C(0x4000)  /* TCP 用にネットワークバッファを予約する。*/
    243 #define NBA_ID_MASK             UINT_C(0x0fff)  /* 通信端点 ID を渡す場合のマスク値       */
    244 
    245 /*
    246  *  関数シミュレーションマクロ
     221 *  ネットワークバッファ獲得属性
     222 */
     223
     224/* 探索属性 */
     225
     226#define NBA_SEARCH_ASCENT       UINT_C(0x1000)  /* 大きなサイズの方向に探索する。      */
     227#define NBA_SEARCH_DESCENT      UINT_C(0x2000)  /* 小さなサイズの方向に探索する。      */
     228#define NBA_RESERVE_TCP         UINT_C(0x4000)  /* TCP 用にネットワークバッファを予約する。*/
     229#define NBA_ID_MASK             UINT_C(0x0fff)  /* 通信端点 ID を渡す場合のマスク値   */
     230
     231/*
     232 *  関数シミュレーションマクロ
    247233 */
    248234
     
    250236
    251237/*
    252  *  関数
     238 *  関数
    253239 */
    254240
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_count.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    11199
    112100/*
    113  *  ネットワーク統計æƒ
    114 å ±ã®è¨ˆæ¸¬
     101 *  ネットワーク統計情報の計測
    115102 */
    116103
     
    137124
    138125/*
    139  *  計測用変数
     126 *  計測用変数
    140127 */
    141128
     
    145132
    146133T_NET_COUNT     net_count_ppp;
    147 T_NET_COUNT_VAL net_count_ppp_no_bufs;          /* net_buf 割り当て失敗数        */
     134T_NET_COUNT_VAL net_count_ppp_no_bufs;          /* net_buf 割り当て失敗数      */
    148135
    149136#endif  /* of #if NET_COUNT_ENABLE & PROTO_FLG_PPP */
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_count.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8169
    8270/*
    83  *  ネットワーク統計æƒ
    84 å ±ã®è¨ˆæ¸¬
     71 *  ネットワーク統計情報の計測
    8572 */
    8673
     
    9683
    9784typedef struct t_net_count {
    98         T_NET_COUNT_VAL in_octets;              /* 受信オクテット数     */
    99         T_NET_COUNT_VAL out_octets;             /* 送信オクテット数     */
    100         T_NET_COUNT_VAL in_packets;             /* 受信バケット数        */
    101         T_NET_COUNT_VAL out_packets;            /* 送信バケット数        */
    102         T_NET_COUNT_VAL in_err_packets;         /* 受信エラーバケット数       */
    103         T_NET_COUNT_VAL out_err_packets;        /* 送信エラーバケット数       */
     85        T_NET_COUNT_VAL in_octets;              /* 受信オクテット数     */
     86        T_NET_COUNT_VAL out_octets;             /* 送信オクテット数     */
     87        T_NET_COUNT_VAL in_packets;             /* 受信バケット数      */
     88        T_NET_COUNT_VAL out_packets;            /* 送信バケット数      */
     89        T_NET_COUNT_VAL in_err_packets;         /* 受信エラーバケット数   */
     90        T_NET_COUNT_VAL out_err_packets;        /* 送信エラーバケット数   */
    10491        } T_NET_COUNT;
    10592
     
    119106
    120107extern T_NET_COUNT      net_count_ppp;
    121 extern T_NET_COUNT_VAL  net_count_ppp_no_bufs;  /* net_buf 割り当て失敗数        */
    122 
    123 #endif  /* of #ifndef _MACRO_ONLY */
    124 
    125 #define NC_PPP_SIZE     7                       /* カウンタ数 */
     108extern T_NET_COUNT_VAL  net_count_ppp_no_bufs;  /* net_buf 割り当て失敗数      */
     109
     110#endif  /* of #ifndef _MACRO_ONLY */
     111
     112#define NC_PPP_SIZE     7                       /* カウンタ数 */
    126113
    127114#else   /* of #if NET_COUNT_ENABLE & PROTO_FLG_PPP */
     
    248235#ifdef SUPPORT_LOOP
    249236
    250 /* ループバック */
     237/* ループバック */
    251238
    252239#if NET_COUNT_ENABLE & PROTO_FLG_LOOP
     
    292279#if NET_COUNT_ENABLE & PROTO_FLG_ETHER_NIC
    293280
    294 #define NC_ETHER_NIC_RESETS             0       /* リセット数                      */
    295 #define NC_ETHER_NIC_TXB_QOVRS          1       /* 送信セマフォ資源返却上限オーバー数*/
    296 #define NC_ETHER_NIC_TIMEOUTS           2       /* 送信タイムアウト数          */
    297 #define NC_ETHER_NIC_COLS               3       /* コリジョン数                   */
    298 #define NC_ETHER_NIC_OUT_ERR_PACKETS    4       /* 送信エラーバケット数               */
    299 #define NC_ETHER_NIC_OUT_PACKETS        5       /* 送信バケット数                */
    300 #define NC_ETHER_NIC_OUT_OCTETS         6       /* 送信オクテット数             */
    301 #define NC_ETHER_NIC_RXB_QOVRS          7       /* 受信セマフォ資源返却上限オーバー数*/
    302 #define NC_ETHER_NIC_NO_BUFS            8       /* net_buf 割り当て失敗数        */
    303 #define NC_ETHER_NIC_IN_ERR_PACKETS     9       /* 受信エラーバケット数               */
    304 #define NC_ETHER_NIC_IN_PACKETS         10      /* 受信バケット数                */
    305 #define NC_ETHER_NIC_IN_OCTETS          11      /* 受信オクテット数             */
    306 #define NC_ETHER_NIC_SIZE               12      /* カウンタ数                      */
     281#define NC_ETHER_NIC_RESETS             0       /* リセット数                        */
     282#define NC_ETHER_NIC_TXB_QOVRS          1       /* 送信セマフォ資源返却上限オーバー数*/
     283#define NC_ETHER_NIC_TIMEOUTS           2       /* 送信タイムアウト数            */
     284#define NC_ETHER_NIC_COLS               3       /* コリジョン数                       */
     285#define NC_ETHER_NIC_OUT_ERR_PACKETS    4       /* 送信エラーバケット数           */
     286#define NC_ETHER_NIC_OUT_PACKETS        5       /* 送信バケット数              */
     287#define NC_ETHER_NIC_OUT_OCTETS         6       /* 送信オクテット数             */
     288#define NC_ETHER_NIC_RXB_QOVRS          7       /* 受信セマフォ資源返却上限オーバー数*/
     289#define NC_ETHER_NIC_NO_BUFS            8       /* net_buf 割り当て失敗数      */
     290#define NC_ETHER_NIC_IN_ERR_PACKETS     9       /* 受信エラーバケット数           */
     291#define NC_ETHER_NIC_IN_PACKETS         10      /* 受信バケット数              */
     292#define NC_ETHER_NIC_IN_OCTETS          11      /* 受信オクテット数             */
     293#define NC_ETHER_NIC_SIZE               12      /* カウンタ数                        */
    307294
    308295#define NET_COUNT_ETHER_NIC(v,c)        ((v)+=(c))
     
    322309#endif  /* of #ifdef SUPPORT_ETHER */
    323310
    324 /* ネットワークバッファ */
     311/* ネットワークバッファ */
    325312
    326313#if NET_COUNT_ENABLE & PROTO_FLG_NET_BUF
     
    358345#if NET_COUNT_ENABLE & PROTO_FLG_IP4
    359346
    360 #define NC_IP4_FRAG_OUT_FRAGS           0       /* 分割送信、フラグメント数 */
    361 #define NC_IP4_FRAG_OUT                 1       /* 分割送信数                      */
    362 #define NC_IP4_OUT_ERR_PACKETS          2       /* 送信エラーデータグラム数 */
    363 #define NC_IP4_OUT_PACKETS              3       /* 送信データグラム数          */
    364 #define NC_IP4_OUT_OCTETS               4       /* 送信オクテット数             */
    365 #define NC_IP4_FRAG_IN_TMOUT            5       /* 分割受信タイムアウト数            */
    366 #define NC_IP4_FRAG_IN_NO_BUF           6       /* 分割受信バッファり当て失敗数   */
    367 #define NC_IP4_FRAG_IN_DROP             7       /* 分割受信破棄数                */
    368 #define NC_IP4_FRAG_IN_OK               8       /* 分割受信再構成成功数               */
    369 #define NC_IP4_FRAG_IN_FRAGS            9       /* 分割受信フラグメント数            */
    370 #define NC_IP4_FRAG_IN                  10      /* 分割受信数                      */
    371 #define NC_IP4_OPTS                     11      /* オプションå
    372 ¥åŠ›æ•°         */
    373 #define NC_IP4_IN_ERR_PROTO             12      /* プロトコルエラー数          */
    374 #define NC_IP4_IN_ERR_ADDR              13      /* アドレスエラー数             */
    375 #define NC_IP4_IN_ERR_VER               14      /* バージョンエラー数          */
    376 #define NC_IP4_IN_ERR_SHORT             15      /* 長さエラー数                   */
    377 #define NC_IP4_IN_ERR_CKSUM             16      /* チェックサムエラー数               */
    378 #define NC_IP4_IN_ERR_PACKETS           17      /* 受信エラーデータグラム数 */
    379 #define NC_IP4_IN_PACKETS               18      /* 受信データグラム数          */
    380 #define NC_IP4_IN_OCTETS                19      /* 受信オクテット数             */
    381 #define NC_IP4_SIZE                     20      /* カウンタ数                      */
     347#define NC_IP4_FRAG_OUT_FRAGS           0       /* 分割送信、フラグメント数 */
     348#define NC_IP4_FRAG_OUT                 1       /* 分割送信数                        */
     349#define NC_IP4_OUT_ERR_PACKETS          2       /* 送信エラーデータグラム数 */
     350#define NC_IP4_OUT_PACKETS              3       /* 送信データグラム数            */
     351#define NC_IP4_OUT_OCTETS               4       /* 送信オクテット数             */
     352#define NC_IP4_FRAG_IN_TMOUT            5       /* 分割受信タイムアウト数          */
     353#define NC_IP4_FRAG_IN_NO_BUF           6       /* 分割受信バッファり当て失敗数       */
     354#define NC_IP4_FRAG_IN_DROP             7       /* 分割受信破棄数              */
     355#define NC_IP4_FRAG_IN_OK               8       /* 分割受信再構成成功数           */
     356#define NC_IP4_FRAG_IN_FRAGS            9       /* 分割受信フラグメント数          */
     357#define NC_IP4_FRAG_IN                  10      /* 分割受信数                        */
     358#define NC_IP4_OPTS                     11      /* オプション入力数             */
     359#define NC_IP4_IN_ERR_PROTO             12      /* プロトコルエラー数            */
     360#define NC_IP4_IN_ERR_ADDR              13      /* アドレスエラー数             */
     361#define NC_IP4_IN_ERR_VER               14      /* バージョンエラー数            */
     362#define NC_IP4_IN_ERR_SHORT             15      /* 長さエラー数                       */
     363#define NC_IP4_IN_ERR_CKSUM             16      /* チェックサムエラー数           */
     364#define NC_IP4_IN_ERR_PACKETS           17      /* 受信エラーデータグラム数 */
     365#define NC_IP4_IN_PACKETS               18      /* 受信データグラム数            */
     366#define NC_IP4_IN_OCTETS                19      /* 受信オクテット数             */
     367#define NC_IP4_SIZE                     20      /* カウンタ数                        */
    382368
    383369#define NET_COUNT_IP4(v,c)      ((v)+=(c))
     
    439425#if NET_COUNT_ENABLE & PROTO_FLG_IP6
    440426
    441 #define NC_IP6_FRAG_OUT_FRAGS           0       /* 分割送信、フラグメント数 */
    442 #define NC_IP6_FRAG_OUT                 1       /* 分割送信数                      */
    443 #define NC_IP6_OUT_ERR_PACKETS          2       /* 送信エラーデータグラム数 */
    444 #define NC_IP6_OUT_PACKETS              3       /* 送信データグラム数          */
    445 #define NC_IP6_OUT_OCTETS               4       /* 送信オクテット数             */
    446 #define NC_IP6_FRAG_IN_TMOUT            5       /* 分割受信タイムアウト数            */
    447 #define NC_IP6_FRAG_IN_NO_BUF           6       /* 分割受信バッファり当て失敗数   */
    448 #define NC_IP6_FRAG_IN_DROP             7       /* 分割受信破棄数                */
    449 #define NC_IP6_FRAG_IN_OK               8       /* 分割受信再構成成功数               */
    450 #define NC_IP6_FRAG_IN_FRAGS            9       /* 分割受信フラグメント数            */
    451 #define NC_IP6_FRAG_IN                  10      /* 分割受信数                      */
    452 #define NC_IP6_IN_ERR_PROTO             11      /* プロトコルエラー数          */
    453 #define NC_IP6_IN_ERR_ADDR              12      /* アドレスエラー数             */
    454 #define NC_IP6_IN_ERR_VER               13      /* バージョンエラー数          */
    455 #define NC_IP6_IN_ERR_SHORT             14      /* 長さエラー数                   */
    456 #define NC_IP6_IN_ERR_PACKETS           15      /* 受信エラーデータグラム数 */
    457 #define NC_IP6_IN_PACKETS               16      /* 受信データグラム数          */
    458 #define NC_IP6_IN_OCTETS                17      /* 受信オクテット数             */
    459 #define NC_IP6_SIZE                     18      /* カウンタ数                      */
     427#define NC_IP6_FRAG_OUT_FRAGS           0       /* 分割送信、フラグメント数 */
     428#define NC_IP6_FRAG_OUT                 1       /* 分割送信数                        */
     429#define NC_IP6_OUT_ERR_PACKETS          2       /* 送信エラーデータグラム数 */
     430#define NC_IP6_OUT_PACKETS              3       /* 送信データグラム数            */
     431#define NC_IP6_OUT_OCTETS               4       /* 送信オクテット数             */
     432#define NC_IP6_FRAG_IN_TMOUT            5       /* 分割受信タイムアウト数          */
     433#define NC_IP6_FRAG_IN_NO_BUF           6       /* 分割受信バッファり当て失敗数       */
     434#define NC_IP6_FRAG_IN_DROP             7       /* 分割受信破棄数              */
     435#define NC_IP6_FRAG_IN_OK               8       /* 分割受信再構成成功数           */
     436#define NC_IP6_FRAG_IN_FRAGS            9       /* 分割受信フラグメント数          */
     437#define NC_IP6_FRAG_IN                  10      /* 分割受信数                        */
     438#define NC_IP6_IN_ERR_PROTO             11      /* プロトコルエラー数            */
     439#define NC_IP6_IN_ERR_ADDR              12      /* アドレスエラー数             */
     440#define NC_IP6_IN_ERR_VER               13      /* バージョンエラー数            */
     441#define NC_IP6_IN_ERR_SHORT             14      /* 長さエラー数                       */
     442#define NC_IP6_IN_ERR_PACKETS           15      /* 受信エラーデータグラム数 */
     443#define NC_IP6_IN_PACKETS               16      /* 受信データグラム数            */
     444#define NC_IP6_IN_OCTETS                17      /* 受信オクテット数             */
     445#define NC_IP6_SIZE                     18      /* カウンタ数                        */
    460446
    461447#define NET_COUNT_IP6(v,c)      ((v)+=(c))
     
    475461#if NET_COUNT_ENABLE & PROTO_FLG_ICMP6
    476462
    477 #define NC_ICMP6_OUT_ERR_PACKETS        0       /* 送信エラー ICMP データ数    */
    478 #define NC_ICMP6_OUT_PACKETS            1       /* 送信 ICMP データ数             */
    479 #define NC_ICMP6_OUT_OCTETS             2       /* 送信 ICMP オクテット数               */
    480 #define NC_ICMP6_IN_ERR_CKSUM           3       /* 長さエラー数                   */
    481 #define NC_ICMP6_IN_ERR_PACKETS         4       /* 受信エラー ICMP データ数    */
    482 #define NC_ICMP6_IN_PACKETS             5       /* 受信 ICMP データ数             */
    483 #define NC_ICMP6_IN_OCTETS              6       /* 受信 ICMP オクテット数               */
    484 #define NC_ICMP6_SIZE                   7       /* カウンタ数                      */
     463#define NC_ICMP6_OUT_ERR_PACKETS        0       /* 送信エラー ICMP データ数      */
     464#define NC_ICMP6_OUT_PACKETS            1       /* 送信 ICMP データ数         */
     465#define NC_ICMP6_OUT_OCTETS             2       /* 送信 ICMP オクテット数               */
     466#define NC_ICMP6_IN_ERR_CKSUM           3       /* 長さエラー数                       */
     467#define NC_ICMP6_IN_ERR_PACKETS         4       /* 受信エラー ICMP データ数      */
     468#define NC_ICMP6_IN_PACKETS             5       /* 受信 ICMP データ数         */
     469#define NC_ICMP6_IN_OCTETS              6       /* 受信 ICMP オクテット数               */
     470#define NC_ICMP6_SIZE                   7       /* カウンタ数                        */
    485471
    486472#define NET_COUNT_ICMP6(v,c)    ((v)+=(c))
     
    500486#if NET_COUNT_ENABLE & PROTO_FLG_ND6
    501487
    502 #define NC_ND6_DAD_OUT_PACKETS          0       /* 重複アドレス検出送信数            */
    503 #define NC_ND6_NS_OUT_PACKETS           1       /* 近隣要請送信数                */
    504 #define NC_ND6_NS_IN_PACKETS            2       /* 近隣要請受信数                */
    505 #define NC_ND6_NA_OUT_PACKETS           3       /* 近隣通知送信数                */
    506 #define NC_ND6_NA_IN_PACKETS            4       /* 近隣通知受信数                */
    507 #define NC_ND6_RS_OUT_PACKETS           5       /* ルータ要請出力数             */
    508 #define NC_ND6_RA_IN_PACKETS            6       /* ルータ通知受信数             */
    509 #define NC_ND6_SIZE                     7       /* カウンタ数                      */
     488#define NC_ND6_DAD_OUT_PACKETS          0       /* 重複アドレス検出送信数          */
     489#define NC_ND6_NS_OUT_PACKETS           1       /* 近隣要請送信数              */
     490#define NC_ND6_NS_IN_PACKETS            2       /* 近隣要請受信数              */
     491#define NC_ND6_NA_OUT_PACKETS           3       /* 近隣通知送信数              */
     492#define NC_ND6_NA_IN_PACKETS            4       /* 近隣通知受信数              */
     493#define NC_ND6_RS_OUT_PACKETS           5       /* ルータ要請出力数             */
     494#define NC_ND6_RA_IN_PACKETS            6       /* ルータ通知受信数             */
     495#define NC_ND6_SIZE                     7       /* カウンタ数                        */
    510496
    511497#define NET_COUNT_ND6(v,c)      ((v)+=(c))
     
    531517#if NET_COUNT_ENABLE & PROTO_FLG_TCP
    532518
    533 #define NC_TCP_CONNECTS                 0       /* 能動オープン数                */
    534 #define NC_TCP_ACCEPTS                  1       /* 受動オープン数                */
    535 #define NC_TCP_RTT_UPDATES              2       /* RTT 更新数                        */
    536 #define NC_TCP_SEND_RSTS                3       /* 送信、RST 数                     */
    537 #define NC_TCP_SEND_ACKS                4       /* 送信、ACK 数                     */
    538 #define NC_TCP_SEND_URG_SEGS            5       /* 送信、緊急セグメント数    */
    539 #define NC_TCP_SEND_DATA_SEGS           6       /* 送信データセグメント数    */
    540 #define NC_TCP_SEND_REXMIT_SEGS         7       /* 再送信セグメント数          */
    541 #define NC_TCP_SEND_SEGS                8       /* 送信セグメント数             */
    542 #define NC_TCP_SEND_CNTL_SEGS           9       /* 送信制御セグメント数               */
    543 #define NC_TCP_SEND_DATA_OCTETS         10      /* 送信データオクテット数    */
    544 #define NC_TCP_FREE_RCV_QUEUE           11      /* 受信キュー解放数             */
    545 #define NC_TCP_RECV_DUP_SEGS            12      /* 受信、多重数                   */
    546 #define NC_TCP_RECV_DROP_SEGS           13      /* 受信、破棄数                   */
    547 #define NC_TCP_RECV_RSTS                14      /* 受信、RST 数                     */
    548 #define NC_TCP_RECV_DUP_ACKS            15      /* 受信、多重 ACK 数              */
    549 #define NC_TCP_RECV_ACKS                16      /* 受信、ACK 数                     */
    550 #define NC_TCP_RECV_BAD_CKSUMS          17      /* 受信、チェックサム不正数 */
    551 #define NC_TCP_RECV_BAD_HEADERS         18      /* 受信、ヘッダ不正数          */
    552 #define NC_TCP_RECV_URG_SEGS            19      /* 受信、緊急セグメント数    */
    553 #define NC_TCP_RECV_DATA_SEGS           20      /* 受信データセグメント数    */
    554 #define NC_TCP_RECV_SEGS                21      /* 受信セグメント数             */
    555 #define NC_TCP_RECV_DATA_OCTETS         22      /* 受信データオクテット数    */
    556 #define NC_TCP_RECV_OCTETS              23      /* 受信オクテット数             */
    557 #define NC_TCP_SIZE                     24      /* カウンタ数                      */
     519#define NC_TCP_CONNECTS                 0       /* 能動オープン数              */
     520#define NC_TCP_ACCEPTS                  1       /* 受動オープン数              */
     521#define NC_TCP_RTT_UPDATES              2       /* RTT 更新数                      */
     522#define NC_TCP_SEND_RSTS                3       /* 送信、RST 数                     */
     523#define NC_TCP_SEND_ACKS                4       /* 送信、ACK 数                     */
     524#define NC_TCP_SEND_URG_SEGS            5       /* 送信、緊急セグメント数  */
     525#define NC_TCP_SEND_DATA_SEGS           6       /* 送信データセグメント数  */
     526#define NC_TCP_SEND_REXMIT_SEGS         7       /* 再送信セグメント数            */
     527#define NC_TCP_SEND_SEGS                8       /* 送信セグメント数             */
     528#define NC_TCP_SEND_CNTL_SEGS           9       /* 送信制御セグメント数           */
     529#define NC_TCP_SEND_DATA_OCTETS         10      /* 送信データオクテット数  */
     530#define NC_TCP_FREE_RCV_QUEUE           11      /* 受信キュー解放数             */
     531#define NC_TCP_RECV_DUP_SEGS            12      /* 受信、多重数                       */
     532#define NC_TCP_RECV_DROP_SEGS           13      /* 受信、破棄数                       */
     533#define NC_TCP_RECV_RSTS                14      /* 受信、RST 数                     */
     534#define NC_TCP_RECV_DUP_ACKS            15      /* 受信、多重 ACK 数          */
     535#define NC_TCP_RECV_ACKS                16      /* 受信、ACK 数                     */
     536#define NC_TCP_RECV_BAD_CKSUMS          17      /* 受信、チェックサム不正数 */
     537#define NC_TCP_RECV_BAD_HEADERS         18      /* 受信、ヘッダ不正数            */
     538#define NC_TCP_RECV_URG_SEGS            19      /* 受信、緊急セグメント数  */
     539#define NC_TCP_RECV_DATA_SEGS           20      /* 受信データセグメント数  */
     540#define NC_TCP_RECV_SEGS                21      /* 受信セグメント数             */
     541#define NC_TCP_RECV_DATA_OCTETS         22      /* 受信データオクテット数  */
     542#define NC_TCP_RECV_OCTETS              23      /* 受信オクテット数             */
     543#define NC_TCP_SIZE                     24      /* カウンタ数                        */
    558544
    559545#define NET_COUNT_TCP(v,c)      ((v)+=(c))
     
    598584
    599585/*
    600  *  SNMP の 管理æƒ
    601 å ±ãƒ™ãƒ¼ã‚¹ (MIB)
     586 *  SNMP の 管理情報ベース (MIB)
    602587 */
    603588
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_endian.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8169
    8270/*
    83  *  バイトオーダの定義
     71 *  バイトオーダの定義
    8472 */
    8573
     
    124112
    125113/*
    126  *  バイトオーダ変換の定義
     114 *  バイトオーダ変換の定義
    127115 */
    128116
     
    140128
    141129/*
    142  *  注意: IPヘッダ以降は、4 バイト境界にアラインされている事を
    143  *        前提としているが、4 バイト境界でアクセスする
    144  *        プロセッサで、ネットワーク側のデータが、4 バイト境界にアライン
    145  *        されていない場合は、ntoahl、ahtonl、nahcmpl を使用すること。
     130 *  注意: IPヘッダ以降は、4 バイト境界にアラインされている事を
     131 *        前提としているが、4 バイト境界でアクセスする
     132 *        プロセッサで、ネットワーク側のデータが、4 バイト境界にアライン
     133 *        されていない場合は、ntoahl、ahtonl、nahcmpl を使用すること。
    146134 */
    147135
     
    179167
    180168/*
    181  *  注意: IPヘッダ以降は、4 バイト境界にアラインされている事を
    182  *        前提としているが、4 バイト境界でアクセスする
    183  *        プロセッサで、ネットワーク側のデータが、4 バイト境界にアライン
    184  *        されていない場合は、ntoahl、ahtonl、nahcmpl を使用すること。
     169 *  注意: IPヘッダ以降は、4 バイト境界にアラインされている事を
     170 *        前提としているが、4 バイト境界でアクセスする
     171 *        プロセッサで、ネットワーク側のデータが、4 バイト境界にアライン
     172 *        されていない場合は、ntoahl、ahtonl、nahcmpl を使用すること。
    185173 */
    186174
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_jsp.cfg

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/plain to text/plain;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4533
    4634/*
    47  *  JSP用 汎用ネットワークコンフィギュレーションファイル
     35 *  JSP用 汎用ネットワークコンフィギュレーションファイル
    4836 */
    4937
    5038
    5139/*
    52  *  å
    53 ±é€š 汎用ネットワークコンフィギュレーションファイルのインクルード
     40 *  共通 汎用ネットワークコンフィギュレーションファイルのインクルード
    5441 */
    5542
     
    5744
    5845/*
    59  * ネットワークバッファ
     46 * ネットワークバッファ
    6047 */
    6148
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_rename.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4836
    4937/*
    50  *  汎用ネットワークインタフェースå†
    51 éƒ¨åã®ãƒªãƒãƒ¼ãƒ 
     38 *  汎用ネットワークインタフェース内部名のリネーム
    5239 */
    5340
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_subr.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    7866
    7967/*
    80  *  ネットワーク汎用サポートルーチン
     68 *  ネットワーク汎用サポートルーチン
    8169 */
    8270
     
    10896
    10997/*
    110  *  変数
     98 *  変数
    11199 */
    112100
     
    114102
    115103/*
    116  *  net_rand -- 乱数を返す。
     104 *  net_rand -- 乱数を返す。
    117105 */
    118106
     
    125113
    126114/*
    127  *  srand -- 乱数を初期化する。
     115 *  srand -- 乱数を初期化する。
    128116 */
    129117
     
    138126
    139127/*
    140  *  convert_hexdigit -- 16進数→文字列変換
     128 *  convert_hexdigit -- 16進数→文字列変換
    141129 */
    142130
     
    166154
    167155/*
    168  *  mac2str -- MAC アドレスを文字列に変換する。
     156 *  mac2str -- MAC アドレスを文字列に変換する。
    169157 */
    170158
     
    206194
    207195/*
    208  *  rev_memcpy_hword -- 反転メモリコピー(2 バイト)
    209  *
    210  *    バイト単位にアクセスする事により、
    211  *    境界へのアラインの問題を解決する。
     196 *  rev_memcpy_hword -- 反転メモリコピー(2 バイト)
     197 *
     198 *    バイト単位にアクセスする事により、
     199 *    境界へのアラインの問題を解決する。
    212200 */
    213201
     
    220208
    221209/*
    222  *  rev_memcpy_word -- 反転メモリコピー(4 バイト)
    223  *
    224  *    バイト単位にアクセスする事により、
    225  *    境界へのアラインの問題を解決する。
     210 *  rev_memcpy_word -- 反転メモリコピー(4 バイト)
     211 *
     212 *    バイト単位にアクセスする事により、
     213 *    境界へのアラインの問題を解決する。
    226214 */
    227215
     
    236224
    237225/*
    238  *  rev_memcmp_word -- 反転メモリ比較(4 バイト)
    239  *
    240  *    バイト単位にアクセスする事により、
    241  *    境界へのアラインの問題を解決する。
     226 *  rev_memcmp_word -- 反転メモリ比較(4 バイト)
     227 *
     228 *    バイト単位にアクセスする事により、
     229 *    境界へのアラインの問題を解決する。
    242230 */
    243231
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_timer.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    112100
    113101/*
    114  *  変数
     102 *  変数
    115103 */
    116104
     
    118106
    119107/*
    120  *  呼出しエントリ登録
     108 *  呼出しエントリ登録
    121109 */
    122110
     
    126114        int_t ix;
    127115
    128         /* 呼出しエントリを獲得する */
     116        /* 呼出しエントリを獲得する */
    129117        syscall(wai_sem(SEM_CALL_OUT_LOCK));
    130118        for (ix = NUM_NET_CALLOUT; callout[-- ix].func != NULL; )
     
    135123                        }
    136124
    137         /* 呼出しエントリを設定する */
     125        /* 呼出しエントリを設定する */
    138126        callout[ix].func        = func;
    139127        callout[ix].arg         = arg;
     
    143131
    144132/*
    145  *  呼出しエントリ削除
     133 *  呼出しエントリ削除
    146134 */
    147135
     
    151139        int_t ix;
    152140
    153         /* エントリを探す */
     141        /* エントリを探す */
    154142        for (ix = NUM_NET_CALLOUT; ix -- > 0; ) {
    155143                syscall(wai_sem(SEM_CALL_OUT_LOCK));
     
    164152
    165153/*
    166  *  ネットワークタイマタスク
    167  *
    168  *    注意: タスクコンテキストで実行するå¿
    169 è¦ãŒã‚るため,
    170  *          周期ハンドラは使用できない。
     154 *  ネットワークタイマタスク
     155 *
     156 *    注意: タスクコンテキストで実行する必要があるため,
     157 *          周期ハンドラは使用できない。
    171158 */
    172159
     
    192179        syslog(LOG_NOTICE, "[NET/TIMER:%d] started.", tskid);
    193180
    194         /* IP を初期化する。*/
     181        /* IP を初期化する。*/
    195182
    196183#if defined(_IP6_CFG)
     
    204191#ifdef SUPPORT_TCP
    205192
    206         /* TCP 出力タスクを起動する */
     193        /* TCP 出力タスクを起動する */
    207194        syscall(act_tsk(TCP_OUTPUT_TASK));
    208195
     
    211198#if defined(SUPPORT_UDP) && defined(UDP_CFG_NON_BLOCKING)
    212199
    213         /* UDP 出力タスクを起動する */
     200        /* UDP 出力タスクを起動する */
    214201        syscall(act_tsk(UDP_OUTPUT_TASK));
    215202
     
    217204
    218205        while (true) {
    219                 /* タイムアウトしたエントリを呼出す。*/
     206                /* タイムアウトしたエントリを呼出す。*/
    220207                syscall(wai_sem(SEM_CALL_OUT_TIMEOUT));
    221208                for (ix = NUM_NET_CALLOUT; ix -- > 0; ) {
     
    235222
    236223/*
    237  *  ネットワークタイマハンドラ
    238  *
    239  *    NET_TIMER_CYCLE (100ms) 毎に呼出される。
     224 *  ネットワークタイマハンドラ
     225 *
     226 *    NET_TIMER_CYCLE (100ms) 毎に呼出される。
    240227 */
    241228
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_timer.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8068#define _NET_TIMER_H_
    8169
    82 #include <tinet_kernel_defs.h>  /* カーネルに関する互換性定義ファイルをインクルードする。*/
     70#include <tinet_kernel_defs.h>  /* カーネルに関する互換性定義ファイルをインクルードする。*/
    8371
    8472/*
    85  *  TOPPERS/JSP カーネル、システム時刻 (SYSTIM) の周波数
     73 *  TOPPERS/JSP カーネル、システム時刻 (SYSTIM) の周波数
    8674 */
    8775
     
    8977
    9078/*
    91  *  ネットワークタイマの定義
     79 *  ネットワークタイマの定義
    9280 */
    9381
    94 #define NET_TIMER_CYCLE         ULONG_C(100000) /* [us]、fast timeout 使用時の動作周期 */
    95                                                 /* タイマの周波数                        */
     82#define NET_TIMER_CYCLE         ULONG_C(100000) /* [us]、fast timeout 使用時の動作周期   */
     83                                                /* タイマの周波数                      */
    9684#define NET_TIMER_HZ            (SYSTIM_HZ/NET_TIMER_CYCLE)
    9785
    9886#ifdef _IP6_CFG
    99 #define NUM_NET_CALLOUT         12              /* タイムアウト呼出し数、10 以上   */
     87#define NUM_NET_CALLOUT         12              /* タイムアウト呼出し数、10 以上     */
    10088#else
    101 #define NUM_NET_CALLOUT         10              /* タイムアウト呼出し数、10 以上   */
     89#define NUM_NET_CALLOUT         10              /* タイムアウト呼出し数、10 以上     */
    10290#endif
    10391
    10492/*
    105  *  タイムアウト呼出しエントリ
     93 *  タイムアウト呼出しエントリ
    10694 */
    10795
     
    10997
    11098typedef struct t_net_callout {
    111         callout_func    func;           /* 呼出す関数              */
    112         void            *arg;           /* 関数への引数           */
    113         RELTIM          timeout;        /* タイムアウト           */
     99        callout_func    func;           /* 呼出す関数                */
     100        void            *arg;           /* 関数への引数               */
     101        RELTIM          timeout;        /* タイムアウト               */
    114102        } T_NET_CALLOUT;
    115103
    116104/*
    117  *  関数
     105 *  関数
    118106 */
    119107
     
    122110
    123111/*
    124  *  ネットワークタイマタスクと周期ハンドラ
     112 *  ネットワークタイマタスクと周期ハンドラ
    125113 */
    126114
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/net_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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8169
    8270/*
    83  *  関数
     71 *  関数
    8472 */
    8573
     
    8775
    8876/*
    89  *  関数
     77 *  関数
    9078 */
    9179
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8068
    8169/*
    82  *  PPP 処理タスクの本体
     70 *  PPP 処理タスクの本体
    8371 */
    8472
     
    112100
    113101/*
    114  *  å
    115 ¨åŸŸå¤‰æ•°
    116  */
    117 
    118 uint8_t ppp_phase = PPP_PHASE_INITIALIZE;       /* リンクの状æ
    119 ‹               */
    120 
    121 /*
    122  *  プロトコル表
     102 *  全域変数
     103 */
     104
     105uint8_t ppp_phase = PPP_PHASE_INITIALIZE;       /* リンクの状態               */
     106
     107/*
     108 *  プロトコル表
    123109 */
    124110
     
    150136
    151137/*
    152  *  変数
     138 *  変数
    153139 */
    154140
     
    160146
    161147/*
    162  *  関数
     148 *  関数
    163149 */
    164150
     
    172158
    173159/*
    174  *  PPP å
    175 ¥åŠ›ã®è§£æž
     160 *  PPP 入力の解析
    176161 */
    177162
     
    186171        NET_COUNT_PPP(net_count_ppp.in_packets, 1);
    187172
    188         /* フレーム長をチェックする */
    189         if (input->len < sizeof(T_PPP_HDR)) {   /* FreeBSD では PPP_HDRLEN は 4 */
     173        /* フレーム長をチェックする */
     174        if (input->len < sizeof(T_PPP_HDR)) {   /* FreeBSD では PPP_HDRLEN は 4 */
    190175                syslog(LOG_NOTICE, "[PPP] recv short frame.");
    191176                goto buf_rel;
     
    194179        proto = ntohs(*GET_PPP_HDR(input));
    195180
    196         /* プロトコルが LCP 以外で、LCP がオープンされていなければエラー */
     181        /* プロトコルが LCP 以外で、LCP がオープンされていなければエラー */
    197182        if (proto != PPP_LCP && lcp_fsm.state != PPP_FSM_OPENED) {
    198183                syslog(LOG_NOTICE, "[PPP] LCP not open.");
     
    200185                }
    201186
    202         /* リンクが認証状æ
    203 ‹ä»¥å‰ã¯ã€LCP、LQR、PAP、CHAP のみ受け付ける */
     187        /* リンクが認証状態以前は、LCP、LQR、PAP、CHAP のみ受け付ける */
    204188        if (ppp_phase <= PPP_PHASE_AUTHENTICATE &&
    205189            !(proto == PPP_LCP || proto == PPP_LQR ||
     
    209193                }
    210194
    211         /* 上位プロトコルのå
    212 ¥åŠ›é–¢æ•°ã‚’呼出す */
     195        /* 上位プロトコルの入力関数を呼出す */
    213196        for (ix = 0; (entry = protocols[ix]) != NULL; ix ++) {
    214197                if (entry->proto == proto && entry->input != NULL) {
     
    232215
    233216/*
    234  *  ppp_output -- PPP インタフェースの出力関数
     217 *  ppp_output -- PPP インタフェースの出力関数
    235218 */
    236219
     
    242225#ifdef PPP_CFG_MODEM
    243226
    244 #if 0   /* 保留 */
    245         /* モデムの接続完了までå¾
    246 ã¤ã€‚*/
     227#if 0   /* 保留 */
     228        /* モデムの接続完了まで待つ。*/
    247229        if ((error = wait_modem()) != E_OK)
    248230                goto buf_ret;
     
    252234
    253235#ifdef _IP6_CFG
    254         /* IPV6CP の接続完了までå¾
    255 ã¤ã€‚*/
     236        /* IPV6CP の接続完了まで待つ。*/
    256237        if ((error = wait_ipv6cp()) != E_OK)
    257238                goto buf_ret;
     
    259240
    260241#ifdef _IP4_CFG
    261         /* IPCP の接続完了までå¾
    262 ã¤ã€‚*/
     242        /* IPCP の接続完了まで待つ。*/
    263243        if ((error = wait_ipcp()) != E_OK)
    264244                goto buf_ret;
     
    266246
    267247#ifdef _IP4_CFG
    268         /* IPCP の接続完了までå¾
    269 ã¤ã€‚*/
     248        /* IPCP の接続完了まで待つ。*/
    270249        if ((error = wait_ipcp()) != E_OK)
    271250                goto buf_ret;
     
    281260#endif  /* of #ifdef PPP_IDLE_TIMEOUT */
    282261
    283         /* PPP 出力キューに投å
    284 ¥ã™ã‚‹ã€‚*/
     262        /* PPP 出力キューに投入する。*/
    285263        if ((error = tsnd_dtq(DTQ_PPP_OUTPUT, output, tmout)) != E_OK)
    286264                goto buf_ret;
     
    304282
    305283/*
    306  *  ppp_cp_output -- CP フレームの送信
     284 *  ppp_cp_output -- CP フレームの送信
    307285 */
    308286
     
    312290        T_PPP_CP_HDR    *cph;
    313291
    314         /* CP ヘッダを設定する */
     292        /* CP ヘッダを設定する */
    315293        cph = GET_PPP_CP_HDR(output);
    316294        cph->code = code;
     
    318296        cph->len  = htons(output->len - sizeof(T_PPP_HDR));
    319297
    320         /* PPP 出力キューに投å
    321 ¥ã™ã‚‹ã€‚*/
     298        /* PPP 出力キューに投入する。*/
    322299        if (snd_dtq(DTQ_PPP_OUTPUT, output) != E_OK) {
    323300                syscall(rel_net_buf(output));
     
    327304
    328305/*
    329  *  PPP å
    330 ¥åŠ›ã‚¿ã‚¹ã‚¯
     306 *  PPP 入力タスク
    331307 */
    332308
     
    340316        uint8_t         rcount = 0;
    341317
    342         /* ポートを初期設定する */
     318        /* ポートを初期設定する */
    343319        syscall(serial_opn_por(HDLC_PORTID));
    344320        syscall(serial_ctl_por(HDLC_PORTID, IOCTL_FCSND | IOCTL_FCRCV));
     
    357333#endif  /* of #ifdef PPP_CFG_MODEM */
    358334
    359         /* ネットワークタイマタスクを起動する */
     335        /* ネットワークタイマタスクを起動する */
    360336        syscall(act_tsk(NET_TIMER_TASK));
    361337
    362         /* 上位プロトコルを初期化する */
     338        /* 上位プロトコルを初期化する */
    363339        for (ix = 0; (proto = protocols[ix]) != NULL; ix ++)
    364340                if (proto->init != NULL)
     
    368344        lcp_open(PPP_OPEN_PASSIVE);
    369345
    370         /* PPP 出力タスクを起動する */
     346        /* PPP 出力タスクを起動する */
    371347        syscall(act_tsk(PPP_OUTPUT_TASK));
    372348
    373         /* 乱数生成を初期化する。*/
     349        /* 乱数生成を初期化する。*/
    374350        net_srand(0);
    375351
     
    380356                        if (input->len > 0) {
    381357
    382                                 /* 乱数生成を初期化する。*/
     358                                /* 乱数生成を初期化する。*/
    383359                                if (rcount == 0)
    384360                                        net_srand(input->len);
     
    422398
    423399/*
    424  *  PPP 出力タスク
     400 *  PPP 出力タスク
    425401 */
    426402
     
    447423
    448424/*
    449  *  アイドルタイムアウト処理
     425 *  アイドルタイムアウト処理
    450426 */
    451427
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp.cfg

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/plain to text/plain;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4533
    4634/*
    47  *  PPP コンフィギュレーションファイル
     35 *  PPP コンフィギュレーションファイル
    4836 */
    4937
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8371
    8472/*
    85  *  PPP ヘッダのプロトコルフィールドの値
     73 *  PPP ヘッダのプロトコルフィールドの値
    8674 */
    8775
     
    10189
    10290/*
    103  *  リンクの状æ
    104 ‹
     91 *  リンクの状態
    10592 */
    10693
     
    116103
    117104/*
    118  *  PPP リンク制御 (CP) ヘッダ構造体
     105 *  PPP リンク制御 (CP) ヘッダ構造体
    119106 */
    120107
    121108typedef struct t_ppp_cp_hdr {
    122         uint8_t         code;           /* 制御コード      */
    123         uint8_t         id;             /* 識別子    */
    124         uint16_t        len;            /* 長さ               */
     109        uint8_t         code;           /* 制御コード        */
     110        uint8_t         id;             /* 識別子  */
     111        uint16_t        len;            /* 長さ           */
    125112        } __attribute__((packed, aligned(2)))T_PPP_CP_HDR;
    126113
     
    128115
    129116/*
    130  *  PPP リンク制御 (CP) の制御コード
     117 *  PPP リンク制御 (CP) の制御コード
    131118 */
    132119
     
    141128
    142129/*
    143  * 構成æƒ
    144 å ± (CI) ヘッダ
     130 * 構成情報 (CI) ヘッダ
    145131 */
    146132
    147133typedef struct t_ppp_ci_hdr {
    148         uint8_t         type;           /* CI の型    */
    149         uint8_t         len;            /* 長さ               */
     134        uint8_t         type;           /* CI の型        */
     135        uint8_t         len;            /* 長さ           */
    150136        } __attribute__((packed, aligned(2)))T_PPP_CI_HDR;
    151137
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_auth.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    124112
    125113/*
    126  *  定数
     114 *  定数
    127115 */
    128116
     
    133121
    134122/*
    135  *  network_phase -- コネクション確立
     123 *  network_phase -- コネクション確立
    136124 */
    137125
     
    144132        ppp_phase = PPP_PHASE_NETWORK;
    145133
    146         /* 上位プロトコルをオープンする */
     134        /* 上位プロトコルをオープンする */
    147135        num = 0;
    148136        for (ix = 0; (proto = protocols[ix]) != NULL; ix ++)
    149 #if 0   /* 保留、削除禁止 */
     137#if 0   /* 保留、削除禁止 */
    150138                if (proto->proto < 0xc000 && proto->open != NULL) {
    151139#else   /* of #if 0 */
     
    158146
    159147        if (num == 0)
    160                 /* 上位プロトコルがない */
     148                /* 上位プロトコルがない */
    161149                lcp_close();
    162150        else
     
    165153
    166154/*
    167  *  link_required -- リンクを開設する。
     155 *  link_required -- リンクを開設する。
    168156 */
    169157
     
    174162
    175163/*
    176  *  link_terminated -- ログアウトして、リンクを切断する。
     164 *  link_terminated -- ログアウトして、リンクを切断する。
    177165 */
    178166
     
    186174
    187175/*
    188  *  link_down -- リンクを解放する。
     176 *  link_down -- リンクを解放する。
    189177 */
    190178
     
    195183        T_PPP_PROTENT   *proto;
    196184
    197         /* 上位プロトコルを解放する */
     185        /* 上位プロトコルを解放する */
    198186        for (ix = 0; (proto = protocols[ix]) != NULL; ix ++) {
    199187                if (proto->proto != PPP_LCP && proto->lowerdown != NULL)
     
    208196
    209197/*
    210  *  link_established -- リンクの接続が確立した。
     198 *  link_established -- リンクの接続が確立した。
    211199 */
    212200
     
    223211#endif  /* of #if defined(LCP_CFG_CHAP) || defined(LCP_CFG_PAP) */
    224212
    225         /* 上位プロトコルを起動する */
     213        /* 上位プロトコルを起動する */
    226214        for (ix = 0; (proto = protocols[ix]) != NULL; ix ++)
    227215                if (proto->lowerup != NULL)
    228216                        (*proto->lowerup)();
    229217
    230         /* 認証オプションを確認する。【未実è£
    231 ã€‘*/
     218        /* 認証オプションを確認する。【未実装】*/
    232219
    233220        ppp_phase = PPP_PHASE_AUTHENTICATE;
     
    284271
    285272/*
    286  *  auth_reset -- 認証オプションを再確認する。
     273 *  auth_reset -- 認証オプションを再確認する。
    287274 */
    288275
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_auth.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    7260
    7361/*
    74  *  関数
     62 *  関数
    7563 */
    7664
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_ccp.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    9785
    9886/*
    99  *  実è£
    100 äºˆå®šã€ç¾åœ¨ã¯ã™ã¹ã¦æ‹’否
     87 *  実装予定、現在はすべて拒否
    10188 */
    10289
     
    113100
    114101/*
    115  *  関数
     102 *  関数
    116103 */
    117104
     
    125112
    126113/*
    127  * FSM から呼出されるコールバック関
     114 * FSM から呼出されるコールバック関
    128115 */
    129116
    130117static int_t  ccp_reqci (T_PPP_FSM *fsm, T_NET_BUF *nbuf);
    131                                         /* 相手の構成æƒ
    132 å ±ã‚’確認する。   */
    133 
    134 /*
    135  *  å
    136 ¨åŸŸå¤‰æ•°
     118                                        /* 相手の構成情報を確認する。        */
     119
     120/*
     121 *  全域変数
    137122 */
    138123
    139124T_PPP_FSM_CALLBACKS ccp_callbacks = {
    140         NULL,                           /* 自構成æƒ
    141 å ±ã‚’リセットする。     */
    142         NULL,                           /* 構成æƒ
    143 å ±ã®é•·ã•ã‚’返す。                */
    144         NULL,                           /* 自構成æƒ
    145 å ±ã‚’追加する。           */
    146         NULL,                           /* ACK を受信したときの処理   */
    147         NULL,                           /* NAK を受信したときの処理   */
    148         NULL,                           /* REJ を受信したときの処理   */
    149         ccp_reqci,                      /* 相手の構成æƒ
    150 å ±ã‚’確認する。   */
    151         NULL,                           /* リンク接続を確立する。            */
    152         NULL,                           /* リンク接続を解放する。            */
    153         NULL,                           /* 下位層を開始する。          */
    154         NULL,                           /* 下位層を終了する。          */
    155         NULL,                           /* 再送する。                      */
    156         NULL,                           /* 不明な CP を受信したときの処理  */
     125        NULL,                           /* 自構成情報をリセットする。        */
     126        NULL,                           /* 構成情報の長さを返す。          */
     127        NULL,                           /* 自構成情報を追加する。          */
     128        NULL,                           /* ACK を受信したときの処理       */
     129        NULL,                           /* NAK を受信したときの処理       */
     130        NULL,                           /* REJ を受信したときの処理       */
     131        ccp_reqci,                      /* 相手の構成情報を確認する。        */
     132        NULL,                           /* リンク接続を確立する。          */
     133        NULL,                           /* リンク接続を解放する。          */
     134        NULL,                           /* 下位層を開始する。            */
     135        NULL,                           /* 下位層を終了する。            */
     136        NULL,                           /* 再送する。                        */
     137        NULL,                           /* 不明な CP を受信したときの処理    */
    157138        };
    158139
    159140T_PPP_FSM ccp_fsm = {
    160         &ccp_callbacks,                 /* コールバック関数             */
    161         PPP_CCP,                        /* プロトコル                      */
     141        &ccp_callbacks,                 /* コールバック関数             */
     142        PPP_CCP,                        /* プロトコル                        */
    162143        };
    163144
    164145T_PPP_PROTENT ccp_protent = {
    165146        PPP_CCP,
    166         ccp_init,                       /* 初期化                    */
    167         ccp_input,                      /* å
    168 ¥åŠ›                            */
    169         ccp_protrej,                    /* Proto-REJ 受信処理               */
    170         ccp_lowerup,                    /* 下位層を起動する             */
    171         ccp_lowerdown,                  /* 下位層を停止する             */
    172         ccp_open,                       /* オープンする                   */
    173         ccp_close,                      /* クローズする                   */
    174         NULL,                           /* データå
    175 ¥åŠ›                    */
     147        ccp_init,                       /* 初期化                  */
     148        ccp_input,                      /* 入力                           */
     149        ccp_protrej,                    /* Proto-REJ 受信処理               */
     150        ccp_lowerup,                    /* 下位層を起動する             */
     151        ccp_lowerdown,                  /* 下位層を停止する             */
     152        ccp_open,                       /* オープンする                       */
     153        ccp_close,                      /* クローズする                       */
     154        NULL,                           /* データ入力                        */
    176155        };
    177156
    178157/*
    179  *  ccp_init -- CCP モジュールの初期化
     158 *  ccp_init -- CCP モジュールの初期化
    180159 */
    181160
     
    187166
    188167/*
    189  *  ccp_input -- CCP å
    190 ¥åŠ›
     168 *  ccp_input -- CCP 入力
    191169 */
    192170
     
    200178
    201179/*
    202  *  ccp_reqci -- 相手の構成æƒ
    203 å ±ã‚’解析する。
     180 *  ccp_reqci -- 相手の構成情報を解析する。
    204181 */
    205182
     
    208185{
    209186/*
    210  *  実è£
    211 äºˆå®šã€ç¾åœ¨ã¯ã™ã¹ã¦ã®ã‚ªãƒ—ションを拒否する。
     187 *  実装予定、現在はすべてのオプションを拒否する。
    212188 */
    213189        return nbuf->len > (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)) ? PPP_CONFREJ : PPP_CONFACK;
     
    215191
    216192/*
    217  *  ccp_protrej -- Proto-REJ を受信したときの処理
     193 *  ccp_protrej -- Proto-REJ を受信したときの処理
    218194 */
    219195
     
    225201
    226202/*
    227  *  ccp_lowerup -- CCP 下位層を起動する。
     203 *  ccp_lowerup -- CCP 下位層を起動する。
    228204 */
    229205
     
    235211
    236212/*
    237  *  ccp_lowerdown -- CCP 下位層を停止する。
     213 *  ccp_lowerdown -- CCP 下位層を停止する。
    238214 */
    239215
     
    245221
    246222/*
    247  *  ccp_open -- CCP のオープ
     223 *  ccp_open -- CCP のオープ
    248224 */
    249225
     
    255231
    256232/*
    257  *  ccp_close -- CCP のクローズ
     233 *  ccp_close -- CCP のクローズ
    258234 */
    259235
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_ccp.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    10189
    10290/*
    103  *  変数
     91 *  変数
    10492 */
    10593
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_fsm.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    112100
    113101/*
    114  *  å
    115 ¨åŸŸå¤‰æ•°
    116  */
    117 
    118 uint8_t ppp_open_mode = PPP_OPEN_PASSIVE;       /* オープン時の動作モード    */
    119 
    120 /*
    121  *  関数
     102 *  全域変数
     103 */
     104
     105uint8_t ppp_open_mode = PPP_OPEN_PASSIVE;       /* オープン時の動作モード  */
     106
     107/*
     108 *  関数
    122109 */
    123110
     
    133120
    134121/*
    135  *  fsm_sconfreq -- Configure-Request を送信する。
     122 *  fsm_sconfreq -- Configure-Request を送信する。
    136123 */
    137124
     
    145132              fsm->state == PPP_FSM_ACKRCVD ||
    146133              fsm->state == PPP_FSM_ACKSENT)) {
    147                 /* まだネゴをしていない。オプションをリセットする。 */
     134                /* まだネゴをしていない。オプションをリセットする。 */
    148135                if (fsm->callbacks->resetci)
    149136                        (*fsm->callbacks->resetci)(fsm);
     
    151138                }
    152139        if (retransmit == 0) {
    153                 /* 新しいリクエスト。再送カウンタをリセットし、新しい ID を設定する。 */
     140                /* 新しいリクエスト。再送カウンタをリセットし、新しい ID を設定する。 */
    154141                fsm->retrans = MAX_PPP_CONFIGURES;
    155142                fsm->reqid   = ++ fsm->id;
     
    159146
    160147        if (fsm->callbacks->cilen && fsm->callbacks->addci) {
    161                 /* 構成æƒ
    162 å ±ãƒ‘ケットを作る。 */
     148                /* 構成情報パケットを作る。 */
    163149                len = (*fsm->callbacks->cilen)(fsm);
    164150
     
    166152                (*fsm->callbacks->addci)(fsm, output);
    167153
    168                 /* 構成æƒ
    169 å ±ãƒ‘ケットを送信する。 */
     154                /* 構成情報パケットを送信する。 */
    170155                IF_SET_PROTO(output, fsm->proto);
    171156                ppp_cp_output(PPP_CONFREQ, fsm->reqid, output);
     
    177162
    178163/*
    179  *  fsm_rconfreq -- Configure-Request を受信したときの処理
     164 *  fsm_rconfreq -- Configure-Request を受信したときの処理
    180165 */
    181166
     
    200185
    201186        case PPP_FSM_OPENED:
    202                 /* 上位層を停止して、ネゴに移る。 */
     187                /* 上位層を停止して、ネゴに移る。 */
    203188                if (fsm->callbacks->down != NULL)
    204189                        (*fsm->callbacks->down)(fsm);
    205                 fsm_sconfreq(fsm, 0);           /* 最初の Configure-Request を送る。 */
     190                fsm_sconfreq(fsm, 0);           /* 最初の Configure-Request を送る。 */
    206191                break;
    207192
    208193        case PPP_FSM_STOPPED:
    209                 /* 相手からネゴが開始された */
    210                 fsm_sconfreq(fsm, 0);           /* 最初の Configure-Request を送る。 */
     194                /* 相手からネゴが開始された */
     195                fsm_sconfreq(fsm, 0);           /* 最初の Configure-Request を送る。 */
    211196                fsm->state = PPP_FSM_REQSENT;
    212197                break;
     
    216201        syscall(get_net_buf(&output, input->len));
    217202
    218         /* 上位プロトコルに要求された Configure-Request を送る。 */
    219         if (fsm->callbacks->reqci != NULL)      /* 構成æƒ
    220 å ±ã‚’チェックする。 */
     203        /* 上位プロトコルに要求された Configure-Request を送る。 */
     204        if (fsm->callbacks->reqci != NULL)      /* 構成情報をチェックする。 */
    221205                code = (*fsm->callbacks->reqci)(fsm, input, output);
    222206        else if (output->len > sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR))
     
    225209                code = PPP_CONFACK;
    226210
    227         /* 相手に ACK, NAK または REJ を送信する。 */
     211        /* 相手に ACK, NAK または REJ を送信する。 */
    228212        ppp_cp_output(code, id, output);
    229213
     
    240224                }
    241225        else {
    242                 /* ACK か REJ を送る */
     226                /* ACK か REJ を送る */
    243227                if (fsm->state != PPP_FSM_ACKRCVD)
    244228                        fsm->state = PPP_FSM_REQSENT;
     
    249233
    250234/*
    251  *  fsm_rconfnakrej -- Configure-NAK/REJ を受信したときの処理
     235 *  fsm_rconfnakrej -- Configure-NAK/REJ を受信したときの処理
    252236 */
    253237
     
    258242        T_NET_BUF       *output;
    259243
    260         /* 予期した ID でないか、NAK/REJ を予期していないときは終了する。*/
     244        /* 予期した ID でないか、NAK/REJ を予期していないときは終了する。*/
    261245        if (id != fsm->reqid || fsm->seen_ack) {
    262246                syslog(LOG_WARNING, "[PPP/FSM] bad ID or unexp NAK/REJ.");
     
    291275        case PPP_FSM_ACKSENT:
    292276                untimeout((FP)fsm_timeout, fsm);
    293                 if (ret < 0)            /* 送信した Conf-Req が破損し空の NAK/REJ が届いた。*/
     277                if (ret < 0)            /* 送信した Conf-Req が破損し空の NAK/REJ が届いた。*/
    294278                        fsm->state = PPP_FSM_STOPPED;
    295279                else
     
    304288
    305289        case PPP_FSM_OPENED:
    306                 /* 再起動し、ネゴをやり直す。*/
     290                /* 再起動し、ネゴをやり直す。*/
    307291                if (fsm->callbacks->down != NULL)
    308292                        (*fsm->callbacks->down)(fsm);
     
    314298
    315299/*
    316  *  fsm_rconfack -- Configure-ACK を受信したときの処理
     300 *  fsm_rconfack -- Configure-ACK を受信したときの処理
    317301 */
    318302
     
    322306        T_NET_BUF       *output;
    323307
    324         /* 予期した ID でないか、ACK を予期していないときは終了する。*/
     308        /* 予期した ID でないか、ACK を予期していないときは終了する。*/
    325309        if (id != fsm->reqid || fsm->seen_ack) {
    326310                syslog(LOG_WARNING, "[PPP/FSM] bad ID or unexp ACK.");
     
    369353
    370354        case PPP_FSM_OPENED:
    371                 /* 再起動し、ネゴをやり直す。*/
     355                /* 再起動し、ネゴをやり直す。*/
    372356                if (fsm->callbacks->down != NULL)
    373357                        (*fsm->callbacks->down)(fsm);
     
    384368
    385369/*
    386  *  fsm_rtermreq -- Terminate-Request を受信したときの処理
     370 *  fsm_rtermreq -- Terminate-Request を受信したときの処理
    387371 */
    388372
     
    412396
    413397/*
    414  *  fsm_rtermack -- Terminate-ACK を受信したときの処理
     398 *  fsm_rtermack -- Terminate-ACK を受信したときの処理
    415399 */
    416400
     
    421405        case PPP_FSM_CLOSING:
    422406                untimeout((FP)fsm_timeout, fsm);
    423 #if 0   /* 本来の動作は CLOSED に遷移する。*/
     407#if 0   /* 本来の動作は CLOSED に遷移する。*/
    424408                fsm->state = PPP_FSM_CLOSED;
    425409#else   /* of #if 0 */
     
    450434
    451435/*
    452  *  fsm_rcoderej -- Code-REJ を受信したときの処理
     436 *  fsm_rcoderej -- Code-REJ を受信したときの処理
    453437 */
    454438
     
    458442        T_PPP_CP_HDR    *hdr;
    459443
    460         /* PPP リンク制御 (CP) ヘッダより短ければエラー */
     444        /* PPP リンク制御 (CP) ヘッダより短ければエラー */
    461445        if (input->len < sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)) {
    462446                syslog(LOG_WARNING, "[PPP/FSM] bad len: %d in recv Code-REJ.", input->len);
     
    473457
    474458/*
    475  *  fsm_timeout -- タイムアウト処理
     459 *  fsm_timeout -- タイムアウト処理
    476460 */
    477461
     
    485469        case PPP_FSM_STOPPING:
    486470                if (fsm->retrans <= 0) {
    487                         /* 最大再送回数をè¶
    488 ãˆãŸã¨ãã®å‡¦ç† */
    489 #if 0   /* 本来の動作は CLOSED に遷移する。*/
     471                        /* 最大再送回数を超えたときの処理 */
     472#if 0   /* 本来の動作は CLOSED に遷移する。*/
    490473                        fsm->state = (fsm->state == PPP_FSM_CLOSING) ? PPP_FSM_CLOSED : PPP_FSM_STOPPED;
    491474#else   /* of #if 0 */
     
    496479                        }
    497480                else {
    498                         /* Terminate-Request を送信する。*/
     481                        /* Terminate-Request を送信する。*/
    499482                        fsm_stermreq(fsm, ++ fsm->id);
    500483                        }
     
    504487        case PPP_FSM_ACKSENT:
    505488                if (fsm->retrans <= 0) {
    506                         /* 最大再送回数をè¶
    507 ãˆãŸã¨ãã®å‡¦ç† */
     489                        /* 最大再送回数を超えたときの処理 */
    508490                        syslog(LOG_WARNING, "[PPP/FSM] retrans Conf-Req.");
    509491                        fsm->state = PPP_FSM_STOPPED;
     
    512494                        }
    513495                else {
    514                         /* Configure-Request を再送する。*/
     496                        /* Configure-Request を再送する。*/
    515497                        if (fsm->callbacks->retrans != NULL)
    516498                                (*fsm->callbacks->retrans)(fsm);
     
    529511
    530512/*
    531  *  fsm_stermreq -- Terminate-Request を送信する。
     513 *  fsm_stermreq -- Terminate-Request を送信する。
    532514 */
    533515
     
    546528
    547529/*
    548  *  fsm_init -- FSM モジュールの初期化
     530 *  fsm_init -- FSM モジュールの初期化
    549531 */
    550532
     
    557539
    558540/*
    559  *  fsm_lowerup -- FSM 下位層を起動する。
     541 *  fsm_lowerup -- FSM 下位層を起動する。
    560542 */
    561543
     
    584566
    585567/*
    586  *  fsm_lowerdown -- FSM 下位層を停止する。
     568 *  fsm_lowerdown -- FSM 下位層を停止する。
    587569 */
    588570
     
    627609
    628610/*
    629  *  fsm_open -- FSM のオープン
     611 *  fsm_open -- FSM のオープン
    630612 */
    631613
     
    651633        case PPP_FSM_CLOSING:
    652634                fsm->state = PPP_FSM_STOPPING;
    653                 /* nobreak;     ä¸‹ã«è½ã¡ã‚‹ */
     635                /* nobreak;     下に落ちる */
    654636
    655637        case PPP_FSM_STOPPED:
     
    662644
    663645/*
    664  *  fsm_close -- リンクの切断を開始する。
     646 *  fsm_close -- リンクの切断を開始する。
    665647 */
    666648
     
    673655                break;
    674656
    675 #if 0   /* 本来の動作は CLOSED に遷移する。*/
     657#if 0   /* 本来の動作は CLOSED に遷移する。*/
    676658        case PPP_FSM_STOPPED:
    677659                fsm->state = PPP_FSM_CLOSED;
     
    692674                        (*fsm->callbacks->down)(fsm);
    693675
    694                 /* タイムアウトを設定し、Terminate-Request を送信する。*/
     676                /* タイムアウトを設定し、Terminate-Request を送信する。*/
    695677                fsm->retrans = MAX_PPP_TERMINATES;
    696678                fsm_stermreq(fsm, fsm->reqid = ++ fsm->id);
     
    701683
    702684/*
    703  *  fsm_input -- å
    704 ¥åŠ›ã€PPP リンク制御 (CP) の制御コードにより適当な関数を呼出す
     685 *  fsm_input -- 入力、PPP リンク制御 (CP) の制御コードにより適当な関数を呼出す
    705686 */
    706687
     
    711692        T_NET_BUF       *output;
    712693
    713         /* PPP リンク制御 (CP) ヘッダより短ければエラー */
     694        /* PPP リンク制御 (CP) ヘッダより短ければエラー */
    714695        if (input->len < (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR))) {
    715696                syslog(LOG_WARNING, "[PPP/FSM] short hdr: %d.", input->len);
     
    719700        hdr = GET_PPP_CP_HDR(input);
    720701
    721         /* ヘッダの長さとå
    722 ¥åŠ›ãƒ‡ãƒ¼ã‚¿ã‚µã‚¤ã‚ºãŒä¸€è‡´ã—なければエラー */
     702        /* ヘッダの長さと入力データサイズが一致しなければエラー */
    723703        if (hdr->len != input->len - sizeof(T_PPP_HDR)) {
    724704                syslog(LOG_WARNING, "[PPP/FSM] bad len: %d.", hdr->len);
     
    726706                }
    727707 
    728         /* 状æ
    729 ‹ãŒ INITIAL か STARTING ならエラー */
     708        /* 状態が INITIAL か STARTING ならエラー */
    730709        if (fsm->state == PPP_FSM_INITIAL || fsm->state == PPP_FSM_STARTING) {
    731710                syslog(LOG_WARNING, "[PPP/FSM] unexp state: %d in input.", fsm->state);
     
    734713 
    735714        /*
    736          *  制御コードにより適当な関数を呼出す
     715         *  制御コードにより適当な関数を呼出す
    737716         */
    738717
     
    775754
    776755/*
    777  *  fsm_protoreject -- Proto-REJ を受信したときの処理
     756 *  fsm_protoreject -- Proto-REJ を受信したときの処理
    778757 */
    779758
     
    785764                untimeout((FP)fsm_timeout, fsm);
    786765
    787 #if 0   /* 本来の動作は CLOSED に遷移する。*/
    788                 /* 下に落ちる */
     766#if 0   /* 本来の動作は CLOSED に遷移する。*/
     767                /* 下に落ちる */
    789768#else   /* of #if 0 */
    790769                fsm->state = PPP_FSM_STOPPED;
     
    805784        case PPP_FSM_ACKSENT:
    806785                untimeout((FP)fsm_timeout, fsm);
    807                 /* 下に落ちる */
     786                /* 下に落ちる */
    808787
    809788        case PPP_FSM_STOPPED:
     
    817796                        (*fsm->callbacks->down)(fsm);
    818797
    819                 /* タイムアウトを設定し、Terminate-Request を送信する。*/
     798                /* タイムアウトを設定し、Terminate-Request を送信する。*/
    820799                fsm->retrans = MAX_PPP_TERMINATES;
    821800                fsm_stermreq(fsm, fsm->reqid = ++ fsm->id);
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_fsm.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    9381
    9482/*
    95  *  状æ
    96 ‹ç®¡ç†æ§‹é€ ä½“
     83 *  状態管理構造体
    9784 */
    9885
     
    10087
    10188typedef struct t_fsm {
    102         struct t_ppp_fsm_callbacks      *callbacks;     /* コールバック関数*/
    103         uint16_t        proto;          /* プロトコル                              */
    104         uint8_t         state;          /* FSM の状æ
    105 ‹                               */
    106         uint8_t         id;             /* 現在の ID                         */
    107         uint8_t         reqid;          /* 要求 ID                            */
    108         uint8_t         seen_ack;       /* 要求に対し正常な ACK/NAK/REJ を受信       */
    109         int8_t          failures;       /* 黙認した NAK 数                 */
    110         int8_t          retrans;        /* Configure-Request または、               */
    111                                         /* Terminate-Request の再送回数            */
     89        struct t_ppp_fsm_callbacks      *callbacks;     /* コールバック関数*/
     90        uint16_t        proto;          /* プロトコル                                */
     91        uint8_t         state;          /* FSM の状態                              */
     92        uint8_t         id;             /* 現在の ID                               */
     93        uint8_t         reqid;          /* 要求 ID                                */
     94        uint8_t         seen_ack;       /* 要求に対し正常な ACK/NAK/REJ を受信     */
     95        int8_t          failures;       /* 黙認した NAK 数                   */
     96        int8_t          retrans;        /* Configure-Request または、               */
     97                                        /* Terminate-Request の再送回数              */
    11298        } T_PPP_FSM;
    11399
     
    115101
    116102/*
    117  *  コールバック関数構造体
     103 *  コールバック関数構造体
    118104 */
    119105
    120106typedef struct t_ppp_fsm_callbacks {
    121         void (*resetci) (T_PPP_FSM *);  /* 自構成æƒ
    122 å ±ã‚’リセットする。     */
    123         int_t  (*cilen) (T_PPP_FSM *);  /* 構成æƒ
    124 å ±ã®é•·ã•ã‚’返す。                */
     107        void (*resetci) (T_PPP_FSM *);  /* 自構成情報をリセットする。        */
     108        int_t  (*cilen) (T_PPP_FSM *);  /* 構成情報の長さを返す。          */
    125109        void (*addci)   (T_PPP_FSM *, T_NET_BUF *);
    126                                         /* 自構成æƒ
    127 å ±ã‚’追加する。           */
     110                                        /* 自構成情報を追加する。          */
    128111        bool_t (*ackci) (T_PPP_FSM *, T_NET_BUF *);
    129                                         /* ACK を受信したときの処理   */
     112                                        /* ACK を受信したときの処理       */
    130113        int_t  (*nakci) (T_PPP_FSM *, T_NET_BUF *);
    131                                         /* NAK を受信したときの処理   */
     114                                        /* NAK を受信したときの処理       */
    132115        int_t  (*rejci) (T_PPP_FSM *, T_NET_BUF *);
    133                                         /* REJ を受信したときの処理   */
     116                                        /* REJ を受信したときの処理       */
    134117        int_t  (*reqci) (T_PPP_FSM *, T_NET_BUF *, T_NET_BUF *);
    135                                         /* 相手の構成æƒ
    136 å ±ã‚’確認する。   */
    137         void (*up)      (T_PPP_FSM *);  /* リンクの接続を確立する。 */
    138         void (*down)    (T_PPP_FSM *);  /* リンクの接続を解放する。 */
    139         void (*starting)(T_PPP_FSM *);  /* 下位層を開始する。          */
    140         void (*finished)(T_PPP_FSM *);  /* 下位層を終了する。          */
    141         void (*retrans) (T_PPP_FSM *);  /* 再送する。                      */
    142                                         /* 不明な CP を受信したときの処理  */
     118                                        /* 相手の構成情報を確認する。        */
     119        void (*up)      (T_PPP_FSM *);  /* リンクの接続を確立する。 */
     120        void (*down)    (T_PPP_FSM *);  /* リンクの接続を解放する。 */
     121        void (*starting)(T_PPP_FSM *);  /* 下位層を開始する。            */
     122        void (*finished)(T_PPP_FSM *);  /* 下位層を終了する。            */
     123        void (*retrans) (T_PPP_FSM *);  /* 再送する。                        */
     124                                        /* 不明な CP を受信したときの処理    */
    143125        bool_t  (*extcode)(T_PPP_FSM *, uint8_t, uint8_t, T_NET_BUF *);
    144126        } T_PPP_FSM_CALLBACKS;
    145127
    146128/*
    147  *  FSM の状æ
    148 ‹
     129 *  FSM の状態
    149130 */
    150131
    151 #define PPP_FSM_INITIAL         0       /* 未接続、未オープン  */
    152 #define PPP_FSM_STARTING        1       /* 未接続、オープン     */
    153 #define PPP_FSM_CLOSED          2       /* 接続、  未オープン   */
    154 #define PPP_FSM_STOPPED         3       /* オープン、切断å¾
    155 ã¡     */
    156 #define PPP_FSM_CLOSING         4       /* 切断中、未オープン  */
    157 #define PPP_FSM_STOPPING        5       /* 切断中、オープン     */
    158 #define PPP_FSM_REQSENT         6       /* Config REQ 送信済み      */
    159 #define PPP_FSM_ACKRCVD         7       /* Config ACK 受信済み      */
    160 #define PPP_FSM_ACKSENT         8       /* Config ACK 送信済み      */
    161 #define PPP_FSM_OPENED          9       /* 接続、通信可能        */
     132#define PPP_FSM_INITIAL         0       /* 未接続、未オープン    */
     133#define PPP_FSM_STARTING        1       /* 未接続、オープン     */
     134#define PPP_FSM_CLOSED          2       /* 接続、  未オープン   */
     135#define PPP_FSM_STOPPED         3       /* オープン、切断待ち    */
     136#define PPP_FSM_CLOSING         4       /* 切断中、未オープン    */
     137#define PPP_FSM_STOPPING        5       /* 切断中、オープン     */
     138#define PPP_FSM_REQSENT         6       /* Config REQ 送信済み      */
     139#define PPP_FSM_ACKRCVD         7       /* Config ACK 受信済み      */
     140#define PPP_FSM_ACKSENT         8       /* Config ACK 送信済み      */
     141#define PPP_FSM_OPENED          9       /* 接続、通信可能      */
    162142
    163143/*
    164  *  オープン時の動作モード
     144 *  オープン時の動作モード
    165145 */
    166146
    167 #define PPP_OPEN_PASSIVE        false   /* 受動オープン           */
    168 #define PPP_OPEN_ACTIVE         true    /* 能動オープン           */
     147#define PPP_OPEN_PASSIVE        false   /* 受動オープン               */
     148#define PPP_OPEN_ACTIVE         true    /* 能動オープン               */
    169149
    170150/*
    171  *  再送、タイムアウトの既定値
     151 *  再送、タイムアウトの既定値
    172152 */
    173153
    174154#define DEF_PPP_TIMEOUT         (3*NET_TIMER_HZ)
    175                                         /* RFC1661 では  3 秒                        */
    176 #define MAX_PPP_TERMINATES      2       /* Terminate-Requests の最大再送回数     */
    177                                         /* RFC1661 では  2 回                        */
    178 #define MAX_PPP_CONFIGURES      10      /* Configure-Requests の最大再送回数     */
    179                                         /* RFC1661 では 10 回                        */
    180 #define MAX_PPP_FAILURES        5       /* Configure-NAK の最大黙認回数          */
    181                                         /* RFC1661 では  5 回                        */
     155                                        /* RFC1661 では  3 秒                      */
     156#define MAX_PPP_TERMINATES      2       /* Terminate-Requests の最大再送回数   */
     157                                        /* RFC1661 では  2 回                      */
     158#define MAX_PPP_CONFIGURES      10      /* Configure-Requests の最大再送回数   */
     159                                        /* RFC1661 では 10 回                      */
     160#define MAX_PPP_FAILURES        5       /* Configure-NAK の最大黙認回数                */
     161                                        /* RFC1661 では  5 回                      */
    182162
    183163/*
    184  *  関数
     164 *  関数
    185165 */
    186166
     
    194174
    195175/*
    196  *  変数
     176 *  変数
    197177 */
    198178
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_hdlc.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    9078
    9179/*
    92  *  RFC1171 (PPP) の HDLC 部の定義
    93  */
    94 
    95 /*
    96  *  変数
     80 *  RFC1171 (PPP) の HDLC 部の定義
     81 */
     82
     83/*
     84 *  変数
    9785 */
    9886
     
    10088
    10189/*
    102  *  関数
     90 *  関数
    10391 */
    10492
     
    10795
    10896/*
    109  *  genfcstab.c により作成した FCS のルックアップ表
    110  *  RFC1171 参ç
    111 §
     97 *  genfcstab.c により作成した FCS のルックアップ表
     98 *  RFC1171 参照
    11299 */
    113100
     
    180167
    181168/*
    182  *  インライン関数
     169 *  インライン関数
    183170 */
    184171
     
    188175
    189176/*
    190  *  HDLC_putoctet -- HDLC オクテット出力
     177 *  HDLC_putoctet -- HDLC オクテット出力
    191178 */
    192179
     
    212199
    213200/*
    214  *  HDLC_wirte -- HDLC 出力
     201 *  HDLC_wirte -- HDLC 出力
    215202 */
    216203
     
    241228        if (lcp_local_ack_cfg.options & LCP_CFG_ACCOMP) {
    242229                NET_COUNT_PPP_HDLC(net_count_hdlc.out_octets, sizeof(flag_seq));
    243                 /* フレーム開始フラグシーケンス を送信する    */
     230                /* フレーム開始フラグシーケンス を送信する    */
    244231                if ((error = serial_wri_dat(HDLC_PORTID, &flag_seq, sizeof(flag_seq))) < 0) {
    245232                        goto err_ret;
     
    250237
    251238                NET_COUNT_PPP_HDLC(net_count_hdlc.out_octets, sizeof(flag_seq_ac));
    252                 /* フレーム開始フラグシーケンス、Address と Control を送信する    */
     239                /* フレーム開始フラグシーケンス、Address と Control を送信する    */
    253240                if ((error = serial_wri_dat(HDLC_PORTID, flag_seq_ac, sizeof(flag_seq_ac))) < 0) {
    254241                        goto err_ret;
    255242                        }
    256                 /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */
     243                /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */
    257244                fcs = HDLC_INIT_FCS_AC;
    258245                }
     
    261248
    262249        NET_COUNT_PPP_HDLC(net_count_hdlc.out_octets, sizeof(flag_seq_ac));
    263         /* フレーム開始フラグシーケンス、Address と Control を送信する    */
     250        /* フレーム開始フラグシーケンス、Address と Control を送信する    */
    264251        if ((error = serial_wri_dat(HDLC_PORTID, flag_seq_ac, sizeof(flag_seq_ac))) < 0) {
    265252                goto err_ret;
    266253                }
    267         /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */
     254        /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */
    268255        fcs = HDLC_INIT_FCS_AC;
    269256
     
    282269#endif  /* of #ifdef LCP_CFG_PCOMP */
    283270
    284         /* データを送信する */
     271        /* データを送信する */
    285272        while (len -- > 0) {
    286273
     
    291278                }
    292279
    293         /* FCS を送信する */
     280        /* FCS を送信する */
    294281        fcs = ~fcs;
    295282        if ((error = HDLC_putoctet(fcs & 0xff)) != E_OK)
     
    298285                goto err_ret;
    299286
    300         /* フレーム終了フラグシーケンスを送信する */
     287        /* フレーム終了フラグシーケンスを送信する */
    301288        if ((error = serial_wri_dat(HDLC_PORTID, &flag_seq_ac[0], sizeof(char))) < 0)
    302289                goto err_ret;
     
    310297
    311298/*
    312  *  HDLC_getoctet -- HDLC オクテットå
    313 ¥åŠ›
    314  *
    315  *      戻り値が true ならフラグシーケンス
     299 *  HDLC_getoctet -- HDLC オクテット入力
     300 *
     301 *      戻り値が true ならフラグシーケンス
    316302 */
    317303
     
    321307        ER error;
    322308
    323         /* 1オクテットå
    324 ¥åŠ›ã™ã‚‹ */
     309        /* 1オクテット入力する */
    325310        if ((error = serial_rea_dat(HDLC_PORTID, octet, sizeof(uint8_t))) <= 0) {
    326311                return error;
    327312                }
    328313
    329         /* å
    330 ¥åŠ›ã—たオクテットがフラグシーケンスなら true を返す */
     314        /* 入力したオクテットがフラグシーケンスなら true を返す */
    331315        if (*octet == HDLC_FLAG_SEQ)
    332316                return true;
    333317
    334         /* å
    335 ¥åŠ›ã—たオクテットがエスケープなら、もう1オクテットå
    336 ¥åŠ›ã—マスクを解除する */
     318        /* 入力したオクテットがエスケープなら、もう1オクテット入力しマスクを解除する */
    337319        if (*octet == HDLC_CNTL_ESC) {
    338320                if ((error = serial_rea_dat(HDLC_PORTID, octet, sizeof(uint8_t))) <= 0)
     
    346328
    347329/*
    348  *  HDLC_read -- HDLC å
    349 ¥åŠ›
    350  *
    351  *      HDLC フレームをå
    352 ¥åŠ›ã™ã‚‹ã€‚
     330 *  HDLC_read -- HDLC 入力
     331 *
     332 *      HDLC フレームを入力する。
    353333 */
    354334
     
    362342        buf = nbuf->buf;
    363343
    364         /* フレーム開始フラグシーケンスまでå
    365 ¥åŠ›ã‚’読み飛ばす */
     344        /* フレーム開始フラグシーケンスまで入力を読み飛ばす */
    366345        while ((error = HDLC_getoctet(&octet)) != true) {
    367346
     
    372351
    373352                else if (octet == '\n') {
    374                         /* モデム制御を呼び出す。*/
     353                        /* モデム制御を呼び出す。*/
    375354                        modem_cntl(modem_getline(nbuf, size));
    376                         /* 一度、この関数を終了する。*/
     355                        /* 一度、この関数を終了する。*/
    377356                        nbuf->len = 0;
    378357                        return E_OK;
     
    383362                }
    384363
    385         /* フレーム開始フラグシーケンスの間はå
    386 ¥åŠ›ã‚’読み飛ばす */
     364        /* フレーム開始フラグシーケンスの間は入力を読み飛ばす */
    387365        while (1) {
    388366                if ((error = HDLC_getoctet(&octet)) == E_OK)
     
    394372        NET_COUNT_PPP_HDLC(net_count_hdlc.in_packets, 1);
    395373
    396         /* å
    397 ¥åŠ›ã—たオクテットは Address: All-Stations か */
     374        /* 入力したオクテットは Address: All-Stations か */
    398375        if (octet == HDLC_ADDR_ALL) {
    399376
    400                 /* 次は Control: UI */
     377                /* 次は Control: UI */
    401378                if ((error = HDLC_getoctet(&octet)) != E_OK || octet != HDLC_CNTL_UI) {
    402379                        error = E_SYS;
     
    405382                if ((error = HDLC_getoctet(&octet)) != E_OK)
    406383                        goto err_ret;
    407                 /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */
     384                /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */
    408385                fcs = HDLC_INIT_FCS_AC;
    409386                }
     
    439416        nbuf->len ++;
    440417
    441         /* SUD + FCS をå
    442 ¥åŠ›ã™ã‚‹ */
     418        /* SUD + FCS を入力する */
    443419        while ((error = HDLC_getoctet(&octet)) == E_OK) {
    444420                fcs = Next_FCS(fcs, octet);
     
    465441                goto err_ret;
    466442
    467         /* FCS をチェックする */
     443        /* FCS をチェックする */
    468444        if (fcs != HDLC_GOOD_FCS) {
    469445                error = E_SYS;
     
    479455
    480456/*
    481  *  HDLC_dummy_read -- HDLC å
    482 ¥åŠ› (空読み)
    483  *
    484  *      HDLC フレームを空読みする。
     457 *  HDLC_dummy_read -- HDLC 入力 (空読み)
     458 *
     459 *      HDLC フレームを空読みする。
    485460 */
    486461
     
    491466        ER      error;
    492467
    493         /* フレーム開始フラグシーケンスまでå
    494 ¥åŠ›ã‚’読み飛ばす */
     468        /* フレーム開始フラグシーケンスまで入力を読み飛ばす */
    495469        while ((error = HDLC_getoctet(&octet)) != true) {
    496470                if (error != E_OK)
     
    498472                }
    499473
    500         /* フレーム開始フラグシーケンスの間はå
    501 ¥åŠ›ã‚’読み飛ばす */
     474        /* フレーム開始フラグシーケンスの間は入力を読み飛ばす */
    502475        while (octet == HDLC_FLAG_SEQ)
    503476                if (HDLC_getoctet(&octet) != E_OK)
    504477                        return;
    505478
    506         /* å
    507 ¥åŠ›ã—たオクテットは Address: All-Stations か */
     479        /* 入力したオクテットは Address: All-Stations か */
    508480        if (octet == HDLC_ADDR_ALL) {
    509481
    510                 /* 次は Control: UI */
     482                /* 次は Control: UI */
    511483                if (HDLC_getoctet(&octet) != E_OK || octet != HDLC_CNTL_UI)
    512484                        return;
     
    532504
    533505/*
    534  *  HDLC_raw_getoctet -- HDLC オクテット (Raw) å
    535 ¥åŠ›
     506 *  HDLC_raw_getoctet -- HDLC オクテット (Raw) 入力
    536507 */
    537508
     
    540511        uint8_t ch;
    541512
    542         /* 1オクテットå
    543 ¥åŠ›ã™ã‚‹ */
     513        /* 1オクテット入力する */
    544514        if (serial_rea_dat(HDLC_PORTID, &ch, sizeof(ch)) <= 0)
    545515                return '\0';
     
    550520
    551521/*
    552  *  HDLC_raw_putoctet -- HDLC オクテット (Raw) 出力
     522 *  HDLC_raw_putoctet -- HDLC オクテット (Raw) 出力
    553523 */
    554524
     
    556526{
    557527        NET_COUNT_PPP_HDLC(net_count_hdlc.out_octets, 1);
    558         /* 1オクテット出力する */
     528        /* 1オクテット出力する */
    559529        serial_wri_dat(HDLC_PORTID, &ch, sizeof(ch));
    560530        }
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_hdlc.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    7260
    7361/*
    74  *  RFC1171 (PPP) の HDLC 部の定義
     62 *  RFC1171 (PPP) の HDLC 部の定義
    7563 */
    7664
    7765/*
    78  *  既定値
     66 *  既定値
    7967 */
    8068
     
    9078
    9179/*
    92  *  関数
     80 *  関数
    9381 */
    9482
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_ipcp.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    124112
    125113/*
    126  *  関数
     114 *  関数
    127115 */
    128116
     
    136124
    137125/*
    138  * FSM から呼出されるコールバック関
    139  */
    140 
    141 static void  ipcp_resetci(T_PPP_FSM *fsm);      /* 自構成æƒ
    142 å ±ã‚’リセットする。     */
    143 static int_t ipcp_cilen (T_PPP_FSM *fsm);       /* 構成æƒ
    144 å ±ã®é•·ã•ã‚’返す。                */
     126 * FSM から呼出されるコールバック関
     127 */
     128
     129static void  ipcp_resetci(T_PPP_FSM *fsm);      /* 自構成情報をリセットする。        */
     130static int_t ipcp_cilen (T_PPP_FSM *fsm);       /* 構成情報の長さを返す。          */
    145131static void  ipcp_addci (T_PPP_FSM *fsm, T_NET_BUF *output);
    146                                                 /* 自構成æƒ
    147 å ±ã‚’追加する。           */
     132                                                /* 自構成情報を追加する。          */
    148133static bool_t  ipcp_ackci       (T_PPP_FSM *fsm, T_NET_BUF *input);
    149                                                 /* ACK を受信したときの処理   */
     134                                                /* ACK を受信したときの処理       */
    150135static bool_t  ipcp_nakci       (T_PPP_FSM *fsm, T_NET_BUF *input);
    151                                                 /* NAK を受信したときの処理   */
     136                                                /* NAK を受信したときの処理       */
    152137static bool_t  ipcp_rejci       (T_PPP_FSM *fsm, T_NET_BUF *input);
    153                                                 /* REJ を受信したときの処理   */
     138                                                /* REJ を受信したときの処理       */
    154139static int_t ipcp_reqci (T_PPP_FSM *fsm, T_NET_BUF *input, T_NET_BUF *output);
    155                                                 /* 相手の構成æƒ
    156 å ±ã‚’確認する。   */
    157 static void ipcp_up     (T_PPP_FSM *fsm);       /* リンク接続を確立する。            */
    158 static void ipcp_down   (T_PPP_FSM *fsm);       /* リンク接続を解放する。            */
    159 static void ipcp_finished(T_PPP_FSM *fsm);      /* 下位層を終了する。          */
    160 
    161 /*
    162  *  変数
    163  */
    164 
    165 static T_IFNET ipcp_local_def_cfg = {           /* 自構成æƒ
    166 å ±ã®è¦å®šå€¤         */
     140                                                /* 相手の構成情報を確認する。        */
     141static void ipcp_up     (T_PPP_FSM *fsm);       /* リンク接続を確立する。          */
     142static void ipcp_down   (T_PPP_FSM *fsm);       /* リンク接続を解放する。          */
     143static void ipcp_finished(T_PPP_FSM *fsm);      /* 下位層を終了する。            */
     144
     145/*
     146 *  変数
     147 */
     148
     149static T_IFNET ipcp_local_def_cfg = {           /* 自構成情報の規定値            */
    167150        NULL,
    168151        {
    169                 IPV4_ADDR_LOCAL,                /* IPv4 アドレス                    */
    170                 UINT_C(0),                      /* サブネットマスク             */
     152                IPV4_ADDR_LOCAL,                /* IPv4 アドレス                    */
     153                UINT_C(0),                      /* サブネットマスク             */
    171154                },
    172155        };
    173156
    174 static T_IFNET ipcp_remote_def_cfg = {          /* 相手の構成æƒ
    175 å ±ã®è¦å®šå€¤ */
     157static T_IFNET ipcp_remote_def_cfg = {          /* 相手の構成情報の規定値  */
    176158        NULL,
    177159        {
    178                 IPV4_ADDR_REMOTE,               /* IPv4 アドレス                    */
    179                 UINT_C(0),                      /* サブネットマスク             */
     160                IPV4_ADDR_REMOTE,               /* IPv4 アドレス                    */
     161                UINT_C(0),                      /* サブネットマスク             */
    180162                }
    181163        };
    182164
    183 static T_IFNET ipcp_local_neg_cfg;              /* ネゴ中の自構成æƒ
    184 å ±             */
    185 
    186 static T_IFNET ipcp_remote_neg_cfg;             /* ネゴ中の相手の構成æƒ
    187 å ±             */
    188 
    189 /*
    190  *  å
    191 ¨åŸŸå¤‰æ•°
     165static T_IFNET ipcp_local_neg_cfg;              /* ネゴ中の自構成情報            */
     166
     167static T_IFNET ipcp_remote_neg_cfg;             /* ネゴ中の相手の構成情報          */
     168
     169/*
     170 *  全域変数
    192171 */
    193172
    194173T_PPP_FSM_CALLBACKS ipcp_callbacks = {
    195         ipcp_resetci,                   /* 自構成æƒ
    196 å ±ã‚’リセットする。     */
    197         ipcp_cilen,                     /* 構成æƒ
    198 å ±ã®é•·ã•ã‚’返す。                */
    199         ipcp_addci,                     /* 自構成æƒ
    200 å ±ã‚’追加する。           */
    201         ipcp_ackci,                     /* ACK を受信したときの処理   */
    202         ipcp_nakci,                     /* NAK を受信したときの処理   */
    203         ipcp_rejci,                     /* REJ を受信したときの処理   */
    204         ipcp_reqci,                     /* 相手の構成æƒ
    205 å ±ã‚’確認する。   */
    206         ipcp_up,                        /* リンク接続を確立する。            */
    207         ipcp_down,                      /* リンク接続を解放する。            */
    208         NULL,                           /* 下位層を開始する。          */
    209         ipcp_finished,                  /* 下位層を終了する。          */
    210         NULL,                           /* 再送する。                      */
    211         NULL,                           /* 不明な CP を受信したときの処理  */
     174        ipcp_resetci,                   /* 自構成情報をリセットする。        */
     175        ipcp_cilen,                     /* 構成情報の長さを返す。          */
     176        ipcp_addci,                     /* 自構成情報を追加する。          */
     177        ipcp_ackci,                     /* ACK を受信したときの処理       */
     178        ipcp_nakci,                     /* NAK を受信したときの処理       */
     179        ipcp_rejci,                     /* REJ を受信したときの処理       */
     180        ipcp_reqci,                     /* 相手の構成情報を確認する。        */
     181        ipcp_up,                        /* リンク接続を確立する。          */
     182        ipcp_down,                      /* リンク接続を解放する。          */
     183        NULL,                           /* 下位層を開始する。            */
     184        ipcp_finished,                  /* 下位層を終了する。            */
     185        NULL,                           /* 再送する。                        */
     186        NULL,                           /* 不明な CP を受信したときの処理    */
    212187        };
    213188
    214189T_PPP_FSM ipcp_fsm = {
    215         &ipcp_callbacks,                /* コールバック関数             */
    216         PPP_IPCP,                       /* プロトコル                      */
     190        &ipcp_callbacks,                /* コールバック関数             */
     191        PPP_IPCP,                       /* プロトコル                        */
    217192        };
    218193
    219194T_PPP_PROTENT ipcp_protent = {
    220195        PPP_IPCP,
    221         ipcp_init,                      /* 初期化                    */
    222         ipcp_input,                     /* å
    223 ¥åŠ›                            */
    224         ipcp_protrej,                   /* Proto-REJ 受信処理               */
    225         ipcp_lowerup,                   /* 下位層を起動する             */
    226         ipcp_lowerdown,                 /* 下位層を停止する             */
    227         ipcp_open,                      /* オープンする                   */
    228         ipcp_close,                     /* クローズする                   */
    229         ip_input,                       /* データå
    230 ¥åŠ›ã€IPv4 å
    231 ¥åŠ›    */
     196        ipcp_init,                      /* 初期化                  */
     197        ipcp_input,                     /* 入力                           */
     198        ipcp_protrej,                   /* Proto-REJ 受信処理               */
     199        ipcp_lowerup,                   /* 下位層を起動する             */
     200        ipcp_lowerdown,                 /* 下位層を停止する             */
     201        ipcp_open,                      /* オープンする                       */
     202        ipcp_close,                     /* クローズする                       */
     203        ip_input,                       /* データ入力、IPv4 入力        */
    232204        };
    233205
    234 T_IFNET ipcp_local_ack_cfg;             /* 相手に許可されたの自構成æƒ
    235 å ±     */
    236 T_IFNET ipcp_remote_ack_cfg;            /* 相手に許可した構成æƒ
    237 å ±     */
    238 
    239 /*
    240  *  ppp_get_ifnet -- ネットワークインタフェース構造体を返す。
     206T_IFNET ipcp_local_ack_cfg;             /* 相手に許可されたの自構成情報       */
     207T_IFNET ipcp_remote_ack_cfg;            /* 相手に許可した構成情報  */
     208
     209/*
     210 *  ppp_get_ifnet -- ネットワークインタフェース構造体を返す。
    241211 */
    242212
     
    248218
    249219/*
    250  *  wait_ipcp -- IP 接続完了までå¾
    251 ã¤ã€‚
    252  *
    253  *      戻り値: 接続に失敗したら E_OBJ を返す。
     220 *  wait_ipcp -- IP 接続完了まで待つ。
     221 *
     222 *      戻り値: 接続に失敗したら E_OBJ を返す。
    254223 */
    255224
     
    265234#ifdef PPP_CFG_MODEM
    266235
    267                 /* モデムの接続完了までå¾
    268 ã¤ã€‚*/
     236                /* モデムの接続完了まで待つ。*/
    269237                if ((error = wait_modem()) != E_OK)
    270238                        return error;
     
    273241
    274242                /*
    275                  * 受動オープンし、相手からの接続å¾
    276 ã¡ãªã‚‰ LCP を一度クローズし、
    277                  * 能動オープン状æ
    278 ‹ã§ã€å†ã‚ªãƒ¼ãƒ—ンする。
     243                 * 受動オープンし、相手からの接続待ちなら LCP を一度クローズし、
     244                 * 能動オープン状態で、再オープンする。
    279245                 */
    280246                lcp_close();
     
    286252
    287253        if (ipcp_fsm.state != PPP_FSM_OPENED) {
    288                 /* IP 接続完了までå¾
    289 ã¤ã€‚*/
     254                /* IP 接続完了まで待つ。*/
    290255                wai_sem(SEM_IPCP_READY);
    291256                if (ipcp_fsm.state != PPP_FSM_OPENED)
     
    297262
    298263/*
    299  *  ipcp_init -- IPCP モジュールの初期化
     264 *  ipcp_init -- IPCP モジュールの初期化
    300265 */
    301266
     
    307272
    308273/*
    309  *  ipcp_input -- IPCP å
    310 ¥åŠ›
     274 *  ipcp_input -- IPCP 入力
    311275 */
    312276
     
    320284
    321285/*
    322  *  ipcp_resetci -- IPCPの構成æƒ
    323 å ±ã‚’リセットする。
     286 *  ipcp_resetci -- IPCPの構成情報をリセットする。
    324287 */
    325288
     
    327290ipcp_resetci (T_PPP_FSM *fsm)
    328291{
    329         /* 自構成æƒ
    330 å ±ã®åˆæœŸè¨­å®š */
     292        /* 自構成情報の初期設定 */
    331293        ipcp_local_neg_cfg = ipcp_local_def_cfg;
    332294        memset((void*)&ipcp_local_ack_cfg, 0, sizeof(T_IFNET));
    333295
    334         /* 相手の構成æƒ
    335 å ±ã®åˆæœŸè¨­å®š */
     296        /* 相手の構成情報の初期設定 */
    336297        ipcp_remote_neg_cfg = ipcp_remote_def_cfg;
    337298        memset((void*)&ipcp_remote_ack_cfg, 0, sizeof(T_IFNET));
     
    339300
    340301/*
    341  *  ipcp_cilen -- 構成æƒ
    342 å ±ã®é•·ã•ã‚’返す。
     302 *  ipcp_cilen -- 構成情報の長さを返す。
    343303 */
    344304
     
    348308        int_t cilen = 0;
    349309
    350         cilen += sizeof(T_PPP_CI_HDR) + sizeof(uint32_t);       /* IPv4 アドレス */
     310        cilen += sizeof(T_PPP_CI_HDR) + sizeof(uint32_t);       /* IPv4 アドレス */
    351311
    352312        return cilen;
     
    354314
    355315/*
    356  *  ipcp_addci -- IPCPの構成æƒ
    357 å ±ã‚’追加する。
     316 *  ipcp_addci -- IPCPの構成情報を追加する。
    358317 */
    359318
     
    365324        buf = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    366325
    367         /* IPv4 アドレスオプションを追加する。 */
     326        /* IPv4 アドレスオプションを追加する。 */
    368327        *buf ++ = IPCP_CIT_ADDR;
    369328        *buf ++ = sizeof(T_PPP_CI_HDR) + sizeof(uint32_t);
     
    373332
    374333/*
    375  *  ipcp_ackci -- ACK を受信したときの処理
    376  *
    377  *      戻り値:      true  ACK は正常
    378  *              false ACK は異常
     334 *  ipcp_ackci -- ACK を受信したときの処理
     335 *
     336 *      戻り値:    true  ACK は正常
     337 *              false ACK は異常
    379338 */
    380339
     
    389348
    390349        /*
    391          *  構成æƒ
    392 å ±ã¯é€ä¿¡ã—た順に完å
    393 ¨ã«ä¸€è‡´ã—なければならない。
    394          *  従って、ipcp_addci で作成した順に解析する。
     350         *  構成情報は送信した順に完全に一致しなければならない。
     351         *  従って、ipcp_addci で作成した順に解析する。
    395352         */
    396353
    397         /* ADDR オプションを解析する。 */
     354        /* ADDR オプションを解析する。 */
    398355        if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)       ||
    399356            *buf ++ != IPCP_CIT_ADDR                    ||
     
    408365
    409366/*
    410  *  ipcp_nakci -- NAK を受信したときの処理
    411  *
    412  *      戻り値:      1  NAK は正常
    413  *              0  NAK は異常
     367 *  ipcp_nakci -- NAK を受信したときの処理
     368 *
     369 *      戻り値:    1  NAK は正常
     370 *              0  NAK は異常
    414371 */
    415372
     
    427384        new_cfg = ipcp_local_neg_cfg;
    428385
    429         /* ADDR オプションを解析する。 */
     386        /* ADDR オプションを解析する。 */
    430387        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)              &&
    431388            * buf      == IPCP_CIT_ADDR                         &&
     
    437394                }
    438395
    439         /* 後は無視する。*/
     396        /* 後は無視する。*/
    440397        while (len > sizeof(T_PPP_CI_HDR)) {
    441398                cilen = *(buf + 1);
     
    446403                }
    447404
    448         /* 長さが 0 でなければエラー */
     405        /* 長さが 0 でなければエラー */
    449406        if (len != 0)
    450407                return 0;
    451408
    452         /* 新しいオプションを設定する。*/
     409        /* 新しいオプションを設定する。*/
    453410        if (fsm->state != PPP_FSM_OPENED)
    454411                ipcp_local_neg_cfg = new_cfg;
     
    458415
    459416/*
    460  *  ipcp_rejci -- REJ を受信したときの処理
    461  *
    462  *      戻り値:      1  REJ は正常
    463  *              0  REJ は異常
     417 *  ipcp_rejci -- REJ を受信したときの処理
     418 *
     419 *      戻り値:    1  REJ は正常
     420 *              0  REJ は異常
    464421 */
    465422
     
    476433        new_cfg = ipcp_local_neg_cfg;
    477434
    478         /* ADDR オプションを解析する。 */
     435        /* ADDR オプションを解析する。 */
    479436        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)              &&
    480437            * buf      == IPCP_CIT_ADDR                         &&
     
    485442                }
    486443
    487         /* 長さが 0 でなければエラー */
     444        /* 長さが 0 でなければエラー */
    488445        if (len != 0)
    489446                return 0;
    490447
    491         /* 新しいオプションを設定する。*/
     448        /* 新しいオプションを設定する。*/
    492449        if (fsm->state != PPP_FSM_OPENED)
    493450                ipcp_local_neg_cfg = new_cfg;
     
    497454
    498455/*
    499  *  ipcp_reqci -- 相手の構成æƒ
    500 å ±ã‚’解析する。
     456 *  ipcp_reqci -- 相手の構成情報を解析する。
    501457 */
    502458
     
    509465
    510466        rp = ap = input->buf +  sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    511                                 /* rp: REJ、ap: ACK する CI のポインタ  */
    512                                 /* 拒否する場合は、引数 buf に上書きする。     */
     467                                /* rp: REJ、ap: ACK する CI のポインタ  */
     468                                /* 拒否する場合は、引数 buf に上書きする。       */
    513469        len   = input->len - (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR));
    514470        np    = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    515         final = PPP_CONFACK;    /* 最終的に送信するコード */
     471        final = PPP_CONFACK;    /* 最終的に送信するコード */
    516472        while (len > 0) {
    517473                code = PPP_CONFACK;
    518                 cp   = ap;      /* cp: 現在処理中の CI    */
     474                cp   = ap;      /* cp: 現在処理中の CI        */
    519475
    520476                if (len < sizeof(T_PPP_CI_HDR)) {
    521477
    522                         /* 残りが CI ヘッダより短い */
     478                        /* 残りが CI ヘッダより短い */
    523479                        syslog(LOG_NOTICE, "[PPP/IPCP] bad CI len: %d.", len);
    524                         cilen = len;    /* データ長が異常の場合の処置      */
    525                         len  = 0;       /* ループから抜ける。          */
     480                        cilen = len;    /* データ長が異常の場合の処置        */
     481                        len  = 0;       /* ループから抜ける。            */
    526482                        code  = PPP_CONFREJ;
    527483                        goto endswitch;
    528484                        }
    529485
    530                 type  = *ap ++; /* CI の型            */
    531                 cilen = *ap ++; /* CI の長さ         */
     486                type  = *ap ++; /* CI の型                */
     487                cilen = *ap ++; /* CI の長さ               */
    532488                if (len < cilen) {
    533489
    534                         /* 残りが CI 長より短い */
     490                        /* 残りが CI 長より短い */
    535491                        syslog(LOG_NOTICE, "[PPP/IPCP] bad CI len: %d.", cilen);
    536                         cilen = len;    /* データ長が異常の場合の処置      */
    537                         len  = 0;       /* ループから抜ける。          */
     492                        cilen = len;    /* データ長が異常の場合の処置        */
     493                        len  = 0;       /* ループから抜ける。            */
    538494                        code  = PPP_CONFREJ;
    539495                        goto endswitch;
     
    541497                len -= sizeof(T_PPP_CI_HDR);
    542498
    543                 /* CI の型により分岐する。*/
     499                /* CI の型により分岐する。*/
    544500                switch (type) {
    545501
    546                 case IPCP_CIT_ADDR:     /* IPv4 アドレス */
    547 
    548                         /* CI 長が、ヘッダ + 4 オクテットでなければエラー */
     502                case IPCP_CIT_ADDR:     /* IPv4 アドレス */
     503
     504                        /* CI 長が、ヘッダ + 4 オクテットでなければエラー */
    549505                        if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(uint32_t))
    550506                                code = PPP_CONFREJ;
     
    559515                                        code = PPP_CONFNAK;
    560516                                        }
    561 #if 1   /* 要確認 */
     517#if 1   /* 要確認 */
    562518                                else if (addr == 0 && ipcp_remote_neg_cfg.in4_ifaddr.addr == 0)
    563519#else
     
    578534
    579535                if (code == PPP_CONFNAK) {
    580                         /* CI の型が Magic Number の場合を除いて、NAK の回数が   */
    581                         /* 最大値 MAX_PPP_FAILURES  をè¶
    582 ãˆãŸã‚‰æ‹’否する。        */
     536                        /* CI の型が Magic Number の場合を除いて、NAK の回数が */
     537                        /* 最大値 MAX_PPP_FAILURES  を超えたら拒否する。     */
    583538                        if (fsm->failures >= MAX_PPP_FAILURES)
    584539                                code = PPP_CONFREJ;
     
    587542                        }
    588543
    589                 /* この CI を拒否する */
     544                /* この CI を拒否する */
    590545                if (code == PPP_CONFREJ) {
    591                         if (rp < cp)            /* 前に詰める。*/
     546                        if (rp < cp)            /* 前に詰める。*/
    592547                                memcpy(rp, cp, cilen);
    593548                        rp += cilen;
     
    599554                }
    600555
    601         /* 最終的な長さを調整する。*/
     556        /* 最終的な長さを調整する。*/
    602557        switch (final) {
    603558        case PPP_CONFNAK:
     
    617572
    618573/*
    619  *  ipcp_up -- リンク接続を確立する。
     574 *  ipcp_up -- リンク接続を確立する。
    620575 */
    621576
     
    623578ipcp_up (T_PPP_FSM *fsm)
    624579{
    625         /* 自構成æƒ
    626 å ±ã®åˆæœŸè¨­å®š */
     580        /* 自構成情報の初期設定 */
    627581        ipcp_local_ack_cfg = ipcp_local_neg_cfg;
    628582
    629583        /*
    630          *  サブネットマスクと
    631          *  ローカル・ブロードキャスト IPv4 アドレスを設定する。
     584         *  サブネットマスクと
     585         *  ローカル・ブロードキャスト IPv4 アドレスを設定する。
    632586         */
    633587        ipcp_local_ack_cfg.in4_ifaddr.mask = MAKE_IPV4_LOCAL_MASK(ipcp_local_neg_cfg.in4_ifaddr.addr);
    634588
    635         /* 相手の構成æƒ
    636 å ±ã®åˆæœŸè¨­å®š */
     589        /* 相手の構成情報の初期設定 */
    637590        ipcp_remote_ack_cfg = ipcp_remote_neg_cfg;
    638591
    639592        /*
    640          *  サブネットマスクと
    641          *  ローカル・ブロードキャスト IPv4 アドレスを設定する。
     593         *  サブネットマスクと
     594         *  ローカル・ブロードキャスト IPv4 アドレスを設定する。
    642595         */
    643596        ipcp_remote_ack_cfg.in4_ifaddr.mask = MAKE_IPV4_LOCAL_MASK(ipcp_remote_neg_cfg.in4_ifaddr.addr);
     
    651604
    652605/*
    653  *  ipcp_down -- リンク接続を解放する。
     606 *  ipcp_down -- リンク接続を解放する。
    654607 */
    655608
     
    662615
    663616/*
    664  *  ipcp_finished -- 下位層を終了する。
     617 *  ipcp_finished -- 下位層を終了する。
    665618 */
    666619
     
    671624
    672625/*
    673  *  ipcp_protrej -- Proto-REJ を受信したときの処理
     626 *  ipcp_protrej -- Proto-REJ を受信したときの処理
    674627 */
    675628
     
    681634
    682635/*
    683  *  ipcp_lowerup -- IPCP 下位層を起動する。
     636 *  ipcp_lowerup -- IPCP 下位層を起動する。
    684637 */
    685638
     
    691644
    692645/*
    693  *  ipcp_lowerdown -- IPCP 下位層を停止する。
     646 *  ipcp_lowerdown -- IPCP 下位層を停止する。
    694647 */
    695648
     
    701654
    702655/*
    703  *  ipcp_open -- IPCP のオープン
     656 *  ipcp_open -- IPCP のオープン
    704657 */
    705658
     
    711664
    712665/*
    713  *  ipcp_close -- IPCP のクローズ
     666 *  ipcp_close -- IPCP のクローズ
    714667 */
    715668
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_ipcp.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    9381
    9482/*
    95  *  IPCP の構成æƒ
    96 å ± (CI)
     83 *  IPCP の構成情報 (CI)
    9784 */
    9885
    9986/*
    100  *  CI の型
     87 *  CI の型
    10188 */
    10289
    103 #define IPCP_CIT_ADDRS          UINT_C(1)       /* IP アドレス (廃棄)     */
    104 #define IPCP_CIT_COMP_TYPE      UINT_C(2)       /* 圧縮方式         */
    105 #define IPCP_CIT_ADDR           UINT_C(3)       /* IP アドレス              */
     90#define IPCP_CIT_ADDRS          UINT_C(1)       /* IP アドレス (廃棄) */
     91#define IPCP_CIT_COMP_TYPE      UINT_C(2)       /* 圧縮方式         */
     92#define IPCP_CIT_ADDR           UINT_C(3)       /* IP アドレス              */
    10693
    10794/*
    108  *  前方参ç
    109 §
     95 *  前方参照
    11096 */
    11197
     
    119105
    120106/*
    121  *  変数
     107 *  変数
    122108 */
    123109
     
    134120
    135121/*
    136  *  関数
     122 *  関数
    137123 */
    138124
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_ipv6cp.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    124112
    125113/*
    126  *  関数
     114 *  関数
    127115 */
    128116
     
    136124
    137125/*
    138  * FSM から呼出されるコールバック関
    139  */
    140 
    141 static void  ipv6cp_resetci(T_PPP_FSM *fsm);    /* 自構成æƒ
    142 å ±ã‚’リセットする。     */
    143 static int_t ipv6cp_cilen       (T_PPP_FSM *fsm);       /* 構成æƒ
    144 å ±ã®é•·ã•ã‚’返す。                */
     126 * FSM から呼出されるコールバック関
     127 */
     128
     129static void  ipv6cp_resetci(T_PPP_FSM *fsm);    /* 自構成情報をリセットする。        */
     130static int_t ipv6cp_cilen       (T_PPP_FSM *fsm);       /* 構成情報の長さを返す。          */
    145131static void  ipv6cp_addci       (T_PPP_FSM *fsm, T_NET_BUF *output);
    146                                                 /* 自構成æƒ
    147 å ±ã‚’追加する。           */
     132                                                /* 自構成情報を追加する。          */
    148133static bool_t  ipv6cp_ackci     (T_PPP_FSM *fsm, T_NET_BUF *input);
    149                                                 /* ACK を受信したときの処理   */
     134                                                /* ACK を受信したときの処理       */
    150135static bool_t  ipv6cp_nakci     (T_PPP_FSM *fsm, T_NET_BUF *input);
    151                                                 /* NAK を受信したときの処理   */
     136                                                /* NAK を受信したときの処理       */
    152137static bool_t  ipv6cp_rejci     (T_PPP_FSM *fsm, T_NET_BUF *input);
    153                                                 /* REJ を受信したときの処理   */
     138                                                /* REJ を受信したときの処理       */
    154139static int_t ipv6cp_reqci       (T_PPP_FSM *fsm, T_NET_BUF *input, T_NET_BUF *output);
    155                                                 /* 相手の構成æƒ
    156 å ±ã‚’確認する。   */
    157 static void ipv6cp_up   (T_PPP_FSM *fsm);       /* リンク接続を確立する。            */
    158 static void ipv6cp_down (T_PPP_FSM *fsm);       /* リンク接続を解放する。            */
    159 static void ipv6cp_finished(T_PPP_FSM *fsm);    /* 下位層を終了する。          */
    160 
    161 /*
    162  *  変数
    163  */
    164 
    165 static T_IFNET ipv6cp_local_def_cfg = {         /* 自構成æƒ
    166 å ±ã®è¦å®šå€¤         */
    167         NULL,                                   /* ネットワークインタフェースのソフトウェアæƒ
    168 å ±     */
    169         {},                                     /* IPv6 アドレスæƒ
    170 å ±                             */
    171         {},                                     /* マルチキャスト IPv6 アドレス                      */
    172         0,                                      /* フラグ                                    */
     140                                                /* 相手の構成情報を確認する。        */
     141static void ipv6cp_up   (T_PPP_FSM *fsm);       /* リンク接続を確立する。          */
     142static void ipv6cp_down (T_PPP_FSM *fsm);       /* リンク接続を解放する。          */
     143static void ipv6cp_finished(T_PPP_FSM *fsm);    /* 下位層を終了する。            */
     144
     145/*
     146 *  変数
     147 */
     148
     149static T_IFNET ipv6cp_local_def_cfg = {         /* 自構成情報の規定値            */
     150        NULL,                                   /* ネットワークインタフェースのソフトウェア情報       */
     151        {},                                     /* IPv6 アドレス情報                          */
     152        {},                                     /* マルチキャスト IPv6 アドレス                    */
     153        0,                                      /* フラグ                                  */
    173154        };
    174155
    175 static T_IFNET ipv6cp_remote_def_cfg = {        /* 相手の構成æƒ
    176 å ±ã®è¦å®šå€¤ */
    177         NULL,                                   /* ネットワークインタフェースのソフトウェアæƒ
    178 å ±     */
    179         {},                                     /* IPv6 アドレスæƒ
    180 å ±                             */
    181         {},                                     /* マルチキャスト IPv6 アドレス                      */
    182         0,                                      /* フラグ                                    */
     156static T_IFNET ipv6cp_remote_def_cfg = {        /* 相手の構成情報の規定値  */
     157        NULL,                                   /* ネットワークインタフェースのソフトウェア情報       */
     158        {},                                     /* IPv6 アドレス情報                          */
     159        {},                                     /* マルチキャスト IPv6 アドレス                    */
     160        0,                                      /* フラグ                                  */
    183161        };
    184162
    185 static T_IFNET ipv6cp_local_neg_cfg;            /* ネゴ中の自構成æƒ
    186 å ±             */
    187 
    188 static T_IFNET ipv6cp_remote_neg_cfg;           /* ネゴ中の相手の構成æƒ
    189 å ±             */
    190 
    191 /*
    192  *  å
    193 ¨åŸŸå¤‰æ•°
     163static T_IFNET ipv6cp_local_neg_cfg;            /* ネゴ中の自構成情報            */
     164
     165static T_IFNET ipv6cp_remote_neg_cfg;           /* ネゴ中の相手の構成情報          */
     166
     167/*
     168 *  全域変数
    194169 */
    195170
    196171T_PPP_FSM_CALLBACKS ipv6cp_callbacks = {
    197         ipv6cp_resetci,                 /* 自構成æƒ
    198 å ±ã‚’リセットする。     */
    199         ipv6cp_cilen,                   /* 構成æƒ
    200 å ±ã®é•·ã•ã‚’返す。                */
    201         ipv6cp_addci,                   /* 自構成æƒ
    202 å ±ã‚’追加する。           */
    203         ipv6cp_ackci,                   /* ACK を受信したときの処理   */
    204         ipv6cp_nakci,                   /* NAK を受信したときの処理   */
    205         ipv6cp_rejci,                   /* REJ を受信したときの処理   */
    206         ipv6cp_reqci,                   /* 相手の構成æƒ
    207 å ±ã‚’確認する。   */
    208         ipv6cp_up,                      /* リンク接続を確立する。            */
    209         ipv6cp_down,                    /* リンク接続を解放する。            */
    210         NULL,                           /* 下位層を開始する。          */
    211         ipv6cp_finished,                        /* 下位層を終了する。          */
    212         NULL,                           /* 再送する。                      */
    213         NULL,                           /* 不明な CP を受信したときの処理  */
     172        ipv6cp_resetci,                 /* 自構成情報をリセットする。        */
     173        ipv6cp_cilen,                   /* 構成情報の長さを返す。          */
     174        ipv6cp_addci,                   /* 自構成情報を追加する。          */
     175        ipv6cp_ackci,                   /* ACK を受信したときの処理       */
     176        ipv6cp_nakci,                   /* NAK を受信したときの処理       */
     177        ipv6cp_rejci,                   /* REJ を受信したときの処理       */
     178        ipv6cp_reqci,                   /* 相手の構成情報を確認する。        */
     179        ipv6cp_up,                      /* リンク接続を確立する。          */
     180        ipv6cp_down,                    /* リンク接続を解放する。          */
     181        NULL,                           /* 下位層を開始する。            */
     182        ipv6cp_finished,                        /* 下位層を終了する。            */
     183        NULL,                           /* 再送する。                        */
     184        NULL,                           /* 不明な CP を受信したときの処理    */
    214185        };
    215186
    216187T_PPP_FSM ipv6cp_fsm = {
    217         &ipv6cp_callbacks,              /* コールバック関数             */
    218         PPP_IPV6CP,                     /* プロトコル                      */
     188        &ipv6cp_callbacks,              /* コールバック関数             */
     189        PPP_IPV6CP,                     /* プロトコル                        */
    219190        };
    220191
    221192T_PPP_PROTENT ipv6cp_protent = {
    222193        PPP_IPV6CP,
    223         ipv6cp_init,                    /* 初期化                    */
    224         ipv6cp_input,                   /* å
    225 ¥åŠ›                            */
    226         ipv6cp_protrej,                 /* Proto-REJ 受信処理               */
    227         ipv6cp_lowerup,                 /* 下位層を起動する             */
    228         ipv6cp_lowerdown,               /* 下位層を停止する             */
    229         ipv6cp_open,                    /* オープンする                   */
    230         ipv6cp_close,                   /* クローズする                   */
    231         ip6_input,                      /* データå
    232 ¥åŠ›ã€IPv6 å
    233 ¥åŠ›    */
     194        ipv6cp_init,                    /* 初期化                  */
     195        ipv6cp_input,                   /* 入力                           */
     196        ipv6cp_protrej,                 /* Proto-REJ 受信処理               */
     197        ipv6cp_lowerup,                 /* 下位層を起動する             */
     198        ipv6cp_lowerdown,               /* 下位層を停止する             */
     199        ipv6cp_open,                    /* オープンする                       */
     200        ipv6cp_close,                   /* クローズする                       */
     201        ip6_input,                      /* データ入力、IPv6 入力        */
    234202        };
    235203
    236 T_IFNET ipv6cp_local_ack_cfg;           /* 相手に許可されたの自構成æƒ
    237 å ±     */
    238 T_IFNET ipv6cp_remote_ack_cfg;          /* 相手に許可した構成æƒ
    239 å ±     */
    240 
    241 /*
    242  *  ppp_get_ifnet -- ネットワークインタフェース構造体を返す。
     204T_IFNET ipv6cp_local_ack_cfg;           /* 相手に許可されたの自構成情報       */
     205T_IFNET ipv6cp_remote_ack_cfg;          /* 相手に許可した構成情報  */
     206
     207/*
     208 *  ppp_get_ifnet -- ネットワークインタフェース構造体を返す。
    243209 */
    244210
     
    250216
    251217/*
    252  *  wait_ipv6cp -- IP 接続完了までå¾
    253 ã¤ã€‚
    254  *
    255  *      戻り値: 接続に失敗したら E_OBJ を返す。
     218 *  wait_ipv6cp -- IP 接続完了まで待つ。
     219 *
     220 *      戻り値: 接続に失敗したら E_OBJ を返す。
    256221 */
    257222
     
    267232#ifdef PPP_CFG_MODEM
    268233
    269                 /* モデムの接続完了までå¾
    270 ã¤ã€‚*/
     234                /* モデムの接続完了まで待つ。*/
    271235                if ((error = wait_modem()) != E_OK)
    272236                        return error;
     
    275239
    276240                /*
    277                  * 受動オープンし、相手からの接続å¾
    278 ã¡ãªã‚‰ LCP を一度クローズし、
    279                  * 能動オープン状æ
    280 ‹ã§ã€å†ã‚ªãƒ¼ãƒ—ンする。
     241                 * 受動オープンし、相手からの接続待ちなら LCP を一度クローズし、
     242                 * 能動オープン状態で、再オープンする。
    281243                 */
    282244                lcp_close();
     
    288250
    289251        if (ipv6cp_fsm.state != PPP_FSM_OPENED) {
    290                 /* IP 接続完了までå¾
    291 ã¤ã€‚*/
     252                /* IP 接続完了まで待つ。*/
    292253                wai_sem(SEM_IPV6CP_READY);
    293254                if (ipv6cp_fsm.state != PPP_FSM_OPENED)
     
    299260
    300261/*
    301  *  ipv6cp_init -- IPV6CP モジュールの初期化
     262 *  ipv6cp_init -- IPV6CP モジュールの初期化
    302263 */
    303264
     
    309270
    310271/*
    311  *  ipv6cp_input -- IPV6CP å
    312 ¥åŠ›
     272 *  ipv6cp_input -- IPV6CP 入力
    313273 */
    314274
     
    322282
    323283/*
    324  *  ipv6cp_resetci -- IPV6CPの構成æƒ
    325 å ±ã‚’リセットする。
     284 *  ipv6cp_resetci -- IPV6CPの構成情報をリセットする。
    326285 */
    327286
     
    329288ipv6cp_resetci (T_PPP_FSM *fsm)
    330289{
    331         /* 自構成æƒ
    332 å ±ã®åˆæœŸè¨­å®š */
     290        /* 自構成情報の初期設定 */
    333291        ipv6cp_local_neg_cfg = ipv6cp_local_def_cfg;
    334292        memset((void*)&ipv6cp_local_ack_cfg, 0, sizeof(T_IFNET));
    335293
    336         /* 相手の構成æƒ
    337 å ±ã®åˆæœŸè¨­å®š */
     294        /* 相手の構成情報の初期設定 */
    338295        ipv6cp_remote_neg_cfg = ipv6cp_remote_def_cfg;
    339296        memset((void*)&ipv6cp_remote_ack_cfg, 0, sizeof(T_IFNET));
     
    341298
    342299/*
    343  *  ipv6cp_cilen -- 構成æƒ
    344 å ±ã®é•·ã•ã‚’返す。
     300 *  ipv6cp_cilen -- 構成情報の長さを返す。
    345301 */
    346302
     
    350306        int_t cilen = 0;
    351307
    352         cilen += sizeof(T_PPP_CI_HDR) + sizeof(uint32_t);       /* IPv6 アドレス */
     308        cilen += sizeof(T_PPP_CI_HDR) + sizeof(uint32_t);       /* IPv6 アドレス */
    353309
    354310        return cilen;
     
    356312
    357313/*
    358  *  ipv6cp_addci -- IPV6CPの構成æƒ
    359 å ±ã‚’追加する。
     314 *  ipv6cp_addci -- IPV6CPの構成情報を追加する。
    360315 */
    361316
     
    367322        buf = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    368323
    369         /* IPv6 アドレスオプションを追加する。 */
     324        /* IPv6 アドレスオプションを追加する。 */
    370325        *buf ++ = IPV6CP_CIT_ADDR;
    371326        *buf ++ = sizeof(T_PPP_CI_HDR) + sizeof(uint32_t);
     
    375330
    376331/*
    377  *  ipv6cp_ackci -- ACK を受信したときの処理
    378  *
    379  *      戻り値:      true  ACK は正常
    380  *              false ACK は異常
     332 *  ipv6cp_ackci -- ACK を受信したときの処理
     333 *
     334 *      戻り値:    true  ACK は正常
     335 *              false ACK は異常
    381336 */
    382337
     
    391346
    392347        /*
    393          *  構成æƒ
    394 å ±ã¯é€ä¿¡ã—た順に完å
    395 ¨ã«ä¸€è‡´ã—なければならない。
    396          *  従って、ipv6cp_addci で作成した順に解析する。
     348         *  構成情報は送信した順に完全に一致しなければならない。
     349         *  従って、ipv6cp_addci で作成した順に解析する。
    397350         */
    398351
    399         /* ADDR オプションを解析する。 */
     352        /* ADDR オプションを解析する。 */
    400353        if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)       ||
    401354            *buf ++ != IPV6CP_CIT_ADDR                  ||
     
    410363
    411364/*
    412  *  ipv6cp_nakci -- NAK を受信したときの処理
    413  *
    414  *      戻り値:      1  NAK は正常
    415  *              0  NAK は異常
     365 *  ipv6cp_nakci -- NAK を受信したときの処理
     366 *
     367 *      戻り値:    1  NAK は正常
     368 *              0  NAK は異常
    416369 */
    417370
     
    429382        new_cfg = ipv6cp_local_neg_cfg;
    430383
    431         /* ADDR オプションを解析する。 */
     384        /* ADDR オプションを解析する。 */
    432385        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(addr)          &&
    433386            * buf      == IPV6CP_CIT_ADDR                       &&
     
    438391                }
    439392
    440         /* 後は無視する。*/
     393        /* 後は無視する。*/
    441394        while (len > sizeof(T_PPP_CI_HDR)) {
    442395                cilen = *(buf + 1);
     
    447400                }
    448401
    449         /* 長さが 0 でなければエラー */
     402        /* 長さが 0 でなければエラー */
    450403        if (len != 0)
    451404                return 0;
    452405
    453         /* 新しいオプションを設定する。*/
     406        /* 新しいオプションを設定する。*/
    454407        if (fsm->state != PPP_FSM_OPENED)
    455408                ipv6cp_local_neg_cfg = new_cfg;
     
    459412
    460413/*
    461  *  ipv6cp_rejci -- REJ を受信したときの処理
    462  *
    463  *      戻り値:      1  REJ は正常
    464  *              0  REJ は異常
     414 *  ipv6cp_rejci -- REJ を受信したときの処理
     415 *
     416 *      戻り値:    1  REJ は正常
     417 *              0  REJ は異常
    465418 */
    466419
     
    477430        new_cfg = ipv6cp_local_neg_cfg;
    478431
    479         /* ADDR オプションを解析する。 */
     432        /* ADDR オプションを解析する。 */
    480433        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(new_cfg.in6_ifaddrs[0].addr)   &&
    481434            * buf      == IPV6CP_CIT_ADDR                                       &&
     
    487440                }
    488441
    489         /* 長さが 0 でなければエラー */
     442        /* 長さが 0 でなければエラー */
    490443        if (len != 0)
    491444                return 0;
    492445
    493         /* 新しいオプションを設定する。*/
     446        /* 新しいオプションを設定する。*/
    494447        if (fsm->state != PPP_FSM_OPENED)
    495448                ipv6cp_local_neg_cfg = new_cfg;
     
    499452
    500453/*
    501  *  ipv6cp_reqci -- 相手の構成æƒ
    502 å ±ã‚’解析する。
     454 *  ipv6cp_reqci -- 相手の構成情報を解析する。
    503455 */
    504456
     
    511463
    512464        rp = ap = input->buf +  sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    513                                 /* rp: REJ、ap: ACK する CI のポインタ  */
    514                                 /* 拒否する場合は、引数 buf に上書きする。     */
     465                                /* rp: REJ、ap: ACK する CI のポインタ  */
     466                                /* 拒否する場合は、引数 buf に上書きする。       */
    515467        len   = input->len - (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR));
    516468        np    = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    517         final = PPP_CONFACK;    /* 最終的に送信するコード */
     469        final = PPP_CONFACK;    /* 最終的に送信するコード */
    518470        while (len > 0) {
    519471                code = PPP_CONFACK;
    520                 cp   = ap;      /* cp: 現在処理中の CI    */
     472                cp   = ap;      /* cp: 現在処理中の CI        */
    521473
    522474                if (len < sizeof(T_PPP_CI_HDR)) {
    523475
    524                         /* 残りが CI ヘッダより短い */
     476                        /* 残りが CI ヘッダより短い */
    525477                        syslog(LOG_NOTICE, "[PPP/IPV6CP] bad CI len: %d.", len);
    526                         cilen = len;    /* データ長が異常の場合の処置      */
    527                         len  = 0;       /* ループから抜ける。          */
     478                        cilen = len;    /* データ長が異常の場合の処置        */
     479                        len  = 0;       /* ループから抜ける。            */
    528480                        code  = PPP_CONFREJ;
    529481                        goto endswitch;
    530482                        }
    531483
    532                 type  = *ap ++; /* CI の型            */
    533                 cilen = *ap ++; /* CI の長さ         */
     484                type  = *ap ++; /* CI の型                */
     485                cilen = *ap ++; /* CI の長さ               */
    534486                if (len < cilen) {
    535487
    536                         /* 残りが CI 長より短い */
     488                        /* 残りが CI 長より短い */
    537489                        syslog(LOG_NOTICE, "[PPP/IPV6CP] bad CI len: %d.", cilen);
    538                         cilen = len;    /* データ長が異常の場合の処置      */
    539                         len  = 0;       /* ループから抜ける。          */
     490                        cilen = len;    /* データ長が異常の場合の処置        */
     491                        len  = 0;       /* ループから抜ける。            */
    540492                        code  = PPP_CONFREJ;
    541493                        goto endswitch;
     
    543495                len -= sizeof(T_PPP_CI_HDR);
    544496
    545                 /* CI の型により分岐する。*/
     497                /* CI の型により分岐する。*/
    546498                switch (type) {
    547499
    548                 case IPV6CP_CIT_ADDR:   /* IPv6 アドレス */
    549 
    550                         /* CI 長が、ヘッダ + 4 オクテットでなければエラー */
     500                case IPV6CP_CIT_ADDR:   /* IPv6 アドレス */
     501
     502                        /* CI 長が、ヘッダ + 4 オクテットでなければエラー */
    551503                        if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(addr))
    552504                                code = PPP_CONFREJ;
     
    564516                                        code = PPP_CONFNAK;
    565517                                        }
    566 #if 1   /* 要確認 */
     518#if 1   /* 要確認 */
    567519                                else if (IN6_IS_ADDR_UNSPECIFIED(&addr) &&
    568520                                         IN6_IS_ADDR_UNSPECIFIED(&ipv6cp_remote_neg_cfg.in6_ifaddrs[0]))
     
    585537
    586538                if (code == PPP_CONFNAK) {
    587                         /* CI の型が Magic Number の場合を除いて、NAK の回数が   */
    588                         /* 最大値 MAX_PPP_FAILURES  をè¶
    589 ãˆãŸã‚‰æ‹’否する。        */
     539                        /* CI の型が Magic Number の場合を除いて、NAK の回数が */
     540                        /* 最大値 MAX_PPP_FAILURES  を超えたら拒否する。     */
    590541                        if (fsm->failures >= MAX_PPP_FAILURES)
    591542                                code = PPP_CONFREJ;
     
    594545                        }
    595546
    596                 /* この CI を拒否する */
     547                /* この CI を拒否する */
    597548                if (code == PPP_CONFREJ) {
    598                         if (rp < cp)            /* 前に詰める。*/
     549                        if (rp < cp)            /* 前に詰める。*/
    599550                                memcpy(rp, cp, cilen);
    600551                        rp += cilen;
     
    606557                }
    607558
    608         /* 最終的な長さを調整する。*/
     559        /* 最終的な長さを調整する。*/
    609560        switch (final) {
    610561        case PPP_CONFNAK:
     
    624575
    625576/*
    626  *  ipv6cp_up -- リンク接続を確立する。
     577 *  ipv6cp_up -- リンク接続を確立する。
    627578 */
    628579
     
    630581ipv6cp_up (T_PPP_FSM *fsm)
    631582{
    632         /* 自構成æƒ
    633 å ±ã®åˆæœŸè¨­å®š */
     583        /* 自構成情報の初期設定 */
    634584        ipv6cp_local_ack_cfg = ipv6cp_local_neg_cfg;
    635585
     
    642592
    643593/*
    644  *  ipv6cp_down -- リンク接続を解放する。
     594 *  ipv6cp_down -- リンク接続を解放する。
    645595 */
    646596
     
    653603
    654604/*
    655  *  ipv6cp_finished -- 下位層を終了する。
     605 *  ipv6cp_finished -- 下位層を終了する。
    656606 */
    657607
     
    662612
    663613/*
    664  *  ipv6cp_protrej -- Proto-REJ を受信したときの処理
     614 *  ipv6cp_protrej -- Proto-REJ を受信したときの処理
    665615 */
    666616
     
    672622
    673623/*
    674  *  ipv6cp_lowerup -- IPV6CP 下位層を起動する。
     624 *  ipv6cp_lowerup -- IPV6CP 下位層を起動する。
    675625 */
    676626
     
    682632
    683633/*
    684  *  ipv6cp_lowerdown -- IPV6CP 下位層を停止する。
     634 *  ipv6cp_lowerdown -- IPV6CP 下位層を停止する。
    685635 */
    686636
     
    692642
    693643/*
    694  *  ipv6cp_open -- IPV6CP のオープン
     644 *  ipv6cp_open -- IPV6CP のオープン
    695645 */
    696646
     
    702652
    703653/*
    704  *  ipv6cp_close -- IPV6CP のクローズ
     654 *  ipv6cp_close -- IPV6CP のクローズ
    705655 */
    706656
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_ipv6cp.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    9381
    9482/*
    95  *  IPV6CP の構成æƒ
    96 å ± (CI)
     83 *  IPV6CP の構成情報 (CI)
    9784 */
    9885
    9986/*
    100  *  CI の型
     87 *  CI の型
    10188 */
    10289
    103 #define IPV6CP_CIT_ADDRS                UINT_C(1)       /* IP アドレス (廃棄)     */
    104 #define IPV6CP_CIT_COMP_TYPE    UINT_C(2)       /* 圧縮方式         */
    105 #define IPV6CP_CIT_ADDR         UINT_C(3)       /* IP アドレス              */
     90#define IPV6CP_CIT_ADDRS                UINT_C(1)       /* IP アドレス (廃棄) */
     91#define IPV6CP_CIT_COMP_TYPE    UINT_C(2)       /* 圧縮方式         */
     92#define IPV6CP_CIT_ADDR         UINT_C(3)       /* IP アドレス              */
    10693
    10794/*
    108  *  前方参ç
    109 §
     95 *  前方参照
    11096 */
    11197
     
    119105
    120106/*
    121  *  変数
     107 *  変数
    122108 */
    123109
     
    134120
    135121/*
    136  *  関数
     122 *  関数
    137123 */
    138124
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_lcp.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    113101
    114102/*
    115  *  関数
     103 *  関数
    116104 */
    117105
     
    131119
    132120/*
    133  * FSM から呼出されるコールバック関数
    134  */
    135 
    136 static void  lcp_resetci(T_PPP_FSM *fsm);       /* 自構成æƒ
    137 å ±ã‚’リセットする。     */
    138 static int_t lcp_cilen  (T_PPP_FSM *fsm);       /* 構成æƒ
    139 å ±ã®é•·ã•ã‚’返す。                */
     121 * FSM から呼出されるコールバック関数
     122 */
     123
     124static void  lcp_resetci(T_PPP_FSM *fsm);       /* 自構成情報をリセットする。        */
     125static int_t lcp_cilen  (T_PPP_FSM *fsm);       /* 構成情報の長さを返す。          */
    140126static void  lcp_addci  (T_PPP_FSM *fsm, T_NET_BUF *output);
    141                                                 /* 自構成æƒ
    142 å ±ã‚’追加する。           */
     127                                                /* 自構成情報を追加する。          */
    143128static bool_t lcp_ackci (T_PPP_FSM *fsm, T_NET_BUF *input);
    144                                                 /* ACK を受信したときの処理   */
     129                                                /* ACK を受信したときの処理       */
    145130static bool_t lcp_nakci (T_PPP_FSM *fsm, T_NET_BUF *input);
    146                                                 /* NAK を受信したときの処理   */
     131                                                /* NAK を受信したときの処理       */
    147132static bool_t lcp_rejci (T_PPP_FSM *fsm, T_NET_BUF *input);
    148                                                 /* REJ を受信したときの処理   */
     133                                                /* REJ を受信したときの処理       */
    149134static int_t lcp_reqci  (T_PPP_FSM *fsm, T_NET_BUF *input, T_NET_BUF *output);
    150                                                 /* 相手の構成æƒ
    151 å ±ã‚’確認する。   */
    152 static void lcp_up      (T_PPP_FSM *fsm);       /* リンク接続を確立する。            */
    153 static void lcp_starting(T_PPP_FSM *fsm);       /* 下位層を開始する。          */
     135                                                /* 相手の構成情報を確認する。        */
     136static void lcp_up      (T_PPP_FSM *fsm);       /* リンク接続を確立する。          */
     137static void lcp_starting(T_PPP_FSM *fsm);       /* 下位層を開始する。            */
    154138static bool_t lcp_extcode       (T_PPP_FSM *fsm, uint8_t code, uint8_t id, T_NET_BUF *input);
    155                                                 /* 不明な CP を受信したときの処理  */
     139                                                /* 不明な CP を受信したときの処理    */
    156140static void lcp_rprotrej(T_PPP_FSM *fsm, T_NET_BUF *input);
    157                                                 /* Proto-REJ を受信したときの処理     */
    158 /*
    159  *  変数
    160  */
    161 
    162 static T_LCP_CONFIGS lcp_def_cfg = {            /* 構成æƒ
    163 å ±ã®åˆæœŸè¨­å®šå€¤           */
     141                                                /* Proto-REJ を受信したときの処理 */
     142/*
     143 *  変数
     144 */
     145
     146static T_LCP_CONFIGS lcp_def_cfg = {            /* 構成情報の初期設定値           */
    164147        DEF_REMOTE_ACCM,                        /* ACCM                         */
    165148
    166149#ifdef LCP_CFG_MAGIC
    167150
    168         ULONG_C(0),                             /* マジック番号                   */
     151        ULONG_C(0),                             /* マジック番号                       */
    169152
    170153#endif  /* of #ifdef LCP_CFG_MAGIC */
    171154
    172155        DEF_PPP_MTU,                            /* MRU                          */
    173         UINT_C(0),                              /* オプションフラグ             */
     156        UINT_C(0),                              /* オプションフラグ             */
    174157        };
    175158
    176 static T_LCP_CONFIGS lcp_local_def_cfg = {      /* 自構成æƒ
    177 å ±ã®è¦å®šå€¤         */
     159static T_LCP_CONFIGS lcp_local_def_cfg = {      /* 自構成情報の規定値            */
    178160        DEF_LOCAL_ACCM,                         /* ACCM                         */
    179161
    180162#ifdef LCP_CFG_MAGIC
    181163
    182         ULONG_C(0),                             /* マジック番号                   */
     164        ULONG_C(0),                             /* マジック番号                       */
    183165
    184166#endif  /* of #ifdef LCP_CFG_MAGIC */
    185167
    186168        DEF_PPP_MTU,                            /* MRU                          */
    187         DEF_LCP_LOCAL_CFGS,                     /* オプションフラグ             */
     169        DEF_LCP_LOCAL_CFGS,                     /* オプションフラグ             */
    188170        };
    189171
    190 static T_LCP_CONFIGS lcp_local_neg_cfg;         /* ネゴ中の自構成æƒ
    191 å ±             */
    192 
    193 static T_LCP_CONFIGS lcp_remote_neg_cfg;        /* ネゴ中の相手の構成æƒ
    194 å ±             */
     172static T_LCP_CONFIGS lcp_local_neg_cfg;         /* ネゴ中の自構成情報            */
     173
     174static T_LCP_CONFIGS lcp_remote_neg_cfg;        /* ネゴ中の相手の構成情報          */
    195175
    196176#if DEF_LCP_LOCAL_CFGS & LCP_CFG_MAGIC
     
    203183
    204184/*
    205  *  å
    206 ¨åŸŸå¤‰æ•°
     185 *  全域変数
    207186 */
    208187
    209188T_PPP_FSM_CALLBACKS lcp_callbacks = {
    210         lcp_resetci,                    /* 自構成æƒ
    211 å ±ã‚’リセットする。     */
    212         lcp_cilen,                      /* 構成æƒ
    213 å ±ã®é•·ã•ã‚’返す。                */
    214         lcp_addci,                      /* 自構成æƒ
    215 å ±ã‚’追加する。           */
    216         lcp_ackci,                      /* ACK を受信したときの処理   */
    217         lcp_nakci,                      /* NAK を受信したときの処理   */
    218         lcp_rejci,                      /* REJ を受信したときの処理   */
    219         lcp_reqci,                      /* 相手の構成æƒ
    220 å ±ã‚’確認する。   */
    221         lcp_up,                         /* リンク接続を確立する。            */
    222         lcp_down,                       /* リンク接続を解放する。            */
    223         lcp_starting,                   /* 下位層を開始する。          */
    224         lcp_finished,                   /* 下位層を終了する。          */
    225         NULL,                           /* 再送する。                      */
    226         lcp_extcode,                    /* 不明な CP を受信したときの処理  */
     189        lcp_resetci,                    /* 自構成情報をリセットする。        */
     190        lcp_cilen,                      /* 構成情報の長さを返す。          */
     191        lcp_addci,                      /* 自構成情報を追加する。          */
     192        lcp_ackci,                      /* ACK を受信したときの処理       */
     193        lcp_nakci,                      /* NAK を受信したときの処理       */
     194        lcp_rejci,                      /* REJ を受信したときの処理       */
     195        lcp_reqci,                      /* 相手の構成情報を確認する。        */
     196        lcp_up,                         /* リンク接続を確立する。          */
     197        lcp_down,                       /* リンク接続を解放する。          */
     198        lcp_starting,                   /* 下位層を開始する。            */
     199        lcp_finished,                   /* 下位層を終了する。            */
     200        NULL,                           /* 再送する。                        */
     201        lcp_extcode,                    /* 不明な CP を受信したときの処理    */
    227202        };
    228203
    229204T_PPP_FSM lcp_fsm = {
    230         &lcp_callbacks,                 /* コールバック関数             */
    231         PPP_LCP,                        /* プロトコル                      */
     205        &lcp_callbacks,                 /* コールバック関数             */
     206        PPP_LCP,                        /* プロトコル                        */
    232207        };
    233208
    234209T_PPP_PROTENT lcp_protent = {
    235210        PPP_LCP,
    236         lcp_init,                       /* 初期化                    */
    237         lcp_input,                      /* å
    238 ¥åŠ›                            */
    239         lcp_protrej,                    /* Proto-REJ 受信処理               */
    240         NULL,                           /* 下位層を起動する             */
    241         lcp_lowerdown,                  /* 下位層を停止する             */
    242         NULL,                           /* オープンする                   */
    243         lcp_close,                      /* クローズする                   */
    244         NULL,                           /* データå
    245 ¥åŠ›                    */
     211        lcp_init,                       /* 初期化                  */
     212        lcp_input,                      /* 入力                           */
     213        lcp_protrej,                    /* Proto-REJ 受信処理               */
     214        NULL,                           /* 下位層を起動する             */
     215        lcp_lowerdown,                  /* 下位層を停止する             */
     216        NULL,                           /* オープンする                       */
     217        lcp_close,                      /* クローズする                       */
     218        NULL,                           /* データ入力                        */
    246219        };
    247220
    248 T_LCP_CONFIGS lcp_local_ack_cfg;        /* 相手に許可されたの自構成æƒ
    249 å ±     */
    250 T_LCP_CONFIGS lcp_remote_ack_cfg;       /* 相手に許可した構成æƒ
    251 å ±             */
    252 
    253 /*
    254  *  lcp_init -- LCP モジュールの初期化
     221T_LCP_CONFIGS lcp_local_ack_cfg;        /* 相手に許可されたの自構成情報       */
     222T_LCP_CONFIGS lcp_remote_ack_cfg;       /* 相手に許可した構成情報          */
     223
     224/*
     225 *  lcp_init -- LCP モジュールの初期化
    255226 */
    256227
     
    262233
    263234/*
    264  *  lcp_input -- LCP å
    265 ¥åŠ›
     235 *  lcp_input -- LCP 入力
    266236 */
    267237
     
    275245
    276246/*
    277  *  lcp_resetci -- LCPの構成æƒ
    278 å ±ã‚’リセットする。
     247 *  lcp_resetci -- LCPの構成情報をリセットする。
    279248 */
    280249
     
    288257#endif  /* of #ifdef LCP_CFG_MAGIC */
    289258
    290         /* 自構成æƒ
    291 å ±ã®åˆæœŸè¨­å®š */
     259        /* 自構成情報の初期設定 */
    292260        lcp_local_neg_cfg       = lcp_local_def_cfg;
    293261        lcp_local_ack_cfg       = lcp_def_cfg;
    294262
    295         /* 相手の構成æƒ
    296 å ±ã®åˆæœŸè¨­å®š */
     263        /* 相手の構成情報の初期設定 */
    297264        lcp_remote_neg_cfg      = lcp_def_cfg;
    298265        lcp_remote_ack_cfg      = lcp_def_cfg;
     
    310277
    311278/*
    312  *  lcp_cilen -- 構成æƒ
    313 å ±ã®é•·ã•ã‚’返す。
     279 *  lcp_cilen -- 構成情報の長さを返す。
    314280 */
    315281
     
    342308
    343309        if (lcp_local_neg_cfg.options & LCP_CFG_PCOMP)
    344                 cilen += sizeof(T_PPP_CI_HDR);                  /* プロトコル圧縮 */
     310                cilen += sizeof(T_PPP_CI_HDR);                  /* プロトコル圧縮 */
    345311
    346312#endif  /* of #ifdef LCP_CFG_PCOMP */
     
    349315
    350316        if (lcp_local_neg_cfg.options & LCP_CFG_ACCOMP)
    351                 cilen += sizeof(T_PPP_CI_HDR);                  /* アドレス・制御圧縮 */
     317                cilen += sizeof(T_PPP_CI_HDR);                  /* アドレス・制御圧縮 */
    352318
    353319#endif  /* of #ifdef LCP_CFG_ACCOMP */
     
    357323
    358324/*
    359  *  lcp_addci -- LCPの構成æƒ
    360 å ±ã‚’追加する。
     325 *  lcp_addci -- LCPの構成情報を追加する。
    361326 */
    362327
     
    368333        buf = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    369334
    370         /* MRU オプションを追加する。 */
     335        /* MRU オプションを追加する。 */
    371336        if (lcp_local_neg_cfg.options & LCP_CFG_MRU) {
    372337                *buf ++ = LCP_CIT_MRU;
     
    376341                }
    377342
    378         /* ACCM オプションを追加する。 */
     343        /* ACCM オプションを追加する。 */
    379344        if (lcp_local_neg_cfg.options & LCP_CFG_ACCM) {
    380345                *buf ++ = LCP_CIT_ACCM;
     
    386351#ifdef LCP_CFG_MAGIC
    387352
    388         /* Magic Number オプションを追加する。 */
     353        /* Magic Number オプションを追加する。 */
    389354        if (lcp_local_neg_cfg.options & LCP_CFG_MAGIC) {
    390355                *buf ++ = LCP_CIT_MAGIC;
     
    398363#ifdef LCP_CFG_PAP
    399364
    400         /* 認証プロトコルオプションを追加する。 */
     365        /* 認証プロトコルオプションを追加する。 */
    401366        if (lcp_local_neg_cfg.options & LCP_CFG_PAP) {
    402367                *buf ++ = LCP_CIT_AUTH;
     
    410375#ifdef LCP_CFG_PCOMP
    411376
    412         /* プロトコル圧縮オプションを追加する。 */
     377        /* プロトコル圧縮オプションを追加する。 */
    413378        if (lcp_local_neg_cfg.options & LCP_CFG_PCOMP) {
    414379                *buf ++ = LCP_CIT_PCOMP;
     
    420385#ifdef LCP_CFG_ACCOMP
    421386
    422         /* アドレス・制御圧縮オプションを追加する。 */
     387        /* アドレス・制御圧縮オプションを追加する。 */
    423388        if (lcp_local_neg_cfg.options & LCP_CFG_ACCOMP) {
    424389                *buf ++ = LCP_CIT_ACCOMP;
     
    430395
    431396/*
    432  *  lcp_ackci -- ACK を受信したときの処理
     397 *  lcp_ackci -- ACK を受信したときの処理
    433398 *
    434  *      戻り値:      TURE  ACK は正常
    435  *              false ACK は異常
     399 *      戻り値:    TURE  ACK は正常
     400 *              false ACK は異常
    436401 */
    437402
     
    446411
    447412        /*
    448          *  構成æƒ
    449 å ±ã¯é€ä¿¡ã—た順に完å
    450 ¨ã«ä¸€è‡´ã—なければならない。
    451          *  従って、lcp_addci で作成した順に解析する。
     413         *  構成情報は送信した順に完全に一致しなければならない。
     414         *  従って、lcp_addci で作成した順に解析する。
    452415         */
    453416
    454         /* MRU オプションを解析する。 */
     417        /* MRU オプションを解析する。 */
    455418        if (lcp_local_neg_cfg.options & LCP_CFG_MRU) {
    456419                if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint16_t)       ||
     
    463426                }
    464427
    465         /* ACCM オプションを解析する。 */
     428        /* ACCM オプションを解析する。 */
    466429        if (lcp_local_neg_cfg.options & LCP_CFG_ACCM) {
    467430                if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)       ||
     
    476439#ifdef LCP_CFG_MAGIC
    477440
    478         /* Magic Number オプションを解析する。 */
     441        /* Magic Number オプションを解析する。 */
    479442        if (lcp_local_neg_cfg.options & LCP_CFG_MAGIC) {
    480443                if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)       ||
     
    491454#ifdef LCP_CFG_PAP
    492455
    493         /* 認証プロトコルオプションを解析する。 */
     456        /* 認証プロトコルオプションを解析する。 */
    494457        if (lcp_local_neg_cfg.options & LCP_CFG_PAP) {
    495458                if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint16_t)       ||
     
    506469#ifdef LCP_CFG_PCOMP
    507470
    508         /* プロトコル圧縮オプションを解析する。 */
     471        /* プロトコル圧縮オプションを解析する。 */
    509472        if (lcp_local_neg_cfg.options & LCP_CFG_PCOMP) {
    510473                if (len < sizeof(T_PPP_CI_HDR)                  ||
     
    519482#ifdef LCP_CFG_ACCOMP
    520483
    521         /* アドレス・制御圧縮オプションを解析する。 */
     484        /* アドレス・制御圧縮オプションを解析する。 */
    522485        if (lcp_local_neg_cfg.options & LCP_CFG_ACCOMP) {
    523486                if (len < sizeof(T_PPP_CI_HDR)                  ||
     
    533496
    534497/*
    535  *  lcp_nakci -- NAK を受信したときの処理
     498 *  lcp_nakci -- NAK を受信したときの処理
    536499 *
    537  *      戻り値:      1  NAK は正常
    538  *              0  NAK は異常
     500 *      戻り値:    1  NAK は正常
     501 *              0  NAK は異常
    539502 */
    540503
     
    543506{
    544507        T_LCP_CONFIGS   new_cfg;
    545         bool_t          loop = false;   /* ループバックをチェック */
     508        bool_t          loop = false;   /* ループバックをチェック */
    546509        uint32_t        cilong;
    547510        uint16_t        cishort, len;
     
    553516        new_cfg = lcp_local_neg_cfg;
    554517
    555         /* MRU オプションを解析する。 */
     518        /* MRU オプションを解析する。 */
    556519        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint16_t)              &&
    557520            * buf      == LCP_CIT_MRU                           &&
     
    565528                }
    566529
    567         /* ACCM オプションを解析する。 */
     530        /* ACCM オプションを解析する。 */
    568531        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)              &&
    569532            * buf      == LCP_CIT_ACCM                          &&
     
    578541#ifdef LCP_CFG_MAGIC
    579542
    580         /* Magic Number オプションを解析する。 */
     543        /* Magic Number オプションを解析する。 */
    581544        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)              &&
    582545            * buf      == LCP_CIT_MAGIC                         &&
     
    594557#ifdef LCP_CFG_PAP
    595558
    596         /* 認証プロトコルオプションを解析する。 */
     559        /* 認証プロトコルオプションを解析する。 */
    597560        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint16_t)              &&
    598561            * buf      == LCP_CIT_AUTH                          &&
     
    612575#ifdef LCP_CFG_PCOMP
    613576
    614         /* プロトコル圧縮オプションを解析する。 */
     577        /* プロトコル圧縮オプションを解析する。 */
    615578        if (len >= sizeof(T_PPP_CI_HDR)                         &&
    616579            * buf      == LCP_CIT_PCOMP                         &&
     
    626589#ifdef LCP_CFG_ACCOMP
    627590
    628         /* アドレス・制御圧縮オプションを解析する。 */
     591        /* アドレス・制御圧縮オプションを解析する。 */
    629592        if (len >= sizeof(T_PPP_CI_HDR)                         &&
    630593            * buf      == LCP_CIT_ACCOMP                        &&
     
    638601#endif  /* of #ifdef LCP_CFG_ACCOMP */
    639602
    640         /* 後は無視する。*/
     603        /* 後は無視する。*/
    641604        while (len > sizeof(T_PPP_CI_HDR)) {
    642605                cilen = *(buf + 1);
     
    647610                }
    648611
    649         /* 長さが 0 でなければエラー */
     612        /* 長さが 0 でなければエラー */
    650613        if (len != 0)
    651614                return 0;
    652615
    653         /* 新しいオプションを設定する。*/
     616        /* 新しいオプションを設定する。*/
    654617        if (fsm->state != PPP_FSM_OPENED) {
    655618                if (loop) {
     
    663626
    664627/*
    665  *  lcp_rejci -- REJ を受信したときの処理
     628 *  lcp_rejci -- REJ を受信したときの処理
    666629 *
    667  *      戻り値:      1  REJ は正常
    668  *              0  REJ は異常
     630 *      戻り値:    1  REJ は正常
     631 *              0  REJ は異常
    669632 */
    670633
     
    682645        new_cfg = lcp_local_neg_cfg;
    683646
    684         /* MRU オプションを解析する。 */
     647        /* MRU オプションを解析する。 */
    685648        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint16_t)              &&
    686649            * buf      == LCP_CIT_MRU                                   &&
     
    696659                }
    697660               
    698         /* ACCM オプションを解析する。 */
     661        /* ACCM オプションを解析する。 */
    699662        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)              &&
    700663            * buf      == LCP_CIT_ACCM                                  &&
     
    712675#ifdef LCP_CFG_MAGIC
    713676
    714         /* Magic Number オプションを解析する。 */
     677        /* Magic Number オプションを解析する。 */
    715678        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)              &&
    716679            * buf      == LCP_CIT_MAGIC                                 &&
     
    730693#ifdef LCP_CFG_PAP
    731694
    732         /* 認証プロトコルオプションを解析する。 */
     695        /* 認証プロトコルオプションを解析する。 */
    733696        if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint16_t)              &&
    734697            * buf      == LCP_CIT_AUTH                                  &&
     
    748711#ifdef LCP_CFG_PCOMP
    749712
    750         /* プロトコル圧縮オプションを解析する。 */
     713        /* プロトコル圧縮オプションを解析する。 */
    751714        if (len >= sizeof(T_PPP_CI_HDR)                         &&
    752715            * buf      == LCP_CIT_PCOMP                         &&
     
    762725#ifdef LCP_CFG_ACCOMP
    763726
    764         /* アドレス・制御圧縮オプションを解析する。 */
     727        /* アドレス・制御圧縮オプションを解析する。 */
    765728        if (len >= sizeof(T_PPP_CI_HDR)                         &&
    766729            * buf      == LCP_CIT_ACCOMP                        &&
     
    774737#endif  /* of #ifdef LCP_CFG_ACCOMP */
    775738
    776         /* 長さが 0 でなければエラー */
     739        /* 長さが 0 でなければエラー */
    777740        if (len != 0)
    778741                return 0;
    779742
    780         /* 新しいオプションを設定する。*/
     743        /* 新しいオプションを設定する。*/
    781744        if (fsm->state != PPP_FSM_OPENED)
    782745                lcp_local_neg_cfg = new_cfg;
     
    786749
    787750/*
    788  *  lcp_reqci -- 相手の構成æƒ
    789 å ±ã‚’解析する。
     751 *  lcp_reqci -- 相手の構成情報を解析する。
    790752 */
    791753
     
    803765
    804766        rp = ap = input->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    805                                 /* rp: REJ、ap: ACK する CI のポインタ          */
    806                                 /* 拒否する場合は、引数 input に上書きする。   */
     767                                /* rp: REJ、ap: ACK する CI のポインタ          */
     768                                /* 拒否する場合は、引数 input に上書きする。     */
    807769        len   = input->len - (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR));
    808770        np    = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    809         final = PPP_CONFACK;    /* 最終的に送信するコード */
     771        final = PPP_CONFACK;    /* 最終的に送信するコード */
    810772        while (len > 0) {
    811773                code = PPP_CONFACK;
    812                 cp   = ap;      /* cp: 現在処理中の CI    */
     774                cp   = ap;      /* cp: 現在処理中の CI        */
    813775
    814776                if (len < sizeof(T_PPP_CI_HDR)) {
    815777
    816                         /* 残りが CI ヘッダより短い */
     778                        /* 残りが CI ヘッダより短い */
    817779                        syslog(LOG_WARNING, "[PPP/LCP] bad CI len: %d.", len);
    818                         cilen = len;    /* データ長が異常の場合の処置      */
    819                         len   = 0;      /* ループから抜ける。          */
     780                        cilen = len;    /* データ長が異常の場合の処置        */
     781                        len   = 0;      /* ループから抜ける。            */
    820782                        code  = PPP_CONFREJ;
    821783                        goto endswitch;
    822784                        }
    823785
    824                 type  = *ap ++; /* CI の型            */
    825                 cilen = *ap ++; /* CI の長さ         */
     786                type  = *ap ++; /* CI の型                */
     787                cilen = *ap ++; /* CI の長さ               */
    826788                if (len < cilen) {
    827789
    828                         /* 残りが CI 長より短い */
     790                        /* 残りが CI 長より短い */
    829791                        syslog(LOG_WARNING, "[PPP/LCP] bad CI len: %d.", cilen);
    830                         cilen = len;    /* データ長が異常の場合の処置      */
    831                         len   = 0;      /* ループから抜ける。          */
     792                        cilen = len;    /* データ長が異常の場合の処置        */
     793                        len   = 0;      /* ループから抜ける。            */
    832794                        code  = PPP_CONFREJ;
    833795                        goto endswitch;
     
    835797                len -= sizeof(T_PPP_CI_HDR);
    836798
    837                 /* CI の型により分岐する。*/
     799                /* CI の型により分岐する。*/
    838800                switch (type) {
    839801
    840                 case LCP_CIT_MRU:       /* 最大受信量 (Maximum Receive Unit) */
     802                case LCP_CIT_MRU:       /* 最大受信量 (Maximum Receive Unit) */
    841803
    842804#if (DEF_LCP_REMOTE_CFGS & LCP_CFG_MRU) == 0
     
    846808#else   /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_MRU) == 0 */
    847809
    848                         /* CI 長が、ヘッダ + 2 オクテットでなければ REJ */
     810                        /* CI 長が、ヘッダ + 2 オクテットでなければ REJ */
    849811                        if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(uint16_t))
    850812                                code = PPP_CONFREJ;
     
    852814                                cishort = ntohs(*(uint16_t*)ap);
    853815
    854                                 /* 最小受信量より小さければ NAK */
     816                                /* 最小受信量より小さければ NAK */
    855817                                if (cishort < MIN_PPP_MTU) {
    856818                                        *np ++ = LCP_CIT_MRU;
     
    878840#else   /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_ACCM) == 0 */
    879841
    880                         /* CI 長が、ヘッダ + 4 オクテットでなければ REJ */
     842                        /* CI 長が、ヘッダ + 4 オクテットでなければ REJ */
    881843                        if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(uint32_t))
    882844                                code = PPP_CONFREJ;
     
    890852                        break;
    891853
    892                 case LCP_CIT_MAGIC:     /* マジック番号 */
     854                case LCP_CIT_MAGIC:     /* マジック番号 */
    893855
    894856#if (DEF_LCP_REMOTE_CFGS & LCP_CFG_MAGIC) == 0
     
    898860#else   /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_MAGIC) == 0 */
    899861
    900                         /* CI 長が、ヘッダ + 4 オクテットでなければ REJ */
     862                        /* CI 長が、ヘッダ + 4 オクテットでなければ REJ */
    901863                        if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(uint32_t))
    902864                                code = PPP_CONFREJ;
     
    904866                                ntoahl(cilong, ap);
    905867
    906                                 /* 番号が自分と同じなら NAK */
     868                                /* 番号が自分と同じなら NAK */
    907869                                if (cilong == lcp_local_neg_cfg.magic) {
    908870                                        cilong = net_rand();
     
    924886
    925887#ifdef LCP_CFG_PAP
    926                 /* CHAP は実è£
    927 äºˆå®š  */
    928 
    929                 case LCP_CIT_AUTH:      /* 認証プロトコル */
    930 
    931                         /* CI 長が、ヘッダ + 2 オクテットより短いときはエラー */
     888                /* CHAP は実装予定   */
     889
     890                case LCP_CIT_AUTH:      /* 認証プロトコル */
     891
     892                        /* CI 長が、ヘッダ + 2 オクテットより短いときはエラー */
    932893                        if (cilen < sizeof(T_PPP_CI_HDR) + sizeof(uint16_t))
    933894                                code = PPP_CONFREJ;
     
    935896                                cishort = ntohs(*(uint16_t*)ap);
    936897
    937                                 /* 認証プロトコルにより分岐する   */
     898                                /* 認証プロトコルにより分岐する       */
    938899                                if (cishort == PPP_PAP &&
    939900                                    cilen   == sizeof(T_PPP_CI_HDR) + sizeof(uint16_t) &&
     
    949910#ifdef LCP_CFG_PCOMP
    950911
    951                 case LCP_CIT_PCOMP:     /* プロトコル部圧縮は実è£
    952 äºˆå®š */
     912                case LCP_CIT_PCOMP:     /* プロトコル部圧縮は実装予定 */
    953913
    954914#if (DEF_LCP_REMOTE_CFGS & LCP_CFG_PCOMP) == 0
     
    958918#else   /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_PCOMP) == 0 */
    959919
    960                         /* CI 長が、ヘッダ長だけでなければ REJ */
     920                        /* CI 長が、ヘッダ長だけでなければ REJ */
    961921                        if (cilen != sizeof(T_PPP_CI_HDR))
    962922                                code = PPP_CONFREJ;
     
    972932#ifdef LCP_CFG_ACCOMP
    973933
    974                 case LCP_CIT_ACCOMP:    /* アドレス・制御部圧縮 */
     934                case LCP_CIT_ACCOMP:    /* アドレス・制御部圧縮 */
    975935
    976936#if (DEF_LCP_REMOTE_CFGS & LCP_CFG_ACCOMP) == 0
     
    980940#else   /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_ACCOMP) == 0 */
    981941
    982                         /* CI 長が、ヘッダ長だけでなければ REJ */
     942                        /* CI 長が、ヘッダ長だけでなければ REJ */
    983943                        if (cilen != sizeof(T_PPP_CI_HDR))
    984944                                code = PPP_CONFREJ;
     
    999959endswitch:
    1000960                if (code == PPP_CONFNAK) {
    1001                         /* CI の型が Magic Number の場合を除いて、NAK の回数が   */
    1002                         /* 最大値 MAX_PPP_FAILURES  をè¶
    1003 ãˆãŸã‚‰æ‹’否する。        */
     961                        /* CI の型が Magic Number の場合を除いて、NAK の回数が */
     962                        /* 最大値 MAX_PPP_FAILURES  を超えたら拒否する。     */
    1004963                        if (fsm->failures >= MAX_PPP_FAILURES && type != LCP_CIT_MAGIC)
    1005964                                code = PPP_CONFREJ;
     
    1008967                        }
    1009968
    1010                 /* この CI を拒否する */
     969                /* この CI を拒否する */
    1011970                if (code == PPP_CONFREJ) {
    1012                         if (rp < cp)            /* 前に詰める。*/
     971                        if (rp < cp)            /* 前に詰める。*/
    1013972                                memcpy(rp, cp, cilen);
    1014973                        rp += cilen;
     
    1020979                }
    1021980
    1022         /* 最終的な長さを調整する。*/
     981        /* 最終的な長さを調整する。*/
    1023982        switch (final) {
    1024983        case PPP_CONFNAK:
     
    1037996
    1038997/*
    1039  *  lcp_up -- リンク接続を確立する (Phase: Establish に移行する)。
     998 *  lcp_up -- リンク接続を確立する (Phase: Establish に移行する)。
    1040999 */
    10411000
     
    10431002lcp_up (T_PPP_FSM *fsm)
    10441003{
    1045         /* 自構成æƒ
    1046 å ±ã®è¨­å®š */
     1004        /* 自構成情報の設定 */
    10471005        lcp_local_ack_cfg = lcp_local_neg_cfg;
    10481006
    1049         /* 相手の構成æƒ
    1050 å ±ã®è¨­å®š */
     1007        /* 相手の構成情報の設定 */
    10511008        lcp_remote_ack_cfg = lcp_remote_neg_cfg;
    10521009
     
    10611018
    10621019/*
    1063  *  lcp_starting -- 下位層を開始する。
     1020 *  lcp_starting -- 下位層を開始する。
    10641021 */
    10651022
     
    10711028
    10721029/*
    1073  *  lcp_extcode -- LCP 特有の CP を受信したときの処理
     1030 *  lcp_extcode -- LCP 特有の CP を受信したときの処理
    10741031 */
    10751032
     
    11281085
    11291086/*
    1130  *  lcp_rprotrej -- Proto-REJ を受信したときの処理
     1087 *  lcp_rprotrej -- Proto-REJ を受信したときの処理
    11311088 */
    11321089
     
    11491106                }
    11501107
    1151         /* 上位プロトコルを初期化する */
     1108        /* 上位プロトコルを初期化する */
    11521109        for (ix = 0; (entry = protocols[ix]) != NULL; ix ++)
    11531110                if (entry->proto == proto) {
     
    11601117
    11611118/*
    1162  *  lcp_protrej -- Proto-REJ を受信したときの処理
     1119 *  lcp_protrej -- Proto-REJ を受信したときの処理
    11631120 */
    11641121
     
    11701127
    11711128/*
    1172  *  lcp_lowerup -- LCP 下位層を起動する。
     1129 *  lcp_lowerup -- LCP 下位層を起動する。
    11731130 */
    11741131
     
    11801137
    11811138/*
    1182  *  lcp_lowerdown -- LCP 下位層を停止する。
     1139 *  lcp_lowerdown -- LCP 下位層を停止する。
    11831140 */
    11841141
     
    11901147
    11911148/*
    1192  *  lcp_open -- LCP のオープ
     1149 *  lcp_open -- LCP のオープ
    11931150 */
    11941151
     
    11961153lcp_open (uint8_t open_mode)
    11971154{
    1198         ppp_open_mode = open_mode;      /* オープン時の動作モード    */
     1155        ppp_open_mode = open_mode;      /* オープン時の動作モード  */
    11991156        fsm_open(&lcp_fsm);
    12001157        }
    12011158
    12021159/*
    1203  *  lcp_close -- LCP のクローズ
     1160 *  lcp_close -- LCP のクローズ
    12041161 */
    12051162
     
    12191176
    12201177/*
    1221  *  lcp_sprotrej -- 認識できないプロトコルが送られてきたときの処理
     1178 *  lcp_sprotrej -- 認識できないプロトコルが送られてきたときの処理
    12221179 */
    12231180
     
    12271184        T_NET_BUF       *output;
    12281185        /*
    1229          *  Protocol-Reject を送り返す。
     1186         *  Protocol-Reject を送り返す。
    12301187         */
    12311188
     
    12401197
    12411198/*
    1242  *  lcp_down -- リンク接続を解放する (Phase: Dead に移行する)。
     1199 *  lcp_down -- リンク接続を解放する (Phase: Dead に移行する)。
    12431200 */
    12441201
     
    12571214
    12581215/*
    1259  *  lcp_finished -- 下位層を終了する。
     1216 *  lcp_finished -- 下位層を終了する。
    12601217 */
    12611218
     
    12691226
    12701227/*
    1271  *  recv_echo_rep -- ECHOREP を受信したときの処理
     1228 *  recv_echo_rep -- ECHOREP を受信したときの処理
    12721229 */
    12731230
     
    12801237        hdr = GET_PPP_CP_HDR(input);
    12811238
    1282         /* Magic Number の長さ以下ならエラー */
     1239        /* Magic Number の長さ以下ならエラー */
    12831240        if (hdr->len < sizeof(T_PPP_CP_HDR) + sizeof(uint32_t)) {
    12841241                syslog(LOG_WARNING, "[PPP/LCP] bad ECHOREP len: %d.", hdr->len);
     
    12881245        ntoahl(magic, input->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR));
    12891246
    1290         /* 受信した Magic Number が自分と同じならループしている。*/
     1247        /* 受信した Magic Number が自分と同じならループしている。*/
    12911248        if ((lcp_local_ack_cfg.options & LCP_CFG_MAGIC) && magic == lcp_local_ack_cfg.magic) {
    12921249                syslog(LOG_WARNING, "[PPP/LCP] ECHOREP looped.");
     
    12981255
    12991256/*
    1300  *  echo_timeout -- ECHO REQ/REP のタイムアウト処理
     1257 *  echo_timeout -- ECHO REQ/REP のタイムアウト処理
    13011258 */
    13021259
     
    13111268
    13121269/*
    1313  *  send_echo_req -- ECHO REQ を送信する。
     1270 *  send_echo_req -- ECHO REQ を送信する。
    13141271 */
    13151272
     
    13311288        if (fsm->state == PPP_FSM_OPENED) {
    13321289
    1333                 /* ECHOREQ を送信する。*/
     1290                /* ECHOREQ を送信する。*/
    13341291                syscall(get_net_buf(&input, sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR) + sizeof(uint32_t)));
    13351292                *(uint32_t*)(input->buf +  sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)) = lcp_local_ack_cfg.magic;
     
    13381295                echo_pending ++;
    13391296
    1340                 /* タイマーをスタートする。*/
     1297                /* タイマーをスタートする。*/
    13411298                timeout((FP)echo_timeout, fsm, LCP_ECHO_INTERVAL);
    13421299                timer_running = true;
     
    13451302
    13461303/*
    1347  *  echo_lowerup -- ECHO REQ/REP の起動
     1304 *  echo_lowerup -- ECHO REQ/REP の起動
    13481305 */
    13491306
     
    13591316
    13601317/*
    1361  *  echo_lowerdown -- ECHO REQ/REP の停止
     1318 *  echo_lowerdown -- ECHO REQ/REP の停止
    13621319 */
    13631320
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_lcp.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    9381
    9482/*
    95  *  LCP 特有の PPP リンク制御 (CP) の制御コード
     83 *  LCP 特有の PPP リンク制御 (CP) の制御コード
    9684 */
    9785
     
    10290
    10391/*
    104  *  LCP の構成æƒ
    105 å ± (CI)
     92 *  LCP の構成情報 (CI)
    10693 */
    10794
    10895/*
    109  *  CI の型
     96 *  CI の型
    11097 */
    11198
    112 #define LCP_CIT_MRU             UINT_C(1)       /* 最大受信量 (Maximum Receive Unit)       */
     99#define LCP_CIT_MRU             UINT_C(1)       /* 最大受信量 (Maximum Receive Unit) */
    113100#define LCP_CIT_ACCM            UINT_C(2)       /* Async Control Character Map          */
    114 #define LCP_CIT_AUTH            UINT_C(3)       /* 認証プロトコル                        */
    115 #define LCP_CIT_QUALITY         UINT_C(4)       /* 品質プロトコルは未実è£
    116                         */
    117 #define LCP_CIT_MAGIC           UINT_C(5)       /* マジック番号                           */
    118 #define LCP_CIT_PCOMP           UINT_C(7)       /* プロトコル部圧縮は実è£
    119 äºˆå®š          */
    120 #define LCP_CIT_ACCOMP          UINT_C(8)       /* アドレス・制御部圧縮は実è£
    121 äºˆå®š          */
    122 #define LCP_CIT_FCS_ALTER       UINT_C(9)       /* FCS-Alternatives は未実è£
    123                 */
    124 #define LCP_CIT_SELF_PAD        UINT_C(10)      /* Self-Describing-Padding は未実è£
    125         */
    126 #define LCP_CIT_CALLBACK        UINT_C(13)      /* Callback は未実è£
    127                         */
    128 #define LCP_CIT_CFRAMES         UINT_C(15)      /* Compound-Frames は未実è£
    129                 */
     101#define LCP_CIT_AUTH            UINT_C(3)       /* 認証プロトコル                      */
     102#define LCP_CIT_QUALITY         UINT_C(4)       /* 品質プロトコルは未実装                  */
     103#define LCP_CIT_MAGIC           UINT_C(5)       /* マジック番号                               */
     104#define LCP_CIT_PCOMP           UINT_C(7)       /* プロトコル部圧縮は実装予定                */
     105#define LCP_CIT_ACCOMP          UINT_C(8)       /* アドレス・制御部圧縮は実装予定              */
     106#define LCP_CIT_FCS_ALTER       UINT_C(9)       /* FCS-Alternatives は未実装                */
     107#define LCP_CIT_SELF_PAD        UINT_C(10)      /* Self-Describing-Padding は未実装 */
     108#define LCP_CIT_CALLBACK        UINT_C(13)      /* Callback は未実装                        */
     109#define LCP_CIT_CFRAMES         UINT_C(15)      /* Compound-Frames は未実装         */
    130110
    131111/*
    132  *  LCP の構成æƒ
    133 å ±ã‚ªãƒ—ション
     112 *  LCP の構成情報オプション
    134113 */
    135114
     
    139118#ifdef LCP_CFG_MAGIC
    140119
    141         uint32_t        magic;          /* マジック番号           */
     120        uint32_t        magic;          /* マジック番号               */
    142121
    143122#endif  /* of #ifdef LCP_CFG_MAGIC */
    144123
    145124        uint16_t        MRU;            /* MRU                  */
    146         uint16_t        options;        /* オプションフラグ     */
     125        uint16_t        options;        /* オプションフラグ     */
    147126        } __attribute__((packed, aligned(2)))T_LCP_CONFIGS;
    148127
    149128/*
    150  *  変数
     129 *  変数
    151130 */
    152131
    153132extern T_PPP_FSM        lcp_fsm;
    154133extern T_PPP_PROTENT    lcp_protent;
    155 extern T_LCP_CONFIGS    lcp_local_ack_cfg;      /* 相手に許可されたの自構成æƒ
    156 å ±     */
    157 extern T_LCP_CONFIGS    lcp_remote_ack_cfg;     /* 相手に許可した構成æƒ
    158 å ±             */
     134extern T_LCP_CONFIGS    lcp_local_ack_cfg;      /* 相手に許可されたの自構成情報       */
     135extern T_LCP_CONFIGS    lcp_remote_ack_cfg;     /* 相手に許可した構成情報          */
    159136
    160137/*
    161  *  関数
     138 *  関数
    162139 */
    163140
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_modem.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    4533
    4634/*
    47  *  PPP モデム制御
     35 *  PPP モデム制御
    4836 */
    4937
     
    7260
    7361/*
    74  *  å
    75 ¨åŸŸå¤‰æ•°
    76  */
    77 
    78 uint8_t modem_state = PPP_MODEM_DOWN;   /* モデムの状æ
    79 ‹               */
    80 
    81 /*
    82  *  モデムå
    83 ¥åŠ›æ–‡å­—列
     62 *  全域変数
     63 */
     64
     65uint8_t modem_state = PPP_MODEM_DOWN;   /* モデムの状態               */
     66
     67/*
     68 *  モデム入力文字列
    8469 */
    8570
     
    9479
    9580/*
    96  *  変数
     81 *  変数
    9782 */
    9883
     
    11196
    11297/*
    113  *  関数
     98 *  関数
    11499 */
    115100
     
    120105
    121106/*
    122  *  modem_getline -- モデム行å
    123 ¥åŠ›
     107 *  modem_getline -- モデム行入力
    124108 */
    125109
     
    130114
    131115        buf = nbuf->buf;
    132         size --;                        /* '\0' の分 */
     116        size --;                        /* '\0' の分 */
    133117        while (size > 0 && (*buf = HDLC_raw_getoctet()) != '\r') {
    134118                buf  ++;
     
    136120                }
    137121        *buf = '\0';
    138         HDLC_raw_getoctet();            /* \n を読み飛ばす。*/
     122        HDLC_raw_getoctet();            /* \n を読み飛ばす。*/
    139123        nbuf->len = buf - nbuf->buf;
    140124        return nbuf;
     
    142126
    143127/*
    144  *  モデム制御
     128 *  モデム制御
    145129 *
    146  *      戻り値: モデムからのリザルトコード
     130 *      戻り値: モデムからのリザルトコード
    147131 */
    148132
     
    211195
    212196/*
    213  *  init_modem -- モデムを初期化する。
     197 *  init_modem -- モデムを初期化する。
    214198 */
    215199
     
    229213
    230214/*
    231  *  wait_modem -- 接続完了までå¾
    232 ã¤ã€‚
     215 *  wait_modem -- 接続完了まで待つ。
    233216 *
    234  *      戻り値: 接続に失敗したら E_OBJ を返す。
     217 *      戻り値: 接続に失敗したら E_OBJ を返す。
    235218 */
    236219
     
    245228
    246229        if (modem_state != PPP_MODEM_CONNECT) {
    247                 /* 接続完了までå¾
    248 ã¤ã€‚*/
     230                /* 接続完了まで待つ。*/
    249231                wai_sem(SEM_MODEM_READY);
    250232                if (modem_state != PPP_MODEM_CONNECT)
     
    256238
    257239/*
    258  *  dial -- ダイヤルする。リトライ回数をセットする。
     240 *  dial -- ダイヤルする。リトライ回数をセットする。
    259241 */
    260242
     
    268250
    269251/*
    270  *  do_dial -- ダイヤルする。dial() の下請け関数
     252 *  do_dial -- ダイヤルする。dial() の下請け関数
    271253 */
    272254
     
    281263
    282264/*
    283  *  modem_putstr -- モデム文字列出力
     265 *  modem_putstr -- モデム文字列出力
    284266 */
    285267
     
    292274
    293275/*
    294  *  modem_wait -- モデムから文字列をå¾
    295 ã¤
     276 *  modem_wait -- モデムから文字列を待つ
    296277 */
    297278
     
    312293
    313294/*
    314  *  modem_putline -- モデム行出力
     295 *  modem_putline -- モデム行出力
    315296 */
    316297
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_modem.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    5240
    5341/*
    54  *  モデムの状æ
    55 ‹
     42 *  モデムの状態
    5643 */
    5744
     
    6451
    6552/*
    66  *  å
    67 ¨åŸŸå¤‰æ•°
     53 *  全域変数
    6854 */
    6955
    70 extern uint8_t modem_state;     /* モデムの状æ
    71 ‹               */
     56extern uint8_t modem_state;     /* モデムの状態               */
    7257
    7358/*
    74  *  関数
     59 *  関数
    7560 */
    7661
     
    8469
    8570/*
    86  *  関数
     71 *  関数
    8772 */
    8873
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_upap.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;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$
     
    114102
    115103/*
    116  *  関数
     104 *  関数
    117105 */
    118106
     
    152140
    153141/*
    154  *  å
    155 ¨åŸŸå¤‰æ•°
     142 *  全域変数
    156143 */
    157144
    158145T_PPP_PROTENT pap_protent = {
    159146        PPP_PAP,
    160         upap_init,                      /* 初期化                    */
    161         upap_input,                     /* å
    162 ¥åŠ›                            */
    163         upap_protrej,                   /* Proto-REJ 受信処理               */
    164         upap_lowerup,                   /* 下位層を起動する             */
    165         upap_lowerdown,                 /* 下位層を停止する             */
    166         NULL,                           /* オープンする                   */
    167         NULL,                           /* クローズする                   */
    168         NULL,                           /* データå
    169 ¥åŠ›                    */
     147        upap_init,                      /* 初期化                  */
     148        upap_input,                     /* 入力                           */
     149        upap_protrej,                   /* Proto-REJ 受信処理               */
     150        upap_lowerup,                   /* 下位層を起動する             */
     151        upap_lowerdown,                 /* 下位層を停止する             */
     152        NULL,                           /* オープンする                       */
     153        NULL,                           /* クローズする                       */
     154        NULL,                           /* データ入力                        */
    170155        };
    171156
    172157/*
    173  *  変数
     158 *  変数
    174159 */
    175160
     
    194179
    195180/*
    196  *  upap_init -- UPAP モジュールの初期化
     181 *  upap_init -- UPAP モジュールの初期化
    197182 */
    198183
     
    215200
    216201/*
    217  *  upap_input -- UPAP å
    218 ¥åŠ›
     202 *  upap_input -- UPAP 入力
    219203 */
    220204
     
    227211        NET_COUNT_PPP_PAP(net_count_ppp_upap_in_packets, 1);
    228212
    229         /* PPP リンク制御 (CP) ヘッダより短ければエラー */
     213        /* PPP リンク制御 (CP) ヘッダより短ければエラー */
    230214        if (input->len < (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR))) {
    231215                syslog(LOG_WARNING, "[PPP/PAP] short hdr: %d.", input->len);
     
    235219        hdr = GET_PPP_CP_HDR(input);
    236220
    237         /* ヘッダの長さとå
    238 ¥åŠ›ãƒ‡ãƒ¼ã‚¿ã‚µã‚¤ã‚ºãŒä¸€è‡´ã—なければエラー */
     221        /* ヘッダの長さと入力データサイズが一致しなければエラー */
    239222        if (hdr->len != input->len - sizeof(T_PPP_HDR)) {
    240223                syslog(LOG_WARNING, "[PPP/PAP] bad len: %d.", hdr->len);
     
    243226 
    244227        /*
    245          *  制御コードにより適当な関数を呼出す
     228         *  制御コードにより適当な関数を呼出す
    246229         */
    247230
     
    272255
    273256/*
    274  *  upap_protrej -- Proto-REJ を受信したときの処理
     257 *  upap_protrej -- Proto-REJ を受信したときの処理
    275258 */
    276259
     
    298281
    299282/*
    300  *  upap_lowerup -- UPAP 下位層を起動する。
     283 *  upap_lowerup -- UPAP 下位層を起動する。
    301284 */
    302285
     
    332315
    333316/*
    334  *  upap_lowerdown -- UPAP 下位層を停止する。
     317 *  upap_lowerdown -- UPAP 下位層を停止する。
    335318 */
    336319
     
    367350
    368351/*
    369  *  クライアントモードで PAP 認証を開始する。
     352 *  クライアントモードで PAP 認証を開始する。
    370353 */
    371354
     
    388371
    389372/*
    390  *  upap_rauthack -- 認証 ACK 処理
     373 *  upap_rauthack -- 認証 ACK 処理
    391374 */
    392375
     
    401384
    402385/*
    403  *  upap_rauthnak -- 認証 NAK 処理
     386 *  upap_rauthnak -- 認証 NAK 処理
    404387 */
    405388
     
    412395
    413396/*
    414  *  upap_sauthreq -- 認証要求処理
     397 *  upap_sauthreq -- 認証要求処理
    415398 */
    416399
     
    426409        data = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR);
    427410
    428         /* ユーザ名を設定する。*/
     411        /* ユーザ名を設定する。*/
    429412        *data = sizeof(AUTH_REMOTE_USER) - 1;
    430413        strcpy(data + 1, AUTH_REMOTE_USER);
    431414
    432         /* パスワードを設定する。*/
     415        /* パスワードを設定する。*/
    433416        *(data + sizeof(AUTH_REMOTE_USER)) = sizeof(AUTH_REMOTE_PASSWD) - 1;
    434417        strcpy(data + sizeof(AUTH_REMOTE_USER) + 1, AUTH_REMOTE_PASSWD);
    435418
    436         /* 送信する */
     419        /* 送信する */
    437420        IF_SET_PROTO(output, PPP_PAP);
    438421        ppp_cp_output(PAP_AUTHREQ, ++ client_cp_id, output);
     
    451434
    452435/*
    453  *  upap_timeout -- タイムアウト処理
     436 *  upap_timeout -- タイムアウト処理
    454437 */
    455438
     
    476459
    477460/*
    478  *  サーバモードで PAP 認証を開始する。
     461 *  サーバモードで PAP 認証を開始する。
    479462 */
    480463
     
    497480
    498481/*
    499  *  upap_rauthreq -- 認証要求応答処理
     482 *  upap_rauthreq -- 認証要求応答処理
    500483 */
    501484
     
    510493
    511494        /*
    512          *  再要求があったときの処理
     495         *  再要求があったときの処理
    513496         */
    514497        id = GET_PPP_CP_HDR(input)->id;
     
    527510
    528511        /*
    529          *  ユーザ名を特定する。
     512         *  ユーザ名を特定する。
    530513         */
    531514        ulen  = *data;
     
    538521
    539522        /*
    540          *  パスワードを特定する。
     523         *  パスワードを特定する。
    541524         */
    542525        plen  = *data;
     
    547530
    548531        /*
    549          *  ユーザ名とパスワードをチェックする。
     532         *  ユーザ名とパスワードをチェックする。
    550533         */
    551534        if (compare(user,     AUTH_LOCAL_USER,   ulen) &&
     
    574557
    575558/*
    576  *  upap_sresp -- 応答を返す。
     559 *  upap_sresp -- 応答を返す。
    577560 */
    578561
     
    582565        T_NET_BUF *output;
    583566
    584         /* 送信する */
     567        /* 送信する */
    585568        syscall(get_net_buf(&output, sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)));
    586569        IF_SET_PROTO(output, PPP_PAP);
     
    589572
    590573/*
    591  *  compare -- ユーザ名とパスワードの比較
     574 *  compare -- ユーザ名とパスワードの比較
    592575 */
    593576
     
    607590
    608591/*
    609  *  upap_reqtimeout -- 要求タイムアウト処理
     592 *  upap_reqtimeout -- 要求タイムアウト処理
    610593 */
    611594
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_upap.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    9381
    9482/*
    95  *  PAP の制御コード
     83 *  PAP の制御コード
    9684 */
    9785
    98 #define PAP_AUTHREQ             UINT_C(1)       /* 認証要求 */
    99 #define PAP_AUTHACK             UINT_C(2)       /* 認証 ACK   */
    100 #define PAP_AUTHNAK             UINT_C(3)       /* 認証 NAK   */
     86#define PAP_AUTHREQ             UINT_C(1)       /* 認証要求 */
     87#define PAP_AUTHACK             UINT_C(2)       /* 認証 ACK       */
     88#define PAP_AUTHNAK             UINT_C(3)       /* 認証 NAK       */
    10189
    10290/*
    103  *  クライアントの状æ
    104 ‹
     91 *  クライアントの状態
    10592 */
    10693
    107 #define PAP_CS_INIT             UINT_C(0)       /* 未接続            */
    108 #define PAP_CS_CLOSED           UINT_C(1)       /* 接続、未認証           */
    109 #define PAP_CS_PENDING          UINT_C(2)       /* 未接続、認証           */
    110 #define PAP_CS_AUTHREQ          UINT_C(3)       /* 認証要求送信済み     */
    111 #define PAP_CS_OPEN             UINT_C(4)       /* ACK 受信           */
    112 #define PAP_CS_BADAUTH          UINT_C(5)       /* NAK 受信           */
     94#define PAP_CS_INIT             UINT_C(0)       /* 未接続          */
     95#define PAP_CS_CLOSED           UINT_C(1)       /* 接続、未認証               */
     96#define PAP_CS_PENDING          UINT_C(2)       /* 未接続、認証               */
     97#define PAP_CS_AUTHREQ          UINT_C(3)       /* 認証要求送信済み     */
     98#define PAP_CS_OPEN             UINT_C(4)       /* ACK 受信               */
     99#define PAP_CS_BADAUTH          UINT_C(5)       /* NAK 受信               */
    113100
    114101/*
    115  *  サーバの状æ
    116 ‹
     102 *  サーバの状態
    117103 */
    118104
    119 #define PAP_SS_INIT             UINT_C(0)       /* 未接続            */
    120 #define PAP_SS_CLOSED           UINT_C(1)       /* 接続、未認証           */
    121 #define PAP_SS_PENDING          UINT_C(2)       /* 未接続、認証           */
    122 #define PAP_SS_LISTEN           UINT_C(3)       /* 認証要求受信å¾
    123 ã¡     */
    124 #define PAP_SS_OPEN             UINT_C(4)       /* ACK 送信           */
    125 #define PAP_SS_BADAUTH          UINT_C(5)       /* NAK 送信           */
     105#define PAP_SS_INIT             UINT_C(0)       /* 未接続          */
     106#define PAP_SS_CLOSED           UINT_C(1)       /* 接続、未認証               */
     107#define PAP_SS_PENDING          UINT_C(2)       /* 未接続、認証               */
     108#define PAP_SS_LISTEN           UINT_C(3)       /* 認証要求受信待ち     */
     109#define PAP_SS_OPEN             UINT_C(4)       /* ACK 送信               */
     110#define PAP_SS_BADAUTH          UINT_C(5)       /* NAK 送信               */
    126111
    127112/*
    128  *  変数
     113 *  変数
    129114 */
    130115
     
    132117
    133118/*
    134  *  関数
     119 *  関数
    135120 */
    136121
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/ppp_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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8573
    8674/*
    87  *  PPP プロトコルエントリ構造体
     75 *  PPP プロトコルエントリ構造体
    8876 */
    8977
    9078typedef struct t_ppp_protent {
    91         uint16_t        proto;                  /* プロトコル番号        */
    92         void            (*init)         (void); /* 初期化関数              */
     79        uint16_t        proto;                  /* プロトコル番号      */
     80        void            (*init)         (void); /* 初期化関数                */
    9381        void            (*input)        (T_NET_BUF *data);
    94                                                 /* å
    95 ¥åŠ›é–¢æ•°              */
    96         void            (*protrej)      (void); /* Ptoto-REJ 受信処理       */
    97         void            (*lowerup)      (void); /* 下位層を起動する。  */
    98         void            (*lowerdown)    (void); /* 下位層を停止する。  */
    99         void            (*open)         (void); /* オープンする。        */
    100         void            (*close)        (void); /* クローズする。        */
     82                                                /* 入力関数         */
     83        void            (*protrej)      (void); /* Ptoto-REJ 受信処理       */
     84        void            (*lowerup)      (void); /* 下位層を起動する。    */
     85        void            (*lowerdown)    (void); /* 下位層を停止する。    */
     86        void            (*open)         (void); /* オープンする。      */
     87        void            (*close)        (void); /* クローズする。      */
    10188        void            (*datainput)    (T_NET_BUF *data);
    102                                         /* データå
    103 ¥åŠ›é–¢æ•°      */
     89                                        /* データ入力関数      */
    10490        } T_PPP_PROTENT;
    10591
     
    10793
    10894/*
    109  *  変数
     95 *  変数
    11096 */
    11197
    112 extern T_PPP_PROTENT    *protocols[];   /* プロトコル表                   */
    113 extern uint8_t          ppp_phase;      /* リンクの状æ
    114 ‹                       */
     98extern T_PPP_PROTENT    *protocols[];   /* プロトコル表                       */
     99extern uint8_t          ppp_phase;      /* リンクの状態                       */
    115100
    116101/*
    117  *  関数
     102 *  関数
    118103 */
    119104
     
    121106
    122107/*
    123  *  PPP 処理タスク
     108 *  PPP 処理タスク
    124109 */
    125110
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/route.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    8472
    8573/*
    86  * TINET 1.1 との互換性確保
     74 * TINET 1.1 との互換性確保
    8775 */
    8876
  • azure_iot_hub/trunk/asp3_dcre/tinet/net/tinet.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 è²¬ã™ã‚‹ã“と.
     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プロジェクトを免責すること.
    3625 *
    37  *  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    38 ãŠ
    39  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
    40  *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
    41  *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
     26 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     27 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
     28 *  含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
     29 *  接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
    4230 *
    4331 *  @(#) $Id$
     
    5038
    5139/*
    52  *  TINET 独自関数
     40 *  TINET 独自関数
    5341 */
    5442
Note: See TracChangeset for help on using the changeset viewer.