⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tcpclient.c

📁 RTL-lwIP is the porting of the lwIP TCP/IP stack to RTLinux-GPL.The focus of the RTL-lwIP stack is
💻 C
字号:
/******************************************************************************//* This file has been written by Sergio Perez Alca駃z <serpeal@upvnet.upv.es> *//*            Departamento de Inform醫ica de Sistemas y Computadores          *//*            Universidad Polit閏nica de Valencia                             *//*            Valencia (Spain)                                                *//*            Date: April 2003                                                *//******************************************************************************/#include <linux/module.h>#include <linux/kernel.h>#include "lwip/ip_addr.h"#include "lwip/sys.h"#include "lwip/api.h"#include <rtl_sched.h>pthread_t rtl_lwip_tcpclient;/*-----------------------------------------------------------------------------------*/static void * tcp_client(void *arg){  static struct netconn *conn;  struct ip_addr ipaddr;  char data[6];  sys_thread_register((void *) pthread_self());   rtl_printf("TCP Client thread : 0x%x\n",pthread_self());    conn = netconn_new(NETCONN_TCP);  IP4_ADDR(&ipaddr, 158,42,58,141);  netconn_bind(conn, &ipaddr, 7);  IP4_ADDR(&ipaddr, 158,42,58,139);  rtl_printf("Netconn_connect\n");  netconn_connect(conn, &ipaddr, 10);  data[0] = 'h';  data[1] = 'e';  data[2] = 'l';  data[3] = 'l';  data[4] = 'o';  data[5] = '\0';    rtl_printf("Echo TCP client sending: %s\n",data);    netconn_write(conn,data,6,NETCONN_COPY);    netconn_delete(conn);    return sys_thread_exit();}/*-----------------------------------------------------------------------------------*/int init_module(void){  pthread_attr_t attr;  printk("\n\nEcho TCP client module inserted.\n\n");   pthread_attr_init(&attr);  pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);  if(pthread_create(&(rtl_lwip_tcpclient),&attr, tcp_client, NULL)) {    rtl_printf("ERROR: cannot create pthread!\n");    return -1;  } return 0;}/*-----------------------------------------------------------------------------------*/void cleanup_module(void){  pthread_delete_np(rtl_lwip_tcpclient);  printk("\n\nEcho TCP client module removed.\n\n"); }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -