Changeset 318 for asp3_gr_sakura/trunk/tinet/netapp/netapp_subr.c
- Timestamp:
- Aug 3, 2017, 10:46:41 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
asp3_gr_sakura/trunk/tinet/netapp/netapp_subr.c
- Property svn:keywords deleted
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r317 r318 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 … … 88 76 89 77 /* 90 * IPv6 㨠IPv4 ã§å¼æ°ãç°ãªãé¢æ°ã®ã³ã³ãã¤ã«78 * IPv6 と IPv4 で引数が異なる関数のコンパイル 91 79 */ 92 80 … … 312 300 313 301 /* 314 * å¤æ°302 * 変数 315 303 */ 316 304 … … 325 313 326 314 /* 327 * ã·ãªã¢ã«ãã¼ãã¸ã®æ¸å¼ä»æåååºåã©ã¤ãã©ãª315 * シリアルポートへの書式付文字列出力ライブラリ 328 316 */ 329 317 … … 331 319 332 320 /* 333 * æ°å¤å¤æã®ããã®å¤æ表321 * 数値変換のための変換表 334 322 */ 335 323 … … 338 326 339 327 /* 340 * netapp_rand -- ä¹±æ°ãè¿ãã328 * netapp_rand -- 乱数を返す。 341 329 */ 342 330 … … 349 337 350 338 /* 351 * srand -- ä¹±æ°ãåæåããã339 * srand -- 乱数を初期化する。 352 340 */ 353 341 … … 364 352 365 353 /* 366 * cons_putchar -- ã·ãªã¢ã«ãã¼ãã¸ã®æååºå354 * cons_putchar -- シリアルポートへの文字出力 367 355 */ 368 356 … … 374 362 375 363 /* 376 * cons_getchar -- ã·ãªã¢ã«ãã¼ãããã®æåå 377 ¥å 364 * cons_getchar -- シリアルポートからの文字入力 378 365 */ 379 366 … … 392 379 393 380 /* 394 * cons_putnumber -- cons_printf ã®æ°å¤å¤æ381 * cons_putnumber -- cons_printf の数値変換 395 382 */ 396 383 … … 425 412 426 413 pad = ix; 427 if (!left) /* å³è©°ã*/414 if (!left) /* 右詰め */ 428 415 for ( ; pad < width; pad ++) 429 416 cons_putchar(portid, padchar); … … 432 419 cons_putchar(portid, digits[ix]); 433 420 434 if (left) /* 左詰ã*/421 if (left) /* 左詰め */ 435 422 for ( ; pad < width; pad ++) 436 423 cons_putchar(portid, padchar); … … 440 427 441 428 /* 442 * put_ipv4addr -- IPv4 ã¢ãã¬ã¹åºå429 * put_ipv4addr -- IPv4 アドレス出力 443 430 */ 444 431 … … 446 433 put_ipv4addr (ID portid, T_IN4_ADDR *addr, int_t width) 447 434 { 448 int_t len = 3; /* 3 㯠'.' ã®æåæ°*/435 int_t len = 3; /* 3 は '.' の文字数 */ 449 436 450 437 len += cons_putnumber(portid, (*addr >> 24) & 0xff, 10, radhex, 0, false, ' '); … … 463 450 464 451 /* 465 * ipv6addr -- IPv6 ã¢ãã¬ã¹åºå452 * ipv6addr -- IPv6 アドレス出力 466 453 */ 467 454 … … 522 509 523 510 /* 524 * put_macaddr -- MAC ã¢ãã¬ã¹åºå511 * put_macaddr -- MAC アドレス出力 525 512 */ 526 513 … … 543 530 544 531 /* 545 * cons_printf -- ã·ãªã¢ã«ãã¼ãã¸ã®æ¸å¼ä»æåååºå532 * cons_printf -- シリアルポートへの書式付文字列出力 546 533 */ 547 534 … … 557 544 va_start(ap, fmt); 558 545 while ((ch = *fmt ++) != '\0') { 559 if (ch != '%') { /* æ¸å¼æå®ä»¥å¤*/546 if (ch != '%') { /* 書式指定以外 */ 560 547 cons_putchar(portid, (char)ch); 561 548 continue; … … 565 552 padchar = ' '; 566 553 567 if (*fmt == '-') { /* 左詰ã*/554 if (*fmt == '-') { /* 左詰め */ 568 555 fmt ++; 569 556 left = -1; … … 572 559 left = 1; 573 560 574 if ((ch = *fmt ++) == '0') { /* ä¸ä½æ¡ã®0 */561 if ((ch = *fmt ++) == '0') { /* 上位桁の 0 */ 575 562 padchar = '0'; 576 563 ch = *fmt ++; 577 564 } 578 565 579 while ('0' <= ch && ch <= '9') { /* åºåå¹ 580 */ 566 while ('0' <= ch && ch <= '9') { /* 出力幅 */ 581 567 width = width * 10 + ch - '0'; 582 568 ch = *fmt ++; 583 569 } 584 570 585 while (ch == 'l') { /* long (long) ã®æå®*/571 while (ch == 'l') { /* long (long) の指定 */ 586 572 longflag ++; 587 573 ch = *fmt ++; 588 574 } 589 575 590 while (ch == 'h') { /* short ã®æå®*/576 while (ch == 'h') { /* short の指定 */ 591 577 shortflag ++; 592 578 ch = *fmt ++; … … 689 675 690 676 /* 691 * host2msg16 -- 16 ãããã®å¤ãããã¤ããªã¼ãã¼ã調æ´ãã¦ã¡ãã»ã¼ã¸ã«æ¸ãè¾¼ãã677 * host2msg16 -- 16ビットの値を、バイトオーダーを調整してメッセージに書き込む。 692 678 */ 693 679 … … 702 688 703 689 /* 704 * host2msg32 -- 32 ãããã®å¤ãããã¤ããªã¼ãã¼ã調æ´ãã¦ã¡ãã»ã¼ã¸ã«æ¸ãè¾¼ãã690 * host2msg32 -- 32ビットの値を、バイトオーダーを調整してメッセージに書き込む。 705 691 */ 706 692 … … 715 701 716 702 /* 717 * msg2host16 -- 16 ãããã®å¤ãããã¤ããªã¼ãã¼ã調æ´ãã¦ã¡ãã»ã¼ã¸ããèªã¿åºãã703 * msg2host16 -- 16ビットの値を、バイトオーダーを調整してメッセージから読み出す。 718 704 */ 719 705 … … 728 714 729 715 /* 730 * msg2host32 -- 32 ãããã®å¤ãããã¤ããªã¼ãã¼ã調æ´ãã¦ã¡ãã»ã¼ã¸ããèªã¿åºãã716 * msg2host32 -- 32ビットの値を、バイトオーダーを調整してメッセージから読み出す。 731 717 */ 732 718 … … 741 727 742 728 /* 743 * skip_blanks -- 空ç½ã¨ TAB ãã¹ãããããã729 * skip_blanks -- 空白と TAB をスキップする。 744 730 */ 745 731 … … 753 739 754 740 /* 755 * get_ipv4addr -- æååã® IPv4 ã¢ãã¬ã¹ã T_IN4_ADDR å¤ã«å¤æããã741 * get_ipv4addr -- 文字列の IPv4 アドレスを T_IN4_ADDR 値に変換する。 756 742 */ 757 743 … … 780 766 781 767 /* 782 * get_ipv6addr -- æååã® IPv6 ã¢ãã¬ã¹ã T_IN6_ADDR å¤ã«å¤æããã768 * get_ipv6addr -- 文字列の IPv6 アドレスを T_IN6_ADDR 値に変換する。 783 769 */ 784 770 … … 792 778 793 779 /* 794 * IPv4 ã¢ãã¬ã¹ï¼æ°å.ï¼ãæ¤åºããã IPv4 ã¢ãã¬ã¹ã¨ãã¦å 795 ¥åãã 796 * IPv4 å°å½±ã¢ãã¬ã¹ã«å¤æããã 780 * IPv4 アドレス(数字.)を検出したら IPv4 アドレスとして入力し、 781 * IPv4 射影アドレスに変換する。 797 782 */ 798 783 for (ipv4line = line; '0' <= *ipv4line && *ipv4line <= '9'; ipv4line ++) … … 843 828 844 829 /* 845 * ãããã°è¡å 846 ¥å 830 * デバッグ行入力 847 831 */ 848 832 … … 876 860 877 861 /* 878 * get_int -- æ´æ°å¤æ862 * get_int -- 整数変換 879 863 */ 880 864 … … 904 888 905 889 /* 906 * get_xuint -- 符å·ãªãæ´æ° (16é²) å¤æ890 * get_xuint -- 符号なし整数 (16進) 変換 907 891 */ 908 892 … … 929 913 930 914 /* 931 * dns_strtype -- DNS ã® type ã®æååãè¿ãã915 * dns_strtype -- DNS の type の文字列を返す。 932 916 */ 933 917 … … 961 945 962 946 /* 963 * dns_strclass -- DNS ã® class ã表示ããã947 * dns_strclass -- DNS の class を表示する。 964 948 */ 965 949 … … 978 962 979 963 /* 980 * resolv_hoststr -- æååã®FQDNã»ãã¹ãåã»IPv6/IPv4 ã¢ãã¬ã¹ã解æããã964 * resolv_hoststr -- 文字列のFQDN・ホスト名・IPv6/IPv4 アドレスを解析する。 981 965 */ 982 966 … … 1052 1036 1053 1037 /* 1054 * show_dns_domain_name -- DNS ã®ãã¡ã¤ã³åã表示ããã1038 * show_dns_domain_name -- DNS のドメイン名を表示する。 1055 1039 */ 1056 1040 … … 1080 1064 1081 1065 /* 1082 * resolv_options -- ã¢ãã¬ã¹è§£æ±ºã®ãªãã·ã§ã³è§£æ1066 * resolv_options -- アドレス解決のオプション解析 1083 1067 */ 1084 1068 … … 1158 1142 if (*flags | DNS_LUP_FLAGS_PROTO_IPV6) { 1159 1143 /* 1160 * IPv6 㧠DNS ãµã¼ãã«ç 1161 §ä¼ãããã¨ãæå®ããã¦ãã 1162 * ãµã¼ãã® IPv6 ã¢ãã¬ã¹ãæªå®ç¾©ã®æã¯ãæå®ãå¤ãã 1144 * IPv6 で DNS サーバに照会することが指定されても、 1145 * サーバの IPv6 アドレスが未定義の時は、指定を外す。 1163 1146 */ 1164 1147 dns_in6_get_addr(&in6_addr); … … 1173 1156 if (*flags | DNS_LUP_FLAGS_PROTO_IPV4) { 1174 1157 /* 1175 * IPv4 㧠DNS ãµã¼ãã«ç 1176 §ä¼ãããã¨ãæå®ããã¦ãã 1177 * ãµã¼ãã® IPv4 ã¢ãã¬ã¹ãæªå®ç¾©ã®æã¯ãæå®ãå¤ãã 1158 * IPv4 で DNS サーバに照会することが指定されても、 1159 * サーバの IPv4 アドレスが未定義の時は、指定を外す。 1178 1160 */ 1179 1161 dns_in4_get_addr(&in4_addr); … … 1190 1172 1191 1173 /* 1192 * lookup_ipaddr -- ãã¹ãåã»ãªãã©ã«ã®IPã¢ãã¬ã¹ãIP ã¢ãã¬ã¹ã«å¤æããã1174 * lookup_ipaddr -- ホスト名・リテラルのIPアドレスをIP アドレスに変換する。 1193 1175 */ 1194 1176
Note:
See TracChangeset
for help on using the changeset viewer.