Ignore:
Timestamp:
Aug 3, 2017, 10:46:41 PM (7 years ago)
Author:
coas-nagasima
Message:

プロパティの文字コードにUTF-8を追加、キーワードを削除

File:
1 edited

Legend:

Unmodified
Added
Removed
  • asp3_gr_sakura/trunk/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
    r317 r318  
    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);
Note: See TracChangeset for help on using the changeset viewer.