equal
deleted
inserted
replaced
496 return aSock; |
496 return aSock; |
497 } |
497 } |
498 |
498 |
499 void* SocketWrite2(void* aSock) |
499 void* SocketWrite2(void* aSock) |
500 { |
500 { |
501 int *sock_fd = (int*)aSock; |
501 // int *sock_fd = (int*)aSock; |
502 ((int*)aSock)[Write2Err] = KErrNone; |
502 ((int*)aSock)[Write2Err] = KErrNone; |
503 |
503 |
504 char buf[] = "Write from second thread"; |
504 char buf[] = "Write from second thread"; |
505 // sleep(2); |
505 // sleep(2); |
506 int ret = write(((int*)aSock)[1],buf,sizeof(buf)); |
506 int ret = write(((int*)aSock)[1],buf,sizeof(buf)); |
513 return aSock; |
513 return aSock; |
514 } |
514 } |
515 |
515 |
516 void* PipeWrite(void* aPipe) |
516 void* PipeWrite(void* aPipe) |
517 { |
517 { |
518 int *pipe_fd = (int*)aPipe; |
518 //int *pipe_fd = (int*)aPipe; |
519 char buf[] = "Pipe Write"; |
519 char buf[] = "Pipe Write"; |
520 sleep(1); |
520 sleep(1); |
521 int ret = write(((int*)aPipe)[PipeWriteDesc],buf,sizeof(buf)); |
521 int ret = write(((int*)aPipe)[PipeWriteDesc],buf,sizeof(buf)); |
522 FlgReadWrite = 1; |
522 FlgReadWrite = 1; |
523 if (ret < 0) |
523 if (ret < 0) |
628 sock_fds[1] = accept(listen_sock,(struct sockaddr*)&dest,&size); |
628 sock_fds[1] = accept(listen_sock,(struct sockaddr*)&dest,&size); |
629 /********************************************************************************/ |
629 /********************************************************************************/ |
630 |
630 |
631 /*************************** Pipe Creation and Writing **************************/ |
631 /*************************** Pipe Creation and Writing **************************/ |
632 int fd[2]; |
632 int fd[2]; |
633 char buf1[50]= "Write from main thread"; |
633 //char buf1[50]= "Write from main thread"; |
634 INFO_PRINTF1(_L("Before Pipe ")); |
634 INFO_PRINTF1(_L("Before Pipe ")); |
635 if ( pipe(fd) < 0 ) |
635 if ( pipe(fd) < 0 ) |
636 { |
636 { |
637 return KErrGeneral; |
637 return KErrGeneral; |
638 } |
638 } |
1002 TBool stdinpass = EFalse; |
1002 TBool stdinpass = EFalse; |
1003 fd_set readfds; |
1003 fd_set readfds; |
1004 fd_set writefds; |
1004 fd_set writefds; |
1005 fd_set exceptfds; |
1005 fd_set exceptfds; |
1006 int maxfd = STDIN_FILENO; |
1006 int maxfd = STDIN_FILENO; |
1007 int select_ret = 0; |
1007 // int select_ret = 0; |
1008 maxfd = STDIN_FILENO; |
1008 maxfd = STDIN_FILENO; |
1009 FD_ZERO(&writefds); |
1009 FD_ZERO(&writefds); |
1010 FD_SET(STDIN_FILENO,&writefds); |
1010 FD_SET(STDIN_FILENO,&writefds); |
1011 select_ret = select(maxfd+1,&readfds,&writefds,&exceptfds,NULL); |
1011 /*select_ret =*/ select(maxfd+1,&readfds,&writefds,&exceptfds,NULL); |
1012 if( FD_ISSET(STDIN_FILENO,&writefds) ) |
1012 if( FD_ISSET(STDIN_FILENO,&writefds) ) |
1013 { |
1013 { |
1014 stdinpass = ETrue; |
1014 stdinpass = ETrue; |
1015 INFO_PRINTF1(_L("select on writefds of STDIN passed\n")) ; |
1015 INFO_PRINTF1(_L("select on writefds of STDIN passed\n")) ; |
1016 } |
1016 } |
1020 return KErrGeneral; |
1020 return KErrGeneral; |
1021 } |
1021 } |
1022 maxfd = STDOUT_FILENO; |
1022 maxfd = STDOUT_FILENO; |
1023 FD_ZERO(&writefds); |
1023 FD_ZERO(&writefds); |
1024 FD_SET(STDOUT_FILENO,&writefds); |
1024 FD_SET(STDOUT_FILENO,&writefds); |
1025 select_ret = select(maxfd+1,NULL,&writefds,NULL,NULL); |
1025 /*select_ret = */ select(maxfd+1,NULL,&writefds,NULL,NULL); |
1026 if( FD_ISSET(STDOUT_FILENO,&writefds) ) |
1026 if( FD_ISSET(STDOUT_FILENO,&writefds) ) |
1027 { |
1027 { |
1028 if( stdinpass ) |
1028 if( stdinpass ) |
1029 { |
1029 { |
1030 INFO_PRINTF1(_L("select on writefds of STDOUT passed\n")) ; |
1030 INFO_PRINTF1(_L("select on writefds of STDOUT passed\n")) ; |
1055 fd_set writefds; |
1055 fd_set writefds; |
1056 fd_set readfds; |
1056 fd_set readfds; |
1057 fd_set exceptfds; |
1057 fd_set exceptfds; |
1058 int max; |
1058 int max; |
1059 int select_ret = 0; |
1059 int select_ret = 0; |
1060 int ret = KErrGeneral; |
1060 // int ret = KErrGeneral; |
1061 struct sockaddr_in serv_addr; |
1061 struct sockaddr_in serv_addr; |
1062 serv_addr.sin_family = AF_INET; |
1062 serv_addr.sin_family = AF_INET; |
1063 serv_addr.sin_addr.s_addr = inet_addr(addr); |
1063 serv_addr.sin_addr.s_addr = inet_addr(addr); |
1064 serv_addr.sin_port = htons(80); |
1064 serv_addr.sin_port = htons(80); |
1065 sock_fd = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP); |
1065 sock_fd = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP); |