source: uKadecot/trunk/uip/task/uip_adpt.h@ 108

Last change on this file since 108 was 108, checked in by coas-nagasima, 9 years ago

MIMEプロパティの変更

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
  • Property svn:mime-type set to text/x-chdr; charset=SHIFT_JIS
File size: 3.2 KB
Line 
1/*
2 * TOPPERS ECHONET Lite Communication Middleware
3 *
4 * Copyright (C) 2014 Cores Co., Ltd. Japan
5 *
6 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
7 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
8 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
9 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
10 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
11 * スコード中に含まれていること.
12 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
13 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用
14 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記
15 * の無保証規定を掲載すること.
16 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
17 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ
18 * と.
19 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
20 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
21 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
22 * 報告すること.
23 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
24 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
25 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
26 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
27 * 免責すること.
28 *
29 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
30 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
31 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
32 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
33 * の責任を負わない.
34 *
35 * @(#) $Id: uip_adpt.h 108 2015-06-11 09:15:46Z coas-nagasima $
36 */
37
38#ifndef __UIP_ADPT_H__
39#define __UIP_ADPT_H__
40
41#if defined __cplusplus
42extern "C" {
43#endif
44
45/*
46 * IPv4 アドレス
47 */
48
49#define T_IN4_ADDR uip_ipaddr_t
50
51/*
52 * ITRON TCP/IPv4 アドレス/ポート番号の定義
53 */
54
55typedef struct t_ipv4ep {
56 T_IN4_ADDR ipaddr; /* IPv4アドレス */
57 u16_t portno; /* ポート番号 */
58} T_IPV4EP;
59
60#define MAKE_IPV4_ADDR(a,b,c,d) a,b,c,d
61
62typedef struct t_tcp_ccep
63{
64 T_IN4_ADDR ripaddr; /* リモートIPv4アドレス */
65 u16_t rport; /* リモートポート番号 */
66 u16_t lport; /* ローカルポート番号 */
67 void(*callback)(struct uip_conn *uip_conn, int fncd, void *p_parblk);
68} T_TCP_CCEP;
69
70struct uip_conn *tcp_acre_cep(const T_TCP_CCEP *pk_ccep);
71int tcp_snd_dat(struct uip_conn *cepid, T_IPV4EP *p_dstaddr, void *data, int len);
72int tcp_rcv_dat(struct uip_conn *cepid, T_IPV4EP *p_srcaddr, void *data, int len);
73
74typedef struct t_udp_ccep
75{
76 T_IN4_ADDR ripaddr; /* リモートIPv4アドレス */
77 u16_t rport; /* リモートポート番号 */
78 u16_t lport; /* ローカルポート番号 */
79 void (*callback)(struct uip_udp_conn *uip_udp_conn, int fncd, void *p_parblk);
80} T_UDP_CCEP;
81
82struct uip_udp_conn *udp_acre_cep(const T_UDP_CCEP *pk_ccep);
83int udp_snd_dat(struct uip_udp_conn *cepid, T_IPV4EP *p_dstaddr, void *data, int len);
84int udp_rcv_dat(struct uip_udp_conn *cepid, T_IPV4EP *p_srcaddr, void *data, int len);
85
86ER uip_start();
87char *ip2str(char *buf, const T_IN4_ADDR ipaddr);
88ID uip_getid(struct uip_conn *conn);
89struct uip_conn *uip_getconn(ID connid);
90
91#if defined __cplusplus
92}
93#endif
94
95#endif /* __UIP_ADPT_H__ */
Note: See TracBrowser for help on using the repository browser.