Пример #1
0
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;
    }
}
Пример #2
0
Wt::WWidget *FormWidgets::fileUpload()
{
  Wt::WTemplate *result = new TopicTemplate("forms-fileUpload");
  result->bindWidget("FileUpload", FileUpload());

  return result;
}
Пример #3
0
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);
}