#include <stdio.h>
#include <netinet/ip.h> #define BUFF_SIZE 1024 int main(int argc,char *argv[])
{ int a = 0;
int iSock = 0, tmpSock = 0;
int opt = 0;
int iRet = 0;
int iRes = 0;
int iFileDesc = 0;
int iFileRet = 0;
unsigned short usPeerPort = 11000;
char *pPeerIP = "192.168.1.100";
unsigned char pRecvBuff[20480];
unsigned char pSendBuff[20480] = "I'm Zynq ^_^";
time_t now;
struct tm *p;
unsigned int uiCnt = 0;
unsigned int uiPeriod = 0;
unsigned int uiSpeed = 0;
unsigned int uiTmp = 0;
char filePre[20] = {0};
char fileName[100] = {0};
char cmd[100] = {0};
struct sockaddr_in addrLocal, addrPeer;
static unsigned int s_uiLen = 0; memset(pRecvBuff, 0x00, 1024); iSock = socket(AF_INET, SOCK_STREAM, 0);
if (iSock < 0)
{
printf("Create socket error![%d]\n", iSock);
return 0;
} //iRes = 1;
//ioctlsocket(iSock, FIONBIO, (u_long FAR*)&iRes); /* 设置本地的IP地址 */
addrLocal.sin_family = AF_INET;
addrLocal.sin_port = htons(8960);
addrLocal.sin_addr.s_addr = htonl(INADDR_ANY);
//addrLocal.sin_addr.S_un.S_addr = inet_addr("10.10.22.100"); ///* 设置远端的IP地址 --by cqs */
//addrPeer.sin_family = AF_INET;
//addrPeer.sin_port = htons(usPeerPort);
//addrPeer.sin_addr.s_addr = inet_addr(pPeerIP); iRet = bind(iSock, (struct sockaddr *)&addrLocal, sizeof(struct sockaddr));
if (iRet < 0)
{
printf("bind error\n");
return 0;
} iRet = listen(iSock, 5);
if (iRet < 0)
{
printf("listen error\n");
return 0;
} opt = sizeof(struct sockaddr);
tmpSock = accept(iSock, (struct sockaddr *)&addrPeer, &opt);
if (tmpSock > 0)
{
printf("accepted %d.\n", tmpSock);
}
else
{
printf("accepted error %d.\n", tmpSock);
} while(1)
{
iRet = recv(tmpSock, pRecvBuff, BUFF_SIZE, 0);
if (iRet > 0)
{
printf("%s.\n", pRecvBuff); }
} close(tmpSock);
close(iSock); return 0;
}

  

TCP Server—Linux的更多相关文章

  1. Socket TCP Server一个端口可以有多少个长连接?受到什么影响?linux最大文件句柄数量总结

    Socket TCP Server一个端口可以有多少个长连接? 网上答案很多,不知道那个才是正确的 理论上是无限的 16.Linux中,一个端口能够接受tcp链接数量的理论上限是? A.1024 B. ...

  2. 用qemu+gdb tcp server+CDT调试linux内核启动-起步

    用qemu+gdb tcp server+CDT调试linux内核启动-起步 说明: 环境信息与 用virtualbox+模拟串口+CDT调试linux内核 TCP IP协议栈-起步 提到的一样,并且 ...

  3. Linux TCP server 只能接受一个 TCP 连接

    #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <str ...

  4. [转]一个基于完成端口的TCP Server Framework,浅析IOCP

    [转]一个基于完成端口的TCP Server Framework,浅析IOCP http://www.cppblog.com/adapterofcoms/archive/2010/06/26/1187 ...

  5. Building a Non-blocking TCP server using OTP principles

    转自:https://erlangcentral.org/wiki/index.php/Building_a_Non-blocking_TCP_server_using_OTP_principles ...

  6. TCP server 为什么一个端口可以建立多个连接?

    https://segmentfault.com/q/1010000003101541 如果是tcp client用同一个本地端口去连不同的两个服务器ip,连第二个时就会提示端口已被占用.但服务器的监 ...

  7. Python之tcp server模拟Http通信

    1.python tcp server代码: import socket def main(): tcp_server_socket = socket.socket(socket.AF_INET, s ...

  8. socket - socketserver - start TCP server

    前面提到如何使用socket模块启动tcpserver: 创建socket:sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 绑定ip: ...

  9. [转] 3个学习Socket编程的简单例子:TCP Server/Client, Select

    以前都是采用ACE的编写网络应用,最近由于工作需要,需要直接只用socket接口编写CS的代码,重新学习这方面的知识,给出自己所用到的3个简单例子,都是拷贝别人的程序.如果你能完全理解这3个例子,估计 ...

随机推荐

  1. 一起买beta版UI测试

    一起买beta版UI测试 测试目的 保证代码质量,对各个单元进行测试,可以有效地保证代码的可靠性,让模块在与别的模块整合时出现更少的错误. UI测试 登录模块测试 ​ 登录模拟过程. 发帖模块测试 ​ ...

  2. Shell--用户配置

    vim /etc/profileexport PS1='\[\e[1;33m\]\h\[\e[m\] \t [\[\e[1;36m\]\w\[\e[m\]] [\u] '   export LANG= ...

  3. 【温故Delphi】Win32API之CreateMutex

    解决问题 如何让一个软件在一台机器上只能运行一个实例呢?这个问题用专业术语就是进程互斥.这个问题可以通过CreateMutex来解决. 进程互斥的核心思想:进程在启动时首先检查是否存在此进程实例,如果 ...

  4. js如何判断手机机型

    <script language="javascript"> window.onload = function () { alert("1"); v ...

  5. MySQL中GROUP_CONCAT中排序

    SELECT concat('',group_concat(option_name  )) as option_name,select_id            FROM zuyi_t_search ...

  6. Cauchy 级数浓缩判别法

  7. 第五章:Logistic回归

    本章内容 □sigmod函数和logistic回归分类器 □最优化理论初步□梯度下降最优化算法□数据中的缺失项处理 这会是激动人心的一章,因为我们将首次接触到最优化算法.仔细想想就会发现,其实我们日常 ...

  8. linux 重新编译低版本gcc

    编程实践中,可能会遇到需要较低版本gcc以兼容相应程序的需求,这时就需要我们将系统中默认的gcc版本较低,或者重新编译生成.(UBUNTU12.04下实现gcc4.2.3) 方法1: 对于UBUNTU ...

  9. Byte,TBytes,array of Byte, array[0..9] of byte的区别

    Byte前面已经说是存放bit的单元,是电脑内存的基本单位,byte表示0-255中的256个数字 下面为Byte的用法: var B: Byte; // 表示0-255的数字 begin B := ...

  10. pc端和android端应用程序测试有什么区别?(ps面试题)

    pc端和android端应用程序测试有什么区别?(ps面试题) [VIP7]大连-凭海临风(215687736) 2014/4/10 8:56:171.测试环境不同PC平台一般都是windows an ...