Commit Graph

625 Commits (5541bd2d1f06e2634936779ce9e23e3e3404e77f)

Author SHA1 Message Date
Edouard Tisserant 5541bd2d1f Fixed wrong format for seckey packet (s2k was missing if no conversion) 2015-11-20 21:45:00 +01:00
Edouard Tisserant 19593d8500 added Key Flags signature sub-packet writing. Reflected subpacket content to key's singinfo structure to allow gnerates keys to be used immediately without reparsing. 2015-11-20 00:37:59 +01:00
Edouard Tisserant b9781b1cf8 pgp_getkeybyfpr extended to support revoke/expired checks 2015-11-18 13:35:33 +01:00
Edouard Tisserant 770366be34 Build on IOS : more agressive sshkey support stripping, worked arround LLVM making undefined symbol when calling non static inline c function, stripped useless project settings 2015-08-26 01:28:11 +02:00
Edouard Tisserant 0af98ad54a added xcode build project files in dist/netpgp-xcode 2015-08-24 14:12:18 +02:00
Edouard Tisserant 568fdd4dbe Fix for iOS build 2015-07-03 14:32:43 +02:00
Edouard Tisserant 150e3b0aa6 Stripped JSON related code, and disabled build of command line tools. Only src/lib remains being built. 2015-06-30 01:02:19 +02:00
Edouard Tisserant e2fa5a2189 Added pgp_key_get_primary_userid, returning pointer to C string 2015-06-28 13:43:36 +02:00
Edouard Tisserant de1b28475c Added key expiration time sig subpacket. Fixed segfault on fileread filter in case of failure in opening file. 2015-06-27 23:19:16 +02:00
Edouard Tisserant bf97027d73 Added public key parameter to pgp_add_selfsigned_userid, to add userid to both secret anf public key simultaneously. 2015-06-27 22:18:32 +02:00
Edouard Tisserant dd43fa3a92 pgg_key_revoke takes both secure public key as parameters, and add revocation signature to both of them. Fixed pgp_filter_keys_fileread, which wasn't initializing cbinfo->io, segfaulting when trying to print an error 2015-06-27 15:45:03 +02:00
Edouard Tisserant fda602171a Added pgp_key_revoke. Fixed unencrypted secret key export. Fixed unwanted free compromizing keydata when decypting session key (openssl-crypto). 2015-06-27 00:56:07 +02:00
Edouard Tisserant 84dfa75cd3 removed some debug code 2015-06-26 11:32:50 +02:00
Edouard Tisserant 39200f9be7 Added key rating 2015-06-26 01:08:38 +02:00
Edouard Tisserant fed3b718dc Fixed elgamal key transerable key output - key size was not computed in that case 2015-06-25 14:21:58 +02:00
Edouard Tisserant 97ebbb6988 Fixed segfault on pre-existing subkey update 2015-06-12 09:46:26 +02:00
Edouard Tisserant a644a6aea9 Added signature duplicates detection when updtating keys 2015-06-11 17:43:27 +02:00
Edouard Tisserant 8728bcc1d5 Fixed transferable key output. 2015-06-11 14:02:07 +02:00
Edouard Tisserant 68575d89f5 More fixes. Work in progress. Key export still broken (incl saving rings) 2015-06-11 00:43:16 +02:00
Edouard Tisserant 0b52dfca5f Many fixes on recent changes. To be continued 2015-06-08 22:07:10 +02:00
Edouard Tisserant 598f6290e6 Various recent code cleanup. Added secret counterpart to get_enckey and get_sigkey :
get_deckey and get_certkey

Note : get_certkey is for the secret part of the signing key
       get_sigkey if for the public part of the signing key
       renaming cert->sign and sig->valid would be less confusing
2015-06-07 18:14:24 +02:00
Edouard Tisserant d99aff2a70 Now keys (pgp_key_t) contains only validated keys, uid or subkey,
along with signature info and signature raw packet.

Effects :
 - Should import untrusted key data safely, keyring file/mem read replaced
   by validating filter. Only keys, uid or subkey with valid sig can enter.
 - Keyring queries use stored signature infos to elect best result. Uses
   youngest relevant signature to decide about expiration.
 - Support for key/subkey encryption and signing roles described in rfc4880
   through the Key Flags subpacket.

Side effects:
 - Encrypted seckey support broken
 - SSH keyring support broken
 - Probably some quircks in packet-print.c

Status:
 - Builds
 - Untested
