(toppers-users 2644) Re: TCP 受け口のポート番号変更について

ABE Tsukasa abe @ jo.tomakomai-ct.ac.jp
2007年 7月 20日 (金) 14:18:59 JST


シチズンTIC 平野様

苫小牧高専、情報工学科の阿部です。

>TINET で TCP エコーサーバ・タスクを参考にしてサーバアプリケーションを作
>成しています.
>
>開発環境
>ターゲット:SH3(SH7727スタータキット,北斗電子
>                 http://www.hokutodenshi.co.jp/7789/TOPPERS.htm)
>TOPPERS/JSP : 1.4.2
>TINET       : 1.3
>OS          : Windows XP Pro SP2
>Cygwin      : 1.5.5-1
>gcc         : 2.95.3
>newlib      : 1.11.0
>BinUtils    : 2.14
>
>サンプルのエコーサーバ・タスクの TCP 受け口のポート番号をタスク起動前に
>変更したいと思っています.別途メインタスクなどで EEPROM などから読み込ん
>だ値を TCP 受け口のポート番号にしようと CFG ファイルに変更を加えました.
>(UH server_port として extern 宣言済みとする)
> TCP_CRE_REP (TCP_ECHO_SRV_REPID, { 0, { IPV4_ADDRANY, server_port } });
>のように変更を加えましたが下記のエラーが発生してしまいます.
>> tinet_cfg.c:35: initializer element is not constant
>> tinet_cfg.c:35: (near initialization for
>`_tinet_tcp_crep[0].myaddr.portno')
>
>上記の方法でエラーを解消する手立ては有りますでしょうか?また,リコンパイ
>ルせず TCP 受け口のポート番号を変更する方法はありますでしょうか?

TINET リリース 1.3 では、TCP 受付口の動的生成はサポートしていませんので、
公式的には不可能です。

これは、あくまでも自己責任でお願いしますが、
静的 API で、適当な定数を設定しておき、
タスクの起動前に変更することは出来るかもしれません。

また、次期リリースの TINET リリース 1.4 では、TCP 受付口の動的生成を
サポートします。TOPPERS プロジェクトのメンバ様であれば、
β版を評価していただくことが出来ます。
なお、今年中には、TINET リリース1.4 を配布したいと思っています。

--
.\" 苫小牧工業高等専門学校 情報工学科 教授 阿部 司
.\" E-mail: abe @ jo.tomakomai-ct.ac.jp  TEL/FAX: 0144-67-8937