void ZCFileUploadTest() { Zimbra::Rpc::UserSession *session = Zimbra::Rpc::UserSession::CreateInstance(lpProfileName, lpAccountUser, lpAccountUserPwd, lpServerAddress, nPort, 0, 0, L"", false); Zimbra::Rpc::UserSession::SetProfileName(lpProfileName); Zimbra::Rpc::ZimbraConnection *z_pConnection = new Zimbra::Rpc::ZimbraConnection( L"migration", lpServerAddress, nPort, false, 0, L""); z_pConnection->SetProfileName(lpProfileName); LPWSTR pwszToken = NULL; FileUpload(z_pConnection, &pwszToken); Zimbra::Rpc::SendMsgRequest request(pwszToken); // free the token right away z_pConnection->FreeBuffer(pwszToken); request.SetAuthToken(session->AuthToken()); if (session->SetNoSession()) request.SetNoSession(); Zimbra::Rpc::ScopedRPCResponse pResponse; try { z_pConnection->SendRequest(request, pResponse.getref()); } catch (Zimbra::Rpc::SoapFaultResponse &fault) { LOG_ERROR(_T("Response is soap error exception (%s)."), fault.ErrorCode()); return; } }
Wt::WWidget *FormWidgets::fileUpload() { Wt::WTemplate *result = new TopicTemplate("forms-fileUpload"); result->bindWidget("FileUpload", FileUpload()); return result; }
void server() { int sockfd, newsockfd; socklen_t cli_len; char read_buffer[1024]; struct sockaddr_in servi_addr, cli_addr; int n,i; if(choice==0) { if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) { perror("Socket"); exit(1); } } else { if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) { perror("Socket"); exit(1); } } bzero((char *) &servi_addr, sizeof(servi_addr)); servi_addr.sin_family = AF_INET; servi_addr.sin_addr.s_addr = INADDR_ANY; servi_addr.sin_port = htons(serPort); if (bind(sockfd, (struct sockaddr *)&servi_addr, sizeof(servi_addr)) <0) { error("Unable to bind"); } else printf("[Server] Socket Binded to the Server Address\n"); if(choice==0) { if (listen(sockfd, 5) == -1) { perror("Listen"); exit(1); } printf("\nTCPServer Waiting for client on port %d",serPort); fflush(stdout); } else { printf("\nUDPServer Waiting for client on port %d",serPort); fflush(stdout); } // while(1) // { cli_len = sizeof(cli_addr); if(choice==0) { newsockfd = accept(sockfd, (struct sockaddr *) &cli_addr, &cli_len); if (newsockfd < 0) { perror("ERROR on accept"); exit(1); } printf("\nServer:I got a connection from (%s , %d)\n",inet_ntoa(cli_addr.sin_addr),ntohs(cli_addr.sin_port)); fflush(stdout); } while (1) { bzero(read_buffer,1024); n= read(newsockfd, read_buffer , 1024); if (n < 0) error("ERROR writing to socket"); // read_buffer[n]='\0'; int n; int i; int c=0; int j=0; for(i=0;i<strlen(read_buffer);i++) { if(read_buffer[i] == ' ') { recv_command[c][j]='\0'; j=0; c++; } else recv_command[c][j++]=read_buffer[i]; } recv_command[c][j]='\0'; if(strcmp(read_buffer, "q")==0 || strcmp(read_buffer, "Q")==0) { printf("\nRecieved Data: %s\n",read_buffer); kill(pid,SIGTERM); break; } else if(strncmp(read_buffer , "IndexGet",8)==0){ printf("\nRecieved Data: %s\n",read_buffer); sIndexget(read_buffer,&newsockfd); } else if(strncmp(read_buffer,"FileHash",8)==0) { printf("\nRecieved Data: %s\n",read_buffer); Filehash(read_buffer,&newsockfd); } else if(strncmp(read_buffer,"FileDownload",12)==0) { printf("\nRecieved Data: %s\n",read_buffer); Filedownload(read_buffer,&newsockfd); } else if(strncmp(read_buffer,"FileUpload",10)==0) { printf("\nRecieved Data: %s\n",read_buffer); FileUpload(read_buffer,&newsockfd); } else { printf("\nRecieved Data : %s\n" , read_buffer); } fflush(stdout); // while(waitpid(-1, NULL, WNOHANG) > 0); } close(newsockfd); printf("\nConnection closed by peer\n"); fflush(stdout); // } close(sockfd); exit(1); }