Age | Commit message (Collapse) | Author |
|
This deletes all of the contents of the obj directory.
|
|
|
|
|
|
This add the logger code and updates all relevant printf statements to
use the new function logger().
Updated files gpgedit_config.h, gpg.h, and main.c to include the new
logger.h. Also updated Makefile to build logger.h.
This adds the switches -v,--verbose; -q,--quiet; and -s,--silent.
Updated helptext to indicate the function of each switch.
|
|
Now we test if the passed-in file exists. If it does, the decrypt ->
edit -> encrypt process is followed. If it does not exist, the
decryption process is skipped. Also added a check for an empty recipient
linked list to prevent attempting to edit files when no recipients are
specified.
|
|
Now we detect which editor the user wants to use based on their
environment variable EDITOR. If none is set, use vim by default. Tested
with vim, vi, nano, cat (not an editor), and leafpad.
|
|
The commit implementing supplimentary recipients did not include updates
to the Makefile. This includes those updates.
|
|
This documents program function, description, and basic usage with the
two currently available switches, -r,--recipient and -h,--help.
|
|
Added basic support for additional recipients. This required a rewrite
of the recipient memory management. Previously, recipients were stored
in a char array, which was reallocated when a recipient was added. This
was not done globally so the user could add additional recipients at
runtime.
This adds a new gpgedit_config object that handles the file path and the
recipient list. The recipient list is now managed inside of a linked
list (how cool are those?!), allowing for appending without
reallocating. Now the recipient list is loaded from the specified file,
and any additional recipients added via the -r,--recipient switch will
be added to the list when the file is closed and re-encrypted.
Note that this adds support for the -r,--recipient switch.
This deprecates and removes the gpg_keyids.c and .h files, as they are
no longer needed (relevant code was moved to gpg.c). This also adds the
strll.c and strll.h files to handle memory management for linked lists
of char arrays.
|
|
Previously, the code read the recipient list from the existing file.
This was problematic when creating files from scratch, since one would
not have recipients. This is also problematic if the user wanted to add
a recipient to an existing file.
This commits support for a growable recipient list, using the strarray
code. This also splits the gpg_keyids code into its own library
(gpg_keyids.h).
Began preliminary move away fron in-line errors to a global error
handler, gpg_failiferr. This is because inline error handling requires
quite a lot of duplicate code, since nearly every operation needs to be
checked for failure state.
|
|
This is simply memory management code for dynamically growing string
arrays. This will make key management easier.
|
|
We should never free arguments passed to a function unless the function
is a destructor, which gpg_encrypt is not. The keyids array originates
in main, so this moves the release call to main.
|
|
|
|
Prevent any html files and prevent the main binary from being committed.
|
|
|
|
|
|
|
|
gpg.c: Add new init_gpg function that more closely mimicks that defined
in the gpgme tests. This however initializes the passed-in context
object, reducing duplicate code. Removed old gpg_init.
Clean up linked library dependencies.
Implemented gpg_keyids_to_key_t() to convert arrays of key id strings to
an array of key objects (don't forget to free the array!).
Implemented gpg_recip_count, which counts the number of recipients for
the given gpg_op_decrypt_result_t object.
Implemented gpg_dump_key, which dumps all of the human-readable
information in a gpgme_key_t object to stdout. This is for debugging key
issues.
|
|
Currently, can decrypt gpg files, write them to temporary storage,
enumerate its ciphertext recipients, and clean up. Still needs
functionality to re-encrypt to the original recipients before the first
version is even usable.
Included GPLv3 license.
|