void QMyServer::_startServerEncryption () { if (QSslSocket::supportsSsl()) qDebug()<< "Supporto SSL attivo...."; else qDebug()<< "Supporto SSL non attivo.... Controlla l'include della libreria libssl .... "; QFile cert(":/files/resources/mycertcert.pem"); if (!cert.open(QIODevice::ReadOnly | QIODevice::Text)) return; QByteArray certba = cert.readAll(); QFile keyfile(":/files/resources/mycertkey.pem"); if (!keyfile.open(QIODevice::ReadOnly | QIODevice::Text)) return; QByteArray keyba = keyfile.readAll(); QSslKey keyKey(keyba, QSsl::Rsa); if (keyKey.isNull()) { qWarning("Key is null"); socket->disconnectFromHost(); return; } socket->setLocalCertificate( QSslCertificate( certba ) ); socket->setPrivateKey(keyKey); socket->startServerEncryption(); }
void EventSendingController::keyDown(JSStringRef key, JSValueRef modifierArray, int location) { WKBundlePageRef page = InjectedBundle::shared().page()->page(); WKBundleFrameRef frame = WKBundlePageGetMainFrame(page); JSContextRef context = WKBundleFrameGetJavaScriptContext(frame); WKEventModifiers modifiers = parseModifierArray(context, modifierArray); WKRetainPtr<WKStringRef> EventSenderMessageName(AdoptWK, WKStringCreateWithUTF8CString("EventSender")); WKRetainPtr<WKMutableDictionaryRef> EventSenderMessageBody(AdoptWK, WKMutableDictionaryCreate()); WKRetainPtr<WKStringRef> subMessageKey(AdoptWK, WKStringCreateWithUTF8CString("SubMessage")); WKRetainPtr<WKStringRef> subMessageName(AdoptWK, WKStringCreateWithUTF8CString("KeyDown")); WKDictionaryAddItem(EventSenderMessageBody.get(), subMessageKey.get(), subMessageName.get()); WKRetainPtr<WKStringRef> keyKey(AdoptWK, WKStringCreateWithUTF8CString("Key")); WKDictionaryAddItem(EventSenderMessageBody.get(), keyKey.get(), toWK(key).get()); WKRetainPtr<WKStringRef> modifiersKey(AdoptWK, WKStringCreateWithUTF8CString("Modifiers")); WKRetainPtr<WKUInt64Ref> modifiersRef(AdoptWK, WKUInt64Create(modifiers)); WKDictionaryAddItem(EventSenderMessageBody.get(), modifiersKey.get(), modifiersRef.get()); WKRetainPtr<WKStringRef> locationKey(AdoptWK, WKStringCreateWithUTF8CString("Location")); WKRetainPtr<WKUInt64Ref> locationRef(AdoptWK, WKUInt64Create(location)); WKDictionaryAddItem(EventSenderMessageBody.get(), locationKey.get(), locationRef.get()); WKBundlePostSynchronousMessage(InjectedBundle::shared().bundle(), EventSenderMessageName.get(), EventSenderMessageBody.get(), 0); }