Andrew Engelbrecht [Fri, 24 Jul 2015 20:49:22 +0000 (16:49 -0400)]
more functions documented
Andrew Engelbrecht [Fri, 24 Jul 2015 18:41:22 +0000 (14:41 -0400)]
don't use doxygen quite yet.
removed the Doxyfile
Andrew Engelbrecht [Thu, 23 Jul 2015 20:22:21 +0000 (16:22 -0400)]
added Doxyfile for doxygen comment parsing
Andrew Engelbrecht [Fri, 24 Jul 2015 18:36:43 +0000 (14:36 -0400)]
Added more documentation
using python doc strings
Andrew Engelbrecht [Fri, 24 Jul 2015 00:34:03 +0000 (20:34 -0400)]
only run main() if not in interactive mode
Andrew Engelbrecht [Fri, 24 Jul 2015 00:28:29 +0000 (20:28 -0400)]
change classes format
this way, attribute names are shown by python3's help() function
Andrew Engelbrecht [Fri, 24 Jul 2015 00:24:32 +0000 (20:24 -0400)]
added comments to the classes and main()
Andrew Engelbrecht [Thu, 23 Jul 2015 20:08:16 +0000 (16:08 -0400)]
fixed a comment
Andrew Engelbrecht [Thu, 23 Jul 2015 18:34:11 +0000 (14:34 -0400)]
don't use the 'an' language
it currently has no translations, so we should default to english.
Andrew Engelbrecht [Thu, 23 Jul 2015 17:56:48 +0000 (13:56 -0400)]
don't check message block for encryption status
if it was only an armored signature, then it had its piece_type field
changed and this code would not be reached in that case.
Andrew Engelbrecht [Thu, 23 Jul 2015 17:42:52 +0000 (13:42 -0400)]
modified .gitignore
Andrew Engelbrecht [Thu, 23 Jul 2015 17:42:06 +0000 (13:42 -0400)]
updated expected test results; added more tests
Andrew Engelbrecht [Thu, 23 Jul 2015 16:47:08 +0000 (12:47 -0400)]
check unencrypted message blocks for signatures
some message blocks aren't encrypted.
Andrew Engelbrecht [Thu, 23 Jul 2015 16:21:57 +0000 (12:21 -0400)]
fixed some simple bugs
Andrew Engelbrecht [Thu, 23 Jul 2015 16:11:37 +0000 (12:11 -0400)]
the referenced issue is resolved
there is pubkey loading error handling in the get_key_from_fp function.
Andrew Engelbrecht [Thu, 23 Jul 2015 16:06:08 +0000 (12:06 -0400)]
split up prepare_for_reply_pieces
also made changes to the way message blocks are handled.
Andrew Engelbrecht [Thu, 23 Jul 2015 16:04:38 +0000 (12:04 -0400)]
updated the message flattener
it no longer prints nested layers of decrypted text.
Andrew Engelbrecht [Thu, 23 Jul 2015 15:32:54 +0000 (11:32 -0400)]
check to see if we have keys before adding them
Andrew Engelbrecht [Thu, 23 Jul 2015 15:31:33 +0000 (11:31 -0400)]
add pubkey as a fallback key
Andrew Engelbrecht [Thu, 23 Jul 2015 15:29:05 +0000 (11:29 -0400)]
a signature key should be set as a fallback key
Andrew Engelbrecht [Wed, 22 Jul 2015 23:44:17 +0000 (19:44 -0400)]
generate the encrypted mime reply
we can finally use this function again! : )
Andrew Engelbrecht [Wed, 22 Jul 2015 23:43:35 +0000 (19:43 -0400)]
only quote the message if we are going to encrypt.
Andrew Engelbrecht [Wed, 22 Jul 2015 23:42:28 +0000 (19:42 -0400)]
this belongs over here
partly because the function it was in was recursive.
Andrew Engelbrecht [Wed, 22 Jul 2015 23:38:58 +0000 (19:38 -0400)]
added a function which tries to load the pub key
Andrew Engelbrecht [Wed, 22 Jul 2015 21:39:19 +0000 (17:39 -0400)]
this will be useful later
for knowing how which nested layers of decrytion to reply with.
Andrew Engelbrecht [Wed, 22 Jul 2015 21:38:32 +0000 (17:38 -0400)]
pick out public key fingerpints from the message
this will be the key that the reply is encrypted to, if one is
available.
Andrew Engelbrecht [Wed, 22 Jul 2015 21:18:39 +0000 (17:18 -0400)]
whitespace changes
Andrew Engelbrecht [Wed, 22 Jul 2015 21:17:41 +0000 (17:17 -0400)]
return fingerprints not sig objects
Andrew Engelbrecht [Wed, 22 Jul 2015 19:59:34 +0000 (15:59 -0400)]
add signed txt, etc. if it's in an encrypted block
later there will need to be fingerprint checking to make sure that
edward can't become a decryption service for edward traffic observers.
Andrew Engelbrecht [Wed, 22 Jul 2015 19:49:37 +0000 (15:49 -0400)]
renamed variable for clarity
eddy_obj -> eddymsg_obj
Andrew Engelbrecht [Wed, 22 Jul 2015 19:47:20 +0000 (15:47 -0400)]
removed %s from end of string
it's unneeded by this version of edward.
Andrew Engelbrecht [Wed, 22 Jul 2015 19:44:02 +0000 (15:44 -0400)]
added basic mutli-language reply generation
Andrew Engelbrecht [Wed, 22 Jul 2015 19:42:03 +0000 (15:42 -0400)]
fixed detached signature verification
the indentation was wrong.
Andrew Engelbrecht [Wed, 22 Jul 2015 16:32:39 +0000 (12:32 -0400)]
some variable name changes
... to be more specific
Andrew Engelbrecht [Wed, 22 Jul 2015 16:29:02 +0000 (12:29 -0400)]
added detached sig verification
woohoo!!
Andrew Engelbrecht [Wed, 22 Jul 2015 15:50:38 +0000 (11:50 -0400)]
don't process 'None' EddyMsg objects
it would only mask bugs elsewhere in the code.
Andrew Engelbrecht [Wed, 22 Jul 2015 15:49:56 +0000 (11:49 -0400)]
don't pass back the object pointer
because it is unchanged.
Andrew Engelbrecht [Wed, 22 Jul 2015 14:02:30 +0000 (10:02 -0400)]
fixed bug
which occurred when the parsed email did not have a "To: " field.
Andrew Engelbrecht [Wed, 22 Jul 2015 13:59:55 +0000 (09:59 -0400)]
language support requires the translation files
this commit adds them.
Andrew Engelbrecht [Wed, 22 Jul 2015 01:19:03 +0000 (21:19 -0400)]
added the beginnings of language support
Andrew Engelbrecht [Wed, 22 Jul 2015 00:27:08 +0000 (20:27 -0400)]
moved function
Andrew Engelbrecht [Wed, 22 Jul 2015 00:26:22 +0000 (20:26 -0400)]
renamed function
Andrew Engelbrecht [Tue, 21 Jul 2015 23:53:03 +0000 (19:53 -0400)]
move this here
Andrew Engelbrecht [Tue, 21 Jul 2015 23:51:51 +0000 (19:51 -0400)]
notice when there isn't gpg data available
which happens when gpg doesn't get valid or complete input
Andrew Engelbrecht [Tue, 21 Jul 2015 23:51:13 +0000 (19:51 -0400)]
avoid a certain type of bug
Andrew Engelbrecht [Tue, 21 Jul 2015 23:32:40 +0000 (19:32 -0400)]
added clearsigning verification
this is all coming along nicely...
Andrew Engelbrecht [Tue, 21 Jul 2015 23:17:58 +0000 (19:17 -0400)]
ported key importing capability
Andrew Engelbrecht [Tue, 21 Jul 2015 23:15:11 +0000 (19:15 -0400)]
remove unused functions
Andrew Engelbrecht [Tue, 21 Jul 2015 22:55:19 +0000 (18:55 -0400)]
simple performance optimization
by not trying to re-scan and re-split gpg data
Andrew Engelbrecht [Tue, 21 Jul 2015 22:13:45 +0000 (18:13 -0400)]
for better debug functionality
now you can debug(obj_whatever)
Andrew Engelbrecht [Tue, 21 Jul 2015 22:13:33 +0000 (18:13 -0400)]
simplification of code
Andrew Engelbrecht [Tue, 21 Jul 2015 22:13:18 +0000 (18:13 -0400)]
added decryption function
Andrew Engelbrecht [Tue, 21 Jul 2015 22:09:21 +0000 (18:09 -0400)]
created higher order function used by flatten_eddy
it will also be used by the decryption function.
Andrew Engelbrecht [Tue, 21 Jul 2015 17:23:28 +0000 (13:23 -0400)]
don't crash if a byte string can't be decoded
Andrew Engelbrecht [Tue, 21 Jul 2015 07:20:03 +0000 (03:20 -0400)]
more useful ./run-tests output
Andrew Engelbrecht [Tue, 21 Jul 2015 07:17:06 +0000 (03:17 -0400)]
progress made toward implementing a better parser
this should make detached signature verification easier and prevent
adding its contents multiple times. it should also give finer-grained
control over what decrypted and/or signed parts to include in a reply.
Andrew Engelbrecht [Tue, 21 Jul 2015 00:01:30 +0000 (20:01 -0400)]
added the beginnings of detached sig verification
also added some test cases.
Andrew Engelbrecht [Mon, 20 Jul 2015 23:45:33 +0000 (19:45 -0400)]
added test of corrupted encryption blocks.
Andrew Engelbrecht [Mon, 20 Jul 2015 23:06:06 +0000 (19:06 -0400)]
Pass around fingerprints instead of gpgme keys
Keys used for encryption are not alway available. Trying to get the key
from a fingerprint sometimes caused edward to crash. It's a better idea
to pass around fingerprints rather than key objects. This method should
also be faster.
Andrew Engelbrecht [Mon, 20 Jul 2015 23:03:20 +0000 (19:03 -0400)]
updated the test files and added another gpg key
so everyone is capable of running the tests
Andrew Engelbrecht [Mon, 20 Jul 2015 21:44:24 +0000 (17:44 -0400)]
further generalization of the testing features
Andrew Engelbrecht [Mon, 20 Jul 2015 20:47:07 +0000 (16:47 -0400)]
further generalization of the testing script
Andrew Engelbrecht [Mon, 20 Jul 2015 20:02:30 +0000 (16:02 -0400)]
automatically find the tests directory
... relative to the directory containing run-tests
Andrew Engelbrecht [Mon, 20 Jul 2015 19:43:27 +0000 (15:43 -0400)]
partially generalized the testing suite
Andrew Engelbrecht [Mon, 20 Jul 2015 19:27:18 +0000 (15:27 -0400)]
update test suite to compare mime-decoded messages
Andrew Engelbrecht [Mon, 20 Jul 2015 19:20:55 +0000 (15:20 -0400)]
ignore the __pycache__ directory
Andrew Engelbrecht [Mon, 20 Jul 2015 19:19:19 +0000 (15:19 -0400)]
there is no reason to track random_seed
it is regularly updated by gnupg and we don't need to commit changes to
that file.
Andrew Engelbrecht [Mon, 20 Jul 2015 19:15:05 +0000 (15:15 -0400)]
ignore changes to the gnupg random seed file
Andrew Engelbrecht [Mon, 20 Jul 2015 19:12:45 +0000 (15:12 -0400)]
./run-tests is part of the testing suite.
Andrew Engelbrecht [Mon, 20 Jul 2015 19:10:25 +0000 (15:10 -0400)]
added the beginning of a testing suite to edward
automated testing is helpful.
Andrew Engelbrecht [Mon, 20 Jul 2015 17:44:07 +0000 (13:44 -0400)]
added .gitignore
Andrew Engelbrecht [Mon, 20 Jul 2015 15:59:22 +0000 (11:59 -0400)]
fix copyright header
i am not the primary author of the config file.
Andrew Engelbrecht [Mon, 20 Jul 2015 15:25:01 +0000 (11:25 -0400)]
check for keys in plaintext in decrypted blocks
if the message is hand-rolled with gpg, there might be a key in there.
but don't bother with recursive decryption unless they are using mime.
Andrew Engelbrecht [Mon, 20 Jul 2015 00:03:34 +0000 (20:03 -0400)]
simplified unattractive code
Andrew Engelbrecht [Mon, 20 Jul 2015 00:02:27 +0000 (20:02 -0400)]
upgraded the debug function
Andrew Engelbrecht [Sun, 19 Jul 2015 23:49:10 +0000 (19:49 -0400)]
search text/plain for keys and encoded messages
also don't scan the outer-most layer for keys because that gives
corrupted files. they are still accessible under the content type of
text/plain, even if the email's not a mime-formatted message.
Andrew Engelbrecht [Sun, 19 Jul 2015 23:44:08 +0000 (19:44 -0400)]
don't crash when given an invalid public key block
Andrew Engelbrecht [Sun, 19 Jul 2015 23:18:26 +0000 (19:18 -0400)]
fixed crash when receiving tampered encrypted msgs
edward now shouldn't crash when receiving a corrupted gpg encryption
block.
Andrew Engelbrecht [Sun, 19 Jul 2015 22:58:56 +0000 (18:58 -0400)]
variable name changes, small function removal
Andrew Engelbrecht [Sun, 19 Jul 2015 22:32:24 +0000 (18:32 -0400)]
fixed key format bug
Andrew Engelbrecht [Sun, 19 Jul 2015 21:44:26 +0000 (17:44 -0400)]
add imported keys to list of keys for encryption
only one will be used.
Andrew Engelbrecht [Sun, 19 Jul 2015 21:34:38 +0000 (17:34 -0400)]
added key importing feature
Andrew Engelbrecht [Sun, 19 Jul 2015 21:34:01 +0000 (17:34 -0400)]
added a debug function
Andrew Engelbrecht [Sun, 19 Jul 2015 20:13:56 +0000 (16:13 -0400)]
header fix
Andrew Engelbrecht [Sun, 19 Jul 2015 20:13:19 +0000 (16:13 -0400)]
use a settings file to manage configurations
Andrew Engelbrecht [Sun, 19 Jul 2015 19:56:37 +0000 (15:56 -0400)]
header improvement
Andrew Engelbrecht [Sun, 19 Jul 2015 19:56:06 +0000 (15:56 -0400)]
renamed edward-bot to edward
Andrew Engelbrecht [Sun, 19 Jul 2015 19:37:55 +0000 (15:37 -0400)]
added PGP/MIME reply email generation
now international characters should show up in email clients properly
encoded.
Andrew Engelbrecht [Sun, 19 Jul 2015 19:31:33 +0000 (15:31 -0400)]
stylistic changes
Andrew Engelbrecht [Sun, 19 Jul 2015 04:46:45 +0000 (00:46 -0400)]
fixed potential string decoding bug
Andrew Engelbrecht [Sun, 19 Jul 2015 04:44:24 +0000 (00:44 -0400)]
removed unused import
Andrew Engelbrecht [Sat, 18 Jul 2015 22:59:44 +0000 (18:59 -0400)]
style fix
removed unecessary space
Andrew Engelbrecht [Sat, 18 Jul 2015 22:56:59 +0000 (18:56 -0400)]
fixed bug occurring in messages without a sig
edward will ask for a key.
Andrew Engelbrecht [Sat, 18 Jul 2015 22:44:56 +0000 (18:44 -0400)]
simplified function by using map()
Andrew Engelbrecht [Sat, 18 Jul 2015 22:31:21 +0000 (18:31 -0400)]
added reply signing capability
currently hard-coded to my own key. will eventually be an option.
Andrew Engelbrecht [Sat, 18 Jul 2015 22:18:49 +0000 (18:18 -0400)]
fixed a potential bug
this should be set as a flag.
Andrew Engelbrecht [Sat, 18 Jul 2015 22:18:34 +0000 (18:18 -0400)]
added return message quoting
Andrew Engelbrecht [Sat, 18 Jul 2015 21:51:20 +0000 (17:51 -0400)]
added simple message reply generation
the reply is encrypted to the first encryption-capable key used to sign
the message.
Andrew Engelbrecht [Sat, 18 Jul 2015 21:28:08 +0000 (17:28 -0400)]
created a function for choosing the encryption key
this is somewhat more intelligent and can be improved upon later.
Andrew Engelbrecht [Sat, 18 Jul 2015 21:23:56 +0000 (17:23 -0400)]
removed a function, changed a func name
the removed function will eventually be replaced by a reply generation
function.