diff --git a/External/LoveLyndir b/External/LoveLyndir
index 97eafd9b..adab69df 160000
--- a/External/LoveLyndir
+++ b/External/LoveLyndir
@@ -1 +1 @@
-Subproject commit 97eafd9b59f84bd9e3fc3cb4313df8b3c034e766
+Subproject commit adab69df05840d94a3f2f883251869d6cb352b0e
diff --git a/External/Pearl b/External/Pearl
index 9e41cebe..081c2dec 160000
--- a/External/Pearl
+++ b/External/Pearl
@@ -1 +1 @@
-Subproject commit 9e41cebeba085fce2bbae2592d52bbfd740f9ffb
+Subproject commit 081c2dec20b3638694a5ad20cd2fddccdb298447
diff --git a/MasterPassword/C/ciphers.plist b/MasterPassword/C/ciphers.plist
new file mode 120000
index 00000000..383ea2e0
--- /dev/null
+++ b/MasterPassword/C/ciphers.plist
@@ -0,0 +1 @@
+../Resources/Data/ciphers.plist
\ No newline at end of file
diff --git a/MasterPassword/C/mpw.c b/MasterPassword/C/mpw.c
index 194b9805..93af69a4 100644
--- a/MasterPassword/C/mpw.c
+++ b/MasterPassword/C/mpw.c
@@ -132,13 +132,11 @@ int main(int argc, char *const argv[]) {
char *line = NULL;
size_t linecap = 0;
ssize_t linelen;
- while ((linelen = getline(&line, &linecap, mpwConfig)) > 0) {
- char *configUserName = strsep(&line, "\t: ");
- if (configUserName == userName) {
- while (line[0] && strlen(masterPassword = strsep(&line, "\t: ")) == 0);
+ while ((linelen = getline(&line, &linecap, mpwConfig)) > 0)
+ if (strcmp(strsep(&line, ":"), userName) == 0) {
+ masterPassword = line;
break;
}
- }
if (!masterPassword) {
fprintf (stderr, "Missing master password for user: %s\n", userName);
return 1;
diff --git a/MasterPassword/Resources/Data/ciphers.plist b/MasterPassword/Resources/Data/ciphers.plist
index 4bf59826..0c5f6472 100644
--- a/MasterPassword/Resources/Data/ciphers.plist
+++ b/MasterPassword/Resources/Data/ciphers.plist
@@ -11,25 +11,25 @@
Long Password
- CvcvnoCvcvCvcv
+ CvcvnoCvcvCvcv
CvcvCvcvnoCvcv
CvcvCvcvCvcvno
- CvccnoCvcvCvcv
+ CvccnoCvcvCvcv
CvccCvcvnoCvcv
CvccCvcvCvcvno
- CvcvnoCvccCvcv
+ CvcvnoCvccCvcv
CvcvCvccnoCvcv
CvcvCvccCvcvno
- CvcvnoCvcvCvcc
+ CvcvnoCvcvCvcc
CvcvCvcvnoCvcc
CvcvCvcvCvccno
- CvccnoCvccCvcv
+ CvccnoCvccCvcv
CvccCvccnoCvcv
CvccCvccCvcvno
- CvcvnoCvccCvcc
+ CvcvnoCvccCvcc
CvcvCvccnoCvcc
CvcvCvccCvccno
- CvccnoCvcvCvcc
+ CvccnoCvcvCvcc
CvccCvcvnoCvcc
CvccCvcvCvccno
@@ -70,7 +70,7 @@
n
0123456789
o
- @&%?,=[]_:-+*$#!'^~;()/.
+ @&%?,=[]_:-+*$#!'^~;()/.
x
AEIOUaeiouBCDFGHJKLMNPQRSTVWXYZbcdfghjklmnpqrstvwxyz0123456789!@#$%^&*()