Пример #1
0
ServerDialog::ServerDialog(QWidget *parent)
    : ConfigPage(parent) {
    /* Invoke the Qt Designer generated object setup routine */
    ui.setupUi(this);

    connect(ui.mixologyServer, SIGNAL(editingFinished()), this, SLOT(editedServer()));
    connect(ui.disableAutoConfig, SIGNAL(clicked(bool)), this, SLOT(autoConfigClicked(bool)));

    /* Setup display */
    QSettings settings(*mainSettings, QSettings::IniFormat, this);

    /* Load up actual port number  */
    PeerDetails detail;
    if (peers->getPeerDetails(peers->getOwnLibraryMixerId(), detail)) {
        ui.portNumber->setValue(detail.localPort);
    }
    ui.portNumber->setMinimum(Peers::MIN_PORT);
    ui.portNumber->setMaximum(Peers::MAX_PORT);

    if (settings.value("Network/AutoOrPort", DEFAULT_NETWORK_AUTO_OR_PORT) == DEFAULT_NETWORK_AUTO_OR_PORT) {
        ui.disableAutoConfig->setChecked(false);
        autoConfigClicked(false);
    } else {
        ui.disableAutoConfig->setChecked(true);
        autoConfigClicked(true);
    }

    QSettings serverSettings(*startupSettings, QSettings::IniFormat, this);
    ui.mixologyServer->setText(serverSettings.value("MixologyServer", DEFAULT_MIXOLOGY_SERVER).toString());

    showAdvanced(settings.value("Gui/ShowAdvanced", DEFAULT_SHOW_ADVANCED).toBool());
}
Пример #2
0
ServerConfiguration ServerConfiguration::fromFile(QString const& filename) {
	if (!QFile::exists(filename)) {
		throw IllegalArgumentException() << "Could not open ServerConfiguration file, file does not exist: " << filename.toStdString();
	}
	QFile inputFile(filename);
	if (!inputFile.open(QFile::ReadOnly)) {
		throw IllegalArgumentException() << "Could not open ServerConfiguration file for reading: " << filename.toStdString();
	}
	inputFile.close();

	QSettings serverSettings(filename, QSettings::IniFormat);
	if (!serverSettings.contains("serverHost")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing serverHost in " << filename.toStdString();
	}
	
	if (!serverSettings.contains("serverPort")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing serverPort in " << filename.toStdString();
	}
	bool ok = false;
	int port = serverSettings.value("serverPort").toInt(&ok);
	if (!ok || (port < 1) || (port > 65535)) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Invalid serverPort in " << filename.toStdString();
	}

	if (!serverSettings.contains("serverLongTermPublicKey")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing serverLongTermPublicKey in " << filename.toStdString();
	}

	if (!serverSettings.contains("identityRequestUrl")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing identityRequestUrl in " << filename.toStdString();
	}
	if (!serverSettings.contains("identityRequestAgent")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing identityRequestAgent in " << filename.toStdString();
	}
	if (!serverSettings.contains("identityServerCertificate")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing identityServerCertificate in " << filename.toStdString();
	}

	if (!serverSettings.contains("imageRequestDownloadUrl")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing imageRequestDownloadUrl in " << filename.toStdString();
	}
	if (!serverSettings.contains("imageRequestDownloadFinishedUrl")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing imageRequestDownloadFinishedUrl in " << filename.toStdString();
	}
	if (!serverSettings.contains("imageRequestUploadUrl")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing imageRequestUploadUrl in " << filename.toStdString();
	}
	if (!serverSettings.contains("imageRequestAgent")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing imageRequestAgent in " << filename.toStdString();
	}
	if (!serverSettings.contains("imageServerCertificate")) {
		throw IllegalArgumentException() << "Invalid ServerConfiguration: Missing imageServerCertificate in " << filename.toStdString();
	}

	return ServerConfiguration(serverSettings.value("serverHost").toString(), port, PublicKey::fromHexString(serverSettings.value("serverLongTermPublicKey").toString()), serverSettings.value("identityRequestUrl").toString(), serverSettings.value("identityRequestAgent").toString(), serverSettings.value("identityServerCertificate").toString(), serverSettings.value("imageRequestDownloadUrl").toString(), serverSettings.value("imageRequestDownloadFinishedUrl").toString(), serverSettings.value("imageRequestUploadUrl").toString(), serverSettings.value("imageRequestAgent").toString(), serverSettings.value("imageServerCertificate").toString());
}
Пример #3
0
bool ServerDialog::save() {
    QSettings settings(*mainSettings, QSettings::IniFormat, this);

    /* We'll need to restart the connection if auto-config has been disabled or enabled, or if it has remained disabled but the port number has changed. */
    bool autoConfigEnabled = (settings.value("Network/AutoOrPort", DEFAULT_NETWORK_AUTO_OR_PORT) == DEFAULT_NETWORK_AUTO_OR_PORT);
    bool needConnectionRestart = ((ui.disableAutoConfig->isChecked() == autoConfigEnabled) ||
                                  (!autoConfigEnabled && (ui.portNumber->value() != settings.value("Network/AutoOrPort", DEFAULT_NETWORK_AUTO_OR_PORT).toInt())));

    if (ui.disableAutoConfig->isChecked()) {
        settings.setValue("Network/AutoOrPort", ui.portNumber->value());
    } else {
        settings.setValue("Network/AutoOrPort", DEFAULT_NETWORK_AUTO_OR_PORT);
    }
    QSettings serverSettings(*startupSettings, QSettings::IniFormat, this);
    serverSettings.setValue("MixologyServer", ui.mixologyServer->text());

    if (needConnectionRestart) peers->restartOwnConnection();

    return true;
}
void ProgramSettings::readSettings()
{
	autoLaunchProgram = getIsStartingWhenComputerStarts();

	QSettings settings;

	settings.beginGroup(APP_OPTION_GROUP);
	playSounds = settings.value(PLAY_SOUNDS_OPTION).toBool();
	settings.endGroup();

	settings.beginGroup(NETWORK_SETTINGS_GROUP);

	serverPort = settings.value(SERVER_PORT_OPTION, DEFAULT_SERVER_PORT).toInt();
	if (serverPort != DEFAULT_SERVER_PORT && serverPort != ALTERNATE_SERVER_PORT)
		serverPort = DEFAULT_SERVER_PORT;

	settings.beginGroup(PROXY_SETTINGS_SUBGROUP);

	useProxy = settings.value(USE_PROXY_OPTION, false).toBool();

	proxyType = (QNetworkProxy::ProxyType)settings.value(PROXY_TYPE_OPTION, QNetworkProxy::Socks5Proxy).toInt();
	
	proxyHost = settings.value(PROXY_HOST_OPTION, QString()).toString();
	proxyPortSocks = settings.value(PROXY_PORT_SOCKS_OPTION, getDefaultSocksProxyPort()).toString();
	proxyPortHttp = settings.value(PROXY_PORT_HTTP_OPTION, getDefaultHttpProxyPort()).toString();

	proxyRequiresAuthorization = settings.value(PROXY_REQUIRES_AUTHORIZATION_OPTION, false).toBool();

	proxyUserName = settings.value(PROXY_USER_NAME_OPTION, QString()).toString();
	proxyPassword = settings.value(PROXY_PASSWORD_OPTION, QString()).toString();

	settings.endGroup();
	settings.endGroup();

	// Reading settings from ini file
	QSettings serverSettings(AppTools::getPathRelativeToExeDir(SERVER_SETTINGS_FILE), QSettings::IniFormat);
	serverSettings.beginGroup(PROXY_HOST_OPTION);
	serverUrl = serverSettings.value(PROXY_HOST_OPTION, DEFAULT_SERVER_URL).toString();
	serverSettings.endGroup();
}
Пример #5
0
bool ServerConfiguration::toFile(QString const& filename) const {
	QFile outputFile(filename);
	if (!outputFile.open(QFile::ReadWrite)) {
		return false;
	}
	outputFile.close();

	QSettings serverSettings(filename, QSettings::IniFormat);
	serverSettings.setValue("serverHost", serverHost);
	serverSettings.setValue("serverPort", serverPort);
	serverSettings.setValue("serverLongTermPublicKey", QString(serverLongTermPublicKey.getPublicKey().toHex()));
	serverSettings.setValue("identityRequestUrl", identityServerRequestUrl);
	serverSettings.setValue("identityRequestAgent", identityServerRequestAgent);
	serverSettings.setValue("identityServerCertificate", identityServerCertificate);
	serverSettings.setValue("imageRequestDownloadUrl", imageServerRequestDownloadUrl);
	serverSettings.setValue("imageRequestDownloadFinishedUrl", imageServerRequestDownloadFinishedUrl);
	serverSettings.setValue("imageRequestUploadUrl", imageServerRequestUploadUrl);
	serverSettings.setValue("imageRequestAgent", imageServerRequestAgent);
	serverSettings.setValue("imageServerCertificate", imageServerCertificate);
	serverSettings.sync();

	return true;
}