MCPcopy Create free account
hub / github.com/KangLin/RabbitRemoteControl / cbClientStart

Method cbClientStart

Plugins/FreeRDP/Client/BackendFreeRDP.cpp:533–656  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

531}
532
533int 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);

Callers

nothing calls this directly

Calls 3

GetHostMethod · 0.80
GetPortMethod · 0.45
GetUsedTypeMethod · 0.45

Tested by

no test coverage detected