diff options
Diffstat (limited to 'installerbuilder/common')
-rw-r--r-- | installerbuilder/common/consolepasswordprovider.h | 54 | ||||
-rw-r--r-- | installerbuilder/common/libeay32.dll | bin | 1526468 -> 0 bytes | |||
-rw-r--r-- | installerbuilder/common/libssl32.dll | bin | 309080 -> 0 bytes | |||
-rw-r--r-- | installerbuilder/common/openssl.qrc | 7 | ||||
-rw-r--r-- | installerbuilder/common/repositorygen.cpp | 75 | ||||
-rw-r--r-- | installerbuilder/common/repositorygen.h | 9 |
6 files changed, 11 insertions, 134 deletions
diff --git a/installerbuilder/common/consolepasswordprovider.h b/installerbuilder/common/consolepasswordprovider.h deleted file mode 100644 index 1c6335652..000000000 --- a/installerbuilder/common/consolepasswordprovider.h +++ /dev/null @@ -1,54 +0,0 @@ -/************************************************************************** -** -** This file is part of Installer Framework** -** -** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).* -** -** Contact: Nokia Corporation qt-info@nokia.com** -** -** GNU Lesser General Public License Usage -** -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this file. -** Please review the following information to ensure the GNU Lesser General -** Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception version -** 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** If you are unsure which license is appropriate for your use, please contact -** (qt-info@nokia.com). -** -**************************************************************************/ - -#ifndef CONSOLEPASSWORDPROVIDER_H -#define CONSOLEPASSWORDPROVIDER_H - -#include <kdupdatercrypto.h> - -#include <iostream> -#include <string> - -class ConsolePasswordProvider : public KDUpdaterCrypto::PasswordProvider -{ -public: - QByteArray password() const - { - if( m_password.isNull() ) - { - std::cout << QObject::tr( "Please type the password needed to unlock the private RSA key:" ).toStdString() << std::endl; - std::string p; - std::cin >> p; - m_password = QByteArray( p.c_str() ); - } - return m_password; - } - -private: - mutable QByteArray m_password; -}; - -#endif diff --git a/installerbuilder/common/libeay32.dll b/installerbuilder/common/libeay32.dll Binary files differdeleted file mode 100644 index 433463cb6..000000000 --- a/installerbuilder/common/libeay32.dll +++ /dev/null diff --git a/installerbuilder/common/libssl32.dll b/installerbuilder/common/libssl32.dll Binary files differdeleted file mode 100644 index 6d7f4468f..000000000 --- a/installerbuilder/common/libssl32.dll +++ /dev/null diff --git a/installerbuilder/common/openssl.qrc b/installerbuilder/common/openssl.qrc deleted file mode 100644 index 1168d5906..000000000 --- a/installerbuilder/common/openssl.qrc +++ /dev/null @@ -1,7 +0,0 @@ -<!DOCTYPE RCC> -<RCC version="1.0"> -<qresource prefix="/openssllibs"> - <file>libssl32.dll</file> - <file>libeay32.dll</file> -</qresource> -</RCC>
\ No newline at end of file diff --git a/installerbuilder/common/repositorygen.cpp b/installerbuilder/common/repositorygen.cpp index 7e9b5e1f7..d7e90a1cc 100644 --- a/installerbuilder/common/repositorygen.cpp +++ b/installerbuilder/common/repositorygen.cpp @@ -32,7 +32,7 @@ #include <common/fileutils.h> #include <common/errors.h> #include <common/repositorygen.h> -#include <common/consolepasswordprovider.h> +#include <kdupdater.h> #include <lib7z_facade.h> #include <settings.h> @@ -260,16 +260,8 @@ void QInstaller::compressDirectory(const QStringList &paths, const QString &arch Lib7z::createArchive(&archive, paths); } -void QInstaller::compressMetaDirectories(const QString &configDir, const QString &repoDir) +void QInstaller::compressMetaDirectories(const QString &repoDir) { - const QString configfile = QFileInfo(configDir, QLatin1String("config.xml")).absoluteFilePath(); - const QInstaller::Settings &settings = QInstaller::Settings::fromFileAndPrefix(configfile, configDir); - - KDUpdaterCrypto crypto; - crypto.setPrivateKey(settings.privateKey()); - ConsolePasswordProvider passwordProvider; - crypto.setPrivatePasswordProvider(&passwordProvider); - QDir dir(repoDir); const QStringList sub = dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot); foreach (const QString &i, sub) { @@ -285,18 +277,6 @@ void QInstaller::compressMetaDirectories(const QString &configDir, const QString throw QInstaller::Error(QObject::tr("Could not move %1 to %2").arg(tmpTarget, finalTarget)); } - - // if we have a private key, sign the meta.7z file - if (!settings.privateKey().isEmpty()) { - qDebug() << "Adding a RSA signature to" << finalTarget; - const QByteArray signature = crypto.sign(finalTarget); - QFile sigFile(finalTarget + QLatin1String(".sig")); - if (!sigFile.open(QIODevice::WriteOnly)) { - throw QInstaller::Error(QObject::tr("Could not open %1 for writing.") - .arg(finalTarget)); - } - sigFile.write(signature); - } } } @@ -688,16 +668,9 @@ static void writeSHA1ToNodeWithName(QDomDocument &doc, QDomNodeList &list, const } } -void QInstaller::compressMetaDirectories(const QString &configDir, const QString &repoDir, - const QString &baseDir, const QMap<QString, QString> &versionMapping) +void QInstaller::compressMetaDirectories(const QString &repoDir, const QString &baseDir, + const QMap<QString, QString> &versionMapping) { - const QString configfile = QFileInfo(configDir, QLatin1String("config.xml")).absoluteFilePath(); - const QInstaller::Settings &settings = QInstaller::Settings::fromFileAndPrefix(configfile, configDir); - - KDUpdaterCrypto crypto; - crypto.setPrivateKey(settings.privateKey()); - ConsolePasswordProvider passwordProvider; - crypto.setPrivatePasswordProvider(&passwordProvider); QDomDocument doc; QDomElement root; // use existing Updates.xml, if any @@ -731,34 +704,16 @@ void QInstaller::compressMetaDirectories(const QString &configDir, const QString const QString finalTarget = absPath + QLatin1String("/") + fn; if (!tmp.rename(finalTarget)) throw QInstaller::Error(QObject::tr("Could not move %1 to %2").arg(tmpTarget, finalTarget)); - - // if we have a private key, sign the meta.7z file - if (!settings.privateKey().isEmpty()) { - qDebug() << "Adding a RSA signature to" << finalTarget; - const QByteArray signature = crypto.sign(finalTarget); - QFile sigFile(finalTarget + QLatin1String(".sig")); - if (!sigFile.open(QIODevice::WriteOnly)) - throw QInstaller::Error(QObject::tr("Could not open %1 for writing").arg(finalTarget)); - - sigFile.write(signature); - } } + openForWrite(&existingUpdatesXml, existingUpdatesXml.fileName()); blockingWrite(&existingUpdatesXml, doc.toByteArray()); existingUpdatesXml.close(); } -void QInstaller::copyComponentData(const QString &packageDir, const QString &configDir, - const QString &repoDir, const PackageInfoVector &infos) +void QInstaller::copyComponentData(const QString &packageDir, const QString &repoDir, + const PackageInfoVector &infos) { - const QString configfile = QFileInfo(configDir, QLatin1String("config.xml")).absoluteFilePath(); - const QInstaller::Settings &settings = QInstaller::Settings::fromFileAndPrefix(configfile, configDir); - - KDUpdaterCrypto crypto; - crypto.setPrivateKey(settings.privateKey()); - ConsolePasswordProvider passwordProvider; - crypto.setPrivatePasswordProvider(&passwordProvider); - foreach (const PackageInfo &info, infos) { const QString i = info.name; qDebug() << "Copying component data for" << i; @@ -831,22 +786,6 @@ void QInstaller::copyComponentData(const QString &packageDir, const QString &con throw; } } - - // if we have a private key, sign all target files - including those we compressed ourselves - if (!settings.privateKey().isEmpty()) { - const QDir compDataDir(QString::fromLatin1("%1/%2").arg(repoDir, i)); - const QStringList targetFiles = compDataDir.entryList(QDir::Files); - for (QStringList::const_iterator it = targetFiles.begin(); it != targetFiles.end(); ++it) { - qDebug() << "Adding a RSA signature to" << *it; - const QByteArray signature = crypto.sign(compDataDir.absoluteFilePath(*it)); - QFile sigFile(compDataDir.absoluteFilePath(*it) + QLatin1String(".sig")); - if (!sigFile.open(QIODevice::WriteOnly)) { - throw QInstaller::Error(QObject::tr("Could not open %1 for writing: %2") - .arg(sigFile.fileName(), sigFile.errorString())); - } - sigFile.write(signature); - } - } } } diff --git a/installerbuilder/common/repositorygen.h b/installerbuilder/common/repositorygen.h index 9eb95660e..6b8ebcb68 100644 --- a/installerbuilder/common/repositorygen.h +++ b/installerbuilder/common/repositorygen.h @@ -50,13 +50,12 @@ typedef QVector<PackageInfo> PackageInfoVector; QMap<QString, QString> buildPathToVersionMap(const PackageInfoVector &info); +void compressMetaDirectories(const QString &repoDir); void compressDirectory(const QStringList &paths, const QString &archivePath); -void compressMetaDirectories(const QString &configDir, const QString &repoDir); -void compressMetaDirectories(const QString &configDir, const QString &repoDir, - const QString &baseDir, const QMap<QString, QString> &versionMapping); +void compressMetaDirectories(const QString &repoDir, const QString &baseDir, + const QMap<QString, QString> &versionMapping); -void copyComponentData(const QString &packageDir, const QString &configDir, const QString &repoDir, - const PackageInfoVector &infos); +void copyComponentData(const QString &packageDir, const QString &repoDir, const PackageInfoVector &infos); void generateMetaDataDirectory(const QString &outDir, const QString &dataDir, const PackageInfoVector &packages, const QString &appName, |