| 531 | } |
| 532 | |
| 533 | int CBackendFreeRDP::cbClientStart(rdpContext *context) |
| 534 | { |
| 535 | qDebug(log) << Q_FUNC_INFO; |
| 536 | UINT32 nRet = 0; |
| 537 | |
| 538 | if (!context || !context->settings) |
| 539 | return -1; |
| 540 | freerdp* instance = freerdp_client_get_instance(context); |
| 541 | if(!instance) |
| 542 | return -2; |
| 543 | CBackendFreeRDP* pThis = ((ClientContext*)context)->pThis; |
| 544 | auto settings = context->settings; |
| 545 | |
| 546 | QString szDomainHost; |
| 547 | quint16 nPort; |
| 548 | szDomainHost = freerdp_settings_get_string(settings, FreeRDP_ServerHostname); |
| 549 | nPort = freerdp_settings_get_uint32(settings, FreeRDP_ServerPort); |
| 550 | QString szServer; |
| 551 | auto &net = pThis->m_pParameter->m_Net; |
| 552 | szServer = net.GetHost() + ":" + QString::number(net.GetPort()); |
| 553 | auto &proxy = pThis->m_pParameter->m_Proxy; |
| 554 | switch(proxy.GetUsedType()) { |
| 555 | case CParameterProxy::TYPE::SockesV5: |
| 556 | { |
| 557 | auto &sockesV5 = proxy.m_SockesV5; |
| 558 | szServer = sockesV5.GetHost() + ":" + QString::number(sockesV5.GetPort()) |
| 559 | + " -> " + szServer; |
| 560 | break; |
| 561 | } |
| 562 | case CParameterProxy::TYPE::Http: |
| 563 | { |
| 564 | auto &http = proxy.m_Http; |
| 565 | szServer = http.GetHost() + ":" + QString::number(http.GetPort()) |
| 566 | + " -> " + szServer; |
| 567 | break; |
| 568 | } |
| 569 | case CParameterProxy::TYPE::SSHTunnel: |
| 570 | { |
| 571 | auto &sshNet = proxy.m_SSH.m_Net; |
| 572 | #if FREERDP_VERSION_MAJOR < 3 |
| 573 | szServer = szDomainHost + ":" + QString::number(nPort) |
| 574 | + " -> " + sshNet.GetHost() + ":" + QString::number(sshNet.GetPort()) |
| 575 | + " -> " + szServer; |
| 576 | #else |
| 577 | szServer = sshNet.GetHost() + ":" + QString::number(sshNet.GetPort()) |
| 578 | + " -> " + szServer; |
| 579 | #endif |
| 580 | break; |
| 581 | } |
| 582 | default: |
| 583 | break; |
| 584 | } |
| 585 | |
| 586 | BOOL status = freerdp_connect(instance); |
| 587 | if (status) { |
| 588 | QString szInfo = tr("Connected to ") + szServer; |
| 589 | qInfo(log) << szInfo; |
| 590 | emit pThis->sigInformation(szInfo); |
nothing calls this directly
no test coverage detected