| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- #ifndef __TZ_TEEI_H__
- #define __TZ_TEEI_H__
- #define socket_buffer_size 2048
- #define ARGS_BLOCK_SIZE 1024
- struct sockaddr {
- unsigned short sa_family; /* 地址族 */
- char sa_data[14]; /* 14字节协议地址 */
- };
- struct in_addr {
- unsigned long s_addr; /* that’s a 32-bit long, or 4 bytes */
- };
- struct sockaddr_in {
- short int sin_family; /* 地址族 */
- unsigned short int sin_port; /* 端口号 */
- struct in_addr sin_addr; /* IP地址 */
- unsigned char sin_zero[8]; /* 填充0以保持与struct sockaddr同样大小 */
- };
- struct TEEI_socket_command {
- int func;
- int cmd_size;
- union func_arg {
- char raw[ARGS_BLOCK_SIZE];
- struct func_socket {
- int af;
- int type;
- int protocol;
- } func_socket_args;
- struct func_connect {
- int sockfd;
- struct sockaddr ob_addr;
- int addrlen;
- } func_connect_args;
- struct func_bind {
- int sockfd;
- struct sockaddr ob_addr;
- int addrlen;
- } func_bind_args;
- struct func_listen {
- int sockfd;
- int backlog;
- } func_listen_args;
- struct func_accept {
- int sockfd;
- struct sockaddr ob_addr;
- int addrlen;
- } func_accept_args;
- struct func_send {
- int sockfd;
- void *buf;
- int len;
- int flags;
- } func_send_args;
- #define func_recv func_send
- #define func_recv_args func_send_args
- #define func_recv_send func_send
- #define func_recv_send_args func_send_args
- struct func_close {
- int sockfd;
- } func_close_args;
- struct func_inet_addr {
- char ip_addr[17];
- } func_inet_addr_args;
- struct func_htons {
- unsigned short portnum;
- } func_htons_args;
- struct func_setsockopt {
- int fd;
- int level;
- int optname;
- struct timeval;
- int optlen;
- } func_setsockopt_args;
- } args;
- };
- union TEEI_socket_response_type {
- int value;
- uint32_t addr;
- bool hasError;
- unsigned short portnum;
- unsigned int transSize;
- struct response_func_recv {
- void *buf;
- unsigned int size;
- } recv;
- };
- #if 0
- #define TEEI_pointer_message (void *)
- #define TEEI_CREATE_MESSAGE_FIALED (-1)
- #define MESSAGE_HEADER(msg) ((struct TEEI_message_header *)msg)
- #define MESSAGE_PAYLOAD(msg) (void *)(msg + sizeof(TEEI_message_header))
- /**
- * get size of a message.
- */
- inline int TEEI_sizeof_message(TEEI_pointer_message pMessage)
- {
- TEEI_message_header *msg = (TEEI_message_header *) pMessage;
- return msg->payload_size + sizeof(TEEI_message_header);
- }
- /*
- * Create a memory block as a message.
- * payload_size: is the payload size.
- * Whole message size = sizeof(TEEI_message_header) + payload_size
- *
- * return message pointer. DO NOT FORGET freeing this block!!!
- * TEEI_CREATE_MESSAGE_FIALED if malloc failed.
- */
- TEEI_pointer_message create_TEEI_message_with_payload_size(unsigned long payload_size);
- /**
- * create a context type message with context name;
- */
- TEEI_pointer_message create_TEEI_message_context_init(const char *TEE_name, int TEE_name_size);
- #endif
- #endif /* __TZ_TEEI_H_ */
|