summaryrefslogtreecommitdiffstats
path: root/libsettings
diff options
context:
space:
mode:
Diffstat (limited to 'libsettings')
-rw-r--r--libsettings/include/keyring.h78
-rw-r--r--libsettings/src/keyring.cpp30
-rw-r--r--libsettings/src/stubkeyring.cpp62
-rw-r--r--libsettings/src/stubkeyring.h20
4 files changed, 95 insertions, 95 deletions
diff --git a/libsettings/include/keyring.h b/libsettings/include/keyring.h
index 4563a268..afdc3bba 100644
--- a/libsettings/include/keyring.h
+++ b/libsettings/include/keyring.h
@@ -6,7 +6,7 @@
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -33,53 +33,53 @@
*/
class LIBMMCSETTINGS_EXPORT Keyring : public QObject
{
- Q_OBJECT
+ Q_OBJECT
public:
- /**
- * @brief the System Keyring instance
- * @return the Keyring instance
- */
- static Keyring *instance();
+ /**
+ * @brief the System Keyring instance
+ * @return the Keyring instance
+ */
+ static Keyring *instance();
- /**
- * @brief store a password in the Keyring
- * @param service the service name
- * @param username the account name
- * @param password the password to store
- * @return success
- */
- virtual bool storePassword(QString service, QString username, QString password) = 0;
+ /**
+ * @brief store a password in the Keyring
+ * @param service the service name
+ * @param username the account name
+ * @param password the password to store
+ * @return success
+ */
+ virtual bool storePassword(QString service, QString username, QString password) = 0;
- /**
- * @brief get a password from the Keyring
- * @param service the service name
- * @param username the account name
- * @return the password (success=!isNull())
- */
- virtual QString getPassword(QString service, QString username) = 0;
+ /**
+ * @brief get a password from the Keyring
+ * @param service the service name
+ * @param username the account name
+ * @return the password (success=!isNull())
+ */
+ virtual QString getPassword(QString service, QString username) = 0;
- /**
- * @brief lookup a password
- * @param service the service name
- * @param username the account name
- * @return wether the password is available
- */
- virtual bool hasPassword(QString service, QString username) = 0;
+ /**
+ * @brief lookup a password
+ * @param service the service name
+ * @param username the account name
+ * @return wether the password is available
+ */
+ virtual bool hasPassword(QString service, QString username) = 0;
- /**
- * @brief get a list of all stored accounts.
- * @param service the service name
- * @return
- */
- virtual QStringList getStoredAccounts(QString service) = 0;
+ /**
+ * @brief get a list of all stored accounts.
+ * @param service the service name
+ * @return
+ */
+ virtual QStringList getStoredAccounts(QString service) = 0;
protected:
- /// fall back to StubKeyring if false
- virtual bool isValid() { return false; }
+ /// fall back to StubKeyring if false
+ virtual bool isValid() { return false; }
private:
- static Keyring *m_instance;
- static void destroy();
+ static Keyring *m_instance;
+ static void destroy();
};
#endif // KEYRING_H
diff --git a/libsettings/src/keyring.cpp b/libsettings/src/keyring.cpp
index 1b13e35c..9eaba684 100644
--- a/libsettings/src/keyring.cpp
+++ b/libsettings/src/keyring.cpp
@@ -6,7 +6,7 @@
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -37,27 +37,27 @@ class Win32Keystore;
Keyring *Keyring::instance()
{
- if (m_instance == nullptr)
- {
+ if (m_instance == nullptr)
+ {
#ifdef KEYRING
- m_instance = new KEYRING();
- if (!m_instance->isValid())
- {
- qWarning("Could not create SystemKeyring! falling back to StubKeyring.");
- m_instance = new StubKeyring();
- }
+ m_instance = new KEYRING();
+ if (!m_instance->isValid())
+ {
+ qWarning("Could not create SystemKeyring! falling back to StubKeyring.");
+ m_instance = new StubKeyring();
+ }
#else
- qWarning("Keyrings are not supported on your OS. Fallback StubKeyring is insecure!");
- m_instance = new StubKeyring();
+ qWarning("Keyrings are not supported on your OS. Fallback StubKeyring is insecure!");
+ m_instance = new StubKeyring();
#endif
- atexit(Keyring::destroy);
- }
- return m_instance;
+ atexit(Keyring::destroy);
+ }
+ return m_instance;
}
void Keyring::destroy()
{
- delete m_instance;
+ delete m_instance;
}
Keyring *Keyring::m_instance;
diff --git a/libsettings/src/stubkeyring.cpp b/libsettings/src/stubkeyring.cpp
index 0e29d2f2..963f3dd9 100644
--- a/libsettings/src/stubkeyring.cpp
+++ b/libsettings/src/stubkeyring.cpp
@@ -6,7 +6,7 @@
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -25,72 +25,72 @@ int scrambler = 0x9586309;
QString scramble(QString in_)
{
- QByteArray in = in_.toUtf8();
- QByteArray out;
- for (int i = 0; i<in.length(); i++)
- out.append(in.at(i) ^ scrambler);
- return QString::fromUtf8(out);
+ QByteArray in = in_.toUtf8();
+ QByteArray out;
+ for (int i = 0; i<in.length(); i++)
+ out.append(in.at(i) ^ scrambler);
+ return QString::fromUtf8(out);
}
inline QString base64(QString in)
{
- return QString(in.toUtf8().toBase64());
+ return QString(in.toUtf8().toBase64());
}
inline QString unbase64(QString in)
{
- return QString::fromUtf8(QByteArray::fromBase64(in.toLatin1()));
+ return QString::fromUtf8(QByteArray::fromBase64(in.toLatin1()));
}
inline QString scramble64(QString in)
{
- return base64(scramble(in));
+ return base64(scramble(in));
}
inline QString unscramble64(QString in)
{
- return scramble(unbase64(in));
+ return scramble(unbase64(in));
}
// StubKeyring implementation
inline QString generateKey(QString service, QString username)
{
- return QString("%1/%2").arg(base64(service)).arg(scramble64(username));
+ return QString("%1/%2").arg(base64(service)).arg(scramble64(username));
}
bool StubKeyring::storePassword(QString service, QString username, QString password)
{
- m_settings.setValue(generateKey(service, username), scramble64(password));
- return true;
+ m_settings.setValue(generateKey(service, username), scramble64(password));
+ return true;
}
QString StubKeyring::getPassword(QString service, QString username)
{
- QString key = generateKey(service, username);
- if (!m_settings.contains(key))
- return QString();
- return unscramble64(m_settings.value(key).toString());
+ QString key = generateKey(service, username);
+ if (!m_settings.contains(key))
+ return QString();
+ return unscramble64(m_settings.value(key).toString());
}
-inline bool StubKeyring::hasPassword(QString service, QString username)
+bool StubKeyring::hasPassword(QString service, QString username)
{
- return m_settings.contains(generateKey(service, username));
+ return m_settings.contains(generateKey(service, username));
}
QStringList StubKeyring::getStoredAccounts(QString service)
{
- service = base64(service).append('/');
- QStringList out;
- QStringList in(m_settings.allKeys());
- QStringListIterator it(in);
- while(it.hasNext())
- {
- QString c = it.next();
- if (c.startsWith(service))
- out << unscramble64(c.mid(service.length()));
- }
- return out;
+ service = base64(service).append('/');
+ QStringList out;
+ QStringList in(m_settings.allKeys());
+ QStringListIterator it(in);
+ while(it.hasNext())
+ {
+ QString c = it.next();
+ if (c.startsWith(service))
+ out << unscramble64(c.mid(service.length()));
+ }
+ return out;
}
StubKeyring::StubKeyring() :
- m_settings(QSettings::UserScope, "Orochimarufan", "Keyring")
+ m_settings(QSettings::UserScope, "Orochimarufan", "Keyring")
{
}
diff --git a/libsettings/src/stubkeyring.h b/libsettings/src/stubkeyring.h
index f8e0eaaa..0566d5ab 100644
--- a/libsettings/src/stubkeyring.h
+++ b/libsettings/src/stubkeyring.h
@@ -6,7 +6,7 @@
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -24,19 +24,19 @@
class StubKeyring : public Keyring
{
- Q_OBJECT
+ Q_OBJECT
public:
- virtual bool storePassword(QString service, QString username, QString password);
- virtual QString getPassword(QString service, QString username);
- virtual bool hasPassword(QString service, QString username);
- virtual QStringList getStoredAccounts(QString service);
+ virtual bool storePassword(QString service, QString username, QString password);
+ virtual QString getPassword(QString service, QString username);
+ virtual bool hasPassword(QString service, QString username);
+ virtual QStringList getStoredAccounts(QString service);
private:
- friend class Keyring;
- explicit StubKeyring();
- virtual bool isValid() { return true; }
+ friend class Keyring;
+ explicit StubKeyring();
+ virtual bool isValid() { return true; }
- QSettings m_settings;
+ QSettings m_settings;
};
#endif // STUBKEYRING_H