Changeset 315 for rubycfg_asp/trunk/asp_dcre/tinet/net
- Timestamp:
- Jul 23, 2017, 2:29:40 PM (7 years ago)
- Location:
- rubycfg_asp/trunk/asp_dcre/tinet/net
- Files:
-
- 55 edited
Legend:
- Unmodified
- Added
- Removed
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ether_var.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 50 38 51 39 /* 52 * Ethernet å¦çã¿ã¹ã¯40 * Ethernet 処理タスク 53 41 */ 54 42 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ethernet.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 45 33 46 34 /* 47 * Ethernet å¦çã¿ã¹ã¯ã®æ¬ä½35 * Ethernet 処理タスクの本体 48 36 */ 49 37 … … 93 81 94 82 /* 95 * å¤æ°83 * 変数 96 84 */ 97 85 … … 106 94 107 95 /* 108 * å¤æ°109 */ 110 111 /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹æ§é ä½*/96 * 変数 97 */ 98 99 /* ネットワークインタフェース構造体 */ 112 100 113 101 static T_IFNET ether_ifnet; … … 115 103 #ifdef SUPPORT_MIB 116 104 117 /* SNMP 㮠管çæ 118 å ±ãã¼ã¹ (MIB) */ 105 /* SNMP の 管理情報ベース (MIB) */ 119 106 120 107 T_IF_STATS if_stats; … … 125 112 126 113 /* 127 * é¢æ°114 * 関数 128 115 */ 129 116 … … 131 118 132 119 /* 133 * ieee_802_input -- IEEE 802.3 å 134 ¥åå¦ç 120 * ieee_802_input -- IEEE 802.3 入力処理 135 121 */ 136 122 … … 150 136 151 137 /* 152 * ether_srand -- ä¹±æ°ãåæå¤ãè¿ãã138 * ether_srand -- 乱数を初期値を返す。 153 139 */ 154 140 … … 178 164 179 165 /* 180 * ether_get_ifnet -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹æ§é ä½ãè¿ãã166 * ether_get_ifnet -- ネットワークインタフェース構造体を返す。 181 167 */ 182 168 … … 190 176 191 177 /* 192 * ether_in6_resolve_multicast -- ã¤ã¼ãµãããã®ãã«ããã£ã¹ãã¢ãã¬ã¹ã¸ã®å¤æ178 * ether_in6_resolve_multicast -- イーサネットのマルチキャストアドレスへの変換 193 179 */ 194 180 … … 196 182 ether_in6_resolve_multicast (T_ETHER_ADDR *ifaddr, const T_IN6_ADDR *maddr) 197 183 { 198 /* ãã«ããã£ã¹ãã¢ãã¬ã¹ããã§ãã¯ããã*/184 /* マルチキャストアドレスかチェックする。*/ 199 185 if (!IN6_IS_ADDR_MULTICAST(maddr)) 200 186 return E_PAR; 201 187 202 /* ã¤ã¼ãµãããã®ãã«ããã£ã¹ãã¢ãã¬ã¹ã¸ã®å¤æ*/188 /* イーサネットのマルチキャストアドレスへの変換 */ 203 189 ether_map_ipv6_multicast(ifaddr, maddr); 204 190 … … 209 195 210 196 /* 211 * ether_raw_output -- Ethernet ã¤ã³ã¿ãã§ã¼ã¹ã®åºåé¢æ°ãMAC ã¢ãã¬ã¹è§£æ±ºç¡ã197 * ether_raw_output -- Ethernet インタフェースの出力関数、MAC アドレス解決無し 212 198 */ 213 199 … … 217 203 ER error = E_OK; 218 204 219 /* Ethernet åºåãã¥ã¼ã«æå 220 ¥ããã*/ 205 /* Ethernet 出力キューに投入する。*/ 221 206 if ((error = tsnd_dtq(DTQ_ETHER_OUTPUT, (intptr_t)output, tmout)) != E_OK) { 222 207 NET_COUNT_ETHER(net_count_ether.out_err_packets, 1); 223 208 NET_COUNT_MIB(if_stats.ifOutDiscards, 1); 224 209 225 /* IF ã§ãããã¯ã¼ã¯ãããã¡ãéæ¾ããªããã©ã°ããã§ãã¯ããã*/210 /* IF でネットワークバッファを開放しないフラグをチェックする。*/ 226 211 if ((output->flags & NB_FLG_NOREL_IFOUT) == 0) { 227 212 syscall(rel_net_buf(output)); … … 236 221 237 222 /* 238 * ether_output -- Ethernet ã¤ã³ã¿ãã§ã¼ã¹ã®åºåé¢æ°ãMAC ã¢ãã¬ã¹è§£æ±ºæã223 * ether_output -- Ethernet インタフェースの出力関数、MAC アドレス解決有り 239 224 */ 240 225 … … 245 230 ER error = E_OK; 246 231 247 /* éä¿¡å 248 MAC ã¢ãã¬ã¹ãè¨å®ããã*/ 232 /* 送信元 MAC アドレスを設定する。*/ 249 233 ic = IF_ETHER_NIC_GET_SOFTC(); 250 234 memcpy(GET_ETHER_HDR(output)->shost, ic->ifaddr.lladdr, ETHER_ADDR_LEN); … … 255 239 256 240 case ETHER_TYPE_IP: /* IPv4 */ 257 if (arp_resolve(&ic->ifaddr, output, *(uint32_t*)dst)) { /* true ãªãã¢ãã¬ã¹è§£æ±ºæ¸*/241 if (arp_resolve(&ic->ifaddr, output, *(uint32_t*)dst)) { /* true ならアドレス解決済 */ 258 242 error = ether_raw_output(output, tmout); 259 243 } … … 270 254 error = ether_raw_output(output, tmout); 271 255 272 /* IF ã§ãããã¯ã¼ã¯ãããã¡ãéæ¾ããªããã©ã°ããã§ãã¯ããã*/256 /* IF でネットワークバッファを開放しないフラグをチェックする。*/ 273 257 else if ((output->flags & NB_FLG_NOREL_IFOUT) == 0) { 274 258 syscall(rel_net_buf(output)); … … 284 268 NET_COUNT_MIB(if_stats.ifOutErrors, 1); 285 269 286 /* IF ã§ãããã¯ã¼ã¯ãããã¡ãéæ¾ããªããã©ã°ããã§ãã¯ããã*/270 /* IF でネットワークバッファを開放しないフラグをチェックする。*/ 287 271 if ((output->flags & NB_FLG_NOREL_IFOUT) == 0) { 288 272 syscall(rel_net_buf(output)); … … 301 285 302 286 /* 303 * Ethernet åºåã¿ã¹ã¯287 * Ethernet 出力タスク 304 288 */ 305 289 … … 355 339 356 340 /* 357 * Ethernet å 358 ¥åã¿ã¹ã¯ 341 * Ethernet 入力タスク 359 342 */ 360 343 … … 369 352 uint8_t rcount = 0; 370 353 371 /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ç®¡çãåæåããã*/354 /* ネットワークインタフェース管理を初期化する。*/ 372 355 ifinit(); 373 356 374 /* ã¤ã¼ãµããããããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ç®¡çãåæåããã*/357 /* イーサネットネットワークインタフェース管理を初期化する。*/ 375 358 376 359 #if defined(_IP4_CFG) 377 360 378 ether_ifnet.in4_ifaddr.addr = IPV4_ADDR_LOCAL; /* IPv4 ã¢ãã¬ã¹*/379 ether_ifnet.in4_ifaddr.mask = IPV4_ADDR_LOCAL_MASK; /* ãµãããããã¹ã¯*/361 ether_ifnet.in4_ifaddr.addr = IPV4_ADDR_LOCAL; /* IPv4 アドレス */ 362 ether_ifnet.in4_ifaddr.mask = IPV4_ADDR_LOCAL_MASK; /* サブネットマスク */ 380 363 381 364 #endif /* of #if defined(_IP4_CFG) */ 382 365 383 /* NIC ãåæåããã*/366 /* NIC を初期化する。*/ 384 367 ic = IF_ETHER_NIC_GET_SOFTC(); 385 368 IF_ETHER_NIC_PROBE(ic); 386 369 IF_ETHER_NIC_INIT(ic); 387 370 388 /* Ethernet åºåã¿ã¹ã¯ãèµ·åãã*/371 /* Ethernet 出力タスクを起動する */ 389 372 syscall(act_tsk(ETHER_OUTPUT_TASK)); 390 373 391 /* ãããã¯ã¼ã¯ã¿ã¤ãã¿ã¹ã¯ãèµ·åãã*/374 /* ネットワークタイマタスクを起動する */ 392 375 syscall(act_tsk(NET_TIMER_TASK)); 393 376 … … 399 382 #if defined(_IP4_CFG) 400 383 401 /* ARP ãåæåããã*/384 /* ARP を初期化する。*/ 402 385 arp_init(); 403 386 … … 406 389 ether_ifnet.ic = ic; 407 390 408 /* ä¹±æ°çæãåæåããã*/391 /* 乱数生成を初期化する。*/ 409 392 net_srand(0); 410 393 … … 418 401 proto = ntohs(eth->type); 419 402 420 /* ä¹±æ°çæãåæåããã*/403 /* 乱数生成を初期化する。*/ 421 404 if (rcount == 0) { 422 405 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ethernet.cfg
-
Property svn:mime-type
changed from
text/plain
totext/plain; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 45 33 46 34 /* 47 * Ethernet ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«35 * Ethernet コンフィギュレーションファイル 48 36 */ 49 37 … … 55 43 CRE_DTQ(DTQ_ETHER_OUTPUT, { TA_TFIFO, NUM_DTQ_ETHER_OUTPUT, NULL }); 56 44 57 /* ãµãã¼ãé¢æ° max2str ç¨ã»ããã©*/45 /* サポート関数 max2str 用セマフォ */ 58 46 59 47 CRE_SEM(SEM_MAC2STR_BUFF_LOCK, { TA_TPRI, 1, 1 }); -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ethernet.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 88 76 89 77 /* 90 * ãã£ã¼ã«ãé·78 * フィールド長 91 79 */ 92 80 … … 96 84 97 85 /* 98 * ãã¬ã¼ã é· (Ethernet ããã㨠CRC ãå«ã)86 * フレーム長 (Ethernet ヘッダと CRC を含む) 99 87 */ 100 88 … … 103 91 104 92 /* 105 * Ethernet ããã93 * Ethernet ヘッダ 106 94 */ 107 95 … … 117 105 #if IF_ETHER_NIC_HDR_ALIGN != 0 118 106 119 uint8_t align[IF_ETHER_NIC_HDR_ALIGN]; /* ã¢ã©ã¤ã³èª¿æ´*/107 uint8_t align[IF_ETHER_NIC_HDR_ALIGN]; /* アライン調整 */ 120 108 121 109 #endif /* of #if IF_ETHER_NIC_HDR_ALIGN != 0 */ … … 133 121 #if IF_ETHER_NIC_HDR_ALIGN != 0 134 122 135 uint8_t align[IF_ETHER_NIC_HDR_ALIGN]; /* ã¢ã©ã¤ã³èª¿æ´*/123 uint8_t align[IF_ETHER_NIC_HDR_ALIGN]; /* アライン調整 */ 136 124 137 125 #endif /* of #if IF_ETHER_NIC_HDR_ALIGN != 0 */ … … 148 136 #if IF_ETHER_NIC_HDR_ALIGN != 0 149 137 150 uint8_t align[IF_ETHER_NIC_HDR_ALIGN]; /* ã¢ã©ã¤ã³èª¿æ´*/138 uint8_t align[IF_ETHER_NIC_HDR_ALIGN]; /* アライン調整 */ 151 139 152 140 #endif /* of #if IF_ETHER_NIC_HDR_ALIGN != 0 */ … … 162 150 163 151 /* 164 * MAC ã¢ãã¬ã¹ã®å®ç¾©165 */ 166 167 #define ETHER_MCAST_ADDR UINT_C(0x01) /* ãã«ããã£ã¹ãã»ã¢ãã¬ã¹*/168 #define ETHER_LOCAL_ADDR UINT_C(0x02) /* ãã¼ã«ã«ã»ã¢ãã¬ã¹*/152 * MAC アドレスの定義 153 */ 154 155 #define ETHER_MCAST_ADDR UINT_C(0x01) /* マルチキャスト・アドレス */ 156 #define ETHER_LOCAL_ADDR UINT_C(0x02) /* ローカル・アドレス */ 169 157 170 158 typedef struct t_ether_addr { … … 173 161 174 162 /* 175 * Type ãã£ã¼ã«ã163 * Type フィールド 176 164 */ 177 165 … … 181 169 182 170 /* 183 * ã¤ã³ã¿ãã§ã¼ã¹ã®é¸æãã¯ã184 */ 185 186 #define T_IF_HDR T_ETHER_HDR /* ã¤ã³ã¿ãã§ã¼ã¹ã®ããã*/187 #define T_IF_ADDR T_ETHER_ADDR /* ã¤ã³ã¿ãã§ã¼ã¹ã®ã¢ãã¬ã¹*/188 #define IF_HDR_ALIGN 2 /* ãããã®ã¢ã©ã¤ã³åä½*/189 #define IF_MTU 1500 /* ã¤ã³ã¿ãã§ã¼ã¹ã®MTU */190 #define IF_MIN_LEN ETHER_MIN_LEN /* ã¤ã³ã¿ã¼ãã§ã¼ã¹ãã¬ã¼ã ã®æçé·*/191 192 #define IF_OUTPUT(o,d,g,t) ether_output(o,d,g,t) /* ã¤ã³ã¿ãã§ã¼ã¹ã®åºåé¢æ°*/193 #define IF_RAW_OUTPUT(o,t) ether_raw_output(o,t) /* ã¤ã³ã¿ãã§ã¼ã¹ã®åºåé¢æ°ãã¢ãã¬ã¹è§£æ±ºç¡ã*/171 * インタフェースの選択マクロ 172 */ 173 174 #define T_IF_HDR T_ETHER_HDR /* インタフェースのヘッダ */ 175 #define T_IF_ADDR T_ETHER_ADDR /* インタフェースのアドレス */ 176 #define IF_HDR_ALIGN 2 /* ヘッダのアライン単位 */ 177 #define IF_MTU 1500 /* インタフェースの MTU */ 178 #define IF_MIN_LEN ETHER_MIN_LEN /* インターフェースフレームの最短長 */ 179 180 #define IF_OUTPUT(o,d,g,t) ether_output(o,d,g,t) /* インタフェースの出力関数 */ 181 #define IF_RAW_OUTPUT(o,t) ether_raw_output(o,t) /* インタフェースの出力関数、アドレス解決無し */ 194 182 #define IF_SET_PROTO(b,p) (GET_ETHER_HDR(b)->type = htons(p)) 195 /* ã¤ã³ã¿ãã§ã¼ã¹ã®ãããã³ã«è¨å®é¢æ°*/183 /* インタフェースのプロトコル設定関数 */ 196 184 #define IF_SOFTC_TO_IFADDR(s) ((T_IF_ADDR*)(s)->ifaddr.lladdr) 197 /* ã½ããã¦ã§ã¢æ 198 å ±ãã MAC ã¢ãã¬ã¹ãåãåºã */ 199 #define IF_GET_IFNET() ether_get_ifnet() /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹æ§é ä½ãè¿ãã */ 200 #define IF_TYPE IFT_ETHER /* ã¤ã³ã¿ãã§ã¼ã¹ã®å */ 201 #define IF_SRAND() ether_srand() /* ã¤ã³ã¿ãã§ã¼ã¹ã®ä¹±æ°åæå¤ */ 202 203 /* IPv4 é¢ä¿ */ 204 205 #define IF_PROTO_IP ETHER_TYPE_IP /* ã¤ã³ã¿ãã§ã¼ã¹ã® IPv4 ãããã³ã«æå® */ 206 #define IF_PROTO_ARP ETHER_TYPE_ARP /* ã¤ã³ã¿ãã§ã¼ã¹ã® ARP ãããã³ã«æå® */ 207 208 /* IPv6 é¢ä¿ */ 209 210 #define MAX_IF_MADDR_CNT 2 /* ã¤ã³ã¿ãã§ã¼ã¹ã®ãã«ããã£ã¹ãã¢ãã¬ã¹é 211 åã®æ大ãµã¤ãº */ 185 /* ソフトウェア情報から MAC アドレスを取り出す */ 186 #define IF_GET_IFNET() ether_get_ifnet() /* ネットワークインタフェース構造体を返す。 */ 187 #define IF_TYPE IFT_ETHER /* インタフェースの型 */ 188 #define IF_SRAND() ether_srand() /* インタフェースの乱数初期値 */ 189 190 /* IPv4 関係 */ 191 192 #define IF_PROTO_IP ETHER_TYPE_IP /* インタフェースの IPv4 プロトコル指定 */ 193 #define IF_PROTO_ARP ETHER_TYPE_ARP /* インタフェースの ARP プロトコル指定 */ 194 195 /* IPv6 関係 */ 196 197 #define MAX_IF_MADDR_CNT 2 /* インタフェースのマルチキャストアドレス配列の最大サイズ */ 212 198 #define IF_MADDR_INIT { { { 0, 0, 0, 0, 0, 0 } }, { { 0, 0, 0, 0, 0, 0 } } } 213 /* ã¤ã³ã¿ãã§ã¼ã¹ã®ãã«ããã£ã¹ãã¢ãã¬ã¹é 214 åã®åæå */ 215 #define IF_PROTO_IPV6 ETHER_TYPE_IPV6 /* ã¤ã³ã¿ãã§ã¼ã¹ã® IPv6 ãããã³ã«æå® */ 199 /* インタフェースのマルチキャストアドレス配列の初期化 */ 200 #define IF_PROTO_IPV6 ETHER_TYPE_IPV6 /* インタフェースの IPv6 プロトコル指定 */ 216 201 #define IF_ADDMULTI(s) IF_ETHER_NIC_ADDMULTI(s) 217 /* ãã«ããã£ã¹ãã¢ãã¬ã¹ã®ç»é²*/218 #define IF_IN6_NEED_CACHE(i) (true) /* è¿é£æ¢ç´¢ãã£ãã·ã¥ã使ç¨ããã*/202 /* マルチキャストアドレスの登録 */ 203 #define IF_IN6_NEED_CACHE(i) (true) /* 近隣探索キャッシュを使用する。 */ 219 204 #define IF_IN6_IFID(i,a) IF_ETHER_NIC_IN6_IFID(i,a) 220 /* ã¤ã³ã¿ãã§ã¼ã¹èå¥åã®è¨å®*/205 /* インタフェース識別子の設定 */ 221 206 #define IF_IN6_RESOLVE_MULTICAST(i,m) \ 222 207 ether_in6_resolve_multicast(i,m) 223 /* ã¤ã³ã¿ãã§ã¼ã¹ã®ãã«ããã£ã¹ãã¢ãã¬ã¹ã¸ã®å¤æ */ 224 225 /* 226 * åæ¹åç 227 § 208 /* インタフェースのマルチキャストアドレスへの変換 */ 209 210 /* 211 * 前方参照 228 212 */ 229 213 … … 261 245 262 246 /* 263 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã«ä¾åããªãã½ããã¦ã§ã¢æ 264 å ± 247 * ネットワークインタフェースに依存しないソフトウェア情報 265 248 */ 266 249 … … 268 251 269 252 struct t_if_softc { 270 T_IF_ADDR ifaddr; /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã¢ãã¬ã¹ */ 271 uint16_t timer; /* éä¿¡ã¿ã¤ã ã¢ã¦ã */ 272 T_IF_ETHER_NIC_SOFTC *sc; /* ãã£ãã¤ã¹ä¾åã®ã½ããã¦ã§ã¢æ 273 å ± */ 274 ID semid_txb_ready; /* éä¿¡ã»ããã© */ 275 ID semid_rxb_ready; /* åä¿¡ã»ããã© */ 253 T_IF_ADDR ifaddr; /* ネットワークインタフェースのアドレス */ 254 uint16_t timer; /* 送信タイムアウト */ 255 T_IF_ETHER_NIC_SOFTC *sc; /* ディバイス依存のソフトウェア情報 */ 256 ID semid_txb_ready; /* 送信セマフォ */ 257 ID semid_rxb_ready; /* 受信セマフォ */ 276 258 277 259 #ifdef _IP6_CFG 278 260 279 T_IF_ADDR maddrs[MAX_IF_MADDR_CNT]; /* ãã«ããã£ã¹ãã¢ãã¬ã¹ãªã¹ã*/261 T_IF_ADDR maddrs[MAX_IF_MADDR_CNT]; /* マルチキャストアドレスリスト */ 280 262 281 263 #endif /* of #ifdef _IP6_CFG */ … … 285 267 286 268 /* 287 * å¤æ°269 * 変数 288 270 */ 289 271 … … 295 277 296 278 /* 297 * é¢æ°279 * 関数 298 280 */ 299 281 300 282 #ifdef _IP6_CFG 301 283 302 /* åæ¹åç 303 § */ 284 /* 前方参照 */ 304 285 305 286 #ifndef T_IN6_ADDR_DEFINED -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/fcstab.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
-
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/genfcstab.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
-
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 117 105 118 106 /* 119 * é¢æ°107 * 関数 120 108 */ 121 109 … … 123 111 124 112 /* 125 * if_slowtimo -- ã¤ã³ã¿ãã§ã¼ã¹ã®ã¯ããããã°ã¿ã¤ãå¶å¾¡113 * if_slowtimo -- インタフェースのワッチドッグタイマ制御 126 114 */ 127 115 … … 142 130 143 131 /* 144 * ifinit -- ã¤ã³ã¿ãã§ã¼ã¹ç®¡çã®åæå132 * ifinit -- インタフェース管理の初期化 145 133 */ 146 134 … … 156 144 157 145 /* 158 * if_addmulti -- ãã«ããã£ã¹ãã¢ãã¬ã¹ã®ç»é²146 * if_addmulti -- マルチキャストアドレスの登録 159 147 */ 160 148 … … 173 161 return E_PAR; 174 162 175 /* IPv6 ãã«ããã£ã¹ãã¢ãã¬ã¹ãç»é²ããã*/163 /* IPv6 マルチキャストアドレスを登録する。*/ 176 164 ifp->in6_maddrs[ix] = *(T_IN6_ADDR*)maddr; 177 165 178 /* ã¤ã³ã¿ãã§ã¼ã¹ã®ã¢ãã¬ã¹ã«å¤æããç»é²ããã*/166 /* インタフェースのアドレスに変換し、登録する。*/ 179 167 error = IF_IN6_RESOLVE_MULTICAST(&llmaddr, (T_IN6_ADDR*)maddr); 180 168 if (error != E_OK) -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 84 72 85 73 /* 86 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ç¨ã¿ã¤ãã®å®ç¾©74 * ネットワークインタフェース用タイマの定義 87 75 */ 88 76 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] */ 91 79 92 80 /* 93 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ãã©ã°81 * ネットワークインタフェースのフラグ 94 82 */ 95 83 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) /* 動作中 */ 98 86 99 87 /* 100 * æ±ç¨å®ç¾©88 * 汎用定義 101 89 */ 102 90 … … 105 93 106 94 /* 107 * é¢æ°95 * 関数 108 96 */ 109 97 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if6_var.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 81 69 82 70 /* 83 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹æ§é ä½71 * ネットワークインタフェース構造体 84 72 */ 85 73 … … 89 77 90 78 struct t_ifnet { 91 T_IF_SOFTC *ic; /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã½ããã¦ã§ã¢æ 92 å ± */ 79 T_IF_SOFTC *ic; /* ネットワークインタフェースのソフトウェア情報 */ 93 80 T_IN6_IFADDR in6_ifaddrs[NUM_IN6_IFADDR_ENTRY]; 94 /* IPv6 ã¢ãã¬ã¹æ 95 å ± */ 81 /* IPv6 アドレス情報 */ 96 82 T_IN6_ADDR in6_maddrs [MAX_IN6_MADDR_CNT]; 97 /* ãã«ããã£ã¹ã IPv6 ã¢ãã¬ã¹ */ 98 T_IN4_IFADDR in4_ifaddr; /* IPv4 ã¢ãã¬ã¹æ 99 å ± */ 100 uint8_t flags; /* ãã©ã° */ 83 /* マルチキャスト IPv6 アドレス */ 84 T_IN4_IFADDR in4_ifaddr; /* IPv4 アドレス情報 */ 85 uint8_t flags; /* フラグ */ 101 86 }; 102 87 … … 104 89 105 90 struct t_ifnet { 106 T_IF_SOFTC *ic; /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã½ããã¦ã§ã¢æ 107 å ± */ 91 T_IF_SOFTC *ic; /* ネットワークインタフェースのソフトウェア情報 */ 108 92 T_IN6_IFADDR in6_ifaddrs[NUM_IN6_IFADDR_ENTRY]; 109 /* IPv6 ã¢ãã¬ã¹æ 110 å ± */ 93 /* IPv6 アドレス情報 */ 111 94 T_IN6_ADDR in6_maddrs [MAX_IN6_MADDR_CNT]; 112 /* ãã«ããã£ã¹ã IPv6 ã¢ãã¬ã¹*/113 uint8_t flags; /* ãã©ã°*/95 /* マルチキャスト IPv6 アドレス */ 96 uint8_t flags; /* フラグ */ 114 97 }; 115 98 … … 121 104 122 105 struct t_ifnet { 123 T_IF_SOFTC *ic; /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã½ããã¦ã§ã¢æ 124 å ± */ 125 T_IN4_IFADDR in4_ifaddr; /* IPv4 ã¢ãã¬ã¹æ 126 å ± */ 106 T_IF_SOFTC *ic; /* ネットワークインタフェースのソフトウェア情報 */ 107 T_IN4_IFADDR in4_ifaddr; /* IPv4 アドレス情報 */ 127 108 }; 128 109 … … 142 123 143 124 /* 144 * é¢æ°ã·ãã¥ã¬ã¼ã·ã§ã³ãã¯ã125 * 関数シミュレーションマクロ 145 126 */ 146 127 … … 148 129 149 130 /* 150 * é¢æ°131 * 関数 151 132 */ 152 133 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if_arp.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 88 76 * Address Resolution Protocol. 89 77 * 90 * RFC 826 åç 91 § 78 * RFC 826 参照 92 79 */ 93 80 94 81 /* 95 * æ§é ä½82 * 構造体 96 83 */ 97 84 98 /* ARP ããã*/85 /* ARP ヘッダ */ 99 86 100 87 typedef 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; /* 命令コード */ 106 93 } T_ARP_HDR; 107 94 … … 113 100 #define GET_IF_ARP_HDR_SIZE(nbuf) (IF_HDR_SIZE + ARP_HDR_SIZE) 114 101 115 /* hrd_addr ãç©çã¢ãã¬ã¹ãã©ã¼ãããã®å¤*/102 /* hrd_addr、物理アドレスフォーマットの値 */ 116 103 117 104 #define ARPHRD_ETHER 1 /* Ethernet */ 118 105 119 /* opcode, å½ä»¤ã³ã¼ãã®å¤*/106 /* opcode, 命令コードの値 */ 120 107 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) /* 終端識別要求 */ 127 114 128 115 /* 129 * ã¤ã¼ãµããããã©ã¤ãã¢ã¸ã¥ã¼ã«ã§ä½¿ç¨ããã ARP æ 130 å ± 116 * イーサネットドライバモジュールで使用される ARP 情報 131 117 */ 132 118 … … 136 122 137 123 /* 138 * ARP ãã£ãã·ã¥æ´æ°ã¿ã¤ãã®å®ç¾©124 * ARP キャッシュ更新タイマの定義 139 125 */ 140 126 141 #define ARP_TIMER_TMO (60*NET_TIMER_HZ) /* ã¿ã¤ã ã¢ã¦ãã60 [s] */127 #define ARP_TIMER_TMO (60*NET_TIMER_HZ) /* タイムアウト、60 [s] */ 142 128 143 129 /* 144 * å¤æ°130 * 変数 145 131 */ 146 132 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if_llc.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 86 74 87 75 /* 88 * é·ãã®å®ç¾©76 * 長さの定義 89 77 */ 90 78 … … 93 81 94 82 /* 95 * 802.3 ããã83 * 802.3 ヘッダ 96 84 */ 97 85 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if_loop.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 119 107 120 108 /* 121 * ãã¼ã«ã«ã«ã¼ãããã¯ã¤ã³ã¿ãã§ã¼ã¹122 */ 123 124 /* 125 * å¤é¨é¢æ°ã®å®ç¾©109 * ローカルループバックインタフェース 110 */ 111 112 /* 113 * 外部関数の定義 126 114 */ 127 115 … … 129 117 130 118 /* 131 * å¤æ°132 */ 133 134 /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹æ§é ä½*/119 * 変数 120 */ 121 122 /* ネットワークインタフェース構造体 */ 135 123 136 124 #if defined(_IP6_CFG) 137 125 138 126 static T_IFNET loop_ifnet = { 139 NULL, /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã½ããã¦ã§ã¢æ 140 å ± */ 141 {}, /* IPv6 ã¢ãã¬ã¹æ 142 å ± */ 143 {}, /* ãã«ããã£ã¹ã IPv6 ã¢ãã¬ã¹ */ 127 NULL, /* ネットワークインタフェースのソフトウェア情報 */ 128 {}, /* IPv6 アドレス情報 */ 129 {}, /* マルチキャスト IPv6 アドレス */ 144 130 }; 145 131 … … 147 133 148 134 static T_IFNET loop_ifnet = { 149 NULL, /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã½ããã¦ã§ã¢æ 150 å ± */ 135 NULL, /* ネットワークインタフェースのソフトウェア情報 */ 151 136 { 152 IPV4_ADDR_LOOPBACK, /* IPv4 ã¢ãã¬ã¹*/153 IPV4_ADDR_LOOPBACK_MASK, /* ãµãããããã¹ã¯*/137 IPV4_ADDR_LOOPBACK, /* IPv4 アドレス */ 138 IPV4_ADDR_LOOPBACK_MASK, /* サブネットマスク */ 154 139 }, 155 140 }; … … 158 143 159 144 /* 160 * loop_get_ifnet -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹æ§é ä½ãè¿ãã145 * loop_get_ifnet -- ネットワークインタフェース構造体を返す。 161 146 */ 162 147 … … 168 153 169 154 /* 170 * looutput -- ãã¼ã«ã«ã«ã¼ãããã¯ã¤ã³ã¿ãã§ã¼ã¹ã®åºåé¢æ°155 * looutput -- ローカルループバックインタフェースの出力関数 171 156 */ 172 157 … … 185 170 186 171 /* 187 * ãã¼ã«ã«ã«ã¼ãããã¯ã¤ã³ã¿ãã§ã¼ã¹ã»åºåã¿ã¹ã¯172 * ローカルループバックインタフェース・出力タスク 188 173 */ 189 174 … … 208 193 209 194 /* 210 * ãã¼ã«ã«ã«ã¼ãããã¯ã¤ã³ã¿ãã§ã¼ã¹ã»å 211 ¥åã¿ã¹ã¯ 195 * ローカルループバックインタフェース・入力タスク 212 196 */ 213 197 … … 227 211 #if defined(_IP4_CFG) 228 212 229 /* IPv4 å 230 ¥åé¢æ°ãå¼ã³åºã */ 213 /* IPv4 入力関数を呼び出す */ 231 214 if (IP4_VHL_V(GET_IP4_HDR(input)->vhl) == IPV4_VERSION) 232 215 ip_input(input); … … 236 219 #if defined(_IP6_CFG) 237 220 238 /* IPv6 å 239 ¥åé¢æ°ãå¼ã³åºã */ 221 /* IPv6 入力関数を呼び出す */ 240 222 if (IP6_VCF_V(ntohl(GET_IP6_HDR(input)->vcf)) == IPV6_VERSION) 241 223 ip6_input(input); -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if_loop.cfg
-
Property svn:mime-type
changed from
text/plain
totext/plain; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 45 33 46 34 /* 47 * ã«ã¼ãããã¯ã¤ã³ã¿ãã§ã¼ã¹ã»ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«35 * ループバックインタフェース・コンフィギュレーションファイル 48 36 */ 49 37 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if_loop.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 84 72 85 73 /* 86 * ãã¼ã«ã«ã«ã¼ãããã¯ã¤ã³ã¿ãã§ã¼ã¹ã»ãããã¨ã¢ãã¬ã¹74 * ローカルループバックインタフェース・ヘッダとアドレス 87 75 */ 88 76 … … 91 79 92 80 /* 93 * ã¤ã³ã¿ãã§ã¼ã¹ã®é¸æãã¯ã81 * インタフェースの選択マクロ 94 82 */ 95 83 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 */ 100 88 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) /* インターフェースの乱数初期値 */ 106 94 107 /* IPv4 é¢ä¿*/95 /* IPv4 関係 */ 108 96 109 #define IF_PROTO_IP 0 /* ã¤ã³ã¿ãã§ã¼ã¹ã® IP ãããã³ã«æå®*/97 #define IF_PROTO_IP 0 /* インタフェースの IP プロトコル指定 */ 110 98 111 /* IPv6 é¢ä¿*/99 /* IPv6 関係 */ 112 100 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) /* 近隣探索キャッシュを使用する。 */ 116 103 117 104 /* 118 * åæ¹åç 119 § 105 * 前方参照 120 106 */ 121 107 … … 145 131 146 132 /* 147 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã«ä¾åããªãã½ããã¦ã§ã¢æ 148 å ± 133 * ネットワークインタフェースに依存しないソフトウェア情報 149 134 */ 150 135 … … 152 137 153 138 /* 154 * é¢æ°139 * 関数 155 140 */ 156 141 … … 159 144 160 145 /* 161 * ãã¼ã«ã«ã«ã¼ãããã¯ã¤ã³ã¿ãã§ã¼ã¹ã»å¦çã¿ã¹ã¯146 * ローカルループバックインタフェース・処理タスク 162 147 */ 163 148 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if_ppp.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 71 59 72 60 /* 73 * PPP ã¢ãã¬ã¹ã®å®ç¾©ï¼ããã¼ï¼61 * PPP アドレスの定義(ダミー) 74 62 */ 75 63 … … 79 67 80 68 /* 81 * ã¤ã³ã¿ãã§ã¼ã¹ã®é¸æãã¯ã69 * インタフェースの選択マクロ 82 70 */ 83 71 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 */ 88 76 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) /* インタフェースの出力関数、アドレス解決無し*/ 91 79 #define IF_SET_PROTO(b,p) (*GET_PPP_HDR(b) = htons(p)) 92 /* ã¤ã³ã¿ãã§ã¼ã¹ã®ãããã³ã«è¨å®é¢æ°*/80 /* インタフェースのプロトコル設定関数 */ 93 81 #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) /* インターフェースの乱数初期値 */ 98 85 99 /* IPv4 é¢ä¿*/86 /* IPv4 関係 */ 100 87 101 #define IF_PROTO_IP PPP_IP /* ã¤ã³ã¿ãã§ã¼ã¹ã® IPv4 ãããã³ã«æå®*/88 #define IF_PROTO_IP PPP_IP /* インタフェースの IPv4 プロトコル指定 */ 102 89 103 /* IPv6 é¢ä¿*/90 /* IPv6 関係 */ 104 91 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) {} /* インタフェースのマルチキャストアドレスへの変換 */ 111 97 112 98 /* 113 * MTU (MRU) ã«é¢ããå®ç¾©99 * MTU (MRU) に関する定義 114 100 */ 115 101 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 */ 119 105 120 106 /* 121 * PPP ããã107 * PPP ヘッダ 122 108 */ 123 109 124 typedef uint16_t T_PPP_HDR; /* ä¸ä½ãããã³ã«*/110 typedef uint16_t T_PPP_HDR; /* 上位プロトコル */ 125 111 126 112 /* 127 * åæ¹åç 128 § 113 * 前方参照 129 114 */ 130 115 … … 154 139 155 140 /* 156 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã«ä¾åããªãã½ããã¦ã§ã¢æ 157 å ± 141 * ネットワークインタフェースに依存しないソフトウェア情報 158 142 */ 159 143 160 144 struct t_if_softc { 161 T_IF_ADDR ifaddr; /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã¢ãã¬ã¹*/145 T_IF_ADDR ifaddr; /* ネットワークインタフェースのアドレス */ 162 146 }; 163 147 164 148 /* 165 * é¢æ°149 * 関数 166 150 */ 167 151 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if_types.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 80 68 81 69 /* 82 * ã¤ã³ã¿ãã§ã¼ã¹ã®åã®å®ç¾©70 * インタフェースの型の定義 83 71 */ 84 72 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/if_var.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 85 73 86 74 /* 87 * SNMP 㮠管çæ 88 å ±ãã¼ã¹ (MIB) 75 * SNMP の 管理情報ベース (MIB) 89 76 */ 90 77 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net.cfg
-
Property svn:mime-type
changed from
text/plain
totext/plain; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 45 33 46 34 /* 47 * å 48 ±é æ±ç¨ãããã¯ã¼ã¯ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã« 35 * 共通 汎用ネットワークコンフィギュレーションファイル 49 36 */ 50 37 51 38 /* 52 * ãããã¯ã¼ã¯ã¿ã¤ã39 * ネットワークタイマ 53 40 */ 54 41 … … 70 57 }); 71 58 72 /* ãããã¯ã¼ã¯ã¿ã¤ãã®å¼åºãã¨ã³ããªç¨ã»ããã©*/59 /* ネットワークタイマの呼出しエントリ用セマフォ */ 73 60 74 61 CRE_SEM(SEM_CALL_OUT_LOCK, { TA_TPRI, 1, 1 }); 75 62 CRE_SEM(SEM_CALL_OUT_TIMEOUT, { TA_TPRI, 0, NUM_NET_CALLOUT }); 76 63 77 /* ãµãã¼ãé¢æ° ip2strãipv62str ç¨ã»ããã©*/64 /* サポート関数 ip2str、ipv62str 用セマフォ */ 78 65 79 66 CRE_SEM(SEM_IP2STR_BUFF_LOCK, { TA_TPRI, 1, 1 }); -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 81 69 82 70 /* 83 * ãããã³ã«ãèå¥ãããã©ã°ã«é¢ããå®ç¾©71 * プロトコルを識別するフラグに関する定義 84 72 * 85 * ã»çµ±è¨æ 86 å ± 73 * ・統計情報 87 74 */ 88 75 … … 123 110 124 111 /* 125 * ã¢ãã¬ã¹å½¢å¼ã®å®ç¾©112 * アドレス形式の定義 126 113 */ 127 114 128 #define AT_ETHER UINT_C(0x01) /* ã¤ã¼ãµããã*/129 #define AT_INET4 UINT_C(0x10) /* IPv4 ã¢ãã¬ã¹*/130 #define AT_INET6 UINT_C(0x20) /* IPv6 ã¢ãã¬ã¹*/115 #define AT_ETHER UINT_C(0x01) /* イーサネット */ 116 #define AT_INET4 UINT_C(0x10) /* IPv4 アドレス */ 117 #define AT_INET6 UINT_C(0x20) /* IPv6 アドレス */ 131 118 132 119 #if !defined(TOPPERS_MACRO_ONLY) && !defined(_MACRO_ONLY) 133 120 134 121 /* 135 * TINET ç¬èªé¢æ°122 * TINET 独自関数 136 123 */ 137 124 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_asp.cfg
-
Property svn:mime-type
changed from
text/plain
totext/plain; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 45 33 46 34 /* 47 * ASP ç¨ æ±ç¨ãããã¯ã¼ã¯ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«35 * ASP用 汎用ネットワークコンフィギュレーションファイル 48 36 */ 49 37 50 38 /* 51 * å 52 ±é æ±ç¨ãããã¯ã¼ã¯ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«ã®ã¤ã³ã¯ã«ã¼ã 39 * 共通 汎用ネットワークコンフィギュレーションファイルのインクルード 53 40 */ 54 41 … … 56 43 57 44 /* 58 * ãããã¯ã¼ã¯ãããã¡45 * ネットワークバッファ 59 46 */ 60 47 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_buf.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 81 69 82 70 /* 83 * é¢æ°71 * 関数 84 72 */ 85 73 … … 87 75 88 76 /* 89 * å¤æ°77 * 変数 90 78 */ 91 79 … … 275 263 276 264 /* 277 * nbuf_get_tbl -- ãããã¯ã¼ã¯ãããã¡ç®¡ç表ãç²å¾ããã265 * nbuf_get_tbl -- ネットワークバッファ管理表を獲得する。 278 266 * 279 * 注æ: ãããã¯ã¼ã¯çµ±è¨æ 280 å ±ã®è¨æ¸¬ç¨ 267 * 注意: ネットワーク統計情報の計測用 281 268 */ 282 269 … … 288 275 289 276 /* 290 * nbuf_get_tbl_size -- ãããã¯ã¼ã¯ãããã¡ç®¡çã¨ã³ããªæ°ãç²å¾ããã277 * nbuf_get_tbl_size -- ネットワークバッファ管理エントリ数を獲得する。 291 278 * 292 * 注æ: ãããã¯ã¼ã¯çµ±è¨æ 293 å ±ã®è¨æ¸¬ç¨ 279 * 注意: ネットワーク統計情報の計測用 294 280 */ 295 281 … … 303 289 304 290 /* 305 * tget_net_buf_up -- 大ããªãµã¤ãºã®æ¹åã«æ¢ç´¢ãã¦ããããã¯ã¼ã¯ãããã¡ãç²å¾ããã291 * tget_net_buf_up -- 大きなサイズの方向に探索して、ネットワークバッファを獲得する。 306 292 */ 307 293 … … 312 298 ER error = E_OK; 313 299 314 /* æé©ãªãµã¤ãºã®åºå®é·ã¡ã¢ãªãã¼ã«ãæ¢ãã*/300 /* 最適なサイズの固定長メモリプールを探す。*/ 315 301 ix = sizeof(net_buf_table) / sizeof(T_NET_BUF_ENTRY); 316 302 while (ix -- > 0 && minlen > net_buf_table[ix].size) … … 345 331 346 332 /* 347 * tget_net_buf_down -- å°ããªãµã¤ãºã®æ¹åã«æ¢ç´¢ãã¦ããããã¯ã¼ã¯ãããã¡ãç²å¾ããã333 * tget_net_buf_down -- 小さなサイズの方向に探索して、ネットワークバッファを獲得する。 348 334 */ 349 335 … … 354 340 ER error = E_OK; 355 341 356 /* æé©ãªãµã¤ãºã®åºå®é·ã¡ã¢ãªãã¼ã«ãæ¢ãã*/342 /* 最適なサイズの固定長メモリプールを探す。*/ 357 343 ix = sizeof(net_buf_table) / sizeof(T_NET_BUF_ENTRY); 358 344 while (ix -- > 0 && maxlen > net_buf_table[ix].size) … … 388 374 389 375 /* 390 * tget_net_buf_ex -- ãããã¯ã¼ã¯ãããã¡ãç²å¾ããï¼æ¡å¼µæ©è½ï¼ã376 * tget_net_buf_ex -- ネットワークバッファを獲得する(拡張機能)。 391 377 */ 392 378 … … 394 380 tget_net_buf_ex (T_NET_BUF **buf, uint_t minlen, uint_t maxlen, ATR nbatr, TMO tmout) 395 381 { 396 /* æå°ãµã¤ãºãæ大ãµã¤ãºãè¶ 397 ãã¦ãããã¨ã©ã¼ */ 382 /* 最小サイズが最大サイズを超えていたらエラー */ 398 383 if ((nbatr & NBA_SEARCH_DESCENT) != 0 && minlen > maxlen) { 399 384 syslog(LOG_WARNING, "[NET BUF] E_PAR, minlen=%4d > maxlen=%4d.", minlen, maxlen); … … 401 386 } 402 387 403 /* å²å½ã¦å¯è½ãªæ大ã®ãµã¤ãºãè¶ 404 ãã¦ãããã¨ã©ã¼ */ 388 /* 割当て可能な最大のサイズを超えていたらエラー */ 405 389 if (minlen > net_buf_table[0].size || maxlen > net_buf_table[0].size) { 406 390 syslog(LOG_WARNING, "[NET BUF] E_PAR, minlen=%4d or maxlen=%4d > %4d", … … 411 395 #if defined(SUPPORT_TCP) && defined(TCP_CFG_SWBUF_CSAVE) 412 396 413 /* TCP ã§äºç´ãããããã¯ã¼ã¯ãããã¡ãåãåºãã*/397 /* TCP で予約したネットワークバッファを取り出す。*/ 414 398 if ((nbatr & NBA_RESERVE_TCP) != 0) { 415 399 if ((*buf = TCP_PULL_RES_NBUF(nbatr)) != NULL) { … … 431 415 432 416 /* 433 * tget_net_buf -- ãããã¯ã¼ã¯ãããã¡ãç²å¾ããï¼äºæï¼ã417 * tget_net_buf -- ネットワークバッファを獲得する(互換)。 434 418 */ 435 419 … … 441 425 442 426 /* 443 * rel_net_buf -- ãããã¯ã¼ã¯ãããã¡ãè¿å´ããã427 * rel_net_buf -- ネットワークバッファを返却する。 444 428 */ 445 429 … … 449 433 ER error = E_OK; 450 434 451 /* ãããã¯ã¼ã¯ãããã¡ã® ID ã®æ£å½æ§ãæ¤è¨¼ããã*/435 /* ネットワークバッファの ID の正当性を検証する。*/ 452 436 if ((int_t)buf->idix >= (int_t)(sizeof(net_buf_table) / sizeof(T_NET_BUF_ENTRY))) { 453 437 syslog(LOG_WARNING, "[NET BUF] E_ID, ID=%d.", buf->idix); … … 458 442 #if defined(SUPPORT_TCP) && defined(TCP_CFG_SWBUF_CSAVE) 459 443 460 /* TCP ã§ããããã¯ã¼ã¯ãããã¡ãäºç´ããã*/444 /* TCP で、ネットワークバッファを予約する。*/ 461 445 if (TCP_PUSH_RES_NBUF(buf) == NULL) 462 446 return E_OK; … … 464 448 #endif /* of #if defined(SUPPORT_TCP) && defined(TCP_CFG_SWBUF_CSAVE) */ 465 449 466 /* åºå®ã¡ã¢ãªãã¼ã«ã«è¿ãã*/450 /* 固定メモリプールに返す。*/ 467 451 468 452 #if NET_COUNT_ENABLE & PROTO_FLG_NET_BUF … … 477 461 478 462 /* 479 * rus_net_buf -- ãããã¯ã¼ã¯ãããã¡ãåå©ç¨ããã463 * rus_net_buf -- ネットワークバッファを再利用する。 480 464 */ 481 465 … … 498 482 499 483 /* 500 * net_buf_siz -- ãããã¯ã¼ã¯ãããã¡ã®ãµã¤ãºãè¿ãã484 * net_buf_siz -- ネットワークバッファのサイズを返す。 501 485 */ 502 486 … … 513 497 514 498 /* 515 * net_buf_max_siz -- ãããã¯ã¼ã¯ãããã¡ã®æ大ãµã¤ãºãè¿ãã499 * net_buf_max_siz -- ネットワークバッファの最大サイズを返す。 516 500 */ 517 501 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_buf.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 48 36 49 37 /* 50 * ãããã¯ã¼ã¯ãããã¡38 * ネットワークバッファ 51 39 * 52 * 4 ãªã¯ãããã§ã¢ã©ã¤ã³ããå¿ 53 è¦ã®ããããã»ããµãèæ 54 ®ãã¦ã 55 * IF ããããµã¤ãºã 4 ãªã¯ãããå¢çã§ãªãã®å ´åã 56 * IP ããã以éã 4 ãªã¯ãããå¢çã«èª¿æ´ããã 40 * 4 オクテットでアラインする必要のあるプロセッサを考慮して、 41 * IF ヘッダサイズが 4 オクテット境界でないの場合、 42 * IP ヘッダ以降を 4 オクテット境界に調整する。 57 43 */ 58 44 … … 62 48 63 49 /* 64 * ãã³ãã¬ã¼ã50 * テンプレート 65 51 */ 66 52 67 53 struct 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]; /* バッファ本体 */ 78 64 }; 79 65 … … 87 73 88 74 /* 89 * 64 ãªã¯ããã75 * 64 オクテット 90 76 */ 91 77 92 78 typedef 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]; /* バッファ本体 */ 103 89 } T_NET_BUF_64; 104 90 105 91 /* 106 * 128 ãªã¯ããã92 * 128 オクテット 107 93 */ 108 94 109 95 typedef 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]; /* バッファ本体 */ 120 106 } T_NET_BUF_128; 121 107 122 108 /* 123 * 256 ãªã¯ããã109 * 256 オクテット 124 110 */ 125 111 126 112 typedef 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]; /* バッファ本体 */ 137 123 } T_NET_BUF_256; 138 124 139 125 /* 140 * 512 ãªã¯ããã126 * 512 オクテット 141 127 */ 142 128 143 129 typedef 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];/* バッファ本体 */ 154 140 } T_NET_BUF_512; 155 141 156 142 /* 157 * 1024 ãªã¯ããã143 * 1024 オクテット 158 144 */ 159 145 160 146 typedef 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]; /* バッファ本体 */ 171 157 } T_NET_BUF_1024; 172 158 173 159 /* 174 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®æ大 PDU ãµã¤ãº160 * ネットワークインタフェースの最大 PDU サイズ 175 161 */ 176 162 … … 178 164 179 165 typedef 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; /* フラグ */ 183 169 #ifdef IF_ETHER_NIC_NET_BUF_ALIGN 184 170 uint8_t nalign[IF_ETHER_NIC_NET_BUF_ALIGN]; … … 188 174 #endif 189 175 uint8_t buf[IF_PDU_SIZE]; 190 /* ãããã¡æ¬ä½*/176 /* バッファ本体 */ 191 177 #if defined(IF_PDU_HDR_PADDING) 192 178 uint8_t padding[IF_PDU_HDR_PADDING]; 193 #endif /* ãããã®ä½å*/179 #endif /* ヘッダの余分 */ 194 180 } T_NET_BUF_IF_PDU; 195 181 … … 197 183 198 184 /* 199 * ãããã¯ã¼ã¯ãããã¡è¡¨185 * ネットワークバッファ表 200 186 */ 201 187 … … 218 204 219 205 /* 220 * ãããã¯ã¼ã¯ãããã¡ã»ãã©ã°221 */ 222 223 /* 224 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹åºåå¾ã«ãããã¯ã¼ã¯ãããã¡ãéæ¾ããªãã225 * 注æ: åºåå¾ã«ãã®ãã©ã°ã¯ã¯ãªã¢ãããã206 * ネットワークバッファ・フラグ 207 */ 208 209 /* 210 * ネットワークインタフェース出力後にネットワークバッファを開放しない。 211 * 注意: 出力後にこのフラグはクリアされる。 226 212 */ 227 213 #define NB_FLG_NOREL_IFOUT UINT_C(0x80) 228 214 229 215 /* 230 * ESP ç¨ãã©ã°216 * ESP 用フラグ 231 217 */ 232 218 #define NB_FLG_DECRYPED UINT_C(0x40) 233 219 234 220 /* 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 * 関数シミュレーションマクロ 247 233 */ 248 234 … … 250 236 251 237 /* 252 * é¢æ°238 * 関数 253 239 */ 254 240 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_count.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 111 99 112 100 /* 113 * ãããã¯ã¼ã¯çµ±è¨æ 114 å ±ã®è¨æ¸¬ 101 * ネットワーク統計情報の計測 115 102 */ 116 103 … … 137 124 138 125 /* 139 * è¨æ¸¬ç¨å¤æ°126 * 計測用変数 140 127 */ 141 128 … … 145 132 146 133 T_NET_COUNT net_count_ppp; 147 T_NET_COUNT_VAL net_count_ppp_no_bufs; /* net_buf å²ãå½ã¦å¤±ææ°*/134 T_NET_COUNT_VAL net_count_ppp_no_bufs; /* net_buf 割り当て失敗数 */ 148 135 149 136 #endif /* of #if NET_COUNT_ENABLE & PROTO_FLG_PPP */ -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_count.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 81 69 82 70 /* 83 * ãããã¯ã¼ã¯çµ±è¨æ 84 å ±ã®è¨æ¸¬ 71 * ネットワーク統計情報の計測 85 72 */ 86 73 … … 96 83 97 84 typedef 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; /* 送信エラーバケット数 */ 104 91 } T_NET_COUNT; 105 92 … … 119 106 120 107 extern 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 /* ã«ã¦ã³ã¿æ°*/108 extern 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 /* カウンタ数 */ 126 113 127 114 #else /* of #if NET_COUNT_ENABLE & PROTO_FLG_PPP */ … … 248 235 #ifdef SUPPORT_LOOP 249 236 250 /* ã«ã¼ãããã¯*/237 /* ループバック */ 251 238 252 239 #if NET_COUNT_ENABLE & PROTO_FLG_LOOP … … 292 279 #if NET_COUNT_ENABLE & PROTO_FLG_ETHER_NIC 293 280 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 /* カウンタ数 */ 307 294 308 295 #define NET_COUNT_ETHER_NIC(v,c) ((v)+=(c)) … … 322 309 #endif /* of #ifdef SUPPORT_ETHER */ 323 310 324 /* ãããã¯ã¼ã¯ãããã¡*/311 /* ネットワークバッファ */ 325 312 326 313 #if NET_COUNT_ENABLE & PROTO_FLG_NET_BUF … … 358 345 #if NET_COUNT_ENABLE & PROTO_FLG_IP4 359 346 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 /* カウンタ数 */ 382 368 383 369 #define NET_COUNT_IP4(v,c) ((v)+=(c)) … … 421 407 #if NET_COUNT_ENABLE & PROTO_FLG_IP6 422 408 423 #define NC_IP6_FRAG_OUT_FRAGS 0 /* åå²éä¿¡ããã©ã°ã¡ã³ãæ°*/424 #define NC_IP6_FRAG_OUT 1 /* åå²éä¿¡æ°*/425 #define NC_IP6_OUT_ERR_PACKETS 2 /* éä¿¡ã¨ã©ã¼ãã¼ã¿ã°ã©ã æ°*/426 #define NC_IP6_OUT_PACKETS 3 /* éä¿¡ãã¼ã¿ã°ã©ã æ°*/427 #define NC_IP6_OUT_OCTETS 4 /* éä¿¡ãªã¯ãããæ°*/428 #define NC_IP6_FRAG_IN_TMOUT 5 /* åå²åä¿¡ã¿ã¤ã ã¢ã¦ãæ°*/429 #define NC_IP6_FRAG_IN_NO_BUF 6 /* åå²åä¿¡ãããã¡ãå½ã¦å¤±ææ°*/430 #define NC_IP6_FRAG_IN_DROP 7 /* åå²åä¿¡ç ´æ£æ°*/431 #define NC_IP6_FRAG_IN_OK 8 /* åå²åä¿¡åæ§ææåæ°*/432 #define NC_IP6_FRAG_IN_FRAGS 9 /* åå²åä¿¡ãã©ã°ã¡ã³ãæ°*/433 #define NC_IP6_FRAG_IN 10 /* åå²åä¿¡æ°*/434 #define NC_IP6_IN_ERR_PROTO 11 /* ãããã³ã«ã¨ã©ã¼æ°*/435 #define NC_IP6_IN_ERR_ADDR 12 /* ã¢ãã¬ã¹ã¨ã©ã¼æ°*/436 #define NC_IP6_IN_ERR_VER 13 /* ãã¼ã¸ã§ã³ã¨ã©ã¼æ°*/437 #define NC_IP6_IN_ERR_SHORT 14 /* é·ãã¨ã©ã¼æ°*/438 #define NC_IP6_IN_ERR_PACKETS 15 /* åä¿¡ã¨ã©ã¼ãã¼ã¿ã°ã©ã æ°*/439 #define NC_IP6_IN_PACKETS 16 /* åä¿¡ãã¼ã¿ã°ã©ã æ°*/440 #define NC_IP6_IN_OCTETS 17 /* åä¿¡ãªã¯ãããæ°*/441 #define NC_IP6_SIZE 18 /* ã«ã¦ã³ã¿æ°*/409 #define NC_IP6_FRAG_OUT_FRAGS 0 /* 分割送信、フラグメント数 */ 410 #define NC_IP6_FRAG_OUT 1 /* 分割送信数 */ 411 #define NC_IP6_OUT_ERR_PACKETS 2 /* 送信エラーデータグラム数 */ 412 #define NC_IP6_OUT_PACKETS 3 /* 送信データグラム数 */ 413 #define NC_IP6_OUT_OCTETS 4 /* 送信オクテット数 */ 414 #define NC_IP6_FRAG_IN_TMOUT 5 /* 分割受信タイムアウト数 */ 415 #define NC_IP6_FRAG_IN_NO_BUF 6 /* 分割受信バッファり当て失敗数 */ 416 #define NC_IP6_FRAG_IN_DROP 7 /* 分割受信破棄数 */ 417 #define NC_IP6_FRAG_IN_OK 8 /* 分割受信再構成成功数 */ 418 #define NC_IP6_FRAG_IN_FRAGS 9 /* 分割受信フラグメント数 */ 419 #define NC_IP6_FRAG_IN 10 /* 分割受信数 */ 420 #define NC_IP6_IN_ERR_PROTO 11 /* プロトコルエラー数 */ 421 #define NC_IP6_IN_ERR_ADDR 12 /* アドレスエラー数 */ 422 #define NC_IP6_IN_ERR_VER 13 /* バージョンエラー数 */ 423 #define NC_IP6_IN_ERR_SHORT 14 /* 長さエラー数 */ 424 #define NC_IP6_IN_ERR_PACKETS 15 /* 受信エラーデータグラム数 */ 425 #define NC_IP6_IN_PACKETS 16 /* 受信データグラム数 */ 426 #define NC_IP6_IN_OCTETS 17 /* 受信オクテット数 */ 427 #define NC_IP6_SIZE 18 /* カウンタ数 */ 442 428 443 429 #define NET_COUNT_IP6(v,c) ((v)+=(c)) … … 457 443 #if NET_COUNT_ENABLE & PROTO_FLG_ICMP6 458 444 459 #define NC_ICMP6_OUT_ERR_PACKETS 0 /* éä¿¡ã¨ã©ã¼ ICMP ãã¼ã¿æ°*/460 #define NC_ICMP6_OUT_PACKETS 1 /* éä¿¡ ICMP ãã¼ã¿æ°*/461 #define NC_ICMP6_OUT_OCTETS 2 /* éä¿¡ ICMP ãªã¯ãããæ°*/462 #define NC_ICMP6_IN_ERR_CKSUM 3 /* é·ãã¨ã©ã¼æ°*/463 #define NC_ICMP6_IN_ERR_PACKETS 4 /* åä¿¡ã¨ã©ã¼ ICMP ãã¼ã¿æ°*/464 #define NC_ICMP6_IN_PACKETS 5 /* åä¿¡ ICMP ãã¼ã¿æ°*/465 #define NC_ICMP6_IN_OCTETS 6 /* åä¿¡ ICMP ãªã¯ãããæ°*/466 #define NC_ICMP6_SIZE 7 /* ã«ã¦ã³ã¿æ°*/445 #define NC_ICMP6_OUT_ERR_PACKETS 0 /* 送信エラー ICMP データ数 */ 446 #define NC_ICMP6_OUT_PACKETS 1 /* 送信 ICMP データ数 */ 447 #define NC_ICMP6_OUT_OCTETS 2 /* 送信 ICMP オクテット数 */ 448 #define NC_ICMP6_IN_ERR_CKSUM 3 /* 長さエラー数 */ 449 #define NC_ICMP6_IN_ERR_PACKETS 4 /* 受信エラー ICMP データ数 */ 450 #define NC_ICMP6_IN_PACKETS 5 /* 受信 ICMP データ数 */ 451 #define NC_ICMP6_IN_OCTETS 6 /* 受信 ICMP オクテット数 */ 452 #define NC_ICMP6_SIZE 7 /* カウンタ数 */ 467 453 468 454 #define NET_COUNT_ICMP6(v,c) ((v)+=(c)) … … 482 468 #if NET_COUNT_ENABLE & PROTO_FLG_ND6 483 469 484 #define NC_ND6_DAD_OUT_PACKETS 0 /* éè¤ã¢ãã¬ã¹æ¤åºéä¿¡æ°*/485 #define NC_ND6_NS_OUT_PACKETS 1 /* è¿é£è¦è«éä¿¡æ°*/486 #define NC_ND6_NS_IN_PACKETS 2 /* è¿é£è¦è«åä¿¡æ°*/487 #define NC_ND6_NA_OUT_PACKETS 3 /* è¿é£éç¥éä¿¡æ°*/488 #define NC_ND6_NA_IN_PACKETS 4 /* è¿é£éç¥åä¿¡æ°*/489 #define NC_ND6_RS_OUT_PACKETS 5 /* ã«ã¼ã¿è¦è«åºåæ°*/490 #define NC_ND6_RA_IN_PACKETS 6 /* ã«ã¼ã¿éç¥åä¿¡æ°*/491 #define NC_ND6_SIZE 7 /* ã«ã¦ã³ã¿æ°*/470 #define NC_ND6_DAD_OUT_PACKETS 0 /* 重複アドレス検出送信数 */ 471 #define NC_ND6_NS_OUT_PACKETS 1 /* 近隣要請送信数 */ 472 #define NC_ND6_NS_IN_PACKETS 2 /* 近隣要請受信数 */ 473 #define NC_ND6_NA_OUT_PACKETS 3 /* 近隣通知送信数 */ 474 #define NC_ND6_NA_IN_PACKETS 4 /* 近隣通知受信数 */ 475 #define NC_ND6_RS_OUT_PACKETS 5 /* ルータ要請出力数 */ 476 #define NC_ND6_RA_IN_PACKETS 6 /* ルータ通知受信数 */ 477 #define NC_ND6_SIZE 7 /* カウンタ数 */ 492 478 493 479 #define NET_COUNT_ND6(v,c) ((v)+=(c)) … … 513 499 #if NET_COUNT_ENABLE & PROTO_FLG_TCP 514 500 515 #define NC_TCP_CONNECTS 0 /* è½åãªã¼ãã³æ°*/516 #define NC_TCP_ACCEPTS 1 /* ååãªã¼ãã³æ°*/517 #define NC_TCP_RTT_UPDATES 2 /* RTT æ´æ°æ°*/518 #define NC_TCP_SEND_RSTS 3 /* éä¿¡ãRST æ°*/519 #define NC_TCP_SEND_ACKS 4 /* éä¿¡ãACK æ°*/520 #define NC_TCP_SEND_URG_SEGS 5 /* éä¿¡ãç·æ¥ã»ã°ã¡ã³ãæ°*/521 #define NC_TCP_SEND_DATA_SEGS 6 /* éä¿¡ãã¼ã¿ã»ã°ã¡ã³ãæ°*/522 #define NC_TCP_SEND_REXMIT_SEGS 7 /* åéä¿¡ã»ã°ã¡ã³ãæ°*/523 #define NC_TCP_SEND_SEGS 8 /* éä¿¡ã»ã°ã¡ã³ãæ°*/524 #define NC_TCP_SEND_CNTL_SEGS 9 /* éä¿¡å¶å¾¡ã»ã°ã¡ã³ãæ°*/525 #define NC_TCP_SEND_DATA_OCTETS 10 /* éä¿¡ãã¼ã¿ãªã¯ãããæ°*/526 #define NC_TCP_FREE_RCV_QUEUE 11 /* åä¿¡ãã¥ã¼è§£æ¾æ°*/527 #define NC_TCP_RECV_DUP_SEGS 12 /* åä¿¡ãå¤éæ°*/528 #define NC_TCP_RECV_DROP_SEGS 13 /* åä¿¡ãç ´æ£æ°*/529 #define NC_TCP_RECV_RSTS 14 /* åä¿¡ãRST æ°*/530 #define NC_TCP_RECV_DUP_ACKS 15 /* åä¿¡ãå¤é ACK æ°*/531 #define NC_TCP_RECV_ACKS 16 /* åä¿¡ãACK æ°*/532 #define NC_TCP_RECV_BAD_CKSUMS 17 /* åä¿¡ããã§ãã¯ãµã ä¸æ£æ°*/533 #define NC_TCP_RECV_BAD_HEADERS 18 /* åä¿¡ããããä¸æ£æ°*/534 #define NC_TCP_RECV_URG_SEGS 19 /* åä¿¡ãç·æ¥ã»ã°ã¡ã³ãæ°*/535 #define NC_TCP_RECV_DATA_SEGS 20 /* åä¿¡ãã¼ã¿ã»ã°ã¡ã³ãæ°*/536 #define NC_TCP_RECV_SEGS 21 /* åä¿¡ã»ã°ã¡ã³ãæ°*/537 #define NC_TCP_RECV_DATA_OCTETS 22 /* åä¿¡ãã¼ã¿ãªã¯ãããæ°*/538 #define NC_TCP_RECV_OCTETS 23 /* åä¿¡ãªã¯ãããæ°*/539 #define NC_TCP_SIZE 24 /* ã«ã¦ã³ã¿æ°*/501 #define NC_TCP_CONNECTS 0 /* 能動オープン数 */ 502 #define NC_TCP_ACCEPTS 1 /* 受動オープン数 */ 503 #define NC_TCP_RTT_UPDATES 2 /* RTT 更新数 */ 504 #define NC_TCP_SEND_RSTS 3 /* 送信、RST 数 */ 505 #define NC_TCP_SEND_ACKS 4 /* 送信、ACK 数 */ 506 #define NC_TCP_SEND_URG_SEGS 5 /* 送信、緊急セグメント数 */ 507 #define NC_TCP_SEND_DATA_SEGS 6 /* 送信データセグメント数 */ 508 #define NC_TCP_SEND_REXMIT_SEGS 7 /* 再送信セグメント数 */ 509 #define NC_TCP_SEND_SEGS 8 /* 送信セグメント数 */ 510 #define NC_TCP_SEND_CNTL_SEGS 9 /* 送信制御セグメント数 */ 511 #define NC_TCP_SEND_DATA_OCTETS 10 /* 送信データオクテット数 */ 512 #define NC_TCP_FREE_RCV_QUEUE 11 /* 受信キュー解放数 */ 513 #define NC_TCP_RECV_DUP_SEGS 12 /* 受信、多重数 */ 514 #define NC_TCP_RECV_DROP_SEGS 13 /* 受信、破棄数 */ 515 #define NC_TCP_RECV_RSTS 14 /* 受信、RST 数 */ 516 #define NC_TCP_RECV_DUP_ACKS 15 /* 受信、多重 ACK 数 */ 517 #define NC_TCP_RECV_ACKS 16 /* 受信、ACK 数 */ 518 #define NC_TCP_RECV_BAD_CKSUMS 17 /* 受信、チェックサム不正数 */ 519 #define NC_TCP_RECV_BAD_HEADERS 18 /* 受信、ヘッダ不正数 */ 520 #define NC_TCP_RECV_URG_SEGS 19 /* 受信、緊急セグメント数 */ 521 #define NC_TCP_RECV_DATA_SEGS 20 /* 受信データセグメント数 */ 522 #define NC_TCP_RECV_SEGS 21 /* 受信セグメント数 */ 523 #define NC_TCP_RECV_DATA_OCTETS 22 /* 受信データオクテット数 */ 524 #define NC_TCP_RECV_OCTETS 23 /* 受信オクテット数 */ 525 #define NC_TCP_SIZE 24 /* カウンタ数 */ 540 526 541 527 #define NET_COUNT_TCP(v,c) ((v)+=(c)) … … 580 566 581 567 /* 582 * SNMP 㮠管çæ 583 å ±ãã¼ã¹ (MIB) 568 * SNMP の 管理情報ベース (MIB) 584 569 */ 585 570 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_endian.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 81 69 82 70 /* 83 * ãã¤ããªã¼ãã®å®ç¾©71 * バイトオーダの定義 84 72 */ 85 73 … … 124 112 125 113 /* 126 * ãã¤ããªã¼ãå¤æã®å®ç¾©114 * バイトオーダ変換の定義 127 115 */ 128 116 … … 140 128 141 129 /* 142 * 注æ: IPããã以éã¯ã4 ãã¤ãå¢çã«ã¢ã©ã¤ã³ããã¦ããäºã143 * åæã¨ãã¦ãããã4 ãã¤ãå¢çã§ã¢ã¯ã»ã¹ãã144 * ããã»ããµã§ããããã¯ã¼ã¯å´ã®ãã¼ã¿ãã4 ãã¤ãå¢çã«ã¢ã©ã¤ã³145 * ããã¦ããªãå ´åã¯ãntoahlãahtonlãnahcmpl ã使ç¨ãããã¨ã130 * 注意: IPヘッダ以降は、4 バイト境界にアラインされている事を 131 * 前提としているが、4 バイト境界でアクセスする 132 * プロセッサで、ネットワーク側のデータが、4 バイト境界にアライン 133 * されていない場合は、ntoahl、ahtonl、nahcmpl を使用すること。 146 134 */ 147 135 … … 179 167 180 168 /* 181 * 注æ: IPããã以éã¯ã4 ãã¤ãå¢çã«ã¢ã©ã¤ã³ããã¦ããäºã182 * åæã¨ãã¦ãããã4 ãã¤ãå¢çã§ã¢ã¯ã»ã¹ãã183 * ããã»ããµã§ããããã¯ã¼ã¯å´ã®ãã¼ã¿ãã4 ãã¤ãå¢çã«ã¢ã©ã¤ã³184 * ããã¦ããªãå ´åã¯ãntoahlãahtonlãnahcmpl ã使ç¨ãããã¨ã169 * 注意: IPヘッダ以降は、4 バイト境界にアラインされている事を 170 * 前提としているが、4 バイト境界でアクセスする 171 * プロセッサで、ネットワーク側のデータが、4 バイト境界にアライン 172 * されていない場合は、ntoahl、ahtonl、nahcmpl を使用すること。 185 173 */ 186 174 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_jsp.cfg
-
Property svn:mime-type
changed from
text/plain
totext/plain; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 45 33 46 34 /* 47 * JSP ç¨ æ±ç¨ãããã¯ã¼ã¯ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«35 * JSP用 汎用ネットワークコンフィギュレーションファイル 48 36 */ 49 37 50 38 51 39 /* 52 * å 53 ±é æ±ç¨ãããã¯ã¼ã¯ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«ã®ã¤ã³ã¯ã«ã¼ã 40 * 共通 汎用ネットワークコンフィギュレーションファイルのインクルード 54 41 */ 55 42 … … 57 44 58 45 /* 59 * ãããã¯ã¼ã¯ãããã¡46 * ネットワークバッファ 60 47 */ 61 48 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_rename.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 48 36 49 37 /* 50 * æ±ç¨ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹å 51 é¨åã®ãªãã¼ã 38 * 汎用ネットワークインタフェース内部名のリネーム 52 39 */ 53 40 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_subr.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 78 66 79 67 /* 80 * ãããã¯ã¼ã¯æ±ç¨ãµãã¼ãã«ã¼ãã³68 * ネットワーク汎用サポートルーチン 81 69 */ 82 70 … … 108 96 109 97 /* 110 * å¤æ°98 * 変数 111 99 */ 112 100 … … 114 102 115 103 /* 116 * net_rand -- ä¹±æ°ãè¿ãã104 * net_rand -- 乱数を返す。 117 105 */ 118 106 … … 125 113 126 114 /* 127 * srand -- ä¹±æ°ãåæåããã115 * srand -- 乱数を初期化する。 128 116 */ 129 117 … … 138 126 139 127 /* 140 * convert_hexdigit -- 16 é²æ°âæååå¤æ128 * convert_hexdigit -- 16進数→文字列変換 141 129 */ 142 130 … … 166 154 167 155 /* 168 * mac2str -- MAC ã¢ãã¬ã¹ãæååã«å¤æããã156 * mac2str -- MAC アドレスを文字列に変換する。 169 157 */ 170 158 … … 206 194 207 195 /* 208 * rev_memcpy_hword -- å転ã¡ã¢ãªã³ãã¼ï¼2 ãã¤ãï¼209 * 210 * ãã¤ãåä½ã«ã¢ã¯ã»ã¹ããäºã«ããã211 * å¢çã¸ã®ã¢ã©ã¤ã³ã®åé¡ã解決ããã196 * rev_memcpy_hword -- 反転メモリコピー(2 バイト) 197 * 198 * バイト単位にアクセスする事により、 199 * 境界へのアラインの問題を解決する。 212 200 */ 213 201 … … 220 208 221 209 /* 222 * rev_memcpy_word -- å転ã¡ã¢ãªã³ãã¼ï¼4 ãã¤ãï¼223 * 224 * ãã¤ãåä½ã«ã¢ã¯ã»ã¹ããäºã«ããã225 * å¢çã¸ã®ã¢ã©ã¤ã³ã®åé¡ã解決ããã210 * rev_memcpy_word -- 反転メモリコピー(4 バイト) 211 * 212 * バイト単位にアクセスする事により、 213 * 境界へのアラインの問題を解決する。 226 214 */ 227 215 … … 236 224 237 225 /* 238 * rev_memcmp_word -- å転ã¡ã¢ãªæ¯è¼ï¼4 ãã¤ãï¼239 * 240 * ãã¤ãåä½ã«ã¢ã¯ã»ã¹ããäºã«ããã241 * å¢çã¸ã®ã¢ã©ã¤ã³ã®åé¡ã解決ããã226 * rev_memcmp_word -- 反転メモリ比較(4 バイト) 227 * 228 * バイト単位にアクセスする事により、 229 * 境界へのアラインの問題を解決する。 242 230 */ 243 231 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_timer.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 112 100 113 101 /* 114 * å¤æ°102 * 変数 115 103 */ 116 104 … … 118 106 119 107 /* 120 * å¼åºãã¨ã³ããªç»é²108 * 呼出しエントリ登録 121 109 */ 122 110 … … 126 114 int_t ix; 127 115 128 /* å¼åºãã¨ã³ããªãç²å¾ãã*/116 /* 呼出しエントリを獲得する */ 129 117 syscall(wai_sem(SEM_CALL_OUT_LOCK)); 130 118 for (ix = NUM_NET_CALLOUT; callout[-- ix].func != NULL; ) … … 135 123 } 136 124 137 /* å¼åºãã¨ã³ããªãè¨å®ãã*/125 /* 呼出しエントリを設定する */ 138 126 callout[ix].func = func; 139 127 callout[ix].arg = arg; … … 143 131 144 132 /* 145 * å¼åºãã¨ã³ããªåé¤133 * 呼出しエントリ削除 146 134 */ 147 135 … … 151 139 int_t ix; 152 140 153 /* ã¨ã³ããªãæ¢ã*/141 /* エントリを探す */ 154 142 for (ix = NUM_NET_CALLOUT; ix -- > 0; ) { 155 143 syscall(wai_sem(SEM_CALL_OUT_LOCK)); … … 164 152 165 153 /* 166 * ãããã¯ã¼ã¯ã¿ã¤ãã¿ã¹ã¯ 167 * 168 * 注æ: ã¿ã¹ã¯ã³ã³ããã¹ãã§å®è¡ããå¿ 169 è¦ãããããï¼ 170 * å¨æãã³ãã©ã¯ä½¿ç¨ã§ããªãã 154 * ネットワークタイマタスク 155 * 156 * 注意: タスクコンテキストで実行する必要があるため, 157 * 周期ハンドラは使用できない。 171 158 */ 172 159 … … 192 179 syslog(LOG_NOTICE, "[NET/TIMER:%d] started.", tskid); 193 180 194 /* IP ãåæåããã*/181 /* IP を初期化する。*/ 195 182 196 183 #if defined(_IP6_CFG) … … 204 191 #ifdef SUPPORT_TCP 205 192 206 /* TCP åºåã¿ã¹ã¯ãèµ·åãã*/193 /* TCP 出力タスクを起動する */ 207 194 syscall(act_tsk(TCP_OUTPUT_TASK)); 208 195 … … 211 198 #if defined(SUPPORT_UDP) && defined(UDP_CFG_NON_BLOCKING) 212 199 213 /* UDP åºåã¿ã¹ã¯ãèµ·åãã*/200 /* UDP 出力タスクを起動する */ 214 201 syscall(act_tsk(UDP_OUTPUT_TASK)); 215 202 … … 217 204 218 205 while (true) { 219 /* ã¿ã¤ã ã¢ã¦ãããã¨ã³ããªãå¼åºãã*/206 /* タイムアウトしたエントリを呼出す。*/ 220 207 syscall(wai_sem(SEM_CALL_OUT_TIMEOUT)); 221 208 for (ix = NUM_NET_CALLOUT; ix -- > 0; ) { … … 235 222 236 223 /* 237 * ãããã¯ã¼ã¯ã¿ã¤ããã³ãã©238 * 239 * NET_TIMER_CYCLE (100ms) æ¯ã«å¼åºãããã224 * ネットワークタイマハンドラ 225 * 226 * NET_TIMER_CYCLE (100ms) 毎に呼出される。 240 227 */ 241 228 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_timer.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 80 68 #define _NET_TIMER_H_ 81 69 82 #include <tinet_kernel_defs.h> /* ã«ã¼ãã«ã«é¢ããäºææ§å®ç¾©ãã¡ã¤ã«ãã¤ã³ã¯ã«ã¼ãããã*/70 #include <tinet_kernel_defs.h> /* カーネルに関する互換性定義ファイルをインクルードする。*/ 83 71 84 72 /* 85 * TOPPERS/JSP ã«ã¼ãã«ãã·ã¹ãã æå» (SYSTIM) ã®å¨æ³¢æ°73 * TOPPERS/JSP カーネル、システム時刻 (SYSTIM) の周波数 86 74 */ 87 75 … … 89 77 90 78 /* 91 * ãããã¯ã¼ã¯ã¿ã¤ãã®å®ç¾©79 * ネットワークタイマの定義 92 80 */ 93 81 94 #define NET_TIMER_CYCLE ULONG_C(100) /* [ms] ãfast timeout 使ç¨æã®åä½å¨æ*/95 /* ã¿ã¤ãã®å¨æ³¢æ°*/82 #define NET_TIMER_CYCLE ULONG_C(100) /* [ms]、fast timeout 使用時の動作周期 */ 83 /* タイマの周波数 */ 96 84 #define NET_TIMER_HZ (SYSTIM_HZ/NET_TIMER_CYCLE) 97 85 98 86 #ifdef _IP6_CFG 99 #define NUM_NET_CALLOUT 12 /* ã¿ã¤ã ã¢ã¦ãå¼åºãæ°ã10 以ä¸*/87 #define NUM_NET_CALLOUT 12 /* タイムアウト呼出し数、10 以上 */ 100 88 #else 101 #define NUM_NET_CALLOUT 10 /* ã¿ã¤ã ã¢ã¦ãå¼åºãæ°ã10 以ä¸*/89 #define NUM_NET_CALLOUT 10 /* タイムアウト呼出し数、10 以上 */ 102 90 #endif 103 91 104 92 /* 105 * ã¿ã¤ã ã¢ã¦ãå¼åºãã¨ã³ããª93 * タイムアウト呼出しエントリ 106 94 */ 107 95 … … 109 97 110 98 typedef struct t_net_callout { 111 callout_func func; /* å¼åºãé¢æ°*/112 void *arg; /* é¢æ°ã¸ã®å¼æ°*/113 RELTIM timeout; /* ã¿ã¤ã ã¢ã¦ã*/99 callout_func func; /* 呼出す関数 */ 100 void *arg; /* 関数への引数 */ 101 RELTIM timeout; /* タイムアウト */ 114 102 } T_NET_CALLOUT; 115 103 116 104 /* 117 * é¢æ°105 * 関数 118 106 */ 119 107 … … 122 110 123 111 /* 124 * ãããã¯ã¼ã¯ã¿ã¤ãã¿ã¹ã¯ã¨å¨æãã³ãã©112 * ネットワークタイマタスクと周期ハンドラ 125 113 */ 126 114 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/net_var.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 81 69 82 70 /* 83 * é¢æ°71 * 関数 84 72 */ 85 73 … … 87 75 88 76 /* 89 * é¢æ°77 * 関数 90 78 */ 91 79 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 80 68 81 69 /* 82 * PPP å¦çã¿ã¹ã¯ã®æ¬ä½70 * PPP 処理タスクの本体 83 71 */ 84 72 … … 112 100 113 101 /* 114 * å 115 ¨åå¤æ° 116 */ 117 118 uint8_t ppp_phase = PPP_PHASE_INITIALIZE; /* ãªã³ã¯ã®ç¶æ 119 */ 120 121 /* 122 * ãããã³ã«è¡¨ 102 * 全域変数 103 */ 104 105 uint8_t ppp_phase = PPP_PHASE_INITIALIZE; /* リンクの状態 */ 106 107 /* 108 * プロトコル表 123 109 */ 124 110 … … 150 136 151 137 /* 152 * å¤æ°138 * 変数 153 139 */ 154 140 … … 160 146 161 147 /* 162 * é¢æ°148 * 関数 163 149 */ 164 150 … … 172 158 173 159 /* 174 * PPP å 175 ¥åã®è§£æ 160 * PPP 入力の解析 176 161 */ 177 162 … … 186 171 NET_COUNT_PPP(net_count_ppp.in_packets, 1); 187 172 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 */ 190 175 syslog(LOG_NOTICE, "[PPP] recv short frame."); 191 176 goto buf_rel; … … 194 179 proto = ntohs(*GET_PPP_HDR(input)); 195 180 196 /* ãããã³ã«ã LCP 以å¤ã§ãLCP ããªã¼ãã³ããã¦ããªããã°ã¨ã©ã¼*/181 /* プロトコルが LCP 以外で、LCP がオープンされていなければエラー */ 197 182 if (proto != PPP_LCP && lcp_fsm.state != PPP_FSM_OPENED) { 198 183 syslog(LOG_NOTICE, "[PPP] LCP not open."); … … 200 185 } 201 186 202 /* ãªã³ã¯ãèªè¨¼ç¶æ 203 以åã¯ãLCPãLQRãPAPãCHAP ã®ã¿åãä»ãã */ 187 /* リンクが認証状態以前は、LCP、LQR、PAP、CHAP のみ受け付ける */ 204 188 if (ppp_phase <= PPP_PHASE_AUTHENTICATE && 205 189 !(proto == PPP_LCP || proto == PPP_LQR || … … 209 193 } 210 194 211 /* ä¸ä½ãããã³ã«ã®å 212 ¥åé¢æ°ãå¼åºã */ 195 /* 上位プロトコルの入力関数を呼出す */ 213 196 for (ix = 0; (entry = protocols[ix]) != NULL; ix ++) { 214 197 if (entry->proto == proto && entry->input != NULL) { … … 232 215 233 216 /* 234 * ppp_output -- PPP ã¤ã³ã¿ãã§ã¼ã¹ã®åºåé¢æ°217 * ppp_output -- PPP インタフェースの出力関数 235 218 */ 236 219 … … 242 225 #ifdef PPP_CFG_MODEM 243 226 244 #if 0 /* ä¿ç */ 245 /* ã¢ãã ã®æ¥ç¶å®äºã¾ã§å¾ 246 ã¤ã*/ 227 #if 0 /* 保留 */ 228 /* モデムの接続完了まで待つ。*/ 247 229 if ((error = wait_modem()) != E_OK) 248 230 goto buf_ret; … … 252 234 253 235 #ifdef _IP6_CFG 254 /* IPV6CP ã®æ¥ç¶å®äºã¾ã§å¾ 255 ã¤ã*/ 236 /* IPV6CP の接続完了まで待つ。*/ 256 237 if ((error = wait_ipv6cp()) != E_OK) 257 238 goto buf_ret; … … 259 240 260 241 #ifdef _IP4_CFG 261 /* IPCP ã®æ¥ç¶å®äºã¾ã§å¾ 262 ã¤ã*/ 242 /* IPCP の接続完了まで待つ。*/ 263 243 if ((error = wait_ipcp()) != E_OK) 264 244 goto buf_ret; … … 266 246 267 247 #ifdef _IP4_CFG 268 /* IPCP ã®æ¥ç¶å®äºã¾ã§å¾ 269 ã¤ã*/ 248 /* IPCP の接続完了まで待つ。*/ 270 249 if ((error = wait_ipcp()) != E_OK) 271 250 goto buf_ret; … … 281 260 #endif /* of #ifdef PPP_IDLE_TIMEOUT */ 282 261 283 /* PPP åºåãã¥ã¼ã«æå 284 ¥ããã*/ 262 /* PPP 出力キューに投入する。*/ 285 263 if ((error = tsnd_dtq(DTQ_PPP_OUTPUT, output, tmout)) != E_OK) 286 264 goto buf_ret; … … 304 282 305 283 /* 306 * ppp_cp_output -- CP ãã¬ã¼ã ã®éä¿¡284 * ppp_cp_output -- CP フレームの送信 307 285 */ 308 286 … … 312 290 T_PPP_CP_HDR *cph; 313 291 314 /* CP ããããè¨å®ãã*/292 /* CP ヘッダを設定する */ 315 293 cph = GET_PPP_CP_HDR(output); 316 294 cph->code = code; … … 318 296 cph->len = htons(output->len - sizeof(T_PPP_HDR)); 319 297 320 /* PPP åºåãã¥ã¼ã«æå 321 ¥ããã*/ 298 /* PPP 出力キューに投入する。*/ 322 299 if (snd_dtq(DTQ_PPP_OUTPUT, output) != E_OK) { 323 300 syscall(rel_net_buf(output)); … … 327 304 328 305 /* 329 * PPP å 330 ¥åã¿ã¹ã¯ 306 * PPP 入力タスク 331 307 */ 332 308 … … 340 316 uint8_t rcount = 0; 341 317 342 /* ãã¼ããåæè¨å®ãã*/318 /* ポートを初期設定する */ 343 319 syscall(serial_opn_por(HDLC_PORTID)); 344 320 syscall(serial_ctl_por(HDLC_PORTID, IOCTL_FCSND | IOCTL_FCRCV)); … … 357 333 #endif /* of #ifdef PPP_CFG_MODEM */ 358 334 359 /* ãããã¯ã¼ã¯ã¿ã¤ãã¿ã¹ã¯ãèµ·åãã*/335 /* ネットワークタイマタスクを起動する */ 360 336 syscall(act_tsk(NET_TIMER_TASK)); 361 337 362 /* ä¸ä½ãããã³ã«ãåæåãã*/338 /* 上位プロトコルを初期化する */ 363 339 for (ix = 0; (proto = protocols[ix]) != NULL; ix ++) 364 340 if (proto->init != NULL) … … 368 344 lcp_open(PPP_OPEN_PASSIVE); 369 345 370 /* PPP åºåã¿ã¹ã¯ãèµ·åãã*/346 /* PPP 出力タスクを起動する */ 371 347 syscall(act_tsk(PPP_OUTPUT_TASK)); 372 348 373 /* ä¹±æ°çæãåæåããã*/349 /* 乱数生成を初期化する。*/ 374 350 net_srand(0); 375 351 … … 380 356 if (input->len > 0) { 381 357 382 /* ä¹±æ°çæãåæåããã*/358 /* 乱数生成を初期化する。*/ 383 359 if (rcount == 0) 384 360 net_srand(input->len); … … 422 398 423 399 /* 424 * PPP åºåã¿ã¹ã¯400 * PPP 出力タスク 425 401 */ 426 402 … … 447 423 448 424 /* 449 * ã¢ã¤ãã«ã¿ã¤ã ã¢ã¦ãå¦ç425 * アイドルタイムアウト処理 450 426 */ 451 427 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp.cfg
-
Property svn:mime-type
changed from
text/plain
totext/plain; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 45 33 46 34 /* 47 * PPP ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«35 * PPP コンフィギュレーションファイル 48 36 */ 49 37 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 83 71 84 72 /* 85 * PPP ãããã®ãããã³ã«ãã£ã¼ã«ãã®å¤73 * PPP ヘッダのプロトコルフィールドの値 86 74 */ 87 75 … … 101 89 102 90 /* 103 * ãªã³ã¯ã®ç¶æ 104 91 * リンクの状態 105 92 */ 106 93 … … 116 103 117 104 /* 118 * PPP ãªã³ã¯å¶å¾¡ (CP) ãããæ§é ä½105 * PPP リンク制御 (CP) ヘッダ構造体 119 106 */ 120 107 121 108 typedef 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; /* 長さ */ 125 112 } T_PPP_CP_HDR; 126 113 … … 128 115 129 116 /* 130 * PPP ãªã³ã¯å¶å¾¡ (CP) ã®å¶å¾¡ã³ã¼ã117 * PPP リンク制御 (CP) の制御コード 131 118 */ 132 119 … … 141 128 142 129 /* 143 * æ§ææ 144 å ± (CI) ããã 130 * 構成情報 (CI) ヘッダ 145 131 */ 146 132 147 133 typedef struct t_ppp_ci_hdr { 148 uint8_t type; /* CI ã®å*/149 uint8_t len; /* é·ã*/134 uint8_t type; /* CI の型 */ 135 uint8_t len; /* 長さ */ 150 136 } T_PPP_CI_HDR; 151 137 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_auth.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 124 112 125 113 /* 126 * å®æ°114 * 定数 127 115 */ 128 116 … … 133 121 134 122 /* 135 * network_phase -- ã³ãã¯ã·ã§ã³ç¢ºç«123 * network_phase -- コネクション確立 136 124 */ 137 125 … … 144 132 ppp_phase = PPP_PHASE_NETWORK; 145 133 146 /* ä¸ä½ãããã³ã«ããªã¼ãã³ãã*/134 /* 上位プロトコルをオープンする */ 147 135 num = 0; 148 136 for (ix = 0; (proto = protocols[ix]) != NULL; ix ++) 149 #if 0 /* ä¿çãåé¤ç¦æ¢*/137 #if 0 /* 保留、削除禁止 */ 150 138 if (proto->proto < 0xc000 && proto->open != NULL) { 151 139 #else /* of #if 0 */ … … 158 146 159 147 if (num == 0) 160 /* ä¸ä½ãããã³ã«ããªã*/148 /* 上位プロトコルがない */ 161 149 lcp_close(); 162 150 else … … 165 153 166 154 /* 167 * link_required -- ãªã³ã¯ãéè¨ããã155 * link_required -- リンクを開設する。 168 156 */ 169 157 … … 174 162 175 163 /* 176 * link_terminated -- ãã°ã¢ã¦ããã¦ããªã³ã¯ãåæããã164 * link_terminated -- ログアウトして、リンクを切断する。 177 165 */ 178 166 … … 186 174 187 175 /* 188 * link_down -- ãªã³ã¯ã解æ¾ããã176 * link_down -- リンクを解放する。 189 177 */ 190 178 … … 195 183 T_PPP_PROTENT *proto; 196 184 197 /* ä¸ä½ãããã³ã«ã解æ¾ãã*/185 /* 上位プロトコルを解放する */ 198 186 for (ix = 0; (proto = protocols[ix]) != NULL; ix ++) { 199 187 if (proto->proto != PPP_LCP && proto->lowerdown != NULL) … … 208 196 209 197 /* 210 * link_established -- ãªã³ã¯ã®æ¥ç¶ã確ç«ããã198 * link_established -- リンクの接続が確立した。 211 199 */ 212 200 … … 223 211 #endif /* of #if defined(LCP_CFG_CHAP) || defined(LCP_CFG_PAP) */ 224 212 225 /* ä¸ä½ãããã³ã«ãèµ·åãã*/213 /* 上位プロトコルを起動する */ 226 214 for (ix = 0; (proto = protocols[ix]) != NULL; ix ++) 227 215 if (proto->lowerup != NULL) 228 216 (*proto->lowerup)(); 229 217 230 /* èªè¨¼ãªãã·ã§ã³ã確èªããããæªå®è£ 231 ã*/ 218 /* 認証オプションを確認する。【未実装】*/ 232 219 233 220 ppp_phase = PPP_PHASE_AUTHENTICATE; … … 284 271 285 272 /* 286 * auth_reset -- èªè¨¼ãªãã·ã§ã³ãå確èªããã273 * auth_reset -- 認証オプションを再確認する。 287 274 */ 288 275 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_auth.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 72 60 73 61 /* 74 * é¢æ°62 * 関数 75 63 */ 76 64 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_ccp.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 97 85 98 86 /* 99 * å®è£ 100 äºå®ãç¾å¨ã¯ãã¹ã¦æå¦ 87 * 実装予定、現在はすべて拒否 101 88 */ 102 89 … … 113 100 114 101 /* 115 * é¢æ°102 * 関数 116 103 */ 117 104 … … 125 112 126 113 /* 127 * FSM ããå¼åºãããã³ã¼ã«ããã¯é¢114 * FSM から呼出されるコールバック関 128 115 */ 129 116 130 117 static int_t ccp_reqci (T_PPP_FSM *fsm, T_NET_BUF *nbuf); 131 /* ç¸æã®æ§ææ 132 å ±ã確èªããã */ 133 134 /* 135 * å 136 ¨åå¤æ° 118 /* 相手の構成情報を確認する。 */ 119 120 /* 121 * 全域変数 137 122 */ 138 123 139 124 T_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 を受信したときの処理 */ 157 138 }; 158 139 159 140 T_PPP_FSM ccp_fsm = { 160 &ccp_callbacks, /* ã³ã¼ã«ããã¯é¢æ°*/161 PPP_CCP, /* ãããã³ã«*/141 &ccp_callbacks, /* コールバック関数 */ 142 PPP_CCP, /* プロトコル */ 162 143 }; 163 144 164 145 T_PPP_PROTENT ccp_protent = { 165 146 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, /* データ入力 */ 176 155 }; 177 156 178 157 /* 179 * ccp_init -- CCP ã¢ã¸ã¥ã¼ã«ã®åæå158 * ccp_init -- CCP モジュールの初期化 180 159 */ 181 160 … … 187 166 188 167 /* 189 * ccp_input -- CCP å 190 ¥å 168 * ccp_input -- CCP 入力 191 169 */ 192 170 … … 200 178 201 179 /* 202 * ccp_reqci -- ç¸æã®æ§ææ 203 å ±ã解æããã 180 * ccp_reqci -- 相手の構成情報を解析する。 204 181 */ 205 182 … … 208 185 { 209 186 /* 210 * å®è£ 211 äºå®ãç¾å¨ã¯ãã¹ã¦ã®ãªãã·ã§ã³ãæå¦ããã 187 * 実装予定、現在はすべてのオプションを拒否する。 212 188 */ 213 189 return nbuf->len > (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)) ? PPP_CONFREJ : PPP_CONFACK; … … 215 191 216 192 /* 217 * ccp_protrej -- Proto-REJ ãåä¿¡ããã¨ãã®å¦ç193 * ccp_protrej -- Proto-REJ を受信したときの処理 218 194 */ 219 195 … … 225 201 226 202 /* 227 * ccp_lowerup -- CCP ä¸ä½å±¤ãèµ·åããã203 * ccp_lowerup -- CCP 下位層を起動する。 228 204 */ 229 205 … … 235 211 236 212 /* 237 * ccp_lowerdown -- CCP ä¸ä½å±¤ãåæ¢ããã213 * ccp_lowerdown -- CCP 下位層を停止する。 238 214 */ 239 215 … … 245 221 246 222 /* 247 * ccp_open -- CCP ã®ãªã¼ã223 * ccp_open -- CCP のオープ 248 224 */ 249 225 … … 255 231 256 232 /* 257 * ccp_close -- CCP ã®ã¯ãã¼ãº233 * ccp_close -- CCP のクローズ 258 234 */ 259 235 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_ccp.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 101 89 102 90 /* 103 * å¤æ°91 * 変数 104 92 */ 105 93 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_fsm.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 112 100 113 101 /* 114 * å 115 ¨åå¤æ° 116 */ 117 118 uint8_t ppp_open_mode = PPP_OPEN_PASSIVE; /* ãªã¼ãã³æã®åä½ã¢ã¼ã */ 119 120 /* 121 * é¢æ° 102 * 全域変数 103 */ 104 105 uint8_t ppp_open_mode = PPP_OPEN_PASSIVE; /* オープン時の動作モード */ 106 107 /* 108 * 関数 122 109 */ 123 110 … … 133 120 134 121 /* 135 * fsm_sconfreq -- Configure-Request ãéä¿¡ããã122 * fsm_sconfreq -- Configure-Request を送信する。 136 123 */ 137 124 … … 145 132 fsm->state == PPP_FSM_ACKRCVD || 146 133 fsm->state == PPP_FSM_ACKSENT)) { 147 /* ã¾ã ãã´ããã¦ããªãããªãã·ã§ã³ããªã»ããããã*/134 /* まだネゴをしていない。オプションをリセットする。 */ 148 135 if (fsm->callbacks->resetci) 149 136 (*fsm->callbacks->resetci)(fsm); … … 151 138 } 152 139 if (retransmit == 0) { 153 /* æ°ãããªã¯ã¨ã¹ããåéã«ã¦ã³ã¿ããªã»ããããæ°ãã ID ãè¨å®ããã*/140 /* 新しいリクエスト。再送カウンタをリセットし、新しい ID を設定する。 */ 154 141 fsm->retrans = MAX_PPP_CONFIGURES; 155 142 fsm->reqid = ++ fsm->id; … … 159 146 160 147 if (fsm->callbacks->cilen && fsm->callbacks->addci) { 161 /* æ§ææ 162 å ±ãã±ãããä½ãã */ 148 /* 構成情報パケットを作る。 */ 163 149 len = (*fsm->callbacks->cilen)(fsm); 164 150 … … 166 152 (*fsm->callbacks->addci)(fsm, output); 167 153 168 /* æ§ææ 169 å ±ãã±ãããéä¿¡ããã */ 154 /* 構成情報パケットを送信する。 */ 170 155 IF_SET_PROTO(output, fsm->proto); 171 156 ppp_cp_output(PPP_CONFREQ, fsm->reqid, output); … … 177 162 178 163 /* 179 * fsm_rconfreq -- Configure-Request ãåä¿¡ããã¨ãã®å¦ç164 * fsm_rconfreq -- Configure-Request を受信したときの処理 180 165 */ 181 166 … … 200 185 201 186 case PPP_FSM_OPENED: 202 /* ä¸ä½å±¤ãåæ¢ãã¦ããã´ã«ç§»ãã*/187 /* 上位層を停止して、ネゴに移る。 */ 203 188 if (fsm->callbacks->down != NULL) 204 189 (*fsm->callbacks->down)(fsm); 205 fsm_sconfreq(fsm, 0); /* æåã® Configure-Request ãéãã*/190 fsm_sconfreq(fsm, 0); /* 最初の Configure-Request を送る。 */ 206 191 break; 207 192 208 193 case PPP_FSM_STOPPED: 209 /* ç¸æãããã´ãéå§ããã*/210 fsm_sconfreq(fsm, 0); /* æåã® Configure-Request ãéãã*/194 /* 相手からネゴが開始された */ 195 fsm_sconfreq(fsm, 0); /* 最初の Configure-Request を送る。 */ 211 196 fsm->state = PPP_FSM_REQSENT; 212 197 break; … … 216 201 syscall(get_net_buf(&output, input->len)); 217 202 218 /* ä¸ä½ãããã³ã«ã«è¦æ±ããã Configure-Request ãéãã */ 219 if (fsm->callbacks->reqci != NULL) /* æ§ææ 220 å ±ããã§ãã¯ããã */ 203 /* 上位プロトコルに要求された Configure-Request を送る。 */ 204 if (fsm->callbacks->reqci != NULL) /* 構成情報をチェックする。 */ 221 205 code = (*fsm->callbacks->reqci)(fsm, input, output); 222 206 else if (output->len > sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)) … … 225 209 code = PPP_CONFACK; 226 210 227 /* ç¸æã« ACK, NAK ã¾ã㯠REJ ãéä¿¡ããã*/211 /* 相手に ACK, NAK または REJ を送信する。 */ 228 212 ppp_cp_output(code, id, output); 229 213 … … 240 224 } 241 225 else { 242 /* ACK ã REJ ãéã*/226 /* ACK か REJ を送る */ 243 227 if (fsm->state != PPP_FSM_ACKRCVD) 244 228 fsm->state = PPP_FSM_REQSENT; … … 249 233 250 234 /* 251 * fsm_rconfnakrej -- Configure-NAK/REJ ãåä¿¡ããã¨ãã®å¦ç235 * fsm_rconfnakrej -- Configure-NAK/REJ を受信したときの処理 252 236 */ 253 237 … … 258 242 T_NET_BUF *output; 259 243 260 /* äºæãã ID ã§ãªãããNAK/REJ ãäºæãã¦ããªãã¨ãã¯çµäºããã*/244 /* 予期した ID でないか、NAK/REJ を予期していないときは終了する。*/ 261 245 if (id != fsm->reqid || fsm->seen_ack) { 262 246 syslog(LOG_WARNING, "[PPP/FSM] bad ID or unexp NAK/REJ."); … … 291 275 case PPP_FSM_ACKSENT: 292 276 untimeout((FP)fsm_timeout, fsm); 293 if (ret < 0) /* éä¿¡ãã Conf-Req ãç ´æã空㮠NAK/REJ ãå±ããã*/277 if (ret < 0) /* 送信した Conf-Req が破損し空の NAK/REJ が届いた。*/ 294 278 fsm->state = PPP_FSM_STOPPED; 295 279 else … … 304 288 305 289 case PPP_FSM_OPENED: 306 /* åèµ·åãããã´ãããç´ãã*/290 /* 再起動し、ネゴをやり直す。*/ 307 291 if (fsm->callbacks->down != NULL) 308 292 (*fsm->callbacks->down)(fsm); … … 314 298 315 299 /* 316 * fsm_rconfack -- Configure-ACK ãåä¿¡ããã¨ãã®å¦ç300 * fsm_rconfack -- Configure-ACK を受信したときの処理 317 301 */ 318 302 … … 322 306 T_NET_BUF *output; 323 307 324 /* äºæãã ID ã§ãªãããACK ãäºæãã¦ããªãã¨ãã¯çµäºããã*/308 /* 予期した ID でないか、ACK を予期していないときは終了する。*/ 325 309 if (id != fsm->reqid || fsm->seen_ack) { 326 310 syslog(LOG_WARNING, "[PPP/FSM] bad ID or unexp ACK."); … … 369 353 370 354 case PPP_FSM_OPENED: 371 /* åèµ·åãããã´ãããç´ãã*/355 /* 再起動し、ネゴをやり直す。*/ 372 356 if (fsm->callbacks->down != NULL) 373 357 (*fsm->callbacks->down)(fsm); … … 384 368 385 369 /* 386 * fsm_rtermreq -- Terminate-Request ãåä¿¡ããã¨ãã®å¦ç370 * fsm_rtermreq -- Terminate-Request を受信したときの処理 387 371 */ 388 372 … … 412 396 413 397 /* 414 * fsm_rtermack -- Terminate-ACK ãåä¿¡ããã¨ãã®å¦ç398 * fsm_rtermack -- Terminate-ACK を受信したときの処理 415 399 */ 416 400 … … 421 405 case PPP_FSM_CLOSING: 422 406 untimeout((FP)fsm_timeout, fsm); 423 #if 0 /* æ¬æ¥ã®åä½ã¯ CLOSED ã«é·ç§»ããã*/407 #if 0 /* 本来の動作は CLOSED に遷移する。*/ 424 408 fsm->state = PPP_FSM_CLOSED; 425 409 #else /* of #if 0 */ … … 450 434 451 435 /* 452 * fsm_rcoderej -- Code-REJ ãåä¿¡ããã¨ãã®å¦ç436 * fsm_rcoderej -- Code-REJ を受信したときの処理 453 437 */ 454 438 … … 458 442 T_PPP_CP_HDR *hdr; 459 443 460 /* PPP ãªã³ã¯å¶å¾¡ (CP) ãããããçããã°ã¨ã©ã¼*/444 /* PPP リンク制御 (CP) ヘッダより短ければエラー */ 461 445 if (input->len < sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)) { 462 446 syslog(LOG_WARNING, "[PPP/FSM] bad len: %d in recv Code-REJ.", input->len); … … 473 457 474 458 /* 475 * fsm_timeout -- ã¿ã¤ã ã¢ã¦ãå¦ç459 * fsm_timeout -- タイムアウト処理 476 460 */ 477 461 … … 485 469 case PPP_FSM_STOPPING: 486 470 if (fsm->retrans <= 0) { 487 /* æ大åéåæ°ãè¶ 488 ããã¨ãã®å¦ç */ 489 #if 0 /* æ¬æ¥ã®åä½ã¯ CLOSED ã«é·ç§»ããã*/ 471 /* 最大再送回数を超えたときの処理 */ 472 #if 0 /* 本来の動作は CLOSED に遷移する。*/ 490 473 fsm->state = (fsm->state == PPP_FSM_CLOSING) ? PPP_FSM_CLOSED : PPP_FSM_STOPPED; 491 474 #else /* of #if 0 */ … … 496 479 } 497 480 else { 498 /* Terminate-Request ãéä¿¡ããã*/481 /* Terminate-Request を送信する。*/ 499 482 fsm_stermreq(fsm, ++ fsm->id); 500 483 } … … 504 487 case PPP_FSM_ACKSENT: 505 488 if (fsm->retrans <= 0) { 506 /* æ大åéåæ°ãè¶ 507 ããã¨ãã®å¦ç */ 489 /* 最大再送回数を超えたときの処理 */ 508 490 syslog(LOG_WARNING, "[PPP/FSM] retrans Conf-Req."); 509 491 fsm->state = PPP_FSM_STOPPED; … … 512 494 } 513 495 else { 514 /* Configure-Request ãåéããã*/496 /* Configure-Request を再送する。*/ 515 497 if (fsm->callbacks->retrans != NULL) 516 498 (*fsm->callbacks->retrans)(fsm); … … 529 511 530 512 /* 531 * fsm_stermreq -- Terminate-Request ãéä¿¡ããã513 * fsm_stermreq -- Terminate-Request を送信する。 532 514 */ 533 515 … … 546 528 547 529 /* 548 * fsm_init -- FSM ã¢ã¸ã¥ã¼ã«ã®åæå530 * fsm_init -- FSM モジュールの初期化 549 531 */ 550 532 … … 557 539 558 540 /* 559 * fsm_lowerup -- FSM ä¸ä½å±¤ãèµ·åããã541 * fsm_lowerup -- FSM 下位層を起動する。 560 542 */ 561 543 … … 584 566 585 567 /* 586 * fsm_lowerdown -- FSM ä¸ä½å±¤ãåæ¢ããã568 * fsm_lowerdown -- FSM 下位層を停止する。 587 569 */ 588 570 … … 627 609 628 610 /* 629 * fsm_open -- FSM ã®ãªã¼ãã³611 * fsm_open -- FSM のオープン 630 612 */ 631 613 … … 651 633 case PPP_FSM_CLOSING: 652 634 fsm->state = PPP_FSM_STOPPING; 653 /* nobreak; ä¸ã«è½ã¡ã*/635 /* nobreak; 下に落ちる */ 654 636 655 637 case PPP_FSM_STOPPED: … … 662 644 663 645 /* 664 * fsm_close -- ãªã³ã¯ã®åæãéå§ããã646 * fsm_close -- リンクの切断を開始する。 665 647 */ 666 648 … … 673 655 break; 674 656 675 #if 0 /* æ¬æ¥ã®åä½ã¯ CLOSED ã«é·ç§»ããã*/657 #if 0 /* 本来の動作は CLOSED に遷移する。*/ 676 658 case PPP_FSM_STOPPED: 677 659 fsm->state = PPP_FSM_CLOSED; … … 692 674 (*fsm->callbacks->down)(fsm); 693 675 694 /* ã¿ã¤ã ã¢ã¦ããè¨å®ããTerminate-Request ãéä¿¡ããã*/676 /* タイムアウトを設定し、Terminate-Request を送信する。*/ 695 677 fsm->retrans = MAX_PPP_TERMINATES; 696 678 fsm_stermreq(fsm, fsm->reqid = ++ fsm->id); … … 701 683 702 684 /* 703 * fsm_input -- å 704 ¥åãPPP ãªã³ã¯å¶å¾¡ (CP) ã®å¶å¾¡ã³ã¼ãã«ããé©å½ãªé¢æ°ãå¼åºã 685 * fsm_input -- 入力、PPP リンク制御 (CP) の制御コードにより適当な関数を呼出す 705 686 */ 706 687 … … 711 692 T_NET_BUF *output; 712 693 713 /* PPP ãªã³ã¯å¶å¾¡ (CP) ãããããçããã°ã¨ã©ã¼*/694 /* PPP リンク制御 (CP) ヘッダより短ければエラー */ 714 695 if (input->len < (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR))) { 715 696 syslog(LOG_WARNING, "[PPP/FSM] short hdr: %d.", input->len); … … 719 700 hdr = GET_PPP_CP_HDR(input); 720 701 721 /* ãããã®é·ãã¨å 722 ¥åãã¼ã¿ãµã¤ãºãä¸è´ããªããã°ã¨ã©ã¼ */ 702 /* ヘッダの長さと入力データサイズが一致しなければエラー */ 723 703 if (hdr->len != input->len - sizeof(T_PPP_HDR)) { 724 704 syslog(LOG_WARNING, "[PPP/FSM] bad len: %d.", hdr->len); … … 726 706 } 727 707 728 /* ç¶æ 729 ã INITIAL ã STARTING ãªãã¨ã©ã¼ */ 708 /* 状態が INITIAL か STARTING ならエラー */ 730 709 if (fsm->state == PPP_FSM_INITIAL || fsm->state == PPP_FSM_STARTING) { 731 710 syslog(LOG_WARNING, "[PPP/FSM] unexp state: %d in input.", fsm->state); … … 734 713 735 714 /* 736 * å¶å¾¡ã³ã¼ãã«ããé©å½ãªé¢æ°ãå¼åºã715 * 制御コードにより適当な関数を呼出す 737 716 */ 738 717 … … 775 754 776 755 /* 777 * fsm_protoreject -- Proto-REJ ãåä¿¡ããã¨ãã®å¦ç756 * fsm_protoreject -- Proto-REJ を受信したときの処理 778 757 */ 779 758 … … 785 764 untimeout((FP)fsm_timeout, fsm); 786 765 787 #if 0 /* æ¬æ¥ã®åä½ã¯ CLOSED ã«é·ç§»ããã*/788 /* ä¸ã«è½ã¡ã*/766 #if 0 /* 本来の動作は CLOSED に遷移する。*/ 767 /* 下に落ちる */ 789 768 #else /* of #if 0 */ 790 769 fsm->state = PPP_FSM_STOPPED; … … 805 784 case PPP_FSM_ACKSENT: 806 785 untimeout((FP)fsm_timeout, fsm); 807 /* ä¸ã«è½ã¡ã*/786 /* 下に落ちる */ 808 787 809 788 case PPP_FSM_STOPPED: … … 817 796 (*fsm->callbacks->down)(fsm); 818 797 819 /* ã¿ã¤ã ã¢ã¦ããè¨å®ããTerminate-Request ãéä¿¡ããã*/798 /* タイムアウトを設定し、Terminate-Request を送信する。*/ 820 799 fsm->retrans = MAX_PPP_TERMINATES; 821 800 fsm_stermreq(fsm, fsm->reqid = ++ fsm->id); -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_fsm.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 93 81 94 82 /* 95 * ç¶æ 96 管çæ§é ä½ 83 * 状態管理構造体 97 84 */ 98 85 … … 100 87 101 88 typedef 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 の再送回数 */ 112 98 } T_PPP_FSM; 113 99 … … 115 101 116 102 /* 117 * ã³ã¼ã«ããã¯é¢æ°æ§é ä½103 * コールバック関数構造体 118 104 */ 119 105 120 106 typedef 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 *); /* 構成情報の長さを返す。 */ 125 109 void (*addci) (T_PPP_FSM *, T_NET_BUF *); 126 /* èªæ§ææ 127 å ±ã追å ããã */ 110 /* 自構成情報を追加する。 */ 128 111 bool_t (*ackci) (T_PPP_FSM *, T_NET_BUF *); 129 /* ACK ãåä¿¡ããã¨ãã®å¦ç*/112 /* ACK を受信したときの処理 */ 130 113 int_t (*nakci) (T_PPP_FSM *, T_NET_BUF *); 131 /* NAK ãåä¿¡ããã¨ãã®å¦ç*/114 /* NAK を受信したときの処理 */ 132 115 int_t (*rejci) (T_PPP_FSM *, T_NET_BUF *); 133 /* REJ ãåä¿¡ããã¨ãã®å¦ç*/116 /* REJ を受信したときの処理 */ 134 117 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 を受信したときの処理 */ 143 125 bool_t (*extcode)(T_PPP_FSM *, uint8_t, uint8_t, T_NET_BUF *); 144 126 } T_PPP_FSM_CALLBACKS; 145 127 146 128 /* 147 * FSM ã®ç¶æ 148 129 * FSM の状態 149 130 */ 150 131 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 /* 接続、通信可能 */ 162 142 163 143 /* 164 * ãªã¼ãã³æã®åä½ã¢ã¼ã144 * オープン時の動作モード 165 145 */ 166 146 167 #define PPP_OPEN_PASSIVE false /* ååãªã¼ãã³*/168 #define PPP_OPEN_ACTIVE true /* è½åãªã¼ãã³*/147 #define PPP_OPEN_PASSIVE false /* 受動オープン */ 148 #define PPP_OPEN_ACTIVE true /* 能動オープン */ 169 149 170 150 /* 171 * åéãã¿ã¤ã ã¢ã¦ãã®æ¢å®å¤151 * 再送、タイムアウトの既定値 172 152 */ 173 153 174 154 #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 回 */ 182 162 183 163 /* 184 * é¢æ°164 * 関数 185 165 */ 186 166 … … 194 174 195 175 /* 196 * å¤æ°176 * 変数 197 177 */ 198 178 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_hdlc.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 90 78 91 79 /* 92 * RFC1171 (PPP) ã® HDLC é¨ã®å®ç¾©93 */ 94 95 /* 96 * å¤æ°80 * RFC1171 (PPP) の HDLC 部の定義 81 */ 82 83 /* 84 * 変数 97 85 */ 98 86 … … 100 88 101 89 /* 102 * é¢æ°90 * 関数 103 91 */ 104 92 … … 107 95 108 96 /* 109 * genfcstab.c ã«ããä½æãã FCS ã®ã«ãã¯ã¢ãã表 110 * RFC1171 åç 111 § 97 * genfcstab.c により作成した FCS のルックアップ表 98 * RFC1171 参照 112 99 */ 113 100 … … 180 167 181 168 /* 182 * ã¤ã³ã©ã¤ã³é¢æ°169 * インライン関数 183 170 */ 184 171 … … 188 175 189 176 /* 190 * HDLC_putoctet -- HDLC ãªã¯ãããåºå177 * HDLC_putoctet -- HDLC オクテット出力 191 178 */ 192 179 … … 212 199 213 200 /* 214 * HDLC_wirte -- HDLC åºå201 * HDLC_wirte -- HDLC 出力 215 202 */ 216 203 … … 241 228 if (lcp_local_ack_cfg.options & LCP_CFG_ACCOMP) { 242 229 NET_COUNT_PPP_HDLC(net_count_hdlc.out_octets, sizeof(flag_seq)); 243 /* ãã¬ã¼ã éå§ãã©ã°ã·ã¼ã±ã³ã¹ ãéä¿¡ãã*/230 /* フレーム開始フラグシーケンス を送信する */ 244 231 if ((error = serial_wri_dat(HDLC_PORTID, &flag_seq, sizeof(flag_seq))) < 0) { 245 232 goto err_ret; … … 250 237 251 238 NET_COUNT_PPP_HDLC(net_count_hdlc.out_octets, sizeof(flag_seq_ac)); 252 /* ãã¬ã¼ã éå§ãã©ã°ã·ã¼ã±ã³ã¹ãAddress 㨠Control ãéä¿¡ãã*/239 /* フレーム開始フラグシーケンス、Address と Control を送信する */ 253 240 if ((error = serial_wri_dat(HDLC_PORTID, flag_seq_ac, sizeof(flag_seq_ac))) < 0) { 254 241 goto err_ret; 255 242 } 256 /* Address 㨠Control ã® FCS ã®è¨ç®ã¯ HDLC_INIT_FCS_AC ã«å«ãã¦ãã*/243 /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */ 257 244 fcs = HDLC_INIT_FCS_AC; 258 245 } … … 261 248 262 249 NET_COUNT_PPP_HDLC(net_count_hdlc.out_octets, sizeof(flag_seq_ac)); 263 /* ãã¬ã¼ã éå§ãã©ã°ã·ã¼ã±ã³ã¹ãAddress 㨠Control ãéä¿¡ãã*/250 /* フレーム開始フラグシーケンス、Address と Control を送信する */ 264 251 if ((error = serial_wri_dat(HDLC_PORTID, flag_seq_ac, sizeof(flag_seq_ac))) < 0) { 265 252 goto err_ret; 266 253 } 267 /* Address 㨠Control ã® FCS ã®è¨ç®ã¯ HDLC_INIT_FCS_AC ã«å«ãã¦ãã*/254 /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */ 268 255 fcs = HDLC_INIT_FCS_AC; 269 256 … … 282 269 #endif /* of #ifdef LCP_CFG_PCOMP */ 283 270 284 /* ãã¼ã¿ãéä¿¡ãã*/271 /* データを送信する */ 285 272 while (len -- > 0) { 286 273 … … 291 278 } 292 279 293 /* FCS ãéä¿¡ãã*/280 /* FCS を送信する */ 294 281 fcs = ~fcs; 295 282 if ((error = HDLC_putoctet(fcs & 0xff)) != E_OK) … … 298 285 goto err_ret; 299 286 300 /* ãã¬ã¼ã çµäºãã©ã°ã·ã¼ã±ã³ã¹ãéä¿¡ãã*/287 /* フレーム終了フラグシーケンスを送信する */ 301 288 if ((error = serial_wri_dat(HDLC_PORTID, &flag_seq_ac[0], sizeof(char))) < 0) 302 289 goto err_ret; … … 310 297 311 298 /* 312 * HDLC_getoctet -- HDLC ãªã¯ãããå 313 ¥å 314 * 315 * æ»ãå¤ã true ãªããã©ã°ã·ã¼ã±ã³ã¹ 299 * HDLC_getoctet -- HDLC オクテット入力 300 * 301 * 戻り値が true ならフラグシーケンス 316 302 */ 317 303 … … 321 307 ER error; 322 308 323 /* 1ãªã¯ãããå 324 ¥åãã */ 309 /* 1オクテット入力する */ 325 310 if ((error = serial_rea_dat(HDLC_PORTID, octet, sizeof(uint8_t))) <= 0) { 326 311 return error; 327 312 } 328 313 329 /* å 330 ¥åãããªã¯ãããããã©ã°ã·ã¼ã±ã³ã¹ãªã true ãè¿ã */ 314 /* 入力したオクテットがフラグシーケンスなら true を返す */ 331 315 if (*octet == HDLC_FLAG_SEQ) 332 316 return true; 333 317 334 /* å 335 ¥åãããªã¯ããããã¨ã¹ã±ã¼ããªããããï¼ãªã¯ãããå 336 ¥åããã¹ã¯ã解é¤ãã */ 318 /* 入力したオクテットがエスケープなら、もう1オクテット入力しマスクを解除する */ 337 319 if (*octet == HDLC_CNTL_ESC) { 338 320 if ((error = serial_rea_dat(HDLC_PORTID, octet, sizeof(uint8_t))) <= 0) … … 346 328 347 329 /* 348 * HDLC_read -- HDLC å 349 ¥å 350 * 351 * HDLC ãã¬ã¼ã ãå 352 ¥åããã 330 * HDLC_read -- HDLC 入力 331 * 332 * HDLC フレームを入力する。 353 333 */ 354 334 … … 362 342 buf = nbuf->buf; 363 343 364 /* ãã¬ã¼ã éå§ãã©ã°ã·ã¼ã±ã³ã¹ã¾ã§å 365 ¥åãèªã¿é£ã°ã */ 344 /* フレーム開始フラグシーケンスまで入力を読み飛ばす */ 366 345 while ((error = HDLC_getoctet(&octet)) != true) { 367 346 … … 372 351 373 352 else if (octet == '\n') { 374 /* ã¢ãã å¶å¾¡ãå¼ã³åºãã*/353 /* モデム制御を呼び出す。*/ 375 354 modem_cntl(modem_getline(nbuf, size)); 376 /* ä¸åº¦ããã®é¢æ°ãçµäºããã*/355 /* 一度、この関数を終了する。*/ 377 356 nbuf->len = 0; 378 357 return E_OK; … … 383 362 } 384 363 385 /* ãã¬ã¼ã éå§ãã©ã°ã·ã¼ã±ã³ã¹ã®éã¯å 386 ¥åãèªã¿é£ã°ã */ 364 /* フレーム開始フラグシーケンスの間は入力を読み飛ばす */ 387 365 while (1) { 388 366 if ((error = HDLC_getoctet(&octet)) == E_OK) … … 394 372 NET_COUNT_PPP_HDLC(net_count_hdlc.in_packets, 1); 395 373 396 /* å 397 ¥åãããªã¯ããã㯠Address: All-Stations ã */ 374 /* 入力したオクテットは Address: All-Stations か */ 398 375 if (octet == HDLC_ADDR_ALL) { 399 376 400 /* 次ã¯Control: UI */377 /* 次は Control: UI */ 401 378 if ((error = HDLC_getoctet(&octet)) != E_OK || octet != HDLC_CNTL_UI) { 402 379 error = E_SYS; … … 405 382 if ((error = HDLC_getoctet(&octet)) != E_OK) 406 383 goto err_ret; 407 /* Address 㨠Control ã® FCS ã®è¨ç®ã¯ HDLC_INIT_FCS_AC ã«å«ãã¦ãã*/384 /* Address と Control の FCS の計算は HDLC_INIT_FCS_AC に含めている */ 408 385 fcs = HDLC_INIT_FCS_AC; 409 386 } … … 439 416 nbuf->len ++; 440 417 441 /* SUD + FCS ãå 442 ¥åãã */ 418 /* SUD + FCS を入力する */ 443 419 while ((error = HDLC_getoctet(&octet)) == E_OK) { 444 420 fcs = Next_FCS(fcs, octet); … … 465 441 goto err_ret; 466 442 467 /* FCS ããã§ãã¯ãã*/443 /* FCS をチェックする */ 468 444 if (fcs != HDLC_GOOD_FCS) { 469 445 error = E_SYS; … … 479 455 480 456 /* 481 * HDLC_dummy_read -- HDLC å 482 ¥å (空èªã¿) 483 * 484 * HDLC ãã¬ã¼ã ã空èªã¿ããã 457 * HDLC_dummy_read -- HDLC 入力 (空読み) 458 * 459 * HDLC フレームを空読みする。 485 460 */ 486 461 … … 491 466 ER error; 492 467 493 /* ãã¬ã¼ã éå§ãã©ã°ã·ã¼ã±ã³ã¹ã¾ã§å 494 ¥åãèªã¿é£ã°ã */ 468 /* フレーム開始フラグシーケンスまで入力を読み飛ばす */ 495 469 while ((error = HDLC_getoctet(&octet)) != true) { 496 470 if (error != E_OK) … … 498 472 } 499 473 500 /* ãã¬ã¼ã éå§ãã©ã°ã·ã¼ã±ã³ã¹ã®éã¯å 501 ¥åãèªã¿é£ã°ã */ 474 /* フレーム開始フラグシーケンスの間は入力を読み飛ばす */ 502 475 while (octet == HDLC_FLAG_SEQ) 503 476 if (HDLC_getoctet(&octet) != E_OK) 504 477 return; 505 478 506 /* å 507 ¥åãããªã¯ããã㯠Address: All-Stations ã */ 479 /* 入力したオクテットは Address: All-Stations か */ 508 480 if (octet == HDLC_ADDR_ALL) { 509 481 510 /* 次ã¯Control: UI */482 /* 次は Control: UI */ 511 483 if (HDLC_getoctet(&octet) != E_OK || octet != HDLC_CNTL_UI) 512 484 return; … … 532 504 533 505 /* 534 * HDLC_raw_getoctet -- HDLC ãªã¯ããã (Raw) å 535 ¥å 506 * HDLC_raw_getoctet -- HDLC オクテット (Raw) 入力 536 507 */ 537 508 … … 540 511 uint8_t ch; 541 512 542 /* 1ãªã¯ãããå 543 ¥åãã */ 513 /* 1オクテット入力する */ 544 514 if (serial_rea_dat(HDLC_PORTID, &ch, sizeof(ch)) <= 0) 545 515 return '\0'; … … 550 520 551 521 /* 552 * HDLC_raw_putoctet -- HDLC ãªã¯ããã (Raw) åºå522 * HDLC_raw_putoctet -- HDLC オクテット (Raw) 出力 553 523 */ 554 524 … … 556 526 { 557 527 NET_COUNT_PPP_HDLC(net_count_hdlc.out_octets, 1); 558 /* 1 ãªã¯ãããåºåãã*/528 /* 1オクテット出力する */ 559 529 serial_wri_dat(HDLC_PORTID, &ch, sizeof(ch)); 560 530 } -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_hdlc.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 72 60 73 61 /* 74 * RFC1171 (PPP) ã® HDLC é¨ã®å®ç¾©62 * RFC1171 (PPP) の HDLC 部の定義 75 63 */ 76 64 77 65 /* 78 * æ¢å®å¤66 * 既定値 79 67 */ 80 68 … … 90 78 91 79 /* 92 * é¢æ°80 * 関数 93 81 */ 94 82 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_ipcp.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 124 112 125 113 /* 126 * é¢æ°114 * 関数 127 115 */ 128 116 … … 136 124 137 125 /* 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 129 static void ipcp_resetci(T_PPP_FSM *fsm); /* 自構成情報をリセットする。 */ 130 static int_t ipcp_cilen (T_PPP_FSM *fsm); /* 構成情報の長さを返す。 */ 145 131 static void ipcp_addci (T_PPP_FSM *fsm, T_NET_BUF *output); 146 /* èªæ§ææ 147 å ±ã追å ããã */ 132 /* 自構成情報を追加する。 */ 148 133 static bool_t ipcp_ackci (T_PPP_FSM *fsm, T_NET_BUF *input); 149 /* ACK ãåä¿¡ããã¨ãã®å¦ç*/134 /* ACK を受信したときの処理 */ 150 135 static bool_t ipcp_nakci (T_PPP_FSM *fsm, T_NET_BUF *input); 151 /* NAK ãåä¿¡ããã¨ãã®å¦ç*/136 /* NAK を受信したときの処理 */ 152 137 static bool_t ipcp_rejci (T_PPP_FSM *fsm, T_NET_BUF *input); 153 /* REJ ãåä¿¡ããã¨ãã®å¦ç*/138 /* REJ を受信したときの処理 */ 154 139 static 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 /* 相手の構成情報を確認する。 */ 141 static void ipcp_up (T_PPP_FSM *fsm); /* リンク接続を確立する。 */ 142 static void ipcp_down (T_PPP_FSM *fsm); /* リンク接続を解放する。 */ 143 static void ipcp_finished(T_PPP_FSM *fsm); /* 下位層を終了する。 */ 144 145 /* 146 * 変数 147 */ 148 149 static T_IFNET ipcp_local_def_cfg = { /* 自構成情報の規定値 */ 167 150 NULL, 168 151 { 169 IPV4_ADDR_LOCAL, /* IPv4 ã¢ãã¬ã¹*/170 UINT_C(0), /* ãµãããããã¹ã¯*/152 IPV4_ADDR_LOCAL, /* IPv4 アドレス */ 153 UINT_C(0), /* サブネットマスク */ 171 154 }, 172 155 }; 173 156 174 static T_IFNET ipcp_remote_def_cfg = { /* ç¸æã®æ§ææ 175 å ±ã®è¦å®å¤ */ 157 static T_IFNET ipcp_remote_def_cfg = { /* 相手の構成情報の規定値 */ 176 158 NULL, 177 159 { 178 IPV4_ADDR_REMOTE, /* IPv4 ã¢ãã¬ã¹*/179 UINT_C(0), /* ãµãããããã¹ã¯*/160 IPV4_ADDR_REMOTE, /* IPv4 アドレス */ 161 UINT_C(0), /* サブネットマスク */ 180 162 } 181 163 }; 182 164 183 static T_IFNET ipcp_local_neg_cfg; /* ãã´ä¸ã®èªæ§ææ 184 å ± */ 185 186 static T_IFNET ipcp_remote_neg_cfg; /* ãã´ä¸ã®ç¸æã®æ§ææ 187 å ± */ 188 189 /* 190 * å 191 ¨åå¤æ° 165 static T_IFNET ipcp_local_neg_cfg; /* ネゴ中の自構成情報 */ 166 167 static T_IFNET ipcp_remote_neg_cfg; /* ネゴ中の相手の構成情報 */ 168 169 /* 170 * 全域変数 192 171 */ 193 172 194 173 T_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 を受信したときの処理 */ 212 187 }; 213 188 214 189 T_PPP_FSM ipcp_fsm = { 215 &ipcp_callbacks, /* ã³ã¼ã«ããã¯é¢æ°*/216 PPP_IPCP, /* ãããã³ã«*/190 &ipcp_callbacks, /* コールバック関数 */ 191 PPP_IPCP, /* プロトコル */ 217 192 }; 218 193 219 194 T_PPP_PROTENT ipcp_protent = { 220 195 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 入力 */ 232 204 }; 233 205 234 T_IFNET ipcp_local_ack_cfg; /* ç¸æã«è¨±å¯ãããã®èªæ§ææ 235 å ± */ 236 T_IFNET ipcp_remote_ack_cfg; /* ç¸æã«è¨±å¯ããæ§ææ 237 å ± */ 238 239 /* 240 * ppp_get_ifnet -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹æ§é ä½ãè¿ãã 206 T_IFNET ipcp_local_ack_cfg; /* 相手に許可されたの自構成情報 */ 207 T_IFNET ipcp_remote_ack_cfg; /* 相手に許可した構成情報 */ 208 209 /* 210 * ppp_get_ifnet -- ネットワークインタフェース構造体を返す。 241 211 */ 242 212 … … 248 218 249 219 /* 250 * wait_ipcp -- IP æ¥ç¶å®äºã¾ã§å¾ 251 ã¤ã 252 * 253 * æ»ãå¤: æ¥ç¶ã«å¤±æããã E_OBJ ãè¿ãã 220 * wait_ipcp -- IP 接続完了まで待つ。 221 * 222 * 戻り値: 接続に失敗したら E_OBJ を返す。 254 223 */ 255 224 … … 265 234 #ifdef PPP_CFG_MODEM 266 235 267 /* ã¢ãã ã®æ¥ç¶å®äºã¾ã§å¾ 268 ã¤ã*/ 236 /* モデムの接続完了まで待つ。*/ 269 237 if ((error = wait_modem()) != E_OK) 270 238 return error; … … 273 241 274 242 /* 275 * ååãªã¼ãã³ããç¸æããã®æ¥ç¶å¾ 276 ã¡ãªã LCP ãä¸åº¦ã¯ãã¼ãºãã 277 * è½åãªã¼ãã³ç¶æ 278 ã§ãåãªã¼ãã³ããã 243 * 受動オープンし、相手からの接続待ちなら LCP を一度クローズし、 244 * 能動オープン状態で、再オープンする。 279 245 */ 280 246 lcp_close(); … … 286 252 287 253 if (ipcp_fsm.state != PPP_FSM_OPENED) { 288 /* IP æ¥ç¶å®äºã¾ã§å¾ 289 ã¤ã*/ 254 /* IP 接続完了まで待つ。*/ 290 255 wai_sem(SEM_IPCP_READY); 291 256 if (ipcp_fsm.state != PPP_FSM_OPENED) … … 297 262 298 263 /* 299 * ipcp_init -- IPCP ã¢ã¸ã¥ã¼ã«ã®åæå264 * ipcp_init -- IPCP モジュールの初期化 300 265 */ 301 266 … … 307 272 308 273 /* 309 * ipcp_input -- IPCP å 310 ¥å 274 * ipcp_input -- IPCP 入力 311 275 */ 312 276 … … 320 284 321 285 /* 322 * ipcp_resetci -- IPCPã®æ§ææ 323 å ±ããªã»ããããã 286 * ipcp_resetci -- IPCPの構成情報をリセットする。 324 287 */ 325 288 … … 327 290 ipcp_resetci (T_PPP_FSM *fsm) 328 291 { 329 /* èªæ§ææ 330 å ±ã®åæè¨å® */ 292 /* 自構成情報の初期設定 */ 331 293 ipcp_local_neg_cfg = ipcp_local_def_cfg; 332 294 memset((void*)&ipcp_local_ack_cfg, 0, sizeof(T_IFNET)); 333 295 334 /* ç¸æã®æ§ææ 335 å ±ã®åæè¨å® */ 296 /* 相手の構成情報の初期設定 */ 336 297 ipcp_remote_neg_cfg = ipcp_remote_def_cfg; 337 298 memset((void*)&ipcp_remote_ack_cfg, 0, sizeof(T_IFNET)); … … 339 300 340 301 /* 341 * ipcp_cilen -- æ§ææ 342 å ±ã®é·ããè¿ãã 302 * ipcp_cilen -- 構成情報の長さを返す。 343 303 */ 344 304 … … 348 308 int_t cilen = 0; 349 309 350 cilen += sizeof(T_PPP_CI_HDR) + sizeof(uint32_t); /* IPv4 ã¢ãã¬ã¹*/310 cilen += sizeof(T_PPP_CI_HDR) + sizeof(uint32_t); /* IPv4 アドレス */ 351 311 352 312 return cilen; … … 354 314 355 315 /* 356 * ipcp_addci -- IPCPã®æ§ææ 357 å ±ã追å ããã 316 * ipcp_addci -- IPCPの構成情報を追加する。 358 317 */ 359 318 … … 365 324 buf = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR); 366 325 367 /* IPv4 ã¢ãã¬ã¹ãªãã·ã§ã³ã追å ããã*/326 /* IPv4 アドレスオプションを追加する。 */ 368 327 *buf ++ = IPCP_CIT_ADDR; 369 328 *buf ++ = sizeof(T_PPP_CI_HDR) + sizeof(uint32_t); … … 373 332 374 333 /* 375 * ipcp_ackci -- ACK ãåä¿¡ããã¨ãã®å¦ç376 * 377 * æ»ãå¤: true ACK ã¯æ£å¸¸378 * false ACK ã¯ç°å¸¸334 * ipcp_ackci -- ACK を受信したときの処理 335 * 336 * 戻り値: true ACK は正常 337 * false ACK は異常 379 338 */ 380 339 … … 389 348 390 349 /* 391 * æ§ææ 392 å ±ã¯éä¿¡ããé ã«å®å 393 ¨ã«ä¸è´ããªããã°ãªããªãã 394 * å¾ã£ã¦ãipcp_addci ã§ä½æããé ã«è§£æããã 350 * 構成情報は送信した順に完全に一致しなければならない。 351 * 従って、ipcp_addci で作成した順に解析する。 395 352 */ 396 353 397 /* ADDR ãªãã·ã§ã³ã解æããã*/354 /* ADDR オプションを解析する。 */ 398 355 if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) || 399 356 *buf ++ != IPCP_CIT_ADDR || … … 408 365 409 366 /* 410 * ipcp_nakci -- NAK ãåä¿¡ããã¨ãã®å¦ç411 * 412 * æ»ãå¤: 1 NAK ã¯æ£å¸¸413 * 0 NAK ã¯ç°å¸¸367 * ipcp_nakci -- NAK を受信したときの処理 368 * 369 * 戻り値: 1 NAK は正常 370 * 0 NAK は異常 414 371 */ 415 372 … … 427 384 new_cfg = ipcp_local_neg_cfg; 428 385 429 /* ADDR ãªãã·ã§ã³ã解æããã*/386 /* ADDR オプションを解析する。 */ 430 387 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) && 431 388 * buf == IPCP_CIT_ADDR && … … 437 394 } 438 395 439 /* å¾ã¯ç¡è¦ããã*/396 /* 後は無視する。*/ 440 397 while (len > sizeof(T_PPP_CI_HDR)) { 441 398 cilen = *(buf + 1); … … 446 403 } 447 404 448 /* é·ãã 0 ã§ãªããã°ã¨ã©ã¼*/405 /* 長さが 0 でなければエラー */ 449 406 if (len != 0) 450 407 return 0; 451 408 452 /* æ°ãããªãã·ã§ã³ãè¨å®ããã*/409 /* 新しいオプションを設定する。*/ 453 410 if (fsm->state != PPP_FSM_OPENED) 454 411 ipcp_local_neg_cfg = new_cfg; … … 458 415 459 416 /* 460 * ipcp_rejci -- REJ ãåä¿¡ããã¨ãã®å¦ç461 * 462 * æ»ãå¤: 1 REJ ã¯æ£å¸¸463 * 0 REJ ã¯ç°å¸¸417 * ipcp_rejci -- REJ を受信したときの処理 418 * 419 * 戻り値: 1 REJ は正常 420 * 0 REJ は異常 464 421 */ 465 422 … … 476 433 new_cfg = ipcp_local_neg_cfg; 477 434 478 /* ADDR ãªãã·ã§ã³ã解æããã*/435 /* ADDR オプションを解析する。 */ 479 436 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) && 480 437 * buf == IPCP_CIT_ADDR && … … 485 442 } 486 443 487 /* é·ãã 0 ã§ãªããã°ã¨ã©ã¼*/444 /* 長さが 0 でなければエラー */ 488 445 if (len != 0) 489 446 return 0; 490 447 491 /* æ°ãããªãã·ã§ã³ãè¨å®ããã*/448 /* 新しいオプションを設定する。*/ 492 449 if (fsm->state != PPP_FSM_OPENED) 493 450 ipcp_local_neg_cfg = new_cfg; … … 497 454 498 455 /* 499 * ipcp_reqci -- ç¸æã®æ§ææ 500 å ±ã解æããã 456 * ipcp_reqci -- 相手の構成情報を解析する。 501 457 */ 502 458 … … 509 465 510 466 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 に上書きする。 */ 513 469 len = input->len - (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)); 514 470 np = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR); 515 final = PPP_CONFACK; /* æçµçã«éä¿¡ããã³ã¼ã*/471 final = PPP_CONFACK; /* 最終的に送信するコード */ 516 472 while (len > 0) { 517 473 code = PPP_CONFACK; 518 cp = ap; /* cp: ç¾å¨å¦çä¸ã®CI */474 cp = ap; /* cp: 現在処理中の CI */ 519 475 520 476 if (len < sizeof(T_PPP_CI_HDR)) { 521 477 522 /* æ®ãã CI ãããããçã*/478 /* 残りが CI ヘッダより短い */ 523 479 syslog(LOG_NOTICE, "[PPP/IPCP] bad CI len: %d.", len); 524 cilen = len; /* ãã¼ã¿é·ãç°å¸¸ã®å ´åã®å¦ç½®*/525 len = 0; /* ã«ã¼ãããæããã*/480 cilen = len; /* データ長が異常の場合の処置 */ 481 len = 0; /* ループから抜ける。 */ 526 482 code = PPP_CONFREJ; 527 483 goto endswitch; 528 484 } 529 485 530 type = *ap ++; /* CI ã®å*/531 cilen = *ap ++; /* CI ã®é·ã*/486 type = *ap ++; /* CI の型 */ 487 cilen = *ap ++; /* CI の長さ */ 532 488 if (len < cilen) { 533 489 534 /* æ®ãã CI é·ããçã*/490 /* 残りが CI 長より短い */ 535 491 syslog(LOG_NOTICE, "[PPP/IPCP] bad CI len: %d.", cilen); 536 cilen = len; /* ãã¼ã¿é·ãç°å¸¸ã®å ´åã®å¦ç½®*/537 len = 0; /* ã«ã¼ãããæããã*/492 cilen = len; /* データ長が異常の場合の処置 */ 493 len = 0; /* ループから抜ける。 */ 538 494 code = PPP_CONFREJ; 539 495 goto endswitch; … … 541 497 len -= sizeof(T_PPP_CI_HDR); 542 498 543 /* CI ã®åã«ããåå²ããã*/499 /* CI の型により分岐する。*/ 544 500 switch (type) { 545 501 546 case IPCP_CIT_ADDR: /* IPv4 ã¢ãã¬ã¹*/547 548 /* CI é·ããããã + 4 ãªã¯ãããã§ãªããã°ã¨ã©ã¼*/502 case IPCP_CIT_ADDR: /* IPv4 アドレス */ 503 504 /* CI 長が、ヘッダ + 4 オクテットでなければエラー */ 549 505 if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)) 550 506 code = PPP_CONFREJ; … … 559 515 code = PPP_CONFNAK; 560 516 } 561 #if 1 /* è¦ç¢ºèª*/517 #if 1 /* 要確認 */ 562 518 else if (addr == 0 && ipcp_remote_neg_cfg.in4_ifaddr.addr == 0) 563 519 #else … … 578 534 579 535 if (code == PPP_CONFNAK) { 580 /* CI ã®åã Magic Number ã®å ´åãé¤ãã¦ãNAK ã®åæ°ã */ 581 /* æå¤§å¤ MAX_PPP_FAILURES ãè¶ 582 ãããæå¦ããã */ 536 /* CI の型が Magic Number の場合を除いて、NAK の回数が */ 537 /* 最大値 MAX_PPP_FAILURES を超えたら拒否する。 */ 583 538 if (fsm->failures >= MAX_PPP_FAILURES) 584 539 code = PPP_CONFREJ; … … 587 542 } 588 543 589 /* ãã® CI ãæå¦ãã*/544 /* この CI を拒否する */ 590 545 if (code == PPP_CONFREJ) { 591 if (rp < cp) /* åã«è©°ããã*/546 if (rp < cp) /* 前に詰める。*/ 592 547 memcpy(rp, cp, cilen); 593 548 rp += cilen; … … 599 554 } 600 555 601 /* æçµçãªé·ãã調æ´ããã*/556 /* 最終的な長さを調整する。*/ 602 557 switch (final) { 603 558 case PPP_CONFNAK: … … 617 572 618 573 /* 619 * ipcp_up -- ãªã³ã¯æ¥ç¶ã確ç«ããã574 * ipcp_up -- リンク接続を確立する。 620 575 */ 621 576 … … 623 578 ipcp_up (T_PPP_FSM *fsm) 624 579 { 625 /* èªæ§ææ 626 å ±ã®åæè¨å® */ 580 /* 自構成情報の初期設定 */ 627 581 ipcp_local_ack_cfg = ipcp_local_neg_cfg; 628 582 629 583 /* 630 * ãµãããããã¹ã¯ã¨631 * ãã¼ã«ã«ã»ããã¼ããã£ã¹ã IPv4 ã¢ãã¬ã¹ãè¨å®ããã584 * サブネットマスクと 585 * ローカル・ブロードキャスト IPv4 アドレスを設定する。 632 586 */ 633 587 ipcp_local_ack_cfg.in4_ifaddr.mask = MAKE_IPV4_LOCAL_MASK(ipcp_local_neg_cfg.in4_ifaddr.addr); 634 588 635 /* ç¸æã®æ§ææ 636 å ±ã®åæè¨å® */ 589 /* 相手の構成情報の初期設定 */ 637 590 ipcp_remote_ack_cfg = ipcp_remote_neg_cfg; 638 591 639 592 /* 640 * ãµãããããã¹ã¯ã¨641 * ãã¼ã«ã«ã»ããã¼ããã£ã¹ã IPv4 ã¢ãã¬ã¹ãè¨å®ããã593 * サブネットマスクと 594 * ローカル・ブロードキャスト IPv4 アドレスを設定する。 642 595 */ 643 596 ipcp_remote_ack_cfg.in4_ifaddr.mask = MAKE_IPV4_LOCAL_MASK(ipcp_remote_neg_cfg.in4_ifaddr.addr); … … 651 604 652 605 /* 653 * ipcp_down -- ãªã³ã¯æ¥ç¶ã解æ¾ããã606 * ipcp_down -- リンク接続を解放する。 654 607 */ 655 608 … … 662 615 663 616 /* 664 * ipcp_finished -- ä¸ä½å±¤ãçµäºããã617 * ipcp_finished -- 下位層を終了する。 665 618 */ 666 619 … … 671 624 672 625 /* 673 * ipcp_protrej -- Proto-REJ ãåä¿¡ããã¨ãã®å¦ç626 * ipcp_protrej -- Proto-REJ を受信したときの処理 674 627 */ 675 628 … … 681 634 682 635 /* 683 * ipcp_lowerup -- IPCP ä¸ä½å±¤ãèµ·åããã636 * ipcp_lowerup -- IPCP 下位層を起動する。 684 637 */ 685 638 … … 691 644 692 645 /* 693 * ipcp_lowerdown -- IPCP ä¸ä½å±¤ãåæ¢ããã646 * ipcp_lowerdown -- IPCP 下位層を停止する。 694 647 */ 695 648 … … 701 654 702 655 /* 703 * ipcp_open -- IPCP ã®ãªã¼ãã³656 * ipcp_open -- IPCP のオープン 704 657 */ 705 658 … … 711 664 712 665 /* 713 * ipcp_close -- IPCP ã®ã¯ãã¼ãº666 * ipcp_close -- IPCP のクローズ 714 667 */ 715 668 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_ipcp.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 93 81 94 82 /* 95 * IPCP ã®æ§ææ 96 å ± (CI) 83 * IPCP の構成情報 (CI) 97 84 */ 98 85 99 86 /* 100 * CI ã®å87 * CI の型 101 88 */ 102 89 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 アドレス */ 106 93 107 94 /* 108 * åæ¹åç 109 § 95 * 前方参照 110 96 */ 111 97 … … 119 105 120 106 /* 121 * å¤æ°107 * 変数 122 108 */ 123 109 … … 134 120 135 121 /* 136 * é¢æ°122 * 関数 137 123 */ 138 124 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_ipv6cp.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 124 112 125 113 /* 126 * é¢æ°114 * 関数 127 115 */ 128 116 … … 136 124 137 125 /* 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 129 static void ipv6cp_resetci(T_PPP_FSM *fsm); /* 自構成情報をリセットする。 */ 130 static int_t ipv6cp_cilen (T_PPP_FSM *fsm); /* 構成情報の長さを返す。 */ 145 131 static void ipv6cp_addci (T_PPP_FSM *fsm, T_NET_BUF *output); 146 /* èªæ§ææ 147 å ±ã追å ããã */ 132 /* 自構成情報を追加する。 */ 148 133 static bool_t ipv6cp_ackci (T_PPP_FSM *fsm, T_NET_BUF *input); 149 /* ACK ãåä¿¡ããã¨ãã®å¦ç*/134 /* ACK を受信したときの処理 */ 150 135 static bool_t ipv6cp_nakci (T_PPP_FSM *fsm, T_NET_BUF *input); 151 /* NAK ãåä¿¡ããã¨ãã®å¦ç*/136 /* NAK を受信したときの処理 */ 152 137 static bool_t ipv6cp_rejci (T_PPP_FSM *fsm, T_NET_BUF *input); 153 /* REJ ãåä¿¡ããã¨ãã®å¦ç*/138 /* REJ を受信したときの処理 */ 154 139 static 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 /* 相手の構成情報を確認する。 */ 141 static void ipv6cp_up (T_PPP_FSM *fsm); /* リンク接続を確立する。 */ 142 static void ipv6cp_down (T_PPP_FSM *fsm); /* リンク接続を解放する。 */ 143 static void ipv6cp_finished(T_PPP_FSM *fsm); /* 下位層を終了する。 */ 144 145 /* 146 * 変数 147 */ 148 149 static T_IFNET ipv6cp_local_def_cfg = { /* 自構成情報の規定値 */ 150 NULL, /* ネットワークインタフェースのソフトウェア情報 */ 151 {}, /* IPv6 アドレス情報 */ 152 {}, /* マルチキャスト IPv6 アドレス */ 153 0, /* フラグ */ 173 154 }; 174 155 175 static T_IFNET ipv6cp_remote_def_cfg = { /* ç¸æã®æ§ææ 176 å ±ã®è¦å®å¤ */ 177 NULL, /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã½ããã¦ã§ã¢æ 178 å ± */ 179 {}, /* IPv6 ã¢ãã¬ã¹æ 180 å ± */ 181 {}, /* ãã«ããã£ã¹ã IPv6 ã¢ãã¬ã¹ */ 182 0, /* ãã©ã° */ 156 static T_IFNET ipv6cp_remote_def_cfg = { /* 相手の構成情報の規定値 */ 157 NULL, /* ネットワークインタフェースのソフトウェア情報 */ 158 {}, /* IPv6 アドレス情報 */ 159 {}, /* マルチキャスト IPv6 アドレス */ 160 0, /* フラグ */ 183 161 }; 184 162 185 static T_IFNET ipv6cp_local_neg_cfg; /* ãã´ä¸ã®èªæ§ææ 186 å ± */ 187 188 static T_IFNET ipv6cp_remote_neg_cfg; /* ãã´ä¸ã®ç¸æã®æ§ææ 189 å ± */ 190 191 /* 192 * å 193 ¨åå¤æ° 163 static T_IFNET ipv6cp_local_neg_cfg; /* ネゴ中の自構成情報 */ 164 165 static T_IFNET ipv6cp_remote_neg_cfg; /* ネゴ中の相手の構成情報 */ 166 167 /* 168 * 全域変数 194 169 */ 195 170 196 171 T_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 を受信したときの処理 */ 214 185 }; 215 186 216 187 T_PPP_FSM ipv6cp_fsm = { 217 &ipv6cp_callbacks, /* ã³ã¼ã«ããã¯é¢æ°*/218 PPP_IPV6CP, /* ãããã³ã«*/188 &ipv6cp_callbacks, /* コールバック関数 */ 189 PPP_IPV6CP, /* プロトコル */ 219 190 }; 220 191 221 192 T_PPP_PROTENT ipv6cp_protent = { 222 193 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 入力 */ 234 202 }; 235 203 236 T_IFNET ipv6cp_local_ack_cfg; /* ç¸æã«è¨±å¯ãããã®èªæ§ææ 237 å ± */ 238 T_IFNET ipv6cp_remote_ack_cfg; /* ç¸æã«è¨±å¯ããæ§ææ 239 å ± */ 240 241 /* 242 * ppp_get_ifnet -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹æ§é ä½ãè¿ãã 204 T_IFNET ipv6cp_local_ack_cfg; /* 相手に許可されたの自構成情報 */ 205 T_IFNET ipv6cp_remote_ack_cfg; /* 相手に許可した構成情報 */ 206 207 /* 208 * ppp_get_ifnet -- ネットワークインタフェース構造体を返す。 243 209 */ 244 210 … … 250 216 251 217 /* 252 * wait_ipv6cp -- IP æ¥ç¶å®äºã¾ã§å¾ 253 ã¤ã 254 * 255 * æ»ãå¤: æ¥ç¶ã«å¤±æããã E_OBJ ãè¿ãã 218 * wait_ipv6cp -- IP 接続完了まで待つ。 219 * 220 * 戻り値: 接続に失敗したら E_OBJ を返す。 256 221 */ 257 222 … … 267 232 #ifdef PPP_CFG_MODEM 268 233 269 /* ã¢ãã ã®æ¥ç¶å®äºã¾ã§å¾ 270 ã¤ã*/ 234 /* モデムの接続完了まで待つ。*/ 271 235 if ((error = wait_modem()) != E_OK) 272 236 return error; … … 275 239 276 240 /* 277 * ååãªã¼ãã³ããç¸æããã®æ¥ç¶å¾ 278 ã¡ãªã LCP ãä¸åº¦ã¯ãã¼ãºãã 279 * è½åãªã¼ãã³ç¶æ 280 ã§ãåãªã¼ãã³ããã 241 * 受動オープンし、相手からの接続待ちなら LCP を一度クローズし、 242 * 能動オープン状態で、再オープンする。 281 243 */ 282 244 lcp_close(); … … 288 250 289 251 if (ipv6cp_fsm.state != PPP_FSM_OPENED) { 290 /* IP æ¥ç¶å®äºã¾ã§å¾ 291 ã¤ã*/ 252 /* IP 接続完了まで待つ。*/ 292 253 wai_sem(SEM_IPV6CP_READY); 293 254 if (ipv6cp_fsm.state != PPP_FSM_OPENED) … … 299 260 300 261 /* 301 * ipv6cp_init -- IPV6CP ã¢ã¸ã¥ã¼ã«ã®åæå262 * ipv6cp_init -- IPV6CP モジュールの初期化 302 263 */ 303 264 … … 309 270 310 271 /* 311 * ipv6cp_input -- IPV6CP å 312 ¥å 272 * ipv6cp_input -- IPV6CP 入力 313 273 */ 314 274 … … 322 282 323 283 /* 324 * ipv6cp_resetci -- IPV6CPã®æ§ææ 325 å ±ããªã»ããããã 284 * ipv6cp_resetci -- IPV6CPの構成情報をリセットする。 326 285 */ 327 286 … … 329 288 ipv6cp_resetci (T_PPP_FSM *fsm) 330 289 { 331 /* èªæ§ææ 332 å ±ã®åæè¨å® */ 290 /* 自構成情報の初期設定 */ 333 291 ipv6cp_local_neg_cfg = ipv6cp_local_def_cfg; 334 292 memset((void*)&ipv6cp_local_ack_cfg, 0, sizeof(T_IFNET)); 335 293 336 /* ç¸æã®æ§ææ 337 å ±ã®åæè¨å® */ 294 /* 相手の構成情報の初期設定 */ 338 295 ipv6cp_remote_neg_cfg = ipv6cp_remote_def_cfg; 339 296 memset((void*)&ipv6cp_remote_ack_cfg, 0, sizeof(T_IFNET)); … … 341 298 342 299 /* 343 * ipv6cp_cilen -- æ§ææ 344 å ±ã®é·ããè¿ãã 300 * ipv6cp_cilen -- 構成情報の長さを返す。 345 301 */ 346 302 … … 350 306 int_t cilen = 0; 351 307 352 cilen += sizeof(T_PPP_CI_HDR) + sizeof(uint32_t); /* IPv6 ã¢ãã¬ã¹*/308 cilen += sizeof(T_PPP_CI_HDR) + sizeof(uint32_t); /* IPv6 アドレス */ 353 309 354 310 return cilen; … … 356 312 357 313 /* 358 * ipv6cp_addci -- IPV6CPã®æ§ææ 359 å ±ã追å ããã 314 * ipv6cp_addci -- IPV6CPの構成情報を追加する。 360 315 */ 361 316 … … 367 322 buf = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR); 368 323 369 /* IPv6 ã¢ãã¬ã¹ãªãã·ã§ã³ã追å ããã*/324 /* IPv6 アドレスオプションを追加する。 */ 370 325 *buf ++ = IPV6CP_CIT_ADDR; 371 326 *buf ++ = sizeof(T_PPP_CI_HDR) + sizeof(uint32_t); … … 375 330 376 331 /* 377 * ipv6cp_ackci -- ACK ãåä¿¡ããã¨ãã®å¦ç378 * 379 * æ»ãå¤: true ACK ã¯æ£å¸¸380 * false ACK ã¯ç°å¸¸332 * ipv6cp_ackci -- ACK を受信したときの処理 333 * 334 * 戻り値: true ACK は正常 335 * false ACK は異常 381 336 */ 382 337 … … 391 346 392 347 /* 393 * æ§ææ 394 å ±ã¯éä¿¡ããé ã«å®å 395 ¨ã«ä¸è´ããªããã°ãªããªãã 396 * å¾ã£ã¦ãipv6cp_addci ã§ä½æããé ã«è§£æããã 348 * 構成情報は送信した順に完全に一致しなければならない。 349 * 従って、ipv6cp_addci で作成した順に解析する。 397 350 */ 398 351 399 /* ADDR ãªãã·ã§ã³ã解æããã*/352 /* ADDR オプションを解析する。 */ 400 353 if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) || 401 354 *buf ++ != IPV6CP_CIT_ADDR || … … 410 363 411 364 /* 412 * ipv6cp_nakci -- NAK ãåä¿¡ããã¨ãã®å¦ç413 * 414 * æ»ãå¤: 1 NAK ã¯æ£å¸¸415 * 0 NAK ã¯ç°å¸¸365 * ipv6cp_nakci -- NAK を受信したときの処理 366 * 367 * 戻り値: 1 NAK は正常 368 * 0 NAK は異常 416 369 */ 417 370 … … 429 382 new_cfg = ipv6cp_local_neg_cfg; 430 383 431 /* ADDR ãªãã·ã§ã³ã解æããã*/384 /* ADDR オプションを解析する。 */ 432 385 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(addr) && 433 386 * buf == IPV6CP_CIT_ADDR && … … 438 391 } 439 392 440 /* å¾ã¯ç¡è¦ããã*/393 /* 後は無視する。*/ 441 394 while (len > sizeof(T_PPP_CI_HDR)) { 442 395 cilen = *(buf + 1); … … 447 400 } 448 401 449 /* é·ãã 0 ã§ãªããã°ã¨ã©ã¼*/402 /* 長さが 0 でなければエラー */ 450 403 if (len != 0) 451 404 return 0; 452 405 453 /* æ°ãããªãã·ã§ã³ãè¨å®ããã*/406 /* 新しいオプションを設定する。*/ 454 407 if (fsm->state != PPP_FSM_OPENED) 455 408 ipv6cp_local_neg_cfg = new_cfg; … … 459 412 460 413 /* 461 * ipv6cp_rejci -- REJ ãåä¿¡ããã¨ãã®å¦ç462 * 463 * æ»ãå¤: 1 REJ ã¯æ£å¸¸464 * 0 REJ ã¯ç°å¸¸414 * ipv6cp_rejci -- REJ を受信したときの処理 415 * 416 * 戻り値: 1 REJ は正常 417 * 0 REJ は異常 465 418 */ 466 419 … … 477 430 new_cfg = ipv6cp_local_neg_cfg; 478 431 479 /* ADDR ãªãã·ã§ã³ã解æããã*/432 /* ADDR オプションを解析する。 */ 480 433 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(new_cfg.in6_ifaddrs[0].addr) && 481 434 * buf == IPV6CP_CIT_ADDR && … … 487 440 } 488 441 489 /* é·ãã 0 ã§ãªããã°ã¨ã©ã¼*/442 /* 長さが 0 でなければエラー */ 490 443 if (len != 0) 491 444 return 0; 492 445 493 /* æ°ãããªãã·ã§ã³ãè¨å®ããã*/446 /* 新しいオプションを設定する。*/ 494 447 if (fsm->state != PPP_FSM_OPENED) 495 448 ipv6cp_local_neg_cfg = new_cfg; … … 499 452 500 453 /* 501 * ipv6cp_reqci -- ç¸æã®æ§ææ 502 å ±ã解æããã 454 * ipv6cp_reqci -- 相手の構成情報を解析する。 503 455 */ 504 456 … … 511 463 512 464 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 に上書きする。 */ 515 467 len = input->len - (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)); 516 468 np = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR); 517 final = PPP_CONFACK; /* æçµçã«éä¿¡ããã³ã¼ã*/469 final = PPP_CONFACK; /* 最終的に送信するコード */ 518 470 while (len > 0) { 519 471 code = PPP_CONFACK; 520 cp = ap; /* cp: ç¾å¨å¦çä¸ã®CI */472 cp = ap; /* cp: 現在処理中の CI */ 521 473 522 474 if (len < sizeof(T_PPP_CI_HDR)) { 523 475 524 /* æ®ãã CI ãããããçã*/476 /* 残りが CI ヘッダより短い */ 525 477 syslog(LOG_NOTICE, "[PPP/IPV6CP] bad CI len: %d.", len); 526 cilen = len; /* ãã¼ã¿é·ãç°å¸¸ã®å ´åã®å¦ç½®*/527 len = 0; /* ã«ã¼ãããæããã*/478 cilen = len; /* データ長が異常の場合の処置 */ 479 len = 0; /* ループから抜ける。 */ 528 480 code = PPP_CONFREJ; 529 481 goto endswitch; 530 482 } 531 483 532 type = *ap ++; /* CI ã®å*/533 cilen = *ap ++; /* CI ã®é·ã*/484 type = *ap ++; /* CI の型 */ 485 cilen = *ap ++; /* CI の長さ */ 534 486 if (len < cilen) { 535 487 536 /* æ®ãã CI é·ããçã*/488 /* 残りが CI 長より短い */ 537 489 syslog(LOG_NOTICE, "[PPP/IPV6CP] bad CI len: %d.", cilen); 538 cilen = len; /* ãã¼ã¿é·ãç°å¸¸ã®å ´åã®å¦ç½®*/539 len = 0; /* ã«ã¼ãããæããã*/490 cilen = len; /* データ長が異常の場合の処置 */ 491 len = 0; /* ループから抜ける。 */ 540 492 code = PPP_CONFREJ; 541 493 goto endswitch; … … 543 495 len -= sizeof(T_PPP_CI_HDR); 544 496 545 /* CI ã®åã«ããåå²ããã*/497 /* CI の型により分岐する。*/ 546 498 switch (type) { 547 499 548 case IPV6CP_CIT_ADDR: /* IPv6 ã¢ãã¬ã¹*/549 550 /* CI é·ããããã + 4 ãªã¯ãããã§ãªããã°ã¨ã©ã¼*/500 case IPV6CP_CIT_ADDR: /* IPv6 アドレス */ 501 502 /* CI 長が、ヘッダ + 4 オクテットでなければエラー */ 551 503 if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(addr)) 552 504 code = PPP_CONFREJ; … … 564 516 code = PPP_CONFNAK; 565 517 } 566 #if 1 /* è¦ç¢ºèª*/518 #if 1 /* 要確認 */ 567 519 else if (IN6_IS_ADDR_UNSPECIFIED(&addr) && 568 520 IN6_IS_ADDR_UNSPECIFIED(&ipv6cp_remote_neg_cfg.in6_ifaddrs[0])) … … 585 537 586 538 if (code == PPP_CONFNAK) { 587 /* CI ã®åã Magic Number ã®å ´åãé¤ãã¦ãNAK ã®åæ°ã */ 588 /* æå¤§å¤ MAX_PPP_FAILURES ãè¶ 589 ãããæå¦ããã */ 539 /* CI の型が Magic Number の場合を除いて、NAK の回数が */ 540 /* 最大値 MAX_PPP_FAILURES を超えたら拒否する。 */ 590 541 if (fsm->failures >= MAX_PPP_FAILURES) 591 542 code = PPP_CONFREJ; … … 594 545 } 595 546 596 /* ãã® CI ãæå¦ãã*/547 /* この CI を拒否する */ 597 548 if (code == PPP_CONFREJ) { 598 if (rp < cp) /* åã«è©°ããã*/549 if (rp < cp) /* 前に詰める。*/ 599 550 memcpy(rp, cp, cilen); 600 551 rp += cilen; … … 606 557 } 607 558 608 /* æçµçãªé·ãã調æ´ããã*/559 /* 最終的な長さを調整する。*/ 609 560 switch (final) { 610 561 case PPP_CONFNAK: … … 624 575 625 576 /* 626 * ipv6cp_up -- ãªã³ã¯æ¥ç¶ã確ç«ããã577 * ipv6cp_up -- リンク接続を確立する。 627 578 */ 628 579 … … 630 581 ipv6cp_up (T_PPP_FSM *fsm) 631 582 { 632 /* èªæ§ææ 633 å ±ã®åæè¨å® */ 583 /* 自構成情報の初期設定 */ 634 584 ipv6cp_local_ack_cfg = ipv6cp_local_neg_cfg; 635 585 … … 642 592 643 593 /* 644 * ipv6cp_down -- ãªã³ã¯æ¥ç¶ã解æ¾ããã594 * ipv6cp_down -- リンク接続を解放する。 645 595 */ 646 596 … … 653 603 654 604 /* 655 * ipv6cp_finished -- ä¸ä½å±¤ãçµäºããã605 * ipv6cp_finished -- 下位層を終了する。 656 606 */ 657 607 … … 662 612 663 613 /* 664 * ipv6cp_protrej -- Proto-REJ ãåä¿¡ããã¨ãã®å¦ç614 * ipv6cp_protrej -- Proto-REJ を受信したときの処理 665 615 */ 666 616 … … 672 622 673 623 /* 674 * ipv6cp_lowerup -- IPV6CP ä¸ä½å±¤ãèµ·åããã624 * ipv6cp_lowerup -- IPV6CP 下位層を起動する。 675 625 */ 676 626 … … 682 632 683 633 /* 684 * ipv6cp_lowerdown -- IPV6CP ä¸ä½å±¤ãåæ¢ããã634 * ipv6cp_lowerdown -- IPV6CP 下位層を停止する。 685 635 */ 686 636 … … 692 642 693 643 /* 694 * ipv6cp_open -- IPV6CP ã®ãªã¼ãã³644 * ipv6cp_open -- IPV6CP のオープン 695 645 */ 696 646 … … 702 652 703 653 /* 704 * ipv6cp_close -- IPV6CP ã®ã¯ãã¼ãº654 * ipv6cp_close -- IPV6CP のクローズ 705 655 */ 706 656 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_ipv6cp.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 93 81 94 82 /* 95 * IPV6CP ã®æ§ææ 96 å ± (CI) 83 * IPV6CP の構成情報 (CI) 97 84 */ 98 85 99 86 /* 100 * CI ã®å87 * CI の型 101 88 */ 102 89 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 アドレス */ 106 93 107 94 /* 108 * åæ¹åç 109 § 95 * 前方参照 110 96 */ 111 97 … … 119 105 120 106 /* 121 * å¤æ°107 * 変数 122 108 */ 123 109 … … 134 120 135 121 /* 136 * é¢æ°122 * 関数 137 123 */ 138 124 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_lcp.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 113 101 114 102 /* 115 * é¢æ°103 * 関数 116 104 */ 117 105 … … 131 119 132 120 /* 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 124 static void lcp_resetci(T_PPP_FSM *fsm); /* 自構成情報をリセットする。 */ 125 static int_t lcp_cilen (T_PPP_FSM *fsm); /* 構成情報の長さを返す。 */ 140 126 static void lcp_addci (T_PPP_FSM *fsm, T_NET_BUF *output); 141 /* èªæ§ææ 142 å ±ã追å ããã */ 127 /* 自構成情報を追加する。 */ 143 128 static bool_t lcp_ackci (T_PPP_FSM *fsm, T_NET_BUF *input); 144 /* ACK ãåä¿¡ããã¨ãã®å¦ç*/129 /* ACK を受信したときの処理 */ 145 130 static bool_t lcp_nakci (T_PPP_FSM *fsm, T_NET_BUF *input); 146 /* NAK ãåä¿¡ããã¨ãã®å¦ç*/131 /* NAK を受信したときの処理 */ 147 132 static bool_t lcp_rejci (T_PPP_FSM *fsm, T_NET_BUF *input); 148 /* REJ ãåä¿¡ããã¨ãã®å¦ç*/133 /* REJ を受信したときの処理 */ 149 134 static 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 /* 相手の構成情報を確認する。 */ 136 static void lcp_up (T_PPP_FSM *fsm); /* リンク接続を確立する。 */ 137 static void lcp_starting(T_PPP_FSM *fsm); /* 下位層を開始する。 */ 154 138 static bool_t lcp_extcode (T_PPP_FSM *fsm, uint8_t code, uint8_t id, T_NET_BUF *input); 155 /* ä¸æ㪠CP ãåä¿¡ããã¨ãã®å¦ç*/139 /* 不明な CP を受信したときの処理 */ 156 140 static 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 146 static T_LCP_CONFIGS lcp_def_cfg = { /* 構成情報の初期設定値 */ 164 147 DEF_REMOTE_ACCM, /* ACCM */ 165 148 166 149 #ifdef LCP_CFG_MAGIC 167 150 168 ULONG_C(0), /* ãã¸ãã¯çªå·*/151 ULONG_C(0), /* マジック番号 */ 169 152 170 153 #endif /* of #ifdef LCP_CFG_MAGIC */ 171 154 172 155 DEF_PPP_MTU, /* MRU */ 173 UINT_C(0), /* ãªãã·ã§ã³ãã©ã°*/156 UINT_C(0), /* オプションフラグ */ 174 157 }; 175 158 176 static T_LCP_CONFIGS lcp_local_def_cfg = { /* èªæ§ææ 177 å ±ã®è¦å®å¤ */ 159 static T_LCP_CONFIGS lcp_local_def_cfg = { /* 自構成情報の規定値 */ 178 160 DEF_LOCAL_ACCM, /* ACCM */ 179 161 180 162 #ifdef LCP_CFG_MAGIC 181 163 182 ULONG_C(0), /* ãã¸ãã¯çªå·*/164 ULONG_C(0), /* マジック番号 */ 183 165 184 166 #endif /* of #ifdef LCP_CFG_MAGIC */ 185 167 186 168 DEF_PPP_MTU, /* MRU */ 187 DEF_LCP_LOCAL_CFGS, /* ãªãã·ã§ã³ãã©ã°*/169 DEF_LCP_LOCAL_CFGS, /* オプションフラグ */ 188 170 }; 189 171 190 static T_LCP_CONFIGS lcp_local_neg_cfg; /* ãã´ä¸ã®èªæ§ææ 191 å ± */ 192 193 static T_LCP_CONFIGS lcp_remote_neg_cfg; /* ãã´ä¸ã®ç¸æã®æ§ææ 194 å ± */ 172 static T_LCP_CONFIGS lcp_local_neg_cfg; /* ネゴ中の自構成情報 */ 173 174 static T_LCP_CONFIGS lcp_remote_neg_cfg; /* ネゴ中の相手の構成情報 */ 195 175 196 176 #if DEF_LCP_LOCAL_CFGS & LCP_CFG_MAGIC … … 203 183 204 184 /* 205 * å 206 ¨åå¤æ° 185 * 全域変数 207 186 */ 208 187 209 188 T_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 を受信したときの処理 */ 227 202 }; 228 203 229 204 T_PPP_FSM lcp_fsm = { 230 &lcp_callbacks, /* ã³ã¼ã«ããã¯é¢æ°*/231 PPP_LCP, /* ãããã³ã«*/205 &lcp_callbacks, /* コールバック関数 */ 206 PPP_LCP, /* プロトコル */ 232 207 }; 233 208 234 209 T_PPP_PROTENT lcp_protent = { 235 210 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, /* データ入力 */ 246 219 }; 247 220 248 T_LCP_CONFIGS lcp_local_ack_cfg; /* ç¸æã«è¨±å¯ãããã®èªæ§ææ 249 å ± */ 250 T_LCP_CONFIGS lcp_remote_ack_cfg; /* ç¸æã«è¨±å¯ããæ§ææ 251 å ± */ 252 253 /* 254 * lcp_init -- LCP ã¢ã¸ã¥ã¼ã«ã®åæå 221 T_LCP_CONFIGS lcp_local_ack_cfg; /* 相手に許可されたの自構成情報 */ 222 T_LCP_CONFIGS lcp_remote_ack_cfg; /* 相手に許可した構成情報 */ 223 224 /* 225 * lcp_init -- LCP モジュールの初期化 255 226 */ 256 227 … … 262 233 263 234 /* 264 * lcp_input -- LCP å 265 ¥å 235 * lcp_input -- LCP 入力 266 236 */ 267 237 … … 275 245 276 246 /* 277 * lcp_resetci -- LCPã®æ§ææ 278 å ±ããªã»ããããã 247 * lcp_resetci -- LCPの構成情報をリセットする。 279 248 */ 280 249 … … 288 257 #endif /* of #ifdef LCP_CFG_MAGIC */ 289 258 290 /* èªæ§ææ 291 å ±ã®åæè¨å® */ 259 /* 自構成情報の初期設定 */ 292 260 lcp_local_neg_cfg = lcp_local_def_cfg; 293 261 lcp_local_ack_cfg = lcp_def_cfg; 294 262 295 /* ç¸æã®æ§ææ 296 å ±ã®åæè¨å® */ 263 /* 相手の構成情報の初期設定 */ 297 264 lcp_remote_neg_cfg = lcp_def_cfg; 298 265 lcp_remote_ack_cfg = lcp_def_cfg; … … 310 277 311 278 /* 312 * lcp_cilen -- æ§ææ 313 å ±ã®é·ããè¿ãã 279 * lcp_cilen -- 構成情報の長さを返す。 314 280 */ 315 281 … … 342 308 343 309 if (lcp_local_neg_cfg.options & LCP_CFG_PCOMP) 344 cilen += sizeof(T_PPP_CI_HDR); /* ãããã³ã«å§ç¸®*/310 cilen += sizeof(T_PPP_CI_HDR); /* プロトコル圧縮 */ 345 311 346 312 #endif /* of #ifdef LCP_CFG_PCOMP */ … … 349 315 350 316 if (lcp_local_neg_cfg.options & LCP_CFG_ACCOMP) 351 cilen += sizeof(T_PPP_CI_HDR); /* ã¢ãã¬ã¹ã»å¶å¾¡å§ç¸®*/317 cilen += sizeof(T_PPP_CI_HDR); /* アドレス・制御圧縮 */ 352 318 353 319 #endif /* of #ifdef LCP_CFG_ACCOMP */ … … 357 323 358 324 /* 359 * lcp_addci -- LCPã®æ§ææ 360 å ±ã追å ããã 325 * lcp_addci -- LCPの構成情報を追加する。 361 326 */ 362 327 … … 368 333 buf = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR); 369 334 370 /* MRU ãªãã·ã§ã³ã追å ããã*/335 /* MRU オプションを追加する。 */ 371 336 if (lcp_local_neg_cfg.options & LCP_CFG_MRU) { 372 337 *buf ++ = LCP_CIT_MRU; … … 376 341 } 377 342 378 /* ACCM ãªãã·ã§ã³ã追å ããã*/343 /* ACCM オプションを追加する。 */ 379 344 if (lcp_local_neg_cfg.options & LCP_CFG_ACCM) { 380 345 *buf ++ = LCP_CIT_ACCM; … … 386 351 #ifdef LCP_CFG_MAGIC 387 352 388 /* Magic Number ãªãã·ã§ã³ã追å ããã*/353 /* Magic Number オプションを追加する。 */ 389 354 if (lcp_local_neg_cfg.options & LCP_CFG_MAGIC) { 390 355 *buf ++ = LCP_CIT_MAGIC; … … 398 363 #ifdef LCP_CFG_PAP 399 364 400 /* èªè¨¼ãããã³ã«ãªãã·ã§ã³ã追å ããã*/365 /* 認証プロトコルオプションを追加する。 */ 401 366 if (lcp_local_neg_cfg.options & LCP_CFG_PAP) { 402 367 *buf ++ = LCP_CIT_AUTH; … … 410 375 #ifdef LCP_CFG_PCOMP 411 376 412 /* ãããã³ã«å§ç¸®ãªãã·ã§ã³ã追å ããã*/377 /* プロトコル圧縮オプションを追加する。 */ 413 378 if (lcp_local_neg_cfg.options & LCP_CFG_PCOMP) { 414 379 *buf ++ = LCP_CIT_PCOMP; … … 420 385 #ifdef LCP_CFG_ACCOMP 421 386 422 /* ã¢ãã¬ã¹ã»å¶å¾¡å§ç¸®ãªãã·ã§ã³ã追å ããã*/387 /* アドレス・制御圧縮オプションを追加する。 */ 423 388 if (lcp_local_neg_cfg.options & LCP_CFG_ACCOMP) { 424 389 *buf ++ = LCP_CIT_ACCOMP; … … 430 395 431 396 /* 432 * lcp_ackci -- ACK ãåä¿¡ããã¨ãã®å¦ç397 * lcp_ackci -- ACK を受信したときの処理 433 398 * 434 * æ»ãå¤: TURE ACK ã¯æ£å¸¸435 * false ACK ã¯ç°å¸¸399 * 戻り値: TURE ACK は正常 400 * false ACK は異常 436 401 */ 437 402 … … 446 411 447 412 /* 448 * æ§ææ 449 å ±ã¯éä¿¡ããé ã«å®å 450 ¨ã«ä¸è´ããªããã°ãªããªãã 451 * å¾ã£ã¦ãlcp_addci ã§ä½æããé ã«è§£æããã 413 * 構成情報は送信した順に完全に一致しなければならない。 414 * 従って、lcp_addci で作成した順に解析する。 452 415 */ 453 416 454 /* MRU ãªãã·ã§ã³ã解æããã*/417 /* MRU オプションを解析する。 */ 455 418 if (lcp_local_neg_cfg.options & LCP_CFG_MRU) { 456 419 if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint16_t) || … … 463 426 } 464 427 465 /* ACCM ãªãã·ã§ã³ã解æããã*/428 /* ACCM オプションを解析する。 */ 466 429 if (lcp_local_neg_cfg.options & LCP_CFG_ACCM) { 467 430 if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) || … … 476 439 #ifdef LCP_CFG_MAGIC 477 440 478 /* Magic Number ãªãã·ã§ã³ã解æããã*/441 /* Magic Number オプションを解析する。 */ 479 442 if (lcp_local_neg_cfg.options & LCP_CFG_MAGIC) { 480 443 if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) || … … 491 454 #ifdef LCP_CFG_PAP 492 455 493 /* èªè¨¼ãããã³ã«ãªãã·ã§ã³ã解æããã*/456 /* 認証プロトコルオプションを解析する。 */ 494 457 if (lcp_local_neg_cfg.options & LCP_CFG_PAP) { 495 458 if (len < sizeof(T_PPP_CI_HDR) + sizeof(uint16_t) || … … 506 469 #ifdef LCP_CFG_PCOMP 507 470 508 /* ãããã³ã«å§ç¸®ãªãã·ã§ã³ã解æããã*/471 /* プロトコル圧縮オプションを解析する。 */ 509 472 if (lcp_local_neg_cfg.options & LCP_CFG_PCOMP) { 510 473 if (len < sizeof(T_PPP_CI_HDR) || … … 519 482 #ifdef LCP_CFG_ACCOMP 520 483 521 /* ã¢ãã¬ã¹ã»å¶å¾¡å§ç¸®ãªãã·ã§ã³ã解æããã*/484 /* アドレス・制御圧縮オプションを解析する。 */ 522 485 if (lcp_local_neg_cfg.options & LCP_CFG_ACCOMP) { 523 486 if (len < sizeof(T_PPP_CI_HDR) || … … 533 496 534 497 /* 535 * lcp_nakci -- NAK ãåä¿¡ããã¨ãã®å¦ç498 * lcp_nakci -- NAK を受信したときの処理 536 499 * 537 * æ»ãå¤: 1 NAK ã¯æ£å¸¸538 * 0 NAK ã¯ç°å¸¸500 * 戻り値: 1 NAK は正常 501 * 0 NAK は異常 539 502 */ 540 503 … … 543 506 { 544 507 T_LCP_CONFIGS new_cfg; 545 bool_t loop = false; /* ã«ã¼ãããã¯ããã§ãã¯*/508 bool_t loop = false; /* ループバックをチェック */ 546 509 uint32_t cilong; 547 510 uint16_t cishort, len; … … 553 516 new_cfg = lcp_local_neg_cfg; 554 517 555 /* MRU ãªãã·ã§ã³ã解æããã*/518 /* MRU オプションを解析する。 */ 556 519 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint16_t) && 557 520 * buf == LCP_CIT_MRU && … … 565 528 } 566 529 567 /* ACCM ãªãã·ã§ã³ã解æããã*/530 /* ACCM オプションを解析する。 */ 568 531 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) && 569 532 * buf == LCP_CIT_ACCM && … … 578 541 #ifdef LCP_CFG_MAGIC 579 542 580 /* Magic Number ãªãã·ã§ã³ã解æããã*/543 /* Magic Number オプションを解析する。 */ 581 544 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) && 582 545 * buf == LCP_CIT_MAGIC && … … 594 557 #ifdef LCP_CFG_PAP 595 558 596 /* èªè¨¼ãããã³ã«ãªãã·ã§ã³ã解æããã*/559 /* 認証プロトコルオプションを解析する。 */ 597 560 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint16_t) && 598 561 * buf == LCP_CIT_AUTH && … … 612 575 #ifdef LCP_CFG_PCOMP 613 576 614 /* ãããã³ã«å§ç¸®ãªãã·ã§ã³ã解æããã*/577 /* プロトコル圧縮オプションを解析する。 */ 615 578 if (len >= sizeof(T_PPP_CI_HDR) && 616 579 * buf == LCP_CIT_PCOMP && … … 626 589 #ifdef LCP_CFG_ACCOMP 627 590 628 /* ã¢ãã¬ã¹ã»å¶å¾¡å§ç¸®ãªãã·ã§ã³ã解æããã*/591 /* アドレス・制御圧縮オプションを解析する。 */ 629 592 if (len >= sizeof(T_PPP_CI_HDR) && 630 593 * buf == LCP_CIT_ACCOMP && … … 638 601 #endif /* of #ifdef LCP_CFG_ACCOMP */ 639 602 640 /* å¾ã¯ç¡è¦ããã*/603 /* 後は無視する。*/ 641 604 while (len > sizeof(T_PPP_CI_HDR)) { 642 605 cilen = *(buf + 1); … … 647 610 } 648 611 649 /* é·ãã 0 ã§ãªããã°ã¨ã©ã¼*/612 /* 長さが 0 でなければエラー */ 650 613 if (len != 0) 651 614 return 0; 652 615 653 /* æ°ãããªãã·ã§ã³ãè¨å®ããã*/616 /* 新しいオプションを設定する。*/ 654 617 if (fsm->state != PPP_FSM_OPENED) { 655 618 if (loop) { … … 663 626 664 627 /* 665 * lcp_rejci -- REJ ãåä¿¡ããã¨ãã®å¦ç628 * lcp_rejci -- REJ を受信したときの処理 666 629 * 667 * æ»ãå¤: 1 REJ ã¯æ£å¸¸668 * 0 REJ ã¯ç°å¸¸630 * 戻り値: 1 REJ は正常 631 * 0 REJ は異常 669 632 */ 670 633 … … 682 645 new_cfg = lcp_local_neg_cfg; 683 646 684 /* MRU ãªãã·ã§ã³ã解æããã*/647 /* MRU オプションを解析する。 */ 685 648 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint16_t) && 686 649 * buf == LCP_CIT_MRU && … … 696 659 } 697 660 698 /* ACCM ãªãã·ã§ã³ã解æããã*/661 /* ACCM オプションを解析する。 */ 699 662 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) && 700 663 * buf == LCP_CIT_ACCM && … … 712 675 #ifdef LCP_CFG_MAGIC 713 676 714 /* Magic Number ãªãã·ã§ã³ã解æããã*/677 /* Magic Number オプションを解析する。 */ 715 678 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint32_t) && 716 679 * buf == LCP_CIT_MAGIC && … … 730 693 #ifdef LCP_CFG_PAP 731 694 732 /* èªè¨¼ãããã³ã«ãªãã·ã§ã³ã解æããã*/695 /* 認証プロトコルオプションを解析する。 */ 733 696 if (len >= sizeof(T_PPP_CI_HDR) + sizeof(uint16_t) && 734 697 * buf == LCP_CIT_AUTH && … … 748 711 #ifdef LCP_CFG_PCOMP 749 712 750 /* ãããã³ã«å§ç¸®ãªãã·ã§ã³ã解æããã*/713 /* プロトコル圧縮オプションを解析する。 */ 751 714 if (len >= sizeof(T_PPP_CI_HDR) && 752 715 * buf == LCP_CIT_PCOMP && … … 762 725 #ifdef LCP_CFG_ACCOMP 763 726 764 /* ã¢ãã¬ã¹ã»å¶å¾¡å§ç¸®ãªãã·ã§ã³ã解æããã*/727 /* アドレス・制御圧縮オプションを解析する。 */ 765 728 if (len >= sizeof(T_PPP_CI_HDR) && 766 729 * buf == LCP_CIT_ACCOMP && … … 774 737 #endif /* of #ifdef LCP_CFG_ACCOMP */ 775 738 776 /* é·ãã 0 ã§ãªããã°ã¨ã©ã¼*/739 /* 長さが 0 でなければエラー */ 777 740 if (len != 0) 778 741 return 0; 779 742 780 /* æ°ãããªãã·ã§ã³ãè¨å®ããã*/743 /* 新しいオプションを設定する。*/ 781 744 if (fsm->state != PPP_FSM_OPENED) 782 745 lcp_local_neg_cfg = new_cfg; … … 786 749 787 750 /* 788 * lcp_reqci -- ç¸æã®æ§ææ 789 å ±ã解æããã 751 * lcp_reqci -- 相手の構成情報を解析する。 790 752 */ 791 753 … … 803 765 804 766 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 に上書きする。 */ 807 769 len = input->len - (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)); 808 770 np = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR); 809 final = PPP_CONFACK; /* æçµçã«éä¿¡ããã³ã¼ã*/771 final = PPP_CONFACK; /* 最終的に送信するコード */ 810 772 while (len > 0) { 811 773 code = PPP_CONFACK; 812 cp = ap; /* cp: ç¾å¨å¦çä¸ã®CI */774 cp = ap; /* cp: 現在処理中の CI */ 813 775 814 776 if (len < sizeof(T_PPP_CI_HDR)) { 815 777 816 /* æ®ãã CI ãããããçã*/778 /* 残りが CI ヘッダより短い */ 817 779 syslog(LOG_WARNING, "[PPP/LCP] bad CI len: %d.", len); 818 cilen = len; /* ãã¼ã¿é·ãç°å¸¸ã®å ´åã®å¦ç½®*/819 len = 0; /* ã«ã¼ãããæããã*/780 cilen = len; /* データ長が異常の場合の処置 */ 781 len = 0; /* ループから抜ける。 */ 820 782 code = PPP_CONFREJ; 821 783 goto endswitch; 822 784 } 823 785 824 type = *ap ++; /* CI ã®å*/825 cilen = *ap ++; /* CI ã®é·ã*/786 type = *ap ++; /* CI の型 */ 787 cilen = *ap ++; /* CI の長さ */ 826 788 if (len < cilen) { 827 789 828 /* æ®ãã CI é·ããçã*/790 /* 残りが CI 長より短い */ 829 791 syslog(LOG_WARNING, "[PPP/LCP] bad CI len: %d.", cilen); 830 cilen = len; /* ãã¼ã¿é·ãç°å¸¸ã®å ´åã®å¦ç½®*/831 len = 0; /* ã«ã¼ãããæããã*/792 cilen = len; /* データ長が異常の場合の処置 */ 793 len = 0; /* ループから抜ける。 */ 832 794 code = PPP_CONFREJ; 833 795 goto endswitch; … … 835 797 len -= sizeof(T_PPP_CI_HDR); 836 798 837 /* CI ã®åã«ããåå²ããã*/799 /* CI の型により分岐する。*/ 838 800 switch (type) { 839 801 840 case LCP_CIT_MRU: /* æ大åä¿¡é(Maximum Receive Unit) */802 case LCP_CIT_MRU: /* 最大受信量 (Maximum Receive Unit) */ 841 803 842 804 #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_MRU) == 0 … … 846 808 #else /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_MRU) == 0 */ 847 809 848 /* CI é·ããããã + 2 ãªã¯ãããã§ãªããã°REJ */810 /* CI 長が、ヘッダ + 2 オクテットでなければ REJ */ 849 811 if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(uint16_t)) 850 812 code = PPP_CONFREJ; … … 852 814 cishort = ntohs(*(uint16_t*)ap); 853 815 854 /* æå°åä¿¡éããå°ãããã°NAK */816 /* 最小受信量より小さければ NAK */ 855 817 if (cishort < MIN_PPP_MTU) { 856 818 *np ++ = LCP_CIT_MRU; … … 878 840 #else /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_ACCM) == 0 */ 879 841 880 /* CI é·ããããã + 4 ãªã¯ãããã§ãªããã°REJ */842 /* CI 長が、ヘッダ + 4 オクテットでなければ REJ */ 881 843 if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)) 882 844 code = PPP_CONFREJ; … … 890 852 break; 891 853 892 case LCP_CIT_MAGIC: /* ãã¸ãã¯çªå·*/854 case LCP_CIT_MAGIC: /* マジック番号 */ 893 855 894 856 #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_MAGIC) == 0 … … 898 860 #else /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_MAGIC) == 0 */ 899 861 900 /* CI é·ããããã + 4 ãªã¯ãããã§ãªããã°REJ */862 /* CI 長が、ヘッダ + 4 オクテットでなければ REJ */ 901 863 if (cilen != sizeof(T_PPP_CI_HDR) + sizeof(uint32_t)) 902 864 code = PPP_CONFREJ; … … 904 866 ntoahl(cilong, ap); 905 867 906 /* çªå·ãèªåã¨åããªãNAK */868 /* 番号が自分と同じなら NAK */ 907 869 if (cilong == lcp_local_neg_cfg.magic) { 908 870 cilong = net_rand(); … … 924 886 925 887 #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 オクテットより短いときはエラー */ 932 893 if (cilen < sizeof(T_PPP_CI_HDR) + sizeof(uint16_t)) 933 894 code = PPP_CONFREJ; … … 935 896 cishort = ntohs(*(uint16_t*)ap); 936 897 937 /* èªè¨¼ãããã³ã«ã«ããåå²ãã*/898 /* 認証プロトコルにより分岐する */ 938 899 if (cishort == PPP_PAP && 939 900 cilen == sizeof(T_PPP_CI_HDR) + sizeof(uint16_t) && … … 949 910 #ifdef LCP_CFG_PCOMP 950 911 951 case LCP_CIT_PCOMP: /* ãããã³ã«é¨å§ç¸®ã¯å®è£ 952 äºå® */ 912 case LCP_CIT_PCOMP: /* プロトコル部圧縮は実装予定 */ 953 913 954 914 #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_PCOMP) == 0 … … 958 918 #else /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_PCOMP) == 0 */ 959 919 960 /* CI é·ãããããé·ã ãã§ãªããã°REJ */920 /* CI 長が、ヘッダ長だけでなければ REJ */ 961 921 if (cilen != sizeof(T_PPP_CI_HDR)) 962 922 code = PPP_CONFREJ; … … 972 932 #ifdef LCP_CFG_ACCOMP 973 933 974 case LCP_CIT_ACCOMP: /* ã¢ãã¬ã¹ã»å¶å¾¡é¨å§ç¸®*/934 case LCP_CIT_ACCOMP: /* アドレス・制御部圧縮 */ 975 935 976 936 #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_ACCOMP) == 0 … … 980 940 #else /* of #if (DEF_LCP_REMOTE_CFGS & LCP_CFG_ACCOMP) == 0 */ 981 941 982 /* CI é·ãããããé·ã ãã§ãªããã°REJ */942 /* CI 長が、ヘッダ長だけでなければ REJ */ 983 943 if (cilen != sizeof(T_PPP_CI_HDR)) 984 944 code = PPP_CONFREJ; … … 999 959 endswitch: 1000 960 if (code == PPP_CONFNAK) { 1001 /* CI ã®åã Magic Number ã®å ´åãé¤ãã¦ãNAK ã®åæ°ã */ 1002 /* æå¤§å¤ MAX_PPP_FAILURES ãè¶ 1003 ãããæå¦ããã */ 961 /* CI の型が Magic Number の場合を除いて、NAK の回数が */ 962 /* 最大値 MAX_PPP_FAILURES を超えたら拒否する。 */ 1004 963 if (fsm->failures >= MAX_PPP_FAILURES && type != LCP_CIT_MAGIC) 1005 964 code = PPP_CONFREJ; … … 1008 967 } 1009 968 1010 /* ãã® CI ãæå¦ãã*/969 /* この CI を拒否する */ 1011 970 if (code == PPP_CONFREJ) { 1012 if (rp < cp) /* åã«è©°ããã*/971 if (rp < cp) /* 前に詰める。*/ 1013 972 memcpy(rp, cp, cilen); 1014 973 rp += cilen; … … 1020 979 } 1021 980 1022 /* æçµçãªé·ãã調æ´ããã*/981 /* 最終的な長さを調整する。*/ 1023 982 switch (final) { 1024 983 case PPP_CONFNAK: … … 1037 996 1038 997 /* 1039 * lcp_up -- ãªã³ã¯æ¥ç¶ã確ç«ãã (Phase: Establish ã«ç§»è¡ãã)ã998 * lcp_up -- リンク接続を確立する (Phase: Establish に移行する)。 1040 999 */ 1041 1000 … … 1043 1002 lcp_up (T_PPP_FSM *fsm) 1044 1003 { 1045 /* èªæ§ææ 1046 å ±ã®è¨å® */ 1004 /* 自構成情報の設定 */ 1047 1005 lcp_local_ack_cfg = lcp_local_neg_cfg; 1048 1006 1049 /* ç¸æã®æ§ææ 1050 å ±ã®è¨å® */ 1007 /* 相手の構成情報の設定 */ 1051 1008 lcp_remote_ack_cfg = lcp_remote_neg_cfg; 1052 1009 … … 1061 1018 1062 1019 /* 1063 * lcp_starting -- ä¸ä½å±¤ãéå§ããã1020 * lcp_starting -- 下位層を開始する。 1064 1021 */ 1065 1022 … … 1071 1028 1072 1029 /* 1073 * lcp_extcode -- LCP ç¹æã® CP ãåä¿¡ããã¨ãã®å¦ç1030 * lcp_extcode -- LCP 特有の CP を受信したときの処理 1074 1031 */ 1075 1032 … … 1128 1085 1129 1086 /* 1130 * lcp_rprotrej -- Proto-REJ ãåä¿¡ããã¨ãã®å¦ç1087 * lcp_rprotrej -- Proto-REJ を受信したときの処理 1131 1088 */ 1132 1089 … … 1149 1106 } 1150 1107 1151 /* ä¸ä½ãããã³ã«ãåæåãã*/1108 /* 上位プロトコルを初期化する */ 1152 1109 for (ix = 0; (entry = protocols[ix]) != NULL; ix ++) 1153 1110 if (entry->proto == proto) { … … 1160 1117 1161 1118 /* 1162 * lcp_protrej -- Proto-REJ ãåä¿¡ããã¨ãã®å¦ç1119 * lcp_protrej -- Proto-REJ を受信したときの処理 1163 1120 */ 1164 1121 … … 1170 1127 1171 1128 /* 1172 * lcp_lowerup -- LCP ä¸ä½å±¤ãèµ·åããã1129 * lcp_lowerup -- LCP 下位層を起動する。 1173 1130 */ 1174 1131 … … 1180 1137 1181 1138 /* 1182 * lcp_lowerdown -- LCP ä¸ä½å±¤ãåæ¢ããã1139 * lcp_lowerdown -- LCP 下位層を停止する。 1183 1140 */ 1184 1141 … … 1190 1147 1191 1148 /* 1192 * lcp_open -- LCP ã®ãªã¼ã1149 * lcp_open -- LCP のオープ 1193 1150 */ 1194 1151 … … 1196 1153 lcp_open (uint8_t open_mode) 1197 1154 { 1198 ppp_open_mode = open_mode; /* ãªã¼ãã³æã®åä½ã¢ã¼ã*/1155 ppp_open_mode = open_mode; /* オープン時の動作モード */ 1199 1156 fsm_open(&lcp_fsm); 1200 1157 } 1201 1158 1202 1159 /* 1203 * lcp_close -- LCP ã®ã¯ãã¼ãº1160 * lcp_close -- LCP のクローズ 1204 1161 */ 1205 1162 … … 1219 1176 1220 1177 /* 1221 * lcp_sprotrej -- èªèã§ããªããããã³ã«ãéããã¦ããã¨ãã®å¦ç1178 * lcp_sprotrej -- 認識できないプロトコルが送られてきたときの処理 1222 1179 */ 1223 1180 … … 1227 1184 T_NET_BUF *output; 1228 1185 /* 1229 * Protocol-Reject ãéãè¿ãã1186 * Protocol-Reject を送り返す。 1230 1187 */ 1231 1188 … … 1240 1197 1241 1198 /* 1242 * lcp_down -- ãªã³ã¯æ¥ç¶ã解æ¾ãã (Phase: Dead ã«ç§»è¡ãã)ã1199 * lcp_down -- リンク接続を解放する (Phase: Dead に移行する)。 1243 1200 */ 1244 1201 … … 1257 1214 1258 1215 /* 1259 * lcp_finished -- ä¸ä½å±¤ãçµäºããã1216 * lcp_finished -- 下位層を終了する。 1260 1217 */ 1261 1218 … … 1269 1226 1270 1227 /* 1271 * recv_echo_rep -- ECHOREP ãåä¿¡ããã¨ãã®å¦ç1228 * recv_echo_rep -- ECHOREP を受信したときの処理 1272 1229 */ 1273 1230 … … 1280 1237 hdr = GET_PPP_CP_HDR(input); 1281 1238 1282 /* Magic Number ã®é·ã以ä¸ãªãã¨ã©ã¼*/1239 /* Magic Number の長さ以下ならエラー */ 1283 1240 if (hdr->len < sizeof(T_PPP_CP_HDR) + sizeof(uint32_t)) { 1284 1241 syslog(LOG_WARNING, "[PPP/LCP] bad ECHOREP len: %d.", hdr->len); … … 1288 1245 ntoahl(magic, input->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)); 1289 1246 1290 /* åä¿¡ãã Magic Number ãèªåã¨åããªãã«ã¼ããã¦ããã*/1247 /* 受信した Magic Number が自分と同じならループしている。*/ 1291 1248 if ((lcp_local_ack_cfg.options & LCP_CFG_MAGIC) && magic == lcp_local_ack_cfg.magic) { 1292 1249 syslog(LOG_WARNING, "[PPP/LCP] ECHOREP looped."); … … 1298 1255 1299 1256 /* 1300 * echo_timeout -- ECHO REQ/REP ã®ã¿ã¤ã ã¢ã¦ãå¦ç1257 * echo_timeout -- ECHO REQ/REP のタイムアウト処理 1301 1258 */ 1302 1259 … … 1311 1268 1312 1269 /* 1313 * send_echo_req -- ECHO REQ ãéä¿¡ããã1270 * send_echo_req -- ECHO REQ を送信する。 1314 1271 */ 1315 1272 … … 1331 1288 if (fsm->state == PPP_FSM_OPENED) { 1332 1289 1333 /* ECHOREQ ãéä¿¡ããã*/1290 /* ECHOREQ を送信する。*/ 1334 1291 syscall(get_net_buf(&input, sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR) + sizeof(uint32_t))); 1335 1292 *(uint32_t*)(input->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR)) = lcp_local_ack_cfg.magic; … … 1338 1295 echo_pending ++; 1339 1296 1340 /* ã¿ã¤ãã¼ãã¹ã¿ã¼ãããã*/1297 /* タイマーをスタートする。*/ 1341 1298 timeout((FP)echo_timeout, fsm, LCP_ECHO_INTERVAL); 1342 1299 timer_running = true; … … 1345 1302 1346 1303 /* 1347 * echo_lowerup -- ECHO REQ/REP ã®èµ·å1304 * echo_lowerup -- ECHO REQ/REP の起動 1348 1305 */ 1349 1306 … … 1359 1316 1360 1317 /* 1361 * echo_lowerdown -- ECHO REQ/REP ã®åæ¢1318 * echo_lowerdown -- ECHO REQ/REP の停止 1362 1319 */ 1363 1320 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_lcp.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 93 81 94 82 /* 95 * LCP ç¹æã® PPP ãªã³ã¯å¶å¾¡ (CP) ã®å¶å¾¡ã³ã¼ã83 * LCP 特有の PPP リンク制御 (CP) の制御コード 96 84 */ 97 85 … … 102 90 103 91 /* 104 * LCP ã®æ§ææ 105 å ± (CI) 92 * LCP の構成情報 (CI) 106 93 */ 107 94 108 95 /* 109 * CI ã®å96 * CI の型 110 97 */ 111 98 112 #define LCP_CIT_MRU UINT_C(1) /* æ大åä¿¡é(Maximum Receive Unit) */99 #define LCP_CIT_MRU UINT_C(1) /* 最大受信量 (Maximum Receive Unit) */ 113 100 #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 は未実装 */ 130 110 131 111 /* 132 * LCP ã®æ§ææ 133 å ±ãªãã·ã§ã³ 112 * LCP の構成情報オプション 134 113 */ 135 114 … … 139 118 #ifdef LCP_CFG_MAGIC 140 119 141 uint32_t magic; /* ãã¸ãã¯çªå·*/120 uint32_t magic; /* マジック番号 */ 142 121 143 122 #endif /* of #ifdef LCP_CFG_MAGIC */ 144 123 145 124 uint16_t MRU; /* MRU */ 146 uint16_t options; /* ãªãã·ã§ã³ãã©ã°*/125 uint16_t options; /* オプションフラグ */ 147 126 } T_LCP_CONFIGS; 148 127 149 128 /* 150 * å¤æ°129 * 変数 151 130 */ 152 131 153 132 extern T_PPP_FSM lcp_fsm; 154 133 extern 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 å ± */ 134 extern T_LCP_CONFIGS lcp_local_ack_cfg; /* 相手に許可されたの自構成情報 */ 135 extern T_LCP_CONFIGS lcp_remote_ack_cfg; /* 相手に許可した構成情報 */ 159 136 160 137 /* 161 * é¢æ°138 * 関数 162 139 */ 163 140 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_modem.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 45 33 46 34 /* 47 * PPP ã¢ãã å¶å¾¡35 * PPP モデム制御 48 36 */ 49 37 … … 72 60 73 61 /* 74 * å 75 ¨åå¤æ° 76 */ 77 78 uint8_t modem_state = PPP_MODEM_DOWN; /* ã¢ãã ã®ç¶æ 79 */ 80 81 /* 82 * ã¢ãã å 83 ¥åæåå 62 * 全域変数 63 */ 64 65 uint8_t modem_state = PPP_MODEM_DOWN; /* モデムの状態 */ 66 67 /* 68 * モデム入力文字列 84 69 */ 85 70 … … 94 79 95 80 /* 96 * å¤æ°81 * 変数 97 82 */ 98 83 … … 111 96 112 97 /* 113 * é¢æ°98 * 関数 114 99 */ 115 100 … … 120 105 121 106 /* 122 * modem_getline -- ã¢ãã è¡å 123 ¥å 107 * modem_getline -- モデム行入力 124 108 */ 125 109 … … 130 114 131 115 buf = nbuf->buf; 132 size --; /* '\0' ã®å*/116 size --; /* '\0' の分 */ 133 117 while (size > 0 && (*buf = HDLC_raw_getoctet()) != '\r') { 134 118 buf ++; … … 136 120 } 137 121 *buf = '\0'; 138 HDLC_raw_getoctet(); /* \n ãèªã¿é£ã°ãã*/122 HDLC_raw_getoctet(); /* \n を読み飛ばす。*/ 139 123 nbuf->len = buf - nbuf->buf; 140 124 return nbuf; … … 142 126 143 127 /* 144 * ã¢ãã å¶å¾¡128 * モデム制御 145 129 * 146 * æ»ãå¤: ã¢ãã ããã®ãªã¶ã«ãã³ã¼ã130 * 戻り値: モデムからのリザルトコード 147 131 */ 148 132 … … 211 195 212 196 /* 213 * init_modem -- ã¢ãã ãåæåããã197 * init_modem -- モデムを初期化する。 214 198 */ 215 199 … … 229 213 230 214 /* 231 * wait_modem -- æ¥ç¶å®äºã¾ã§å¾ 232 ã¤ã 215 * wait_modem -- 接続完了まで待つ。 233 216 * 234 * æ»ãå¤: æ¥ç¶ã«å¤±æããã E_OBJ ãè¿ãã217 * 戻り値: 接続に失敗したら E_OBJ を返す。 235 218 */ 236 219 … … 245 228 246 229 if (modem_state != PPP_MODEM_CONNECT) { 247 /* æ¥ç¶å®äºã¾ã§å¾ 248 ã¤ã*/ 230 /* 接続完了まで待つ。*/ 249 231 wai_sem(SEM_MODEM_READY); 250 232 if (modem_state != PPP_MODEM_CONNECT) … … 256 238 257 239 /* 258 * dial -- ãã¤ã¤ã«ããããªãã©ã¤åæ°ãã»ããããã240 * dial -- ダイヤルする。リトライ回数をセットする。 259 241 */ 260 242 … … 268 250 269 251 /* 270 * do_dial -- ãã¤ã¤ã«ãããdial() ã®ä¸è«ãé¢æ°252 * do_dial -- ダイヤルする。dial() の下請け関数 271 253 */ 272 254 … … 281 263 282 264 /* 283 * modem_putstr -- ã¢ãã æåååºå265 * modem_putstr -- モデム文字列出力 284 266 */ 285 267 … … 292 274 293 275 /* 294 * modem_wait -- ã¢ãã ããæååãå¾ 295 㤠276 * modem_wait -- モデムから文字列を待つ 296 277 */ 297 278 … … 312 293 313 294 /* 314 * modem_putline -- ã¢ãã è¡åºå295 * modem_putline -- モデム行出力 315 296 */ 316 297 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_modem.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 52 40 53 41 /* 54 * ã¢ãã ã®ç¶æ 55 42 * モデムの状態 56 43 */ 57 44 … … 64 51 65 52 /* 66 * å 67 ¨åå¤æ° 53 * 全域変数 68 54 */ 69 55 70 extern uint8_t modem_state; /* ã¢ãã ã®ç¶æ 71 */ 56 extern uint8_t modem_state; /* モデムの状態 */ 72 57 73 58 /* 74 * é¢æ°59 * 関数 75 60 */ 76 61 … … 84 69 85 70 /* 86 * é¢æ°71 * 関数 87 72 */ 88 73 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_upap.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 114 102 115 103 /* 116 * é¢æ°104 * 関数 117 105 */ 118 106 … … 152 140 153 141 /* 154 * å 155 ¨åå¤æ° 142 * 全域変数 156 143 */ 157 144 158 145 T_PPP_PROTENT pap_protent = { 159 146 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, /* データ入力 */ 170 155 }; 171 156 172 157 /* 173 * å¤æ°158 * 変数 174 159 */ 175 160 … … 194 179 195 180 /* 196 * upap_init -- UPAP ã¢ã¸ã¥ã¼ã«ã®åæå181 * upap_init -- UPAP モジュールの初期化 197 182 */ 198 183 … … 215 200 216 201 /* 217 * upap_input -- UPAP å 218 ¥å 202 * upap_input -- UPAP 入力 219 203 */ 220 204 … … 227 211 NET_COUNT_PPP_PAP(net_count_ppp_upap_in_packets, 1); 228 212 229 /* PPP ãªã³ã¯å¶å¾¡ (CP) ãããããçããã°ã¨ã©ã¼*/213 /* PPP リンク制御 (CP) ヘッダより短ければエラー */ 230 214 if (input->len < (sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR))) { 231 215 syslog(LOG_WARNING, "[PPP/PAP] short hdr: %d.", input->len); … … 235 219 hdr = GET_PPP_CP_HDR(input); 236 220 237 /* ãããã®é·ãã¨å 238 ¥åãã¼ã¿ãµã¤ãºãä¸è´ããªããã°ã¨ã©ã¼ */ 221 /* ヘッダの長さと入力データサイズが一致しなければエラー */ 239 222 if (hdr->len != input->len - sizeof(T_PPP_HDR)) { 240 223 syslog(LOG_WARNING, "[PPP/PAP] bad len: %d.", hdr->len); … … 243 226 244 227 /* 245 * å¶å¾¡ã³ã¼ãã«ããé©å½ãªé¢æ°ãå¼åºã228 * 制御コードにより適当な関数を呼出す 246 229 */ 247 230 … … 272 255 273 256 /* 274 * upap_protrej -- Proto-REJ ãåä¿¡ããã¨ãã®å¦ç257 * upap_protrej -- Proto-REJ を受信したときの処理 275 258 */ 276 259 … … 298 281 299 282 /* 300 * upap_lowerup -- UPAP ä¸ä½å±¤ãèµ·åããã283 * upap_lowerup -- UPAP 下位層を起動する。 301 284 */ 302 285 … … 332 315 333 316 /* 334 * upap_lowerdown -- UPAP ä¸ä½å±¤ãåæ¢ããã317 * upap_lowerdown -- UPAP 下位層を停止する。 335 318 */ 336 319 … … 367 350 368 351 /* 369 * ã¯ã©ã¤ã¢ã³ãã¢ã¼ã㧠PAP èªè¨¼ãéå§ããã352 * クライアントモードで PAP 認証を開始する。 370 353 */ 371 354 … … 388 371 389 372 /* 390 * upap_rauthack -- èªè¨¼ ACK å¦ç373 * upap_rauthack -- 認証 ACK 処理 391 374 */ 392 375 … … 401 384 402 385 /* 403 * upap_rauthnak -- èªè¨¼ NAK å¦ç386 * upap_rauthnak -- 認証 NAK 処理 404 387 */ 405 388 … … 412 395 413 396 /* 414 * upap_sauthreq -- èªè¨¼è¦æ±å¦ç397 * upap_sauthreq -- 認証要求処理 415 398 */ 416 399 … … 426 409 data = output->buf + sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR); 427 410 428 /* ã¦ã¼ã¶åãè¨å®ããã*/411 /* ユーザ名を設定する。*/ 429 412 *data = sizeof(AUTH_REMOTE_USER) - 1; 430 413 strcpy(data + 1, AUTH_REMOTE_USER); 431 414 432 /* ãã¹ã¯ã¼ããè¨å®ããã*/415 /* パスワードを設定する。*/ 433 416 *(data + sizeof(AUTH_REMOTE_USER)) = sizeof(AUTH_REMOTE_PASSWD) - 1; 434 417 strcpy(data + sizeof(AUTH_REMOTE_USER) + 1, AUTH_REMOTE_PASSWD); 435 418 436 /* éä¿¡ãã*/419 /* 送信する */ 437 420 IF_SET_PROTO(output, PPP_PAP); 438 421 ppp_cp_output(PAP_AUTHREQ, ++ client_cp_id, output); … … 451 434 452 435 /* 453 * upap_timeout -- ã¿ã¤ã ã¢ã¦ãå¦ç436 * upap_timeout -- タイムアウト処理 454 437 */ 455 438 … … 476 459 477 460 /* 478 * ãµã¼ãã¢ã¼ã㧠PAP èªè¨¼ãéå§ããã461 * サーバモードで PAP 認証を開始する。 479 462 */ 480 463 … … 497 480 498 481 /* 499 * upap_rauthreq -- èªè¨¼è¦æ±å¿çå¦ç482 * upap_rauthreq -- 認証要求応答処理 500 483 */ 501 484 … … 510 493 511 494 /* 512 * åè¦æ±ããã£ãã¨ãã®å¦ç495 * 再要求があったときの処理 513 496 */ 514 497 id = GET_PPP_CP_HDR(input)->id; … … 527 510 528 511 /* 529 * ã¦ã¼ã¶åãç¹å®ããã512 * ユーザ名を特定する。 530 513 */ 531 514 ulen = *data; … … 538 521 539 522 /* 540 * ãã¹ã¯ã¼ããç¹å®ããã523 * パスワードを特定する。 541 524 */ 542 525 plen = *data; … … 547 530 548 531 /* 549 * ã¦ã¼ã¶åã¨ãã¹ã¯ã¼ãããã§ãã¯ããã532 * ユーザ名とパスワードをチェックする。 550 533 */ 551 534 if (compare(user, AUTH_LOCAL_USER, ulen) && … … 574 557 575 558 /* 576 * upap_sresp -- å¿çãè¿ãã559 * upap_sresp -- 応答を返す。 577 560 */ 578 561 … … 582 565 T_NET_BUF *output; 583 566 584 /* éä¿¡ãã*/567 /* 送信する */ 585 568 syscall(get_net_buf(&output, sizeof(T_PPP_HDR) + sizeof(T_PPP_CP_HDR))); 586 569 IF_SET_PROTO(output, PPP_PAP); … … 589 572 590 573 /* 591 * compare -- ã¦ã¼ã¶åã¨ãã¹ã¯ã¼ãã®æ¯è¼574 * compare -- ユーザ名とパスワードの比較 592 575 */ 593 576 … … 607 590 608 591 /* 609 * upap_reqtimeout -- è¦æ±ã¿ã¤ã ã¢ã¦ãå¦ç592 * upap_reqtimeout -- 要求タイムアウト処理 610 593 */ 611 594 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_upap.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 93 81 94 82 /* 95 * PAP ã®å¶å¾¡ã³ã¼ã83 * PAP の制御コード 96 84 */ 97 85 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 */ 101 89 102 90 /* 103 * ã¯ã©ã¤ã¢ã³ãã®ç¶æ 104 91 * クライアントの状態 105 92 */ 106 93 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 受信 */ 113 100 114 101 /* 115 * ãµã¼ãã®ç¶æ 116 102 * サーバの状態 117 103 */ 118 104 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 送信 */ 126 111 127 112 /* 128 * å¤æ°113 * 変数 129 114 */ 130 115 … … 132 117 133 118 /* 134 * é¢æ°119 * 関数 135 120 */ 136 121 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/ppp_var.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 85 73 86 74 /* 87 * PPP ãããã³ã«ã¨ã³ããªæ§é ä½75 * PPP プロトコルエントリ構造体 88 76 */ 89 77 90 78 typedef struct t_ppp_protent { 91 uint16_t proto; /* ãããã³ã«çªå·*/92 void (*init) (void); /* åæåé¢æ°*/79 uint16_t proto; /* プロトコル番号 */ 80 void (*init) (void); /* 初期化関数 */ 93 81 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); /* クローズする。 */ 101 88 void (*datainput) (T_NET_BUF *data); 102 /* ãã¼ã¿å 103 ¥åé¢æ° */ 89 /* データ入力関数 */ 104 90 } T_PPP_PROTENT; 105 91 … … 107 93 108 94 /* 109 * å¤æ°95 * 変数 110 96 */ 111 97 112 extern T_PPP_PROTENT *protocols[]; /* ãããã³ã«è¡¨ */ 113 extern uint8_t ppp_phase; /* ãªã³ã¯ã®ç¶æ 114 */ 98 extern T_PPP_PROTENT *protocols[]; /* プロトコル表 */ 99 extern uint8_t ppp_phase; /* リンクの状態 */ 115 100 116 101 /* 117 * é¢æ°102 * 関数 118 103 */ 119 104 … … 121 106 122 107 /* 123 * PPP å¦çã¿ã¹ã¯108 * PPP 処理タスク 124 109 */ 125 110 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/route.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 84 72 85 73 /* 86 * TINET 1.1 ã¨ã®äºææ§ç¢ºä¿74 * TINET 1.1 との互換性確保 87 75 */ 88 76 -
Property svn:mime-type
changed from
-
rubycfg_asp/trunk/asp_dcre/tinet/net/tinet.h
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr; charset=UTF-8
r313 r315 5 5 * Tomakomai National College of Technology, JAPAN 6 6 * 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プロジェクトを免責すること. 36 25 * 37 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 38 ã 39 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 40 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 41 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 26 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 27 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 28 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 29 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 42 30 * 43 31 * @(#) $Id$ … … 50 38 51 39 /* 52 * TINET ç¬èªé¢æ°40 * TINET 独自関数 53 41 */ 54 42 -
Property svn:mime-type
changed from
Note:
See TracChangeset
for help on using the changeset viewer.