diff options
author | George Hazan <george.hazan@gmail.com> | 2013-06-11 17:48:18 +0000 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2013-06-11 17:48:18 +0000 |
commit | 2fbe1d2262383b272ef887d712f308f787cf33f1 (patch) | |
tree | 772a78df1caf0be843d8778344e02ac750ba7a03 /plugins/CryptoPP/src/GPGw/keys.cpp | |
parent | 48fc03aa394f4506c6053323386c040fede13a29 (diff) |
64-bit compatible version of CryptoPP
git-svn-id: http://svn.miranda-ng.org/main/trunk@4917 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/CryptoPP/src/GPGw/keys.cpp')
-rw-r--r-- | plugins/CryptoPP/src/GPGw/keys.cpp | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/plugins/CryptoPP/src/GPGw/keys.cpp b/plugins/CryptoPP/src/GPGw/keys.cpp new file mode 100644 index 0000000000..19606d446a --- /dev/null +++ b/plugins/CryptoPP/src/GPGw/keys.cpp @@ -0,0 +1,68 @@ +#include "../commonheaders.h"
+#include "gpgw.h"
+
+typedef char tkeyuserid[keyuseridsize];
+
+tkeyuserid *keyuserids[2];
+int keyuseridcount[2];
+
+
+void initKeyUserIDs(const int atype)
+{
+ keyuseridcount[atype]=0;
+ keyuserids[atype]=NULL;
+}
+
+
+void updateKeyUserIDs(const int atype)
+{
+ char *pos;
+ gpgResult gpgresult;
+ char buffer[largebuffersize];
+ char keyuserid[keyuseridsize];
+
+ releaseKeyUserIDs(atype);
+ initKeyUserIDs(atype);
+
+ ZeroMemory(buffer, sizeof(buffer));
+ if(atype==publickeyuserid) gpgresult=gpgListPublicKeys(buffer);
+ else gpgresult=gpgListSecretKeys(buffer);
+
+ if(gpgresult!=gpgSuccess)
+ {
+// if(atype==publickeyuserid) ErrorMessage(txterror, txtlistpublickeysfailed, txtverifyoptions);
+// else ErrorMessage(txterror, txtlistsecretkeysfailed, txtverifyoptions);
+ return;
+ }
+
+ for(pos=buffer; pos!=NULL; )
+ {
+ pos=getNextPart(keyuserid, pos, txtcrlf);
+
+ if(pos!=NULL)
+ {
+ keyuseridcount[atype]++;
+ keyuserids[atype] = (tkeyuserid*)realloc(keyuserids[atype], sizeof(tkeyuserid)*keyuseridcount[atype]);
+ strcpy(keyuserids[atype][keyuseridcount[atype]-1], keyuserid);
+ }
+ }
+}
+
+
+void releaseKeyUserIDs(const int atype)
+{
+ free(keyuserids[atype]);
+}
+
+
+char *getKeyUserID(const int atype, const int aindex)
+{
+ return keyuserids[atype][aindex];
+}
+
+
+int getKeyUserIDCount(const int atype)
+{
+ return keyuseridcount[atype];
+}
+
|