Changeset 389 for azure_iot_hub/trunk/asp3_dcre/tinet/netapp/dhcp6_cli.h
- Timestamp:
- May 22, 2019, 10:03:37 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
azure_iot_hub/trunk/asp3_dcre/tinet/netapp/dhcp6_cli.h
- Property svn:keywords deleted
-
Property svn:mime-type
changed from
text/x-chdr
totext/x-chdr;charset=UTF-8
r388 r389 70 70 * Tomakomai National College of Technology, JAPAN 71 71 * 72 * ä¸è¨èä½æ¨©è 73 ã¯ï¼ä»¥ä¸ã® (1)ï½(4) ã®æ¡ä»¶ãï¼Free Software Foundation 74 * ã«ãã£ã¦å 75 ¬è¡¨ããã¦ãã GNU General Public License ã® Version 2 ã«è¨ 76 * è¿°ããã¦ããæ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ã¢ï¼æ¬ã½ããã¦ã§ã¢ 77 * ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹å¤ã»åé 78 å¸ï¼ä»¥ä¸ï¼ 79 * å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 80 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 81 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 82 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 83 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 84 * ç¨ã§ããå½¢ã§åé 85 å¸ããå ´åã«ã¯ï¼åé 86 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 87 * è 88 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 89 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 90 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 91 * ç¨ã§ããªãå½¢ã§åé 92 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 93 * ã¨ï¼ 94 * (a) åé 95 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 96 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 97 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 98 * (b) åé 99 å¸ã®å½¢æ 100 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 101 * å ±åãããã¨ï¼ 102 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 103 * 害ãããï¼ä¸è¨èä½æ¨©è 104 ããã³TOPPERSããã¸ã§ã¯ããå 105 責ãããã¨ï¼ 106 * 107 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 108 ã 109 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 110 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 111 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 72 * 上記著作権者は,以下の (1)~(4) の条件か,Free Software Foundation 73 * によって公表されている GNU General Public License の Version 2 に記 74 * 述されている条件を満たす場合に限り,本ソフトウェア(本ソフトウェア 75 * を改変したものを含む.以下同じ)を使用・複製・改変・再配布(以下, 76 * 利用と呼ぶ)することを無償で許諾する. 77 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 78 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 79 * スコード中に含まれていること. 80 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 81 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 82 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 83 * の無保証規定を掲載すること. 84 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 85 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 86 * と. 87 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 88 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 89 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 90 * 報告すること. 91 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 92 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 93 * 94 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 95 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 96 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 97 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 112 98 * 113 99 * @(#) $Id$ … … 123 109 124 110 /* 125 * DHCP ã¯ã©ã¤ã¢ã³ãã®ã¹ã¿ãã¯ãµã¤ãº126 */ 127 128 #define DHCP6_CLI_STACK_SIZE 1024 /* DHCP ã¯ã©ã¤ã¢ã³ãã¿ã¹ã¯ã®ã¹ã¿ãã¯ãµã¤ãº*/111 * DHCP クライアントのスタックサイズ 112 */ 113 114 #define DHCP6_CLI_STACK_SIZE 1024 /* DHCP クライアントタスクのスタックサイズ */ 129 115 130 116 /* 131 * DHCP ã¯ã©ã¤ã¢ã³ãã®åªå 132 度 133 */ 134 135 #define DHCP6_CLI_MAIN_PRIORITY 5 /* DHCP ã¯ã©ã¤ã¢ã³ãã¿ã¹ã¯ã®åªå 136 度 */ 117 * DHCP クライアントの優先度 118 */ 119 120 #define DHCP6_CLI_MAIN_PRIORITY 5 /* DHCP クライアントタスクの優先度 */ 137 121 138 122 /* 139 * ã³ã³ãã¤ã«æã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³140 */ 141 142 /* 143 * DHCPv6 åä½ã¢ã¼ã144 * 145 * #define DHCP6_CLI_CFG_MODE ã§æå®ããã146 * æå®ããã¦ããªããã°ãã¹ãã¼ãã¬ã¹ã«è¨å®ããã147 * 148 */ 149 150 #define DHCP6_CLI_CFG_STATELESS 0 /* ã¹ãã¼ãã¬ã¹ã«è¨å®ããã*/151 #define DHCP6_CLI_CFG_STATEFULL 1 /* ã¹ãã¼ããã«ã«è¨å®ããã*/152 #define DHCP6_CLI_CFG_RA 2 /* RA ã® M/O ãããã«ããè¨å®ããã*/123 * コンパイル時コンフィギュレーション 124 */ 125 126 /* 127 * DHCPv6 動作モード 128 * 129 * #define DHCP6_CLI_CFG_MODE で指定する。 130 * 指定されていなければ、ステートレスに設定する。 131 * 132 */ 133 134 #define DHCP6_CLI_CFG_STATELESS 0 /* ステートレスに設定する。 */ 135 #define DHCP6_CLI_CFG_STATEFULL 1 /* ステートフルに設定する。 */ 136 #define DHCP6_CLI_CFG_RA 2 /* RA の M/O ビットにより設定する。 */ 153 137 #define DHCP6_CLI_CFG_MODE_DEFAULT DHCP6_CLI_CFG_STATELESS 154 138 155 /* IA ã®è¨å®*/139 /* IA の設定 */ 156 140 #define DHCP6_CLI_CFG_IA_NA 1 157 141 //#define DHCP6_CLI_CFG_IA_TA 1 158 142 //#define DHCP6_CLI_CFG_IA_PD 1 159 143 160 /* Rapid-commit ã®æå®*/144 /* Rapid-commit の指定 */ 161 145 //#define DHCP6_CLI_CFG_RAPID_COMMIT 1 162 146 163 /* æ¨å¥¨åº¦ã®å®ç¾©*/164 #define DHCP6_CLI_CFG_PREFER_IA 50 /* IA_NA/TA/PD å½ããã®æ¨å¥¨åº¦*/165 #define DHCP6_CLI_CFG_PREFER_IAADDR 100 /* ã¢ãã¬ã¹å½ããã®æ¨å¥¨åº¦*/166 167 /* DHCPv6 ã¯ã©ã¤ã¢ã³ãã¡ãã»ã¼ã¸ã®åä¿¡ãªã¹ããµã¤ãºï¼2以ä¸æå®ãããã¨ï¼*/147 /* 推奨度の定義 */ 148 #define DHCP6_CLI_CFG_PREFER_IA 50 /* IA_NA/TA/PD 当たりの推奨度 */ 149 #define DHCP6_CLI_CFG_PREFER_IAADDR 100 /* アドレス当たりの推奨度 */ 150 151 /* DHCPv6 クライアントメッセージの受信リストサイズ(2以上指定すること) */ 168 152 #define NUM_DHCP6_CLI_MSG_LIST 3 169 153 170 154 /* 171 * DHCPv6 ã¯ã©ã¤ã¢ã³ãã¡ãã»ã¼ã¸æ§é ä½æ°ãå¤æ´ç¦æ¢ã172 * +1 ã¯éä¿¡ç¨155 * DHCPv6 クライアントメッセージ構造体数【変更禁止】 156 * +1 は送信用 173 157 */ 174 158 #define NUM_MPF_DHCP6_CLI_MSG (NUM_DHCP6_CLI_MSG_LIST+1) 175 159 176 /* DHCP å¿ 177 é ãªãã·ã§ã³ãªã¹ã */ 160 /* DHCP 必須オプションリスト */ 178 161 179 162 #ifndef DHCP6_CLI_CFG_REQUIRED_OLIST … … 191 174 #endif /* of #ifndef DHCP6_CLI_CFG_REQUIRED_OLIST */ 192 175 193 /* DHCP è¦æ±ãªãã·ã§ã³ãªã¹ã*/176 /* DHCP 要求オプションリスト */ 194 177 195 178 #ifndef DHCP6_CLI_CFG_REQUEST_OLIST … … 208 191 209 192 /* 210 * ã¿ã¤ã ã¢ã¦ãå®æ° 211 * RFC3315 ã«è¦å®ãããã¿ã¤ãã³ã°å®æ°ã¯ dhcp6.h åç 212 § 213 */ 214 215 /* æ¨æºã¡ãã»ã¼ã¸ã®åéä¿¡ã¿ã¤ã ã¢ã¦ã */ 193 * タイムアウト定数 194 * RFC3315 に規定されたタイミング定数は dhcp6.h 参照 195 */ 196 197 /* 標準メッセージの再送信タイムアウト */ 216 198 #define TMO_DHCP6C_NORMAL ULONG_C(60*1000) 217 199 218 /* æ¨æºè¦æ±ãªã¼ã¹æé*/200 /* 標準要求リース時間 */ 219 201 #define TMO_DHCP6C_REQ_LEASE ULONG_C(7200*1000) 220 202 221 /* ã¡ãã»ã¼ã¸æ§é ä½ç²å¾ã¿ã¤ã ã¢ã¦ã*/203 /* メッセージ構造体獲得タイムアウト */ 222 204 #define TMO_DHCP6C_MPF_GET ULONG_C(1000) 223 205 224 /* ã¡ãã»ã¼ã¸åä¿¡ã¿ã¤ã ã¢ã¦ã*/206 /* メッセージ受信タイムアウト */ 225 207 #define TMO_DHCP6C_RCV_DAT ULONG_C(1000) 226 208 227 209 /* 228 * DHCPv6 ã¯ã©ã¤ã¢ã³ãã¡ãã»ã¼ã¸æ§é ä½210 * DHCPv6 クライアントメッセージ構造体 229 211 */ 230 212 231 213 typedef struct dhcp6_cli_msg { 232 /* 4 ãã¤ãå¢çã«ã¢ã©ã¤ã³ããã*/233 T_DHCP6_MSG msg; /* DHCPv6 ã¡ãã»ã¼ã¸æ§é ä½*/234 struct dhcp6_cli_msg *next; /* ãªã¹ãã®æ¬¡ã®ã¡ãã»ã¼ã¸æ§é ä½*/235 SYSTIM rcv_time; /* åä¿¡ããæé*/236 T_IPV6EP srv; /* ãµã¼ãã®IPv6ã¢ãã¬ã¹/ãã¼ãçªå·*/237 uint16_t len; /* msg ã®æå¹é·*/238 uint16_t prefer; /* msg ã®æ¨å¥¨åº¦*/239 uint16_t status; /* STATUS CODE ãªãã·ã§ã³ã®status */214 /* 4バイト境界にアラインする。*/ 215 T_DHCP6_MSG msg; /* DHCPv6 メッセージ構造体 */ 216 struct dhcp6_cli_msg *next; /* リストの次のメッセージ構造体 */ 217 SYSTIM rcv_time; /* 受信した時間 */ 218 T_IPV6EP srv; /* サーバのIPv6アドレス/ポート番号 */ 219 uint16_t len; /* msg の有効長 */ 220 uint16_t prefer; /* msg の推奨度 */ 221 uint16_t status; /* STATUS CODE オプションの status */ 240 222 } T_DHCP6_CLI_MSG; 241 223 242 /* prefer ã®ãã©ã° */ 243 244 #define DHCP6_ClI_MSG_PREFER_ADDR UINT_C(0x8000) /* ã¢ãã¬ã¹æ 245 å ±ãã */ 246 #define DHCP6_ClI_MSG_PREFER_REQUIRED UINT_C(0x4000) /* å¿ 247 é ãªãã·ã§ã³ãã */ 248 #define DHCP6_ClI_MSG_PREFER_REQUEST UINT_C(0x2000) /* è¦æ±ãªãã·ã§ã³ãã */ 249 #define DHCP6_ClI_MSG_PREFER_OPTION UINT_C(0x1000) /* PREFER ãªãã·ã§ã³ãã */ 224 /* prefer のフラグ */ 225 226 #define DHCP6_ClI_MSG_PREFER_ADDR UINT_C(0x8000) /* アドレス情報あり */ 227 #define DHCP6_ClI_MSG_PREFER_REQUIRED UINT_C(0x4000) /* 必須オプションあり */ 228 #define DHCP6_ClI_MSG_PREFER_REQUEST UINT_C(0x2000) /* 要求オプションあり */ 229 #define DHCP6_ClI_MSG_PREFER_OPTION UINT_C(0x1000) /* PREFER オプションあり */ 250 230 #define DHCP6_ClI_MSG_PREFER_FLAG_MASK UINT_C(0xf000) 251 231 #define DHCP6_ClI_MSG_PREFER_VALUE_MASK (~(DHCP6_ClI_MSG_PREFER_FLAG_MASK)) 252 232 253 233 /* 254 * STATUS CODE ãªãã·ã§ã³ãç¡ãæã®å¤234 * STATUS CODE オプションが無い時の値 255 235 */ 256 236 … … 258 238 259 239 /* 260 * ã³ã¼ã«ããã¯é¢æ°240 * コールバック関数 261 241 */ 262 242 … … 264 244 265 245 /* 266 * ã¿ã¹ã¯246 * タスク 267 247 */ 268 248 … … 270 250 271 251 /* 272 * é¢æ°252 * 関数 273 253 */ 274 254
Note:
See TracChangeset
for help on using the changeset viewer.