2015-06-06 23:25:59 +02:00
Edouard Tisserant 5fcaf4b5c9 Key Filter now deals with uids and subkeys.
Started extending pgp_key_t, changes need to be propagated.
2015-05-31 02:15:59 +02:00
Edouard Tisserant 2d26a1791e Various small changes, paving the way for more picky key importing.
Changed:
 pgp_subsig_t.pgp_sig_t -> pgp_uidsig_t.pgp_sig_info_t
 copy_sig_info : also duplicate sig's BNs
 pgp_validate_key_cb :
    - accepts NULL validate_key_cb_t,  in case result's
      siglists are discarded (i.e. for filtering).
    - relase packet eventualy copied by on_valid.

Renamed:
 pgp_key_t.subsigs -> pgp_key_t.uidsigs
 pgp_subsig_t -> pgp_uidsig_t
2015-05-29 18:06:32 +02:00
Edouard Tisserant a389cbfa7e Added pgp_ensure_pubkey 2015-05-28 00:13:42 +02:00
Edouard Tisserant 0e3e78b365 merge 2015-05-27 01:44:37 +02:00
Edouard Tisserant a78a9dfa63 Added packet collection capability to on_valid callback. Added pgp_filter_keys_from_mem with stub key_filter_cb. To be continued. 2015-05-27 01:36:00 +02:00
Edouard Tisserant 985448a132 Added on_valid callback, itself called from key validation callback, for secure filtering purpose. Also enforced rfc4880 key packet sequencing 2015-05-25 16:57:18 +02:00
Edouard Tisserant ae8aa3f5a9 Fixed uninitialized variable in keyring purge 2015-05-13 01:07:59 +02:00
Edouard Tisserant e4f7ba589a stripped useless pgp_getkeybyfpr parameter 2015-05-07 18:51:36 +02:00
Edouard Tisserant 1176387389 Fixes in pgp_keydata_dup, added more DYNARRAY handling macros, plus some strange WTF stuff commented out in add key to pubring 2015-05-05 17:27:16 +02:00
Edouard Tisserant 473336309a fixed pgp_getkeybyfpr 2015-05-04 16:09:23 +02:00
Edouard Tisserant 25ddf15144 keyring : better error handling on recent code added pgp_keyring_purge. create : workaround problems when outputing key data 2015-04-29 01:05:05 +02:00
Edouard Tisserant df0053cbfc Added 'get' key by fingerprint, 'delelet' key by id an by fingerprint 2015-04-28 01:53:54 +02:00
Edouard Tisserant ec72218253 Keeping a backup of previous ring file is now an option 2015-04-26 22:41:46 +02:00
Edouard Tisserant 5ed7a0d585 Fixed nasty leftover statement in netpgp_save_ring. Added accumulated memory free in case of stacked accumulating readers. 2015-04-26 21:13:45 +02:00
Edouard Tisserant 21d96a82f2 netpgp_save_pubring (ok), netpgp_save_secring (broken), raw initial key packet for generated keys 2015-04-25 01:13:03 +02:00
Edouard Tisserant 711fd28093 netpgp_save_pubkeys 2015-04-22 15:53:54 +02:00
Edouard Tisserant 8423fdb58e pgp_encrypt_buf now accepts multiple recipients and raw openPGP message as input 2015-04-20 23:15:56 +02:00
Edouard Tisserant 1e8d2a8003 simplified pgp_validate_mem_detached's detached memory assignment. reverted previous change to pgp_validation_t 2015-04-13 15:27:32 +02:00
Edouard Tisserant 80084e826f fixed pgp_validate_mem_detached memory leak 2015-04-13 14:06:23 +02:00
Edouard Tisserant 9f99401a33 fixed pgp_validate_mem_detached detached parameter beeing ignored 2015-04-12 02:05:39 +02:00
Edouard Tisserant 1ef4f2f8da added pgp_validate_mem_detached for in memory verification of detached signature 2015-04-11 18:24:01 +02:00
Edouard Tisserant 764ef50c6a Added pgp_decrypt_and_validate_buf, similar to pgp_decrypt_buf, but does validation in the same pass 2015-04-08 17:36:37 +02:00
Edouard Tisserant 7a97296972 Check passphrase callback is not null before calling it. 2015-04-05 09:55:10 +02:00
Edouard Tisserant ea27ad462b Exposed some lib's internal headers in package's header files (/include/netpgp) 2015-04-05 09:53:51 +02:00
Edouard Tisserant d110b541c7 Fixed HKPClient requests in order to be more compatible with SKS : HTTP 1.1 + Machine Readable option. Still need to get ride of json parsing. 2015-02-27 20:09:06 +01:00
Edouard Tisserant 2a7ccb0a22 Cleanup .hgignore. Fix hkpclient/Makefile.am LDADD 2015-02-27 14:55:23 +01:00
Edouard Tisserant 2ab27f8331 Populated .hgignore 2015-02-27 14:34:57 +01:00
Edouard Tisserant 79041d1772 Added build of hkpclient in dist 2015-02-27 14:32:09 +01:00