#
1.44 |
|
26-Aug-2022 |
jhigh |
adding initial support for ECDSA (19) to netpgp. tested using p256/sha256, p384/sha384, and p521/sha512
|
Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base phil-wifi-20200421
|
#
1.43 |
|
18-Apr-2020 |
jhigh |
added blowfish symmetric cipher per RFC4880 9.2
|
Revision tags: netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.42 |
|
13-Nov-2018 |
mlelstv |
Fix some error handling, json support, keyring handling.
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6 tls-maxphys-base yamt-pagecache-base5 agc-netpgp-standalone-base yamt-pagecache-base4
|
#
1.41 |
|
05-Mar-2012 |
christos |
branches: 1.41.34; 1.41.36; Fix compilation: kill PGP_ERROR() and make everything use a format. XXX: Fixme to use __VA_ARGS__ instead of the silly PGP_ERROR_N() macros.
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
|
#
1.40 |
|
29-Nov-2010 |
agc |
branches: 1.40.6; I forgot that the fastctype.[ch] files were still in this directory, and have no need to be here - remove them, and just use native <ctype.h>
|
#
1.39 |
|
11-Nov-2010 |
agc |
Changes to 3.99.15/20101110
+ add support for partial blocks, defined in rfc 4880, and used fairly extensively by gnupg where the input size may not be known in advance (e.g. for encrypted compressed data, as produced by default by gpg -e)
|
#
1.38 |
|
07-Nov-2010 |
agc |
Take the internal functions and definitions back out of the implementation namespace:
:g/\<__ops/s//pgp/g :g/\<__OPS/s//__PGP/g :g/\<OPS/s//PGP/g
No functional change, regression tests complete successfully.
|
#
1.37 |
|
04-Nov-2010 |
agc |
Update to version 3.99.13:
+ add ability in netpgpkeys(1) to specify the cipher (symmetric algorithm) as specified in RFC 5581 + add the camellia cipher implementation from openssl
|
#
1.36 |
|
15-Aug-2010 |
agc |
get rid of more 64-bit lint
|
#
1.35 |
|
15-Aug-2010 |
agc |
+ rationalise birthtime/expiration timestamps into a single function
+ clean up some 64-bit (amd64) lint
|
#
1.34 |
|
13-Aug-2010 |
agc |
Changes to 3.99.9/20100809
+ add single character options to netpgp(1) and netpgpkeys(1) + add -o long-option(=value)? options to netpgp(1) and netpgpkeys(1) + add some small preparations for using the first subkey for encryption (much more to follow)
|
#
1.33 |
|
09-Jul-2010 |
agc |
Changes to 3.99.7/20100701
+ recognise ascii-armoured encrypted messages properly, in memory and in files + print error message and exit for now when trying to encrypt with a DSA key + fix bug reported by dyoung when trying to print out the encryption key fingerprint
|
#
1.32 |
|
25-Jun-2010 |
agc |
Fix build problems on LP64 platforms - thanks to Paul Goyette for the nudge.
|
#
1.31 |
|
25-Jun-2010 |
agc |
Changes to 3.99.5
+ make ssh fingerprints (md5) match netpgp listing + use the more functional hexdump function from ssh2pgp in place of the older hexdump function from openpgpsdk + pass hash type down from command line where needed + add test for netpgp/ssh key fingerprint matching + make netpgpkeys(1) take a --hash= option
With these changes, netpgp can be made to generate the same fingerprint as openssh (by default, ssh-keygen(1) uses an md5 digest)
% /usr/bin/netpgpkeys --ssh-keys --sshkeyfile=/etc/ssh/ssh_host_rsa_key.pub --list-keys --hash=md5 1 key pub 1024/RSA (Encrypt or Sign) fcdd1c608bef4c4b 2008-08-11 Key fingerprint: e935 902d ebf1 76ba fcdd 1c60 8bef 4c4b uid osx-vm1.crowthorne.alistaircrooks.co.uk (/etc/ssh/ssh_host_rsa_key.pub) <root@osx-vm1.crowthorne.alistaircrooks.co.uk>
% ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub 1024 e9:35:90:2d:eb:f1:76:ba:fc:dd:1c:60:8b:ef:4c:4b /etc/ssh/ssh_host_rsa_key.pub (RSA) %
|
#
1.30 |
|
25-May-2010 |
agc |
Simplify and shorten the internals of packet processing by getting rid of the intermediate pseudo-abstraction layer, which detracted from understanding and had no benefit whatsoever. Rename some enums and some definitions.
|
#
1.29 |
|
08-May-2010 |
agc |
use hexdump() where possible.
get rid of all traces of dmalloc - it's not used anymore. we can now g/c initialisation functions which do not do anything.
also get rid of the pkeyid() functions, which just prints a hexadecimal string
|
#
1.28 |
|
02-Apr-2010 |
christos |
make it obvious what ctime it is used for.
|
#
1.27 |
|
05-Mar-2010 |
agc |
Update netpgp to version 1.99.20/20100304 - portability improvements, and bug fixes:
Changes to 1.99.20/20100304
+ move args to some functions around to be consistent + use uint*_t where appropriate + fix bug in verify memory + add documentation to manual pages to show how to do combined signing/encryption and decryption/verification + make verification of ascii-armoured memory work the same as binary + eliminate use of strdup(3), strcasecmp(3), and strptime(3). NetBSD/pkgsrc PR 42922 applies - need to define _XOPEN_SOURCE and _BSD_SOURCE for newer linux platforms with glibc 2.10.1. solved a bit differently, by implementing strdup(3) and strcasecmp(3) independently, and using regexps to avoid calling strptime(3).
|
#
1.26 |
|
14-Dec-2009 |
agc |
Prepare for a new netpgp-20091210 portable release.
Apart from infrastructure changes, there are the following functional ones:
+ Update to version 20091210
+ provide a new netpgp_match_list_keys(3) function to perform a regular-expression based search of all the keys in the keyring. If no pattern is specified to match, then all keys are returned.
+ provide a new netpgp_set_homedir(3) function, and use it to set the home directory from the library, rather than individually in all the programs which use the library
+ provide a new netpgp_incvar(3) function which will add a constant increment (which may be negative) to the value of an internal variable. This is primarily used for the verbosity level within the library, and is again a movement of the function into the library from the individual programs which use the library
+ move to the specification of an ssh key file by internal variable, rather than the directory holding an ssh key file
+ autoconf infrastructure changes
+ take a hammer to the _GNU_SOURCE definitions problems
+ don't rely on strnlen(3) being present everywhere
|
Revision tags: matt-premerge-20091211
|
#
1.25 |
|
05-Dec-2009 |
agc |
Add the ability to use ssh host keys (on the fly) to provide RSA keys.
These keys can be used in the same way as normal PGP keys - to sign, verify, encrypt and decrypt files and data.
% cp configure a % sudo netpgp --ssh-keys --sign --userid 1e00404a a Password: pub 1024/RSA (Encrypt or Sign) 040180871e00404a 2008-08-11 Key fingerprint: c4aa b385 4796 e6ce 606c f0c2 0401 8087 1e00 404a % sudo chmod 644 a.gpg % netpgp --ssh-keys --verify a.gpg netpgp: default key set to "C0596823" can't open '/etc/ssh/ssh_host_rsa_key' Good signature for a.gpg made Fri Dec 4 23:04:36 2009 using RSA (Encrypt or Sign) key 040180871e00404a pub 1024/RSA (Encrypt or Sign) 040180871e00404a 2008-08-11 Key fingerprint: c4aa b385 4796 e6ce 606c f0c2 0401 8087 1e00 404a uid osx-vm1.crowthorne.alistaircrooks.co.uk (/etc/ssh/ssh_host_rsa_key.pub) <root@osx-vm1.crowthorne.alistaircrooks.co.uk> % uname -a NetBSD osx-vm1.crowthorne.alistaircrooks.co.uk 5.99.20 NetBSD 5.99.20 (ISCSI) #0: Wed Oct 7 17:16:33 PDT 2009 agc@osx-vm1.crowthorne.alistaircrooks.co.uk:/usr/obj/i386/usr/src/sys/arch/i386/compile/ISCSI i386 %
The ssh host keys do not need to be manipulated in any way - the information is read from existing files.
|
#
1.24 |
|
01-Dec-2009 |
agc |
Recognise the hash algorithm in a case-insensitive manner.
|
#
1.23 |
|
09-Oct-2009 |
agc |
Add some checks for return value from allocation routines
|
#
1.22 |
|
07-Oct-2009 |
agc |
More checking of allocation return values where not already done.
Revamp hash initialisation to return a success/failure error code.
Document places where we prefer to continue with a NULL buffer, rather than silently continue with possibly erroneous results.
|
#
1.21 |
|
06-Oct-2009 |
agc |
Clean up Flexelint warnings - from phk, many thanks - just low-hanging fruit for just now.
|
#
1.20 |
|
11-Jun-2009 |
agc |
CHANGES 1.99.10 -> 1.99.11
+ address keys array from 0 with unsigned indices + print results to io->res stream - default to stderr, and set using netpgp_setvar(..., "results", filename) + __ops_keyid()'s third arg was always the size of the keyid array - no need to pass it + get rid of the excessive type-checking in packet-show-cast.h, which wasn't necessary, and fold all the show routines into packet-show.c + introduce a generic __ops_new() and use it for some structure allocation
|
#
1.19 |
|
10-Jun-2009 |
agc |
Get rid of an unusual architectural construct:
The original code had dynamic arrays indexed by unsigned indices, except for the array of keys, which was indexed by a signed integer, and initialised to -1. Subsequently, when a new id was created, the index was pre-incremented, and later on, in a different call, the userid (a different packet) was assigned to the current index. This has implications for growing the array, for signed comparison checks, and just general cleanliness.
This change overhauls the construct: don't special case anything, just address the array from 0, use unsigned indices same as everything else, and complain if we get a user id for which we haven't received a public or secret key.
|
#
1.18 |
|
10-Jun-2009 |
agc |
CHANGES 1.99.9 -> 1.99.10
+ fix a bug in decryption whereby a bad passphrase would cause a segmentation violation + fix some regressions in key searching in the underlying find keys routines + add C++ declaration protection to the external interface in netpgp.h + split out the key management parts of netpgp(1) into netpgpkeys(1)
|
#
1.17 |
|
09-Jun-2009 |
agc |
CHANGES 1.99.8 -> 1.99.9
+ make more use of __ops_io_t structure + addition of standalone, stripped-down netpgpverify utility + addition of test for --list-packets on an empty file + bring forward some simplifications from netpgpverify + some name changes + get rid of the increment and then decrement keycount around accumulated data ("it's to do with counting") + then use unsigned integers for the size and counts for the dynamic array of keys, and use the common dynamic array macros for keys in a keyring + if it's a union, let's use it as a union, not a struct + modified documentation to correct the --list-packets command (sorry, ver) + add a new directory structure for both the distribution and the reachover Makefiles. The autotest framework has been partially overhauled but more TLC is needed here. + add a --pass-fd=n option so that external programs can provide the passphrase on a file descriptor without going through the callback, requested by joerg
|
#
1.16 |
|
02-Jun-2009 |
agc |
Some autoconfig glue around header files inclusion.
|
#
1.15 |
|
31-May-2009 |
agc |
CHANGES 1.99.7 -> 1.99.8
+ get rid of __ops_malloc_passphrase() - strdup() works just as well + generalise __ops_seckey_forget() to become __ops_forget(), give it a size parameter, and make it work on things other than secret keys (passphrases for instance) + minor struct field enum renaming + minor function call renaming + add ops_io_t struct to hold pointers to IO streams, and pass it down where necessary
|
#
1.14 |
|
28-May-2009 |
agc |
CHANGES 1.99.6 -> 1.99.7
+ added to the regression tests + get rid of some magic constants, replace with more obvious names + zero out the memory used for a passphrase before freeing it in one place
|
#
1.13 |
|
27-May-2009 |
agc |
CHANGES 1.99.4 -> 1.99.5
+ Luke Mewburn completely overhauled the auto tools infrastructure + changed signature (hah!) of some netpgp file management prototypes to use const char * for file names and user ids, not char * - suggested by christos + change some of the openpgpsdk display functions to return integer values, and send those values back from the netpgp functions - suggested by christos + rather than passing a shedload of variables to netpgp_init(), get rid of them, and set variables using the netpgp_[gs]etvar() interface + replace some magic constants with descriptive names + use a netpgp variable to skip userid checks if necessary + add ability to allow coredumps via --coredumps if (a) you have taken leave of your sanity, and (b) you have some magical persistent storage which doesn't spare sectors, and (c) you know how to remove a file securely + bumped library version on NetBSD to 1.0 for interface changes
|
Revision tags: netpgp-1-99-4
|
#
1.12 |
|
25-May-2009 |
agc |
CHANGES 1.99.3 -> 1.99.4
+ get rid of some magic constants + revamped regression test script to count number of tests passed + made checkhash array in ops_seckey_t dynamic, rather than statically allocated + made mdc array dynamic, and added a length field to mdc for future use + revamped usage message to match reality + made portable version again for the autoconfed package sources + add separate netpgpdigest.h file so that separate digest sizes can be used without having to include "packet.h" in everything
|
#
1.11 |
|
21-May-2009 |
agc |
CHANGES 1.99.1 -> 1.99.2
+ various minor cleanups + fix longstanding pasto where the key server preference packets are displayed with the correct ptag information + up until now, there has been an asymmetry in the command line options for netpgp(1) - whilst a file may have signature information added to it with the "--sign" command, there has been no way to retrieve the contents of the file without the signature. The new "--cat" option does this (there are synonyms of "--verify-show" and "--verify-cat") - the signature is verified, and if it matches, the original contents of the file are sent to the output file (which defaults to stdout, and can be set with the --output option on the command line). If the signature does not match, there is no output, and an EXIT_FAILURE code is returned. + revamped netpgp(1) to make it clear what commands are available, how these commands relate to each other, and which commands take custom options
|
#
1.10 |
|
19-May-2009 |
agc |
CHANGES 1.0.0 -> 1.99.1
+ released and tagged version 1.0.0; development version now 1.99.1 + get rid of some fields which are no longer needed + minor name changes + add mmapped field to ops_data_t struct to denote that the array needs an munmap(2) and not a free(3) + add an __ops_mem_readfile() function, and use it for reading files. The function does mmap(2), and then falls back to read(2) if that fails. Retire unused __ops_fileread() which had an unusual interface + drop sign_detached() from netpgp.c down into signature.c as __ops_sign_detached()
|
Revision tags: netpgp-release-1-0-0
|
#
1.9 |
|
16-May-2009 |
agc |
+ don't use arrays of length 1 to hold single instances of characters, unsigned or not - just use a single character itself + misc cleanup + rename cinfo to "output" and ops_createinfo_t to "ops_output_t" to be a bit more descriptive + shorten some long names + get rid of test for libgen.h - it's not needed anymore + bump to version 0.99.4, and 20090515 sources, regenerate configure and co + numerous name changes to be more consistent and more concise + add verbosity level to the variables that can be set and retrieved by netpgp_setvar() and netpgp_getvar() + added --verbose option to netpgp(1) + add __RCSID() to all files
|
#
1.8 |
|
14-May-2009 |
agc |
+ got rid of "local" header files. These aren't necessary since the openpgpsdk code was modified to all be in the same directory + added netpgp_getvar() and netpgp_setvar(), and use them to get and set the user id and hash algorithm preference + get rid of <stdbool.h> usage - I'm still not sure this is the way we should be going long term, but the bool changes got integrated with the others, and are there in cvs history if we want to resurrect them. Correct autoconf accordingly. Bump netpgp minimus version, and autoconf-based date version. + updated documentation to reflect these changes
|
Revision tags: jym-xensuspend-base jym-xensuspend-nbase
|
#
1.7 |
|
12-May-2009 |
agc |
branches: 1.7.2; Commit the weekend's changes:
+ minor name changes + remove duplicated code (commented out) in packet-print.c + original code contained abstraction violations for hash size - fix them + get rid of some magic constants related to length of hash arrays + allow a choice of hash algorithms for the signature digest (rather than hardcoding SHA1 - it is looking as though collisions are easier to manufacture based on recent findings) + move default signature RSA hash algorithm to SHA256 (from SHA1). This is passed as a string parameter from the high-level interface. We'll revisit this later after a good way to specify the algorithm has been found. + display the size of the keys in --list-packets + display the keydata prior to file decryption
|
#
1.6 |
|
08-May-2009 |
agc |
+ add a --help option + if setrlimit exists, set the core dump size to be 0 (with thanks to mrg for the reference implementation) + get rid of __ops_start_cleartext_sig/__ops_start_msg_sig abstractions and just "export" the __ops_start_sig function - the function is not actually exported, just usable by other __ops functions + bump internal version number to 0.99.2, autoconf version to 20090506 + prettify usage message output
|
#
1.5 |
|
06-May-2009 |
agc |
More cosmetic changes, no functional differences.
|
#
1.4 |
|
06-May-2009 |
agc |
Change some names to something a bit less obscure.
e.g. For some unfathomable reason, I find "__ops_write_mem_from_file" a bit counterintuitive - replace that by "__ops_fileread"
|
#
1.3 |
|
05-May-2009 |
agc |
+ __ops_packet_t -> __ops_subpacket_t + __ops_parser_content_t -> __ops_packet_t + rename some other long names 51 chars is the record function name length so far + preliminary moves to support detached signatures as yet, incomplete + add back command line option to list packets in a signed or encrypted file + make __ops_parse() take an argument whether to print errors, and kill the __ops_parse_and_print_errors() function + get rid of some assertions in the code - this is a library - about 100 to go
|
#
1.2 |
|
25-Apr-2009 |
agc |
WARNS=4 changes
|
#
1.1 |
|
23-Apr-2009 |
agc |
branches: 1.1.1; Initial revision
|
#
1.43 |
|
18-Apr-2020 |
jhigh |
added blowfish symmetric cipher per RFC4880 9.2
|
Revision tags: phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.42 |
|
13-Nov-2018 |
mlelstv |
Fix some error handling, json support, keyring handling.
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6 tls-maxphys-base yamt-pagecache-base5 agc-netpgp-standalone-base yamt-pagecache-base4
|
#
1.41 |
|
05-Mar-2012 |
christos |
branches: 1.41.34; 1.41.36; Fix compilation: kill PGP_ERROR() and make everything use a format. XXX: Fixme to use __VA_ARGS__ instead of the silly PGP_ERROR_N() macros.
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
|
#
1.40 |
|
29-Nov-2010 |
agc |
branches: 1.40.6; I forgot that the fastctype.[ch] files were still in this directory, and have no need to be here - remove them, and just use native <ctype.h>
|
#
1.39 |
|
11-Nov-2010 |
agc |
Changes to 3.99.15/20101110
+ add support for partial blocks, defined in rfc 4880, and used fairly extensively by gnupg where the input size may not be known in advance (e.g. for encrypted compressed data, as produced by default by gpg -e)
|
#
1.38 |
|
07-Nov-2010 |
agc |
Take the internal functions and definitions back out of the implementation namespace:
:g/\<__ops/s//pgp/g :g/\<__OPS/s//__PGP/g :g/\<OPS/s//PGP/g
No functional change, regression tests complete successfully.
|
#
1.37 |
|
04-Nov-2010 |
agc |
Update to version 3.99.13:
+ add ability in netpgpkeys(1) to specify the cipher (symmetric algorithm) as specified in RFC 5581 + add the camellia cipher implementation from openssl
|
#
1.36 |
|
15-Aug-2010 |
agc |
get rid of more 64-bit lint
|
#
1.35 |
|
15-Aug-2010 |
agc |
+ rationalise birthtime/expiration timestamps into a single function
+ clean up some 64-bit (amd64) lint
|
#
1.34 |
|
13-Aug-2010 |
agc |
Changes to 3.99.9/20100809
+ add single character options to netpgp(1) and netpgpkeys(1) + add -o long-option(=value)? options to netpgp(1) and netpgpkeys(1) + add some small preparations for using the first subkey for encryption (much more to follow)
|
#
1.33 |
|
09-Jul-2010 |
agc |
Changes to 3.99.7/20100701
+ recognise ascii-armoured encrypted messages properly, in memory and in files + print error message and exit for now when trying to encrypt with a DSA key + fix bug reported by dyoung when trying to print out the encryption key fingerprint
|
#
1.32 |
|
25-Jun-2010 |
agc |
Fix build problems on LP64 platforms - thanks to Paul Goyette for the nudge.
|
#
1.31 |
|
25-Jun-2010 |
agc |
Changes to 3.99.5
+ make ssh fingerprints (md5) match netpgp listing + use the more functional hexdump function from ssh2pgp in place of the older hexdump function from openpgpsdk + pass hash type down from command line where needed + add test for netpgp/ssh key fingerprint matching + make netpgpkeys(1) take a --hash= option
With these changes, netpgp can be made to generate the same fingerprint as openssh (by default, ssh-keygen(1) uses an md5 digest)
% /usr/bin/netpgpkeys --ssh-keys --sshkeyfile=/etc/ssh/ssh_host_rsa_key.pub --list-keys --hash=md5 1 key pub 1024/RSA (Encrypt or Sign) fcdd1c608bef4c4b 2008-08-11 Key fingerprint: e935 902d ebf1 76ba fcdd 1c60 8bef 4c4b uid osx-vm1.crowthorne.alistaircrooks.co.uk (/etc/ssh/ssh_host_rsa_key.pub) <root@osx-vm1.crowthorne.alistaircrooks.co.uk>
% ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub 1024 e9:35:90:2d:eb:f1:76:ba:fc:dd:1c:60:8b:ef:4c:4b /etc/ssh/ssh_host_rsa_key.pub (RSA) %
|
#
1.30 |
|
25-May-2010 |
agc |
Simplify and shorten the internals of packet processing by getting rid of the intermediate pseudo-abstraction layer, which detracted from understanding and had no benefit whatsoever. Rename some enums and some definitions.
|
#
1.29 |
|
08-May-2010 |
agc |
use hexdump() where possible.
get rid of all traces of dmalloc - it's not used anymore. we can now g/c initialisation functions which do not do anything.
also get rid of the pkeyid() functions, which just prints a hexadecimal string
|
#
1.28 |
|
02-Apr-2010 |
christos |
make it obvious what ctime it is used for.
|
#
1.27 |
|
05-Mar-2010 |
agc |
Update netpgp to version 1.99.20/20100304 - portability improvements, and bug fixes:
Changes to 1.99.20/20100304
+ move args to some functions around to be consistent + use uint*_t where appropriate + fix bug in verify memory + add documentation to manual pages to show how to do combined signing/encryption and decryption/verification + make verification of ascii-armoured memory work the same as binary + eliminate use of strdup(3), strcasecmp(3), and strptime(3). NetBSD/pkgsrc PR 42922 applies - need to define _XOPEN_SOURCE and _BSD_SOURCE for newer linux platforms with glibc 2.10.1. solved a bit differently, by implementing strdup(3) and strcasecmp(3) independently, and using regexps to avoid calling strptime(3).
|
#
1.26 |
|
14-Dec-2009 |
agc |
Prepare for a new netpgp-20091210 portable release.
Apart from infrastructure changes, there are the following functional ones:
+ Update to version 20091210
+ provide a new netpgp_match_list_keys(3) function to perform a regular-expression based search of all the keys in the keyring. If no pattern is specified to match, then all keys are returned.
+ provide a new netpgp_set_homedir(3) function, and use it to set the home directory from the library, rather than individually in all the programs which use the library
+ provide a new netpgp_incvar(3) function which will add a constant increment (which may be negative) to the value of an internal variable. This is primarily used for the verbosity level within the library, and is again a movement of the function into the library from the individual programs which use the library
+ move to the specification of an ssh key file by internal variable, rather than the directory holding an ssh key file
+ autoconf infrastructure changes
+ take a hammer to the _GNU_SOURCE definitions problems
+ don't rely on strnlen(3) being present everywhere
|
Revision tags: matt-premerge-20091211
|
#
1.25 |
|
05-Dec-2009 |
agc |
Add the ability to use ssh host keys (on the fly) to provide RSA keys.
These keys can be used in the same way as normal PGP keys - to sign, verify, encrypt and decrypt files and data.
% cp configure a % sudo netpgp --ssh-keys --sign --userid 1e00404a a Password: pub 1024/RSA (Encrypt or Sign) 040180871e00404a 2008-08-11 Key fingerprint: c4aa b385 4796 e6ce 606c f0c2 0401 8087 1e00 404a % sudo chmod 644 a.gpg % netpgp --ssh-keys --verify a.gpg netpgp: default key set to "C0596823" can't open '/etc/ssh/ssh_host_rsa_key' Good signature for a.gpg made Fri Dec 4 23:04:36 2009 using RSA (Encrypt or Sign) key 040180871e00404a pub 1024/RSA (Encrypt or Sign) 040180871e00404a 2008-08-11 Key fingerprint: c4aa b385 4796 e6ce 606c f0c2 0401 8087 1e00 404a uid osx-vm1.crowthorne.alistaircrooks.co.uk (/etc/ssh/ssh_host_rsa_key.pub) <root@osx-vm1.crowthorne.alistaircrooks.co.uk> % uname -a NetBSD osx-vm1.crowthorne.alistaircrooks.co.uk 5.99.20 NetBSD 5.99.20 (ISCSI) #0: Wed Oct 7 17:16:33 PDT 2009 agc@osx-vm1.crowthorne.alistaircrooks.co.uk:/usr/obj/i386/usr/src/sys/arch/i386/compile/ISCSI i386 %
The ssh host keys do not need to be manipulated in any way - the information is read from existing files.
|
#
1.24 |
|
01-Dec-2009 |
agc |
Recognise the hash algorithm in a case-insensitive manner.
|
#
1.23 |
|
09-Oct-2009 |
agc |
Add some checks for return value from allocation routines
|
#
1.22 |
|
07-Oct-2009 |
agc |
More checking of allocation return values where not already done.
Revamp hash initialisation to return a success/failure error code.
Document places where we prefer to continue with a NULL buffer, rather than silently continue with possibly erroneous results.
|
#
1.21 |
|
06-Oct-2009 |
agc |
Clean up Flexelint warnings - from phk, many thanks - just low-hanging fruit for just now.
|
#
1.20 |
|
11-Jun-2009 |
agc |
CHANGES 1.99.10 -> 1.99.11
+ address keys array from 0 with unsigned indices + print results to io->res stream - default to stderr, and set using netpgp_setvar(..., "results", filename) + __ops_keyid()'s third arg was always the size of the keyid array - no need to pass it + get rid of the excessive type-checking in packet-show-cast.h, which wasn't necessary, and fold all the show routines into packet-show.c + introduce a generic __ops_new() and use it for some structure allocation
|
#
1.19 |
|
10-Jun-2009 |
agc |
Get rid of an unusual architectural construct:
The original code had dynamic arrays indexed by unsigned indices, except for the array of keys, which was indexed by a signed integer, and initialised to -1. Subsequently, when a new id was created, the index was pre-incremented, and later on, in a different call, the userid (a different packet) was assigned to the current index. This has implications for growing the array, for signed comparison checks, and just general cleanliness.
This change overhauls the construct: don't special case anything, just address the array from 0, use unsigned indices same as everything else, and complain if we get a user id for which we haven't received a public or secret key.
|
#
1.18 |
|
10-Jun-2009 |
agc |
CHANGES 1.99.9 -> 1.99.10
+ fix a bug in decryption whereby a bad passphrase would cause a segmentation violation + fix some regressions in key searching in the underlying find keys routines + add C++ declaration protection to the external interface in netpgp.h + split out the key management parts of netpgp(1) into netpgpkeys(1)
|
#
1.17 |
|
09-Jun-2009 |
agc |
CHANGES 1.99.8 -> 1.99.9
+ make more use of __ops_io_t structure + addition of standalone, stripped-down netpgpverify utility + addition of test for --list-packets on an empty file + bring forward some simplifications from netpgpverify + some name changes + get rid of the increment and then decrement keycount around accumulated data ("it's to do with counting") + then use unsigned integers for the size and counts for the dynamic array of keys, and use the common dynamic array macros for keys in a keyring + if it's a union, let's use it as a union, not a struct + modified documentation to correct the --list-packets command (sorry, ver) + add a new directory structure for both the distribution and the reachover Makefiles. The autotest framework has been partially overhauled but more TLC is needed here. + add a --pass-fd=n option so that external programs can provide the passphrase on a file descriptor without going through the callback, requested by joerg
|
#
1.16 |
|
02-Jun-2009 |
agc |
Some autoconfig glue around header files inclusion.
|
#
1.15 |
|
31-May-2009 |
agc |
CHANGES 1.99.7 -> 1.99.8
+ get rid of __ops_malloc_passphrase() - strdup() works just as well + generalise __ops_seckey_forget() to become __ops_forget(), give it a size parameter, and make it work on things other than secret keys (passphrases for instance) + minor struct field enum renaming + minor function call renaming + add ops_io_t struct to hold pointers to IO streams, and pass it down where necessary
|
#
1.14 |
|
28-May-2009 |
agc |
CHANGES 1.99.6 -> 1.99.7
+ added to the regression tests + get rid of some magic constants, replace with more obvious names + zero out the memory used for a passphrase before freeing it in one place
|
#
1.13 |
|
27-May-2009 |
agc |
CHANGES 1.99.4 -> 1.99.5
+ Luke Mewburn completely overhauled the auto tools infrastructure + changed signature (hah!) of some netpgp file management prototypes to use const char * for file names and user ids, not char * - suggested by christos + change some of the openpgpsdk display functions to return integer values, and send those values back from the netpgp functions - suggested by christos + rather than passing a shedload of variables to netpgp_init(), get rid of them, and set variables using the netpgp_[gs]etvar() interface + replace some magic constants with descriptive names + use a netpgp variable to skip userid checks if necessary + add ability to allow coredumps via --coredumps if (a) you have taken leave of your sanity, and (b) you have some magical persistent storage which doesn't spare sectors, and (c) you know how to remove a file securely + bumped library version on NetBSD to 1.0 for interface changes
|
Revision tags: netpgp-1-99-4
|
#
1.12 |
|
25-May-2009 |
agc |
CHANGES 1.99.3 -> 1.99.4
+ get rid of some magic constants + revamped regression test script to count number of tests passed + made checkhash array in ops_seckey_t dynamic, rather than statically allocated + made mdc array dynamic, and added a length field to mdc for future use + revamped usage message to match reality + made portable version again for the autoconfed package sources + add separate netpgpdigest.h file so that separate digest sizes can be used without having to include "packet.h" in everything
|
#
1.11 |
|
21-May-2009 |
agc |
CHANGES 1.99.1 -> 1.99.2
+ various minor cleanups + fix longstanding pasto where the key server preference packets are displayed with the correct ptag information + up until now, there has been an asymmetry in the command line options for netpgp(1) - whilst a file may have signature information added to it with the "--sign" command, there has been no way to retrieve the contents of the file without the signature. The new "--cat" option does this (there are synonyms of "--verify-show" and "--verify-cat") - the signature is verified, and if it matches, the original contents of the file are sent to the output file (which defaults to stdout, and can be set with the --output option on the command line). If the signature does not match, there is no output, and an EXIT_FAILURE code is returned. + revamped netpgp(1) to make it clear what commands are available, how these commands relate to each other, and which commands take custom options
|
#
1.10 |
|
19-May-2009 |
agc |
CHANGES 1.0.0 -> 1.99.1
+ released and tagged version 1.0.0; development version now 1.99.1 + get rid of some fields which are no longer needed + minor name changes + add mmapped field to ops_data_t struct to denote that the array needs an munmap(2) and not a free(3) + add an __ops_mem_readfile() function, and use it for reading files. The function does mmap(2), and then falls back to read(2) if that fails. Retire unused __ops_fileread() which had an unusual interface + drop sign_detached() from netpgp.c down into signature.c as __ops_sign_detached()
|
Revision tags: netpgp-release-1-0-0
|
#
1.9 |
|
16-May-2009 |
agc |
+ don't use arrays of length 1 to hold single instances of characters, unsigned or not - just use a single character itself + misc cleanup + rename cinfo to "output" and ops_createinfo_t to "ops_output_t" to be a bit more descriptive + shorten some long names + get rid of test for libgen.h - it's not needed anymore + bump to version 0.99.4, and 20090515 sources, regenerate configure and co + numerous name changes to be more consistent and more concise + add verbosity level to the variables that can be set and retrieved by netpgp_setvar() and netpgp_getvar() + added --verbose option to netpgp(1) + add __RCSID() to all files
|
#
1.8 |
|
14-May-2009 |
agc |
+ got rid of "local" header files. These aren't necessary since the openpgpsdk code was modified to all be in the same directory + added netpgp_getvar() and netpgp_setvar(), and use them to get and set the user id and hash algorithm preference + get rid of <stdbool.h> usage - I'm still not sure this is the way we should be going long term, but the bool changes got integrated with the others, and are there in cvs history if we want to resurrect them. Correct autoconf accordingly. Bump netpgp minimus version, and autoconf-based date version. + updated documentation to reflect these changes
|
Revision tags: jym-xensuspend-base jym-xensuspend-nbase
|
#
1.7 |
|
12-May-2009 |
agc |
branches: 1.7.2; Commit the weekend's changes:
+ minor name changes + remove duplicated code (commented out) in packet-print.c + original code contained abstraction violations for hash size - fix them + get rid of some magic constants related to length of hash arrays + allow a choice of hash algorithms for the signature digest (rather than hardcoding SHA1 - it is looking as though collisions are easier to manufacture based on recent findings) + move default signature RSA hash algorithm to SHA256 (from SHA1). This is passed as a string parameter from the high-level interface. We'll revisit this later after a good way to specify the algorithm has been found. + display the size of the keys in --list-packets + display the keydata prior to file decryption
|
#
1.6 |
|
08-May-2009 |
agc |
+ add a --help option + if setrlimit exists, set the core dump size to be 0 (with thanks to mrg for the reference implementation) + get rid of __ops_start_cleartext_sig/__ops_start_msg_sig abstractions and just "export" the __ops_start_sig function - the function is not actually exported, just usable by other __ops functions + bump internal version number to 0.99.2, autoconf version to 20090506 + prettify usage message output
|
#
1.5 |
|
06-May-2009 |
agc |
More cosmetic changes, no functional differences.
|
#
1.4 |
|
06-May-2009 |
agc |
Change some names to something a bit less obscure.
e.g. For some unfathomable reason, I find "__ops_write_mem_from_file" a bit counterintuitive - replace that by "__ops_fileread"
|
#
1.3 |
|
05-May-2009 |
agc |
+ __ops_packet_t -> __ops_subpacket_t + __ops_parser_content_t -> __ops_packet_t + rename some other long names 51 chars is the record function name length so far + preliminary moves to support detached signatures as yet, incomplete + add back command line option to list packets in a signed or encrypted file + make __ops_parse() take an argument whether to print errors, and kill the __ops_parse_and_print_errors() function + get rid of some assertions in the code - this is a library - about 100 to go
|
#
1.2 |
|
25-Apr-2009 |
agc |
WARNS=4 changes
|
#
1.1 |
|
23-Apr-2009 |
agc |
branches: 1.1.1; Initial revision
|
Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.42 |
|
13-Nov-2018 |
mlelstv |
Fix some error handling, json support, keyring handling.
|
Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6 tls-maxphys-base yamt-pagecache-base5 agc-netpgp-standalone-base yamt-pagecache-base4
|
#
1.41 |
|
05-Mar-2012 |
christos |
branches: 1.41.34; Fix compilation: kill PGP_ERROR() and make everything use a format. XXX: Fixme to use __VA_ARGS__ instead of the silly PGP_ERROR_N() macros.
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
|
#
1.40 |
|
29-Nov-2010 |
agc |
branches: 1.40.6; I forgot that the fastctype.[ch] files were still in this directory, and have no need to be here - remove them, and just use native <ctype.h>
|
#
1.39 |
|
11-Nov-2010 |
agc |
Changes to 3.99.15/20101110
+ add support for partial blocks, defined in rfc 4880, and used fairly extensively by gnupg where the input size may not be known in advance (e.g. for encrypted compressed data, as produced by default by gpg -e)
|
#
1.38 |
|
07-Nov-2010 |
agc |
Take the internal functions and definitions back out of the implementation namespace:
:g/\<__ops/s//pgp/g :g/\<__OPS/s//__PGP/g :g/\<OPS/s//PGP/g
No functional change, regression tests complete successfully.
|
#
1.37 |
|
04-Nov-2010 |
agc |
Update to version 3.99.13:
+ add ability in netpgpkeys(1) to specify the cipher (symmetric algorithm) as specified in RFC 5581 + add the camellia cipher implementation from openssl
|
#
1.36 |
|
15-Aug-2010 |
agc |
get rid of more 64-bit lint
|
#
1.35 |
|
15-Aug-2010 |
agc |
+ rationalise birthtime/expiration timestamps into a single function
+ clean up some 64-bit (amd64) lint
|
#
1.34 |
|
13-Aug-2010 |
agc |
Changes to 3.99.9/20100809
+ add single character options to netpgp(1) and netpgpkeys(1) + add -o long-option(=value)? options to netpgp(1) and netpgpkeys(1) + add some small preparations for using the first subkey for encryption (much more to follow)
|
#
1.33 |
|
09-Jul-2010 |
agc |
Changes to 3.99.7/20100701
+ recognise ascii-armoured encrypted messages properly, in memory and in files + print error message and exit for now when trying to encrypt with a DSA key + fix bug reported by dyoung when trying to print out the encryption key fingerprint
|
#
1.32 |
|
25-Jun-2010 |
agc |
Fix build problems on LP64 platforms - thanks to Paul Goyette for the nudge.
|
#
1.31 |
|
25-Jun-2010 |
agc |
Changes to 3.99.5
+ make ssh fingerprints (md5) match netpgp listing + use the more functional hexdump function from ssh2pgp in place of the older hexdump function from openpgpsdk + pass hash type down from command line where needed + add test for netpgp/ssh key fingerprint matching + make netpgpkeys(1) take a --hash= option
With these changes, netpgp can be made to generate the same fingerprint as openssh (by default, ssh-keygen(1) uses an md5 digest)
% /usr/bin/netpgpkeys --ssh-keys --sshkeyfile=/etc/ssh/ssh_host_rsa_key.pub --list-keys --hash=md5 1 key pub 1024/RSA (Encrypt or Sign) fcdd1c608bef4c4b 2008-08-11 Key fingerprint: e935 902d ebf1 76ba fcdd 1c60 8bef 4c4b uid osx-vm1.crowthorne.alistaircrooks.co.uk (/etc/ssh/ssh_host_rsa_key.pub) <root@osx-vm1.crowthorne.alistaircrooks.co.uk>
% ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub 1024 e9:35:90:2d:eb:f1:76:ba:fc:dd:1c:60:8b:ef:4c:4b /etc/ssh/ssh_host_rsa_key.pub (RSA) %
|
#
1.30 |
|
25-May-2010 |
agc |
Simplify and shorten the internals of packet processing by getting rid of the intermediate pseudo-abstraction layer, which detracted from understanding and had no benefit whatsoever. Rename some enums and some definitions.
|
#
1.29 |
|
08-May-2010 |
agc |
use hexdump() where possible.
get rid of all traces of dmalloc - it's not used anymore. we can now g/c initialisation functions which do not do anything.
also get rid of the pkeyid() functions, which just prints a hexadecimal string
|
#
1.28 |
|
02-Apr-2010 |
christos |
make it obvious what ctime it is used for.
|
#
1.27 |
|
05-Mar-2010 |
agc |
Update netpgp to version 1.99.20/20100304 - portability improvements, and bug fixes:
Changes to 1.99.20/20100304
+ move args to some functions around to be consistent + use uint*_t where appropriate + fix bug in verify memory + add documentation to manual pages to show how to do combined signing/encryption and decryption/verification + make verification of ascii-armoured memory work the same as binary + eliminate use of strdup(3), strcasecmp(3), and strptime(3). NetBSD/pkgsrc PR 42922 applies - need to define _XOPEN_SOURCE and _BSD_SOURCE for newer linux platforms with glibc 2.10.1. solved a bit differently, by implementing strdup(3) and strcasecmp(3) independently, and using regexps to avoid calling strptime(3).
|
#
1.26 |
|
14-Dec-2009 |
agc |
Prepare for a new netpgp-20091210 portable release.
Apart from infrastructure changes, there are the following functional ones:
+ Update to version 20091210
+ provide a new netpgp_match_list_keys(3) function to perform a regular-expression based search of all the keys in the keyring. If no pattern is specified to match, then all keys are returned.
+ provide a new netpgp_set_homedir(3) function, and use it to set the home directory from the library, rather than individually in all the programs which use the library
+ provide a new netpgp_incvar(3) function which will add a constant increment (which may be negative) to the value of an internal variable. This is primarily used for the verbosity level within the library, and is again a movement of the function into the library from the individual programs which use the library
+ move to the specification of an ssh key file by internal variable, rather than the directory holding an ssh key file
+ autoconf infrastructure changes
+ take a hammer to the _GNU_SOURCE definitions problems
+ don't rely on strnlen(3) being present everywhere
|
Revision tags: matt-premerge-20091211
|
#
1.25 |
|
05-Dec-2009 |
agc |
Add the ability to use ssh host keys (on the fly) to provide RSA keys.
These keys can be used in the same way as normal PGP keys - to sign, verify, encrypt and decrypt files and data.
% cp configure a % sudo netpgp --ssh-keys --sign --userid 1e00404a a Password: pub 1024/RSA (Encrypt or Sign) 040180871e00404a 2008-08-11 Key fingerprint: c4aa b385 4796 e6ce 606c f0c2 0401 8087 1e00 404a % sudo chmod 644 a.gpg % netpgp --ssh-keys --verify a.gpg netpgp: default key set to "C0596823" can't open '/etc/ssh/ssh_host_rsa_key' Good signature for a.gpg made Fri Dec 4 23:04:36 2009 using RSA (Encrypt or Sign) key 040180871e00404a pub 1024/RSA (Encrypt or Sign) 040180871e00404a 2008-08-11 Key fingerprint: c4aa b385 4796 e6ce 606c f0c2 0401 8087 1e00 404a uid osx-vm1.crowthorne.alistaircrooks.co.uk (/etc/ssh/ssh_host_rsa_key.pub) <root@osx-vm1.crowthorne.alistaircrooks.co.uk> % uname -a NetBSD osx-vm1.crowthorne.alistaircrooks.co.uk 5.99.20 NetBSD 5.99.20 (ISCSI) #0: Wed Oct 7 17:16:33 PDT 2009 agc@osx-vm1.crowthorne.alistaircrooks.co.uk:/usr/obj/i386/usr/src/sys/arch/i386/compile/ISCSI i386 %
The ssh host keys do not need to be manipulated in any way - the information is read from existing files.
|
#
1.24 |
|
01-Dec-2009 |
agc |
Recognise the hash algorithm in a case-insensitive manner.
|
#
1.23 |
|
09-Oct-2009 |
agc |
Add some checks for return value from allocation routines
|
#
1.22 |
|
07-Oct-2009 |
agc |
More checking of allocation return values where not already done.
Revamp hash initialisation to return a success/failure error code.
Document places where we prefer to continue with a NULL buffer, rather than silently continue with possibly erroneous results.
|
#
1.21 |
|
06-Oct-2009 |
agc |
Clean up Flexelint warnings - from phk, many thanks - just low-hanging fruit for just now.
|
#
1.20 |
|
11-Jun-2009 |
agc |
CHANGES 1.99.10 -> 1.99.11
+ address keys array from 0 with unsigned indices + print results to io->res stream - default to stderr, and set using netpgp_setvar(..., "results", filename) + __ops_keyid()'s third arg was always the size of the keyid array - no need to pass it + get rid of the excessive type-checking in packet-show-cast.h, which wasn't necessary, and fold all the show routines into packet-show.c + introduce a generic __ops_new() and use it for some structure allocation
|
#
1.19 |
|
10-Jun-2009 |
agc |
Get rid of an unusual architectural construct:
The original code had dynamic arrays indexed by unsigned indices, except for the array of keys, which was indexed by a signed integer, and initialised to -1. Subsequently, when a new id was created, the index was pre-incremented, and later on, in a different call, the userid (a different packet) was assigned to the current index. This has implications for growing the array, for signed comparison checks, and just general cleanliness.
This change overhauls the construct: don't special case anything, just address the array from 0, use unsigned indices same as everything else, and complain if we get a user id for which we haven't received a public or secret key.
|
#
1.18 |
|
10-Jun-2009 |
agc |
CHANGES 1.99.9 -> 1.99.10
+ fix a bug in decryption whereby a bad passphrase would cause a segmentation violation + fix some regressions in key searching in the underlying find keys routines + add C++ declaration protection to the external interface in netpgp.h + split out the key management parts of netpgp(1) into netpgpkeys(1)
|
#
1.17 |
|
09-Jun-2009 |
agc |
CHANGES 1.99.8 -> 1.99.9
+ make more use of __ops_io_t structure + addition of standalone, stripped-down netpgpverify utility + addition of test for --list-packets on an empty file + bring forward some simplifications from netpgpverify + some name changes + get rid of the increment and then decrement keycount around accumulated data ("it's to do with counting") + then use unsigned integers for the size and counts for the dynamic array of keys, and use the common dynamic array macros for keys in a keyring + if it's a union, let's use it as a union, not a struct + modified documentation to correct the --list-packets command (sorry, ver) + add a new directory structure for both the distribution and the reachover Makefiles. The autotest framework has been partially overhauled but more TLC is needed here. + add a --pass-fd=n option so that external programs can provide the passphrase on a file descriptor without going through the callback, requested by joerg
|
#
1.16 |
|
02-Jun-2009 |
agc |
Some autoconfig glue around header files inclusion.
|
#
1.15 |
|
31-May-2009 |
agc |
CHANGES 1.99.7 -> 1.99.8
+ get rid of __ops_malloc_passphrase() - strdup() works just as well + generalise __ops_seckey_forget() to become __ops_forget(), give it a size parameter, and make it work on things other than secret keys (passphrases for instance) + minor struct field enum renaming + minor function call renaming + add ops_io_t struct to hold pointers to IO streams, and pass it down where necessary
|
#
1.14 |
|
28-May-2009 |
agc |
CHANGES 1.99.6 -> 1.99.7
+ added to the regression tests + get rid of some magic constants, replace with more obvious names + zero out the memory used for a passphrase before freeing it in one place
|
#
1.13 |
|
27-May-2009 |
agc |
CHANGES 1.99.4 -> 1.99.5
+ Luke Mewburn completely overhauled the auto tools infrastructure + changed signature (hah!) of some netpgp file management prototypes to use const char * for file names and user ids, not char * - suggested by christos + change some of the openpgpsdk display functions to return integer values, and send those values back from the netpgp functions - suggested by christos + rather than passing a shedload of variables to netpgp_init(), get rid of them, and set variables using the netpgp_[gs]etvar() interface + replace some magic constants with descriptive names + use a netpgp variable to skip userid checks if necessary + add ability to allow coredumps via --coredumps if (a) you have taken leave of your sanity, and (b) you have some magical persistent storage which doesn't spare sectors, and (c) you know how to remove a file securely + bumped library version on NetBSD to 1.0 for interface changes
|
Revision tags: netpgp-1-99-4
|
#
1.12 |
|
25-May-2009 |
agc |
CHANGES 1.99.3 -> 1.99.4
+ get rid of some magic constants + revamped regression test script to count number of tests passed + made checkhash array in ops_seckey_t dynamic, rather than statically allocated + made mdc array dynamic, and added a length field to mdc for future use + revamped usage message to match reality + made portable version again for the autoconfed package sources + add separate netpgpdigest.h file so that separate digest sizes can be used without having to include "packet.h" in everything
|
#
1.11 |
|
21-May-2009 |
agc |
CHANGES 1.99.1 -> 1.99.2
+ various minor cleanups + fix longstanding pasto where the key server preference packets are displayed with the correct ptag information + up until now, there has been an asymmetry in the command line options for netpgp(1) - whilst a file may have signature information added to it with the "--sign" command, there has been no way to retrieve the contents of the file without the signature. The new "--cat" option does this (there are synonyms of "--verify-show" and "--verify-cat") - the signature is verified, and if it matches, the original contents of the file are sent to the output file (which defaults to stdout, and can be set with the --output option on the command line). If the signature does not match, there is no output, and an EXIT_FAILURE code is returned. + revamped netpgp(1) to make it clear what commands are available, how these commands relate to each other, and which commands take custom options
|
#
1.10 |
|
19-May-2009 |
agc |
CHANGES 1.0.0 -> 1.99.1
+ released and tagged version 1.0.0; development version now 1.99.1 + get rid of some fields which are no longer needed + minor name changes + add mmapped field to ops_data_t struct to denote that the array needs an munmap(2) and not a free(3) + add an __ops_mem_readfile() function, and use it for reading files. The function does mmap(2), and then falls back to read(2) if that fails. Retire unused __ops_fileread() which had an unusual interface + drop sign_detached() from netpgp.c down into signature.c as __ops_sign_detached()
|
Revision tags: netpgp-release-1-0-0
|
#
1.9 |
|
16-May-2009 |
agc |
+ don't use arrays of length 1 to hold single instances of characters, unsigned or not - just use a single character itself + misc cleanup + rename cinfo to "output" and ops_createinfo_t to "ops_output_t" to be a bit more descriptive + shorten some long names + get rid of test for libgen.h - it's not needed anymore + bump to version 0.99.4, and 20090515 sources, regenerate configure and co + numerous name changes to be more consistent and more concise + add verbosity level to the variables that can be set and retrieved by netpgp_setvar() and netpgp_getvar() + added --verbose option to netpgp(1) + add __RCSID() to all files
|
#
1.8 |
|
14-May-2009 |
agc |
+ got rid of "local" header files. These aren't necessary since the openpgpsdk code was modified to all be in the same directory + added netpgp_getvar() and netpgp_setvar(), and use them to get and set the user id and hash algorithm preference + get rid of <stdbool.h> usage - I'm still not sure this is the way we should be going long term, but the bool changes got integrated with the others, and are there in cvs history if we want to resurrect them. Correct autoconf accordingly. Bump netpgp minimus version, and autoconf-based date version. + updated documentation to reflect these changes
|
Revision tags: jym-xensuspend-base jym-xensuspend-nbase
|
#
1.7 |
|
12-May-2009 |
agc |
branches: 1.7.2; Commit the weekend's changes:
+ minor name changes + remove duplicated code (commented out) in packet-print.c + original code contained abstraction violations for hash size - fix them + get rid of some magic constants related to length of hash arrays + allow a choice of hash algorithms for the signature digest (rather than hardcoding SHA1 - it is looking as though collisions are easier to manufacture based on recent findings) + move default signature RSA hash algorithm to SHA256 (from SHA1). This is passed as a string parameter from the high-level interface. We'll revisit this later after a good way to specify the algorithm has been found. + display the size of the keys in --list-packets + display the keydata prior to file decryption
|
#
1.6 |
|
08-May-2009 |
agc |
+ add a --help option + if setrlimit exists, set the core dump size to be 0 (with thanks to mrg for the reference implementation) + get rid of __ops_start_cleartext_sig/__ops_start_msg_sig abstractions and just "export" the __ops_start_sig function - the function is not actually exported, just usable by other __ops functions + bump internal version number to 0.99.2, autoconf version to 20090506 + prettify usage message output
|
#
1.5 |
|
06-May-2009 |
agc |
More cosmetic changes, no functional differences.
|
#
1.4 |
|
06-May-2009 |
agc |
Change some names to something a bit less obscure.
e.g. For some unfathomable reason, I find "__ops_write_mem_from_file" a bit counterintuitive - replace that by "__ops_fileread"
|
#
1.3 |
|
05-May-2009 |
agc |
+ __ops_packet_t -> __ops_subpacket_t + __ops_parser_content_t -> __ops_packet_t + rename some other long names 51 chars is the record function name length so far + preliminary moves to support detached signatures as yet, incomplete + add back command line option to list packets in a signed or encrypted file + make __ops_parse() take an argument whether to print errors, and kill the __ops_parse_and_print_errors() function + get rid of some assertions in the code - this is a library - about 100 to go
|
#
1.2 |
|
25-Apr-2009 |
agc |
WARNS=4 changes
|
#
1.1 |
|
23-Apr-2009 |
agc |
branches: 1.1.1; Initial revision
|
#
1.41 |
|
04-Mar-2012 |
christos |
Fix compilation: kill PGP_ERROR() and make everything use a format. XXX: Fixme to use __VA_ARGS__ instead of the silly PGP_ERROR_N() macros.
|
#
1.40 |
|
28-Nov-2010 |
agc |
branches: 1.40.6; I forgot that the fastctype.[ch] files were still in this directory, and have no need to be here - remove them, and just use native <ctype.h>
|
#
1.39 |
|
10-Nov-2010 |
agc |
Changes to 3.99.15/20101110
+ add support for partial blocks, defined in rfc 4880, and used fairly extensively by gnupg where the input size may not be known in advance (e.g. for encrypted compressed data, as produced by default by gpg -e)
|
#
1.38 |
|
07-Nov-2010 |
agc |
Take the internal functions and definitions back out of the implementation namespace:
:g/\<__ops/s//pgp/g :g/\<__OPS/s//__PGP/g :g/\<OPS/s//PGP/g
No functional change, regression tests complete successfully.
|
#
1.37 |
|
04-Nov-2010 |
agc |
Update to version 3.99.13:
+ add ability in netpgpkeys(1) to specify the cipher (symmetric algorithm) as specified in RFC 5581 + add the camellia cipher implementation from openssl
|
#
1.36 |
|
14-Aug-2010 |
agc |
get rid of more 64-bit lint
|
#
1.35 |
|
15-Aug-2010 |
agc |
+ rationalise birthtime/expiration timestamps into a single function
+ clean up some 64-bit (amd64) lint
|
#
1.34 |
|
13-Aug-2010 |
agc |
Changes to 3.99.9/20100809
+ add single character options to netpgp(1) and netpgpkeys(1) + add -o long-option(=value)? options to netpgp(1) and netpgpkeys(1) + add some small preparations for using the first subkey for encryption (much more to follow)
|
#
1.33 |
|
08-Jul-2010 |
agc |
Changes to 3.99.7/20100701
+ recognise ascii-armoured encrypted messages properly, in memory and in files + print error message and exit for now when trying to encrypt with a DSA key + fix bug reported by dyoung when trying to print out the encryption key fingerprint
|
#
1.32 |
|
25-Jun-2010 |
agc |
Fix build problems on LP64 platforms - thanks to Paul Goyette for the nudge.
|
#
1.31 |
|
24-Jun-2010 |
agc |
Changes to 3.99.5
+ make ssh fingerprints (md5) match netpgp listing + use the more functional hexdump function from ssh2pgp in place of the older hexdump function from openpgpsdk + pass hash type down from command line where needed + add test for netpgp/ssh key fingerprint matching + make netpgpkeys(1) take a --hash= option
With these changes, netpgp can be made to generate the same fingerprint as openssh (by default, ssh-keygen(1) uses an md5 digest)
% /usr/bin/netpgpkeys --ssh-keys --sshkeyfile=/etc/ssh/ssh_host_rsa_key.pub --list-keys --hash=md5 1 key pub 1024/RSA (Encrypt or Sign) fcdd1c608bef4c4b 2008-08-11 Key fingerprint: e935 902d ebf1 76ba fcdd 1c60 8bef 4c4b uid osx-vm1.crowthorne.alistaircrooks.co.uk (/etc/ssh/ssh_host_rsa_key.pub) <root@osx-vm1.crowthorne.alistaircrooks.co.uk>
% ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub 1024 e9:35:90:2d:eb:f1:76:ba:fc:dd:1c:60:8b:ef:4c:4b /etc/ssh/ssh_host_rsa_key.pub (RSA) %
|
#
1.30 |
|
24-May-2010 |
agc |
Simplify and shorten the internals of packet processing by getting rid of the intermediate pseudo-abstraction layer, which detracted from understanding and had no benefit whatsoever. Rename some enums and some definitions.
|
#
1.29 |
|
07-May-2010 |
agc |
use hexdump() where possible.
get rid of all traces of dmalloc - it's not used anymore. we can now g/c initialisation functions which do not do anything.
also get rid of the pkeyid() functions, which just prints a hexadecimal string
|
#
1.28 |
|
02-Apr-2010 |
christos |
make it obvious what ctime it is used for.
|
#
1.27 |
|
05-Mar-2010 |
agc |
Update netpgp to version 1.99.20/20100304 - portability improvements, and bug fixes:
Changes to 1.99.20/20100304
+ move args to some functions around to be consistent + use uint*_t where appropriate + fix bug in verify memory + add documentation to manual pages to show how to do combined signing/encryption and decryption/verification + make verification of ascii-armoured memory work the same as binary + eliminate use of strdup(3), strcasecmp(3), and strptime(3). NetBSD/pkgsrc PR 42922 applies - need to define _XOPEN_SOURCE and _BSD_SOURCE for newer linux platforms with glibc 2.10.1. solved a bit differently, by implementing strdup(3) and strcasecmp(3) independently, and using regexps to avoid calling strptime(3).
|
#
1.26 |
|
14-Dec-2009 |
agc |
Prepare for a new netpgp-20091210 portable release.
Apart from infrastructure changes, there are the following functional ones:
+ Update to version 20091210
+ provide a new netpgp_match_list_keys(3) function to perform a regular-expression based search of all the keys in the keyring. If no pattern is specified to match, then all keys are returned.
+ provide a new netpgp_set_homedir(3) function, and use it to set the home directory from the library, rather than individually in all the programs which use the library
+ provide a new netpgp_incvar(3) function which will add a constant increment (which may be negative) to the value of an internal variable. This is primarily used for the verbosity level within the library, and is again a movement of the function into the library from the individual programs which use the library
+ move to the specification of an ssh key file by internal variable, rather than the directory holding an ssh key file
+ autoconf infrastructure changes
+ take a hammer to the _GNU_SOURCE definitions problems
+ don't rely on strnlen(3) being present everywhere
|
#
1.25 |
|
05-Dec-2009 |
agc |
Add the ability to use ssh host keys (on the fly) to provide RSA keys.
These keys can be used in the same way as normal PGP keys - to sign, verify, encrypt and decrypt files and data.
% cp configure a % sudo netpgp --ssh-keys --sign --userid 1e00404a a Password: pub 1024/RSA (Encrypt or Sign) 040180871e00404a 2008-08-11 Key fingerprint: c4aa b385 4796 e6ce 606c f0c2 0401 8087 1e00 404a % sudo chmod 644 a.gpg % netpgp --ssh-keys --verify a.gpg netpgp: default key set to "C0596823" can't open '/etc/ssh/ssh_host_rsa_key' Good signature for a.gpg made Fri Dec 4 23:04:36 2009 using RSA (Encrypt or Sign) key 040180871e00404a pub 1024/RSA (Encrypt or Sign) 040180871e00404a 2008-08-11 Key fingerprint: c4aa b385 4796 e6ce 606c f0c2 0401 8087 1e00 404a uid osx-vm1.crowthorne.alistaircrooks.co.uk (/etc/ssh/ssh_host_rsa_key.pub) <root@osx-vm1.crowthorne.alistaircrooks.co.uk> % uname -a NetBSD osx-vm1.crowthorne.alistaircrooks.co.uk 5.99.20 NetBSD 5.99.20 (ISCSI) #0: Wed Oct 7 17:16:33 PDT 2009 agc@osx-vm1.crowthorne.alistaircrooks.co.uk:/usr/obj/i386/usr/src/sys/arch/i386/compile/ISCSI i386 %
The ssh host keys do not need to be manipulated in any way - the information is read from existing files.
|
#
1.24 |
|
30-Nov-2009 |
agc |
Recognise the hash algorithm in a case-insensitive manner.
|
#
1.23 |
|
09-Oct-2009 |
agc |
Add some checks for return value from allocation routines
|
#
1.22 |
|
06-Oct-2009 |
agc |
More checking of allocation return values where not already done.
Revamp hash initialisation to return a success/failure error code.
Document places where we prefer to continue with a NULL buffer, rather than silently continue with possibly erroneous results.
|
#
1.21 |
|
05-Oct-2009 |
agc |
Clean up Flexelint warnings - from phk, many thanks - just low-hanging fruit for just now.
|
#
1.20 |
|
10-Jun-2009 |
agc |
CHANGES 1.99.10 -> 1.99.11
+ address keys array from 0 with unsigned indices + print results to io->res stream - default to stderr, and set using netpgp_setvar(..., "results", filename) + __ops_keyid()'s third arg was always the size of the keyid array - no need to pass it + get rid of the excessive type-checking in packet-show-cast.h, which wasn't necessary, and fold all the show routines into packet-show.c + introduce a generic __ops_new() and use it for some structure allocation
|
#
1.19 |
|
09-Jun-2009 |
agc |
Get rid of an unusual architectural construct:
The original code had dynamic arrays indexed by unsigned indices, except for the array of keys, which was indexed by a signed integer, and initialised to -1. Subsequently, when a new id was created, the index was pre-incremented, and later on, in a different call, the userid (a different packet) was assigned to the current index. This has implications for growing the array, for signed comparison checks, and just general cleanliness.
This change overhauls the construct: don't special case anything, just address the array from 0, use unsigned indices same as everything else, and complain if we get a user id for which we haven't received a public or secret key.
|
#
1.18 |
|
09-Jun-2009 |
agc |
CHANGES 1.99.9 -> 1.99.10
+ fix a bug in decryption whereby a bad passphrase would cause a segmentation violation + fix some regressions in key searching in the underlying find keys routines + add C++ declaration protection to the external interface in netpgp.h + split out the key management parts of netpgp(1) into netpgpkeys(1)
|
#
1.17 |
|
08-Jun-2009 |
agc |
CHANGES 1.99.8 -> 1.99.9
+ make more use of __ops_io_t structure + addition of standalone, stripped-down netpgpverify utility + addition of test for --list-packets on an empty file + bring forward some simplifications from netpgpverify + some name changes + get rid of the increment and then decrement keycount around accumulated data ("it's to do with counting") + then use unsigned integers for the size and counts for the dynamic array of keys, and use the common dynamic array macros for keys in a keyring + if it's a union, let's use it as a union, not a struct + modified documentation to correct the --list-packets command (sorry, ver) + add a new directory structure for both the distribution and the reachover Makefiles. The autotest framework has been partially overhauled but more TLC is needed here. + add a --pass-fd=n option so that external programs can provide the passphrase on a file descriptor without going through the callback, requested by joerg
|
#
1.16 |
|
02-Jun-2009 |
agc |
Some autoconfig glue around header files inclusion.
|
#
1.15 |
|
31-May-2009 |
agc |
CHANGES 1.99.7 -> 1.99.8
+ get rid of __ops_malloc_passphrase() - strdup() works just as well + generalise __ops_seckey_forget() to become __ops_forget(), give it a size parameter, and make it work on things other than secret keys (passphrases for instance) + minor struct field enum renaming + minor function call renaming + add ops_io_t struct to hold pointers to IO streams, and pass it down where necessary
|
#
1.14 |
|
27-May-2009 |
agc |
CHANGES 1.99.6 -> 1.99.7
+ added to the regression tests + get rid of some magic constants, replace with more obvious names + zero out the memory used for a passphrase before freeing it in one place
|
#
1.13 |
|
26-May-2009 |
agc |
CHANGES 1.99.4 -> 1.99.5
+ Luke Mewburn completely overhauled the auto tools infrastructure + changed signature (hah!) of some netpgp file management prototypes to use const char * for file names and user ids, not char * - suggested by christos + change some of the openpgpsdk display functions to return integer values, and send those values back from the netpgp functions - suggested by christos + rather than passing a shedload of variables to netpgp_init(), get rid of them, and set variables using the netpgp_[gs]etvar() interface + replace some magic constants with descriptive names + use a netpgp variable to skip userid checks if necessary + add ability to allow coredumps via --coredumps if (a) you have taken leave of your sanity, and (b) you have some magical persistent storage which doesn't spare sectors, and (c) you know how to remove a file securely + bumped library version on NetBSD to 1.0 for interface changes
|
#
1.12 |
|
25-May-2009 |
agc |
CHANGES 1.99.3 -> 1.99.4
+ get rid of some magic constants + revamped regression test script to count number of tests passed + made checkhash array in ops_seckey_t dynamic, rather than statically allocated + made mdc array dynamic, and added a length field to mdc for future use + revamped usage message to match reality + made portable version again for the autoconfed package sources + add separate netpgpdigest.h file so that separate digest sizes can be used without having to include "packet.h" in everything
|
#
1.11 |
|
20-May-2009 |
agc |
CHANGES 1.99.1 -> 1.99.2
+ various minor cleanups + fix longstanding pasto where the key server preference packets are displayed with the correct ptag information + up until now, there has been an asymmetry in the command line options for netpgp(1) - whilst a file may have signature information added to it with the "--sign" command, there has been no way to retrieve the contents of the file without the signature. The new "--cat" option does this (there are synonyms of "--verify-show" and "--verify-cat") - the signature is verified, and if it matches, the original contents of the file are sent to the output file (which defaults to stdout, and can be set with the --output option on the command line). If the signature does not match, there is no output, and an EXIT_FAILURE code is returned. + revamped netpgp(1) to make it clear what commands are available, how these commands relate to each other, and which commands take custom options
|
#
1.10 |
|
18-May-2009 |
agc |
CHANGES 1.0.0 -> 1.99.1
+ released and tagged version 1.0.0; development version now 1.99.1 + get rid of some fields which are no longer needed + minor name changes + add mmapped field to ops_data_t struct to denote that the array needs an munmap(2) and not a free(3) + add an __ops_mem_readfile() function, and use it for reading files. The function does mmap(2), and then falls back to read(2) if that fails. Retire unused __ops_fileread() which had an unusual interface + drop sign_detached() from netpgp.c down into signature.c as __ops_sign_detached()
|
#
1.9 |
|
16-May-2009 |
agc |
+ don't use arrays of length 1 to hold single instances of characters, unsigned or not - just use a single character itself + misc cleanup + rename cinfo to "output" and ops_createinfo_t to "ops_output_t" to be a bit more descriptive + shorten some long names + get rid of test for libgen.h - it's not needed anymore + bump to version 0.99.4, and 20090515 sources, regenerate configure and co + numerous name changes to be more consistent and more concise + add verbosity level to the variables that can be set and retrieved by netpgp_setvar() and netpgp_getvar() + added --verbose option to netpgp(1) + add __RCSID() to all files
|
#
1.8 |
|
13-May-2009 |
agc |
+ got rid of "local" header files. These aren't necessary since the openpgpsdk code was modified to all be in the same directory + added netpgp_getvar() and netpgp_setvar(), and use them to get and set the user id and hash algorithm preference + get rid of <stdbool.h> usage - I'm still not sure this is the way we should be going long term, but the bool changes got integrated with the others, and are there in cvs history if we want to resurrect them. Correct autoconf accordingly. Bump netpgp minimus version, and autoconf-based date version. + updated documentation to reflect these changes
|
#
1.7 |
|
11-May-2009 |
agc |
branches: 1.7.2; Commit the weekend's changes:
+ minor name changes + remove duplicated code (commented out) in packet-print.c + original code contained abstraction violations for hash size - fix them + get rid of some magic constants related to length of hash arrays + allow a choice of hash algorithms for the signature digest (rather than hardcoding SHA1 - it is looking as though collisions are easier to manufacture based on recent findings) + move default signature RSA hash algorithm to SHA256 (from SHA1). This is passed as a string parameter from the high-level interface. We'll revisit this later after a good way to specify the algorithm has been found. + display the size of the keys in --list-packets + display the keydata prior to file decryption
|
#
1.6 |
|
08-May-2009 |
agc |
+ add a --help option + if setrlimit exists, set the core dump size to be 0 (with thanks to mrg for the reference implementation) + get rid of __ops_start_cleartext_sig/__ops_start_msg_sig abstractions and just "export" the __ops_start_sig function - the function is not actually exported, just usable by other __ops functions + bump internal version number to 0.99.2, autoconf version to 20090506 + prettify usage message output
|
#
1.5 |
|
06-May-2009 |
agc |
More cosmetic changes, no functional differences.
|
#
1.4 |
|
05-May-2009 |
agc |
Change some names to something a bit less obscure.
e.g. For some unfathomable reason, I find "__ops_write_mem_from_file" a bit counterintuitive - replace that by "__ops_fileread"
|
#
1.3 |
|
04-May-2009 |
agc |
+ __ops_packet_t -> __ops_subpacket_t + __ops_parser_content_t -> __ops_packet_t + rename some other long names 51 chars is the record function name length so far + preliminary moves to support detached signatures as yet, incomplete + add back command line option to list packets in a signed or encrypted file + make __ops_parse() take an argument whether to print errors, and kill the __ops_parse_and_print_errors() function + get rid of some assertions in the code - this is a library - about 100 to go
|
#
1.2 |
|
24-Apr-2009 |
agc |
WARNS=4 changes
|
#
1.1 |
|
23-Apr-2009 |
agc |
branches: 1.1.1; Initial revision
|
#
1.1.1.1 |
|
23-Apr-2009 |
agc |
Import netpgp source into crypto/external - this is a heavily-modified version of openpgpsdk, and will replace it. Differences between netpgp and the NetBSD repository version of openpgpsdk are:
+ Wrap source code in GNU autoconf/configure + New high-level interface for libnetpgp(3) and netpgp(1) + Hide prolifery of local headers in the internal lib directory - there is now one exported header called netpgp.h + Hide all ops_* functions and structs behind __ops_* names + Fix long-standing bug - make decryption work with files > 8192 bytes (fix for signature verification of signed files > 8192 bytes was already brought forward from the NetBSD repository of openpgpsdk) + Use mmap(2) to read files, falls back to read(2) if can't do mmap + Compile portable package using libtool + Rationalise the number of source files - merge a number of smaller ones + Case-insensitive matching of key ids + Use PRIsize throughout + Use calloc(3) throughout to zero memory + Get rid of global symbols which abused a macro + Use more descriptive names - remove "_arg_" components, name things for their purpose, rather than what they are (their type) + No more --passphrase= argument to netpgp(1) - this is now always done through callbacks + Report source code date and build date in version number, as well as the version number itself
This will form the basis of the portable netpgp package.
|
#
1.7.2.2 |
|
13-May-2009 |
jym |
Sync with HEAD.
Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
|
#
1.7.2.1 |
|
11-May-2009 |
jym |
file misc.c was added on branch jym-xensuspend on 2009-05-13 19:16:05 +0000
|
#
1.40.6.1 |
|
16-Apr-2012 |
yamt |
sync with head
|