linux socket 中 accept() 问题
最近在看nc的代码 又学了点linux c语言 于是就写个小的shell重定向练练手
代码如下
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <time.h>
#include <strings.h>
//netcat [shell] [port]
int main(int argv , char** args)
{
struct sockaddr_in asddr , m_rec;
int in[2],out[2];
int pid , len;
int m_socket , m_return ,EchoCnt,BufferCnt;
char RecvBuffer[1];
char Buffer[1024];
char EchoBuffer[5];
char readbuf[1024];
int readlen , bytesSend;
if(argv < 3)
{
printf( "netcat [shell] [port]\n ");
exit(0);
}
pipe(in);
pipe(out);
len = sizeof(struct sockaddr_in);
m_socket = socket(PF_INET ,SOCK_STREAM , 0);
if(-1 == m_socket)
{
perror( "socket error: ");