Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
harbour-MPW
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Andrea Scarpino
harbour-MPW
Commits
613fb997
Commit
613fb997
authored
Apr 21, 2016
by
Andrea Scarpino
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Use QByteArray to store the master key
Fixes #1
parent
3860dc09
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
19 additions
and
14 deletions
+19
-14
qml/pages/MainPage.qml
qml/pages/MainPage.qml
+1
-1
src/mpwmanager.cpp
src/mpwmanager.cpp
+16
-10
src/mpwmanager.h
src/mpwmanager.h
+1
-2
translations/harbour-mpw.ts
translations/harbour-mpw.ts
+1
-1
No files found.
qml/pages/MainPage.qml
View file @
613fb997
...
...
@@ -119,7 +119,7 @@ Page {
onStatusChanged
:
{
if
(
status
===
PageStatus
.
Activating
)
{
var
isReady
=
manager
.
getName
()
!==
""
&&
manager
.
getKey
()
!==
""
;
var
isReady
=
manager
.
getName
()
!==
""
;
site
.
enabled
=
isReady
;
if
(
!
isReady
)
{
...
...
src/mpwmanager.cpp
View file @
613fb997
...
...
@@ -40,11 +40,6 @@ MPWManager::~MPWManager()
{
}
QString
MPWManager
::
getKey
()
const
{
return
m_key
;
}
QString
MPWManager
::
getName
()
const
{
return
m_name
;
...
...
@@ -54,8 +49,14 @@ void MPWManager::setUserData(const QString &name, const QString &password)
{
m_name
=
name
;
m_key
=
QString
::
fromLatin1
((
const
char
*
)
mpw_masterKeyForUser
(
name
.
toLatin1
().
data
(),
password
.
toLatin1
().
data
(),
MPAlgorithmVersionCurrent
));
const
uint8_t
*
k
=
mpw_masterKeyForUser
(
name
.
toUtf8
().
data
(),
password
.
toUtf8
().
data
(),
MPAlgorithmVersionCurrent
);
if
(
k
)
{
m_key
=
QByteArray
::
fromRawData
((
const
char
*
)
k
,
MP_dkLen
);
}
else
{
qCritical
()
<<
"Error during master key generation"
;
}
}
QString
MPWManager
::
getPassword
(
const
QString
&
site
,
PasswordType
type
,
const
int
counter
)
const
...
...
@@ -73,7 +74,12 @@ QString MPWManager::getPassword(const QString &site, PasswordType type, const in
default:
qCritical
()
<<
"Unrecognized password type"
<<
type
;
}
return
QString
::
fromLatin1
(
mpw_passwordForSite
((
const
unsigned
char
*
)
m_key
.
toLatin1
().
data
(),
site
.
toLatin1
().
data
(),
t
,
counter
,
MPSiteVariantPassword
,
NULL
,
MPAlgorithmVersionCurrent
));
const
char
*
p
=
mpw_passwordForSite
((
const
unsigned
char
*
)
m_key
.
data
(),
site
.
toUtf8
().
data
(),
t
,
counter
,
MPSiteVariantPassword
,
NULL
,
MPAlgorithmVersionCurrent
);
if
(
p
)
{
return
QString
::
fromUtf8
(
p
);
}
else
{
return
QString
();
}
}
src/mpwmanager.h
View file @
613fb997
...
...
@@ -39,13 +39,12 @@ public:
explicit
MPWManager
(
QObject
*
parent
=
0
);
virtual
~
MPWManager
();
Q_INVOKABLE
QString
getKey
()
const
;
Q_INVOKABLE
QString
getName
()
const
;
Q_INVOKABLE
void
setUserData
(
const
QString
&
name
,
const
QString
&
password
);
Q_INVOKABLE
QString
getPassword
(
const
QString
&
site
,
PasswordType
type
,
const
int
counter
)
const
;
private:
Q
String
m_key
;
Q
ByteArray
m_key
;
QString
m_name
;
};
...
...
translations/harbour-mpw.ts
View file @
613fb997
...
...
@@ -39,7 +39,7 @@
<
translation
type
=
"
unfinished
"
><
/translation
>
<
/message
>
<
message
>
<
location
filename
=
"
../qml/pages/MainPage.qml
"
line
=
"
12
8
"
/>
<
location
filename
=
"
../qml/pages/MainPage.qml
"
line
=
"
12
6
"
/>
<
source
>
Please
fill
your
name
and
master
key
in
the
Settings
page
!<
/source
>
<
translation
type
=
"
unfinished
"
><
/translation
>
<
/message
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment