HttpsClientTransport::HttpsClientTransport(const HttpsEndpoint & httpsEndpoint) : TcpClientTransport(httpsEndpoint.getIp(), httpsEndpoint.getPort()) { std::vector<FilterPtr> wireFilters; // HTTP framing. wireFilters.push_back( FilterPtr( new HttpFrameFilter( getRemoteAddr().getIp(), getRemoteAddr().getPort()))); // SSL. ClientStub * pClientStub = getTlsClientStubPtr(); RCF_ASSERT(pClientStub); FilterPtr sslFilterPtr; #if RCF_FEATURE_SSPI==1 && RCF_FEATURE_OPENSSL==1 if (pClientStub->getSslImplementation() == Si_Schannel) { sslFilterPtr.reset( new SchannelFilter(pClientStub) ); } else { RCF_ASSERT(pClientStub->getSslImplementation() == Si_OpenSsl); sslFilterPtr.reset( new OpenSslEncryptionFilter(pClientStub) ); } #elif RCF_FEATURE_SSPI==1 sslFilterPtr.reset( new SchannelFilter(pClientStub) ); #elif RCF_FEATURE_OPENSSL==1 sslFilterPtr.reset( new OpenSslEncryptionFilter(pClientStub) ); #endif if (!sslFilterPtr) { RCF_THROW( Exception(_RcfError_SslNotSupported()) ); } wireFilters.push_back(sslFilterPtr); // HTTP CONNECT filter for passing through a proxy. wireFilters.push_back( FilterPtr( new HttpConnectFilter( getRemoteAddr().getIp(), getRemoteAddr().getPort()))); setWireFilters(wireFilters); }
bool PPPStats::isUp() { struct ifreq ifreq; memset( &ifreq, 0, sizeof (ifreq)); sprintf( ifreq.ifr_ifrn.ifrn_name, "ppp%d", pppDev ); if (ioctl (soc, SIOCGIFFLAGS, (caddr_t) & ifreq) == 0) { if ((ifreq.ifr_flags & (IFF_UP|IFF_RUNNING)) != 0) { if (!pppUp) { pppUp = true; emit pppStatus( true ); getRemoteAddr(); } return true; } } if (pppUp) { pppUp = false; emit pppStatus( false ); emit remoteAddr( "n/a" ); } return false; }
int handleRead(NINA::NINAHandle) { mSize = getPeer().receive(mBuf, BUFSIZE); if (mSize == 0) { std::cout << "Client " << getRemoteAddr().getHostAddr() << " disconnected" << std::endl; delete this; return 1; } else { mBuf[mSize] = '\0'; std::cout << "Received : " << mBuf << std::endl; NINA::Reactor<POLICY>::getSingleton().registerHandler(this, NINA::Events::WRITE); } return 0; }
void MakeSessionFiles(s_info * info) { char str[80]; /* Generate File Names Based on the REMOTE IP ADDR */ info->pREMOTE_ADDR = strdup(getRemoteAddr()); info->pGNUPLOT = strdup(strcat(strcpy(str, CALL_GNUPLOT), info->pREMOTE_ADDR)); info->pFILENAME_T_OUT = strdup(strcat(strcpy(str, FILENAME_T_OUT), info->pREMOTE_ADDR)); info->pFILENAME_RAW_OUT = strdup(strcat(strcpy(str, FILENAME_RAW_OUT), info->pREMOTE_ADDR)); info->pFILENAME_GNUPLT = strdup(strcat(strcpy(str, FILENAME_GNUPLT), info->pREMOTE_ADDR)); return; };
int init() { NINA::Reactor<POLICY>::getSingleton().registerHandler(this, NINA::Events::READ); std::cout << "Client joined : " << getRemoteAddr().getHostAddr() << std::endl; return 0; }