Commit Graph

438 Commits

Author SHA1 Message Date
wiz
8f657e21de Fix typo (specifed -> specified). 2010-02-18 14:00:39 +00:00
agc
de7c94ffb6 let's get modern int types defined so that netpgp will build on mac os x 2010-02-13 00:14:00 +00:00
agc
0aa60872e9 Changes to 1.99.19/20100212
+ plug some memory leaks, from cppcheck via Thomas Klausner (thanks!)
+ make the singular of time units read correctly
+ print decryption key info properly when prompting for passphrase
2010-02-12 03:38:48 +00:00
agc
fef71af2b2 changes to 1.99.18/20100211
small steps, but lots of them - this is the first one.

+ print out the correct key information when signing files and memory.
  what used to be printed out was the copy of the public key which is
  stored as part of the private key(!). does not address the info shown
  when decrypting, since that is done in a different way, by callback.
  this whole part needs to be re-written, but will have to wait for two
  good hands.
2010-02-11 17:46:09 +00:00
agc
2b48e3a662 Update netpgp to version 1.99.17/20100208
Changes to 1.99.17/20100208

+ get rid of last 2 static variables - use the __ops_printstate_t struct
  passed down, and add the indent variable here too
+ get rid of 3 occurrences in reader.c where an automatic buffer was
  addressed (as part of a subsequent callback) by a struct field from
  a calling scope, and only valid within the callback.  Found by
  Flexelint and phk - many thanks.
+ print filename/"memory" when time problems occur when validating signatures
2010-02-08 17:19:11 +00:00
dsl
024dc5b629 Fix printf formats on amd64 (and probably other 64bit systems). 2010-02-06 10:50:52 +00:00
agc
600b302b23 Changes to 1.99.16/20100205
+ minor simplifications to netpgp(1) internally
+ fix a bug in netpgp_verify_file where a non-existent file while listing
  packets would cause a SIGSEGV
+ add duration arg to netpgp(1), and check for validity when verifying
  signatures
+ add birthtime arg to netpgp(1), and check for validity when verifying
  signatures
+ add netpgp commands to print pubkey, if desired
+ allow the passphrase for the signature to be taken from --pass-fd
+ get rid of static indent value when printing packet contents
+ print signature validity times when verifying a file's signature
2010-02-06 02:24:33 +00:00
roy
98eb889579 Userland now builds and uses terminfo instead of termcap.
OK: core@, jdc@
2010-02-03 15:34:37 +00:00
joerg
0fa8619ec0 Fix some POD errors in the OpenSSL man pages. Regen them. Install some
missing man pages.
2010-01-24 21:19:53 +00:00
joerg
92dbe11dbb Make VERSION work with newer OpenSSL. 2010-01-24 19:16:05 +00:00
taca
bf8e25a5bf Fix to deal with CVE-2009-4355 from OpenSSL's repositroy. 2010-01-22 03:42:47 +00:00
tonnerre
e5ca1f295b Instead of unconditionally disabling SSL3 renegociation, add the flag
SSL3_FLAGS_ALLOW_UNSAFE_LEGACY_RENEGOTIATION which can be set by the
software which needs unsafe renegociation. Patch from OpenSSL CVS.
2010-01-10 16:39:10 +00:00
joerg
3a06db1475 Don't use .Xo/.Xc. Fix date format. 2010-01-08 16:37:39 +00:00
christos
47dc77041d merge changes. 2009-12-27 01:40:46 +00:00
christos
3fab09205c import openssh 5.3 2009-12-27 01:07:02 +00:00
christos
bfc463fe1e merge conflicts and undo the session renegotiation disabling code. 2009-12-27 00:48:55 +00:00
christos
cef2ee707e import SNAP-20091226 2009-12-26 23:29:52 +00:00
agc
bb371892fc Add tests for memory encryption and decryption, and signing and verification
(by pipes).
2009-12-22 07:09:39 +00:00
agc
46c46156b2 Remove a code excerpt which is not ready for primetime just yet 2009-12-22 06:55:03 +00:00
agc
5836ded60b Modify regression test suite behaviour - remove the (error) tests for
commands with no file arguments, as input will now be taken from stdin,
and output will go to stdout, if no file arguments are given on the
command line.
2009-12-22 06:53:26 +00:00
agc
7e08eafcff Fix error in merge of previous change shown up by regression tests. 2009-12-22 06:51:31 +00:00
agc
d369874e4b Netpgp changes to 1.99.15/20091221
+ some ssh host keys do not have the username of the generator included
  in the key itself. If there is no username in there, create one.
+ added netpgp_encrypt_memory() and netpgp_decrypt_memory()
+ overhaul netpgp(1) to work with stdin/stdout if no filenames specified:

% netpgp --encrypt < a | netpgp --decrypt > b
netpgp: default key set to "C0596823"
netpgp: default key set to "C0596823"
pub 2048/RSA (Encrypt or Sign) 1b68dcfcc0596823 2004-01-12
Key fingerprint: d415 9deb 336d e4cc cdfa 00cd 1b68 dcfc c059 6823
uid              Alistair Crooks <agc@netbsd.org>
uid              Alistair Crooks <agc@pkgsrc.org>
uid              Alistair Crooks <agc@alistaircrooks.com>
uid              Alistair Crooks <alistair@hockley-crooks.com>
netpgp passphrase:
% diff a b
% ls -al a b
-rw-r--r--  1 agc  agc  15243 Dec 20 08:55 a
-rw-r--r--  1 agc  agc  15243 Dec 21 17:15 b
%

% netpgp --sign < a | netpgp --cat > b
netpgp: default key set to "C0596823"
netpgp: default key set to "C0596823"
pub 2048/RSA (Encrypt or Sign) 1b68dcfcc0596823 2004-01-12
Key fingerprint: d415 9deb 336d e4cc cdfa 00cd 1b68 dcfc c059 6823
uid              Alistair Crooks <agc@netbsd.org>
uid              Alistair Crooks <agc@pkgsrc.org>
uid              Alistair Crooks <agc@alistaircrooks.com>
uid              Alistair Crooks <alistair@hockley-crooks.com>
netpgp passphrase:
Good signature for <stdin> made Mon Dec 21 18:25:02 2009
using RSA (Encrypt or Sign) key 1b68dcfcc0596823
pub 2048/RSA (Encrypt or Sign) 1b68dcfcc0596823 2004-01-12
Key fingerprint: d415 9deb 336d e4cc cdfa 00cd 1b68 dcfc c059 6823
uid              Alistair Crooks <alistair@hockley-crooks.com>
uid              Alistair Crooks <agc@pkgsrc.org>
uid              Alistair Crooks <agc@netbsd.org>
uid              Alistair Crooks <agc@alistaircrooks.com>
uid              Alistair Crooks (Yahoo!) <agcrooks@yahoo-inc.com>
%

+ add explanations of memory-based operations to manual pages
2009-12-22 06:03:24 +00:00
christos
c32b972e5f Put the CPPFLAGS in a separate Makefile.inc so that all the defines are
visible in the LIB build. Fixes problem with X11BASE and readpass.c
2009-12-19 18:00:26 +00:00
agc
5761f11cec Preserve the existing value of an extern variable across the call to
process_sign_request2().
2009-12-17 15:55:16 +00:00
agc
d028655a8d Bump the netpgp base version to 1.99.14 for the release changes. 2009-12-14 23:35:06 +00:00
agc
9e63cf3fca 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
2009-12-14 23:29:56 +00:00
agc
1fc3f56acb Minor change (benign everywhere else) to pick up the asprintf(3)
prototype on Linux - caught by Alan Horn.
2009-12-09 22:10:51 +00:00
agc
5674064867 Add a prototype for netpgp_match_list_keys() 2009-12-07 16:56:03 +00:00
martin
071ab236f8 size_t %z police 2009-12-07 16:55:37 +00:00
agc
93d262f9d5 + The internal variable "sshetcdir" has been renamed to "sshkeydir"
+ Take advantage of the new regular expression searching methods
2009-12-07 16:18:44 +00:00
agc
99e2a61b78 The internal variable "sshetcdir" has been renamed to "sshkeydir" 2009-12-07 16:17:57 +00:00
agc
183e04eb84 + When using ssh keys, use the first key as the default userid, unless
specified.

+ The internal variable "sshetcdir" has been renamed to "sshkeydir"

+ When matching the text fields in the username, use an ICASE, NOSUB, EXTENDED
regular expression. This allows more advanced ways of searching, such as:

% netpgpkeys --list-keys '\.de\>'

to find all the keys in the default keyring which have an email address
in Germany. This is actually surprisingly useful.
2009-12-07 16:17:17 +00:00
agc
5b91f35fb9 Fix up some lint.
Change the license on new files to a 2-clause one.
2009-12-06 17:43:05 +00:00
martin
f20c48026a printf format fixes to make it compile 2009-12-05 17:23:39 +00:00
wiz
e34d48521a Correct Xref to libnetpgp(3). 2009-12-05 10:05:54 +00:00
agc
1e9d36d82d Update the manual page for the addition of ssh host keys. 2009-12-05 07:33:18 +00:00
agc
d6c0ee4fff One more thing in the "Done" section - add ssh host keys 2009-12-05 07:21:07 +00:00
agc
561d2d6ad0 Add new files into netpgp lib 2009-12-05 07:17:29 +00:00
agc
91c29c7450 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.
2009-12-05 07:08:18 +00:00
christos
4ab80ffe22 Disable SSL V3 session renegotiation since the protocol parameters of the
old session are not cryptographically tied to the new session ones.
NB: Applications that require session re-negotiation will fail after this
update.
2009-12-03 23:44:33 +00:00
agc
7d576ad983 Add python bindings for netpgp, via swig.
When using python, always add the dumb symbolic link to the library name.
2009-12-02 00:32:06 +00:00
agc
e5e6e15318 Re-instate perl taint checking by re-defining the possible taint check in
swig. Fix a bug whereby the generated shlib_version file got appended to,
rather than rewritten.
2009-12-01 20:44:50 +00:00
agc
f17a59eb6a Turns out that swig and tainted don't play well together - perl has no way
of knowing whether the memory will be modified. For now, the gross hack is
to switch off tainting
2009-12-01 08:02:50 +00:00
agc
e1d61885e2 Add language bindings for tcl and perl 2009-12-01 06:43:57 +00:00
agc
6b13238156 Use the right field for the prefix 2009-12-01 06:33:31 +00:00
agc
e502623fdd Add a swig interface file, and a wrapper script, for calling swig for
various language bindings for netpgp.
2009-12-01 05:19:51 +00:00
agc
b4d6642e10 Recognise the hash algorithm in a case-insensitive manner. 2009-12-01 02:36:32 +00:00
agc
f8429fa3c9 Remove vestiges of debugging 2009-11-20 15:23:37 +00:00
agc
33ee8138ba When writing an ascii-armoured message, push the linebreak writer onto
the write function stack for the body of the message as well as the
headers.

This means that an ascii-armoured signed file created by netpgp conforms
to RFC 4880 (and 2440, thanks, moof[1]), and can be verified by gpg now, as
well as netpgp.

[1] Are there any other RFCs which are superceded by their double?
2009-11-20 15:21:18 +00:00
agc
632dc3ac9b Unbreak the creation of ascii-armoured signatures.
Add automatic detection of ascii-armoured signatures.

Add tests for same - with small and large source files.
2009-11-20 07:17:07 +00:00
agc
ad7bc21d21 Commit some changes that have been in a private tree for a while:
+ add a netpgp library function - netpgp_get_key(3) - to print a
specific key
+ add functionality to call this function in netpgpkeys(1)
+ add test for netpgp_get_key
+ add a verbose switch to the tst script
+ add netpgp functions to expose the memory signing and verification
functions - netpgp_sign_memory(3) and netpgp_verify_memory(3)
+ coalesced signing and verification ops file functions
2009-11-19 21:56:00 +00:00
agc
a2dd3398cd Add 'a' and 'a.sig' to CLEANFILES - from Marc Balmer
Wrap long lines
2009-10-19 05:17:46 +00:00
agc
5ea8497ecf Use LD_LIBRARY_PATH to manage the library path, and don't try to second
guess from the lua driver program
2009-10-19 01:07:08 +00:00
agc
9470081fd3 Use a lua for loop in preference to a while and increment in the lua
example code - suggested by Marc Balmer.

	% make USETOOLS=no t
	cp Makefile a
	./netpgp.lua --sign --detached a
	netpgp: default key set to "C0596823"
	pub 2048/RSA (Encrypt or Sign) 1b68dcfcc0596823 2004-01-12
	Key fingerprint: d415 9deb 336d e4cc cdfa 00cd 1b68 dcfc c059 6823
	uid              Alistair Crooks <agc@netbsd.org>
	uid              Alistair Crooks <agc@pkgsrc.org>
	uid              Alistair Crooks <agc@alistaircrooks.com>
	uid              Alistair Crooks <alistair@hockley-crooks.com>
	netpgp passphrase:
	-rw-r--r--  1 agc  agc  287 Oct 17 15:58 a.sig
	./netpgp.lua --verify a.sig
	netpgp: default key set to "C0596823"
	netpgp: assuming signed data in "a"
	Good signature for a.sig made Sat Oct 17 15:58:09 2009
	using RSA (Encrypt or Sign) key 1b68dcfcc0596823
	pub 2048/RSA (Encrypt or Sign) 1b68dcfcc0596823 2004-01-12
	Key fingerprint: d415 9deb 336d e4cc cdfa 00cd 1b68 dcfc c059 6823
	uid              Alistair Crooks <alistair@hockley-crooks.com>
	uid              Alistair Crooks <agc@pkgsrc.org>
	uid              Alistair Crooks <agc@netbsd.org>
	uid              Alistair Crooks <agc@alistaircrooks.com>
	%
2009-10-18 07:23:37 +00:00
agc
1f8267516a Minor changes to find lua glue library, and to set the home directory on
the correct C/Lua structure
2009-10-18 07:17:28 +00:00
agc
606ee0c668 Link in the netpgp shared library to the lua glue library 2009-10-18 07:15:43 +00:00
agc
faff2f64a8 Create .so from the lua interface library 2009-10-18 07:14:55 +00:00
agc
829fc7a59b Minor renaming of lua array
Zero allocated storage after return from lua_newuserdata()
2009-10-18 07:14:19 +00:00
joerg
37ee8ee594 Don't use .Xo/.Xc to work around ancient groff limits. 2009-10-14 17:33:20 +00:00
agc
eb8043c766 Add lua language bindings for netpgp 2009-10-12 02:55:46 +00:00
agc
0aa9bcca65 Add some checks for return value from allocation routines 2009-10-09 06:02:55 +00:00
agc
7affbacab9 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.
2009-10-07 16:19:51 +00:00
agc
e82f21eb7a More checks for the return value from memory allocation. 2009-10-07 04:56:51 +00:00
agc
83cfb9deb0 Clean up some Flexelint (issues pointed out by phk - many thanks!).
Also make sure the return value for each memory allocation is checked - this
is still a WIP.
2009-10-07 04:18:47 +00:00
agc
57036e7063 More Flexelint cleanup from issues pointed out by phk - thanks! - just easy
low-hanging fruit for now.
2009-10-06 05:54:24 +00:00
agc
b491010d02 More Flexelint cleanup from phk - many thanks! - low-hanging fruit for
just now.
2009-10-06 03:30:59 +00:00
agc
1603af0219 Clean up more Flexelint, from phk - many thanks! - just low-hanging fruit
for just now.
2009-10-06 02:46:17 +00:00
agc
814ccb85bf Clean up Flexelint warnings - from phk, many thanks - just low-hanging
fruit for just now.
2009-10-06 02:39:53 +00:00
agc
5a83dba05a More Flexelint fixes from phk - just low-hanging fruit for just now -
many thanks!
2009-10-06 02:26:05 +00:00
agc
3574ef6dec Get rid of some lint-style issues - pointed out by Poul-Henning Kamp
and FlexeLint (many thanks!)
2009-10-04 21:58:25 +00:00
agc
e8be961ca7 Get rid of multiple prototypes - pointed out by Poul-Henning Kamp and
FlexeLint (many thanks!)
2009-10-04 21:57:09 +00:00
agc
f462900c00 const poisoning - pointed out by Poul-Henning Kamp and FlexeLint (many
thanks!)
2009-10-04 21:55:55 +00:00
dyoung
40ca2d34bc Delete trailing whitespace. 2009-08-17 22:58:28 +00:00
christos
13492ada53 This code is really broken. It allocates struct sockaddr on the stack
and expects to work with IPV6. Tell the hints that we only want IPV4
for now, so that we don't try to bind to an IPV6 address as returned
by getaddrinfo, and then we bash in V4 in the family!
jeez
2009-08-15 01:25:54 +00:00
christos
e70d1f0896 don't try to free a buffer that came from the arguments, make a copy instead.
This can happen if we specify --port
2009-08-15 01:03:03 +00:00
christos
bb8cb2851b resolve conflicts 2009-08-05 18:38:21 +00:00
christos
86adef1b84 import 20090805 snapshot. 2009-08-05 18:31:57 +00:00
joerg
15895248c1 Use OpenSSL's SHA256 support directly. 2009-08-03 20:56:25 +00:00
mrg
03f1126058 set SSHDIST to the new location. HI CHRISTOS! 2009-07-21 00:47:23 +00:00
christos
d7ed66ca45 make tests compile! 2009-07-20 20:41:05 +00:00
christos
75efea6592 bump libcrypto and friends; OpenSSL abi change: do_cipher last argument
changed from u_int to size_t. Affects _LP64 only.
2009-07-20 17:30:52 +00:00
christos
35bdca4d17 use the proper libcrypto 2009-07-20 15:48:16 +00:00
christos
58e8878cb5 use the proper libcrypto 2009-07-20 15:43:51 +00:00
christos
9610bc301c make sha256/512 binary compatible with the libc version which we now use. 2009-07-20 15:34:49 +00:00
christos
c9c3cfbcf5 catch up with openssl's abi change. do_cipher length changed from u_int to
size_t.
2009-07-20 15:33:44 +00:00
christos
22505a154a add openssl 2009-07-19 23:44:20 +00:00
christos
e3aebf9996 new openssl 2009-07-19 23:43:46 +00:00
christos
75534b786a Add one more generated file and install in /usr/bin 2009-07-19 23:33:34 +00:00
christos
49d46fa3c8 - add build glue
- apply our changes
2009-07-19 23:30:37 +00:00
christos
a89c9211e5 import new openssl snapshot 2009-07-19 23:01:17 +00:00
agc
51e16c73a5 Move the null file checks for sign/verify/encrypt/decrypt down into the
library itself. Update the regression test script to add some tests.
2009-07-07 01:13:07 +00:00
agc
1eddadf4f7 Add two more items to the TODO list 2009-07-07 01:12:06 +00:00
agc
0ff3383f59 Check that a filename has been given, where one has required. Fixes a bug
reported by Mark Kirby.
2009-06-30 18:54:20 +00:00
agc
f72138f83a Don't complain if $HOME/.gnupg does not exist (and using --homedir).
Don't require a userid to be set in the gpg.conf file - it can be set
on the command line when it's needed (for signing and encryption, the
other operations in netpgp(1) will take the userid from the
signed/encrypted file).

Add tests for the lack of a default userid in the config file.
2009-06-13 05:25:08 +00:00
agc
d1923dbd04 add 3 more niggles (from Luke)
check whether a callback function is needed
2009-06-12 04:12:25 +00:00
agc
b655c49f3f Update to version 1.99.12
CHANGES 1.99.11 -> 1.99.12

+ only prompt for the passphrase for the secret key if the secret key is
  protected by a passphrase
+ portability fix for Mac OS X
2009-06-11 17:05:17 +00:00
agc
6808773a84 Remove workaround not needed any more. 2009-06-11 06:45:11 +00:00
agc
7478ab55e5 + only prompt for the passphrase for the secret key if the secret key is
protected by a passphrase
2009-06-11 04:57:51 +00:00
lukem
0a833e378f Use grep to search for specific error messages rather than expecting
the entire command stderr to never change.
2009-06-11 02:55:35 +00:00
lukem
87ffa43d9a Run the "diff of expected output" in a separate AT_CHECK instead of
using the 'run-if-pass' section; this correctly detects failure.
2009-06-11 02:48:20 +00:00
lukem
b042093ed7 (ab)use --pass-fd to avoid the passphrase prompt 2009-06-11 02:36:38 +00:00
lukem
efcb034d7c Use AT_TESTED
Modify the PATH to the build dir instead of hardcoding NETPGP* vars.
2009-06-11 02:28:50 +00:00
lukem
99f0a62f6e two items I want and/or am working on with Al. 2009-06-11 01:17:43 +00:00
agc
9b75345600 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
2009-06-11 01:12:42 +00:00
agc
380fd10dc6 Add netpgpkeys to the programs to build, and list the keys in the current
keyring as another test.
2009-06-10 16:38:21 +00:00
agc
14f8874ae5 Update userland programs to be able to use the "results" file 2009-06-10 16:37:41 +00:00
agc
01f9a2cc5c Add a separate res output stream for results, and print results to it.
This is settable from userlevel by using
	netpgp_setvar(..., "results", filename)
2009-06-10 16:36:23 +00:00
njoly
260e7036e1 Make _PATH_XAUTH use X11BASE prefix again, instead of hard-coded
"/usr/X11R6".
2009-06-10 16:14:29 +00:00
agc
ef1ef480a8 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.
2009-06-10 16:01:37 +00:00
wiz
b0c00dcfa4 Remove duplicate Pp, fix a typo, wording. 2009-06-10 14:38:14 +00:00
agc
7e61309607 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)
2009-06-10 00:38:08 +00:00
agc
481090ff86 avoid a double-free of the passphrase 2009-06-09 19:32:11 +00:00
stacktic
806bebc4f9 Fixed strvisx usage 2009-06-09 13:32:46 +00:00
agc
cefa0f256e Fix a bug in decryption whereby a bad passphrase would cause a segmentation
violation
2009-06-09 02:19:47 +00:00
agc
d69b68cb05 Adapt to the new directory structure 2009-06-09 00:56:15 +00:00
agc
41335e2dda 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
2009-06-09 00:51:00 +00:00
wiz
b1c6e76295 Sort options, fix a typo. 2009-06-08 08:02:32 +00:00
agc
c24ee81d8d Fix up paths for the reachover Makefile for netpgpverify 2009-06-08 06:29:33 +00:00
agc
9067a616b3 Fix merge botch in test script 2009-06-08 06:19:31 +00:00
agc
da8de2a7e7 Add the netpgpverify tests into the test script. 2009-06-08 06:16:34 +00:00
agc
b3acd3dbb1 Add a manual page for netpgpverify(1). 2009-06-08 06:15:51 +00:00
agc
1dfa6d3632 Add a reachover Makefile for building the standalone netpgpverify program 2009-06-08 06:13:56 +00:00
agc
953dc192b5 Move to a different directory structure - this is the directory and
Makefile for building the netpgp program.
2009-06-08 06:13:07 +00:00
agc
bfb9a93fd0 Add a cut-down, streamlined, stand-alone netpgp verification program. 2009-06-08 06:09:53 +00:00
christos
983ad222a3 handle mkcrypto 2009-06-07 22:44:04 +00:00
christos
d8bad821d7 connect openssh 2009-06-07 22:42:31 +00:00
christos
733a2dd888 Add openssh 2009-06-07 22:39:35 +00:00
christos
313c6c94c4 Merge in our changes:
- conditionalize login_cap
- conditionalize bsd_auth
- bring in pam from portable
- restore krb5, krb4, afs, skey
- bring in hpn patches, disable mt aes cipher, keep speedups and cipher none
- add ignore root rhosts option
- fix ctype macro arguments
- umac is broken, disable it
- better ~homedir handling
- netbsd style tunnels
- urandom, xhome, chrootdir, rescuedir NetBSD handling
- utmp/utmpx handling
- handle tty posix_vdisable properly
- handle setuid and unsetuid the posix way instead of setresuid()
- add all missing functions
- add new moduli
- add build glue
2009-06-07 22:38:44 +00:00
christos
ca32bd8de9 import 5.2 from ftp.openbsd.org 2009-06-07 22:19:00 +00:00
agc
e4c9a22cd7 Add a test for the null list-packets file. 2009-06-07 01:55:02 +00:00
agc
871e03b1c5 Fix an core dump reported by Oliver Gould - if there is no file from which
to read packets to list, fail with a decent error message.
2009-06-07 01:52:48 +00:00
agc
732655c303 Some autoconfig glue around header files inclusion. 2009-06-02 15:10:07 +00:00
agc
d21b929e26 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
2009-05-31 23:26:20 +00:00
agc
393ecd9217 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
2009-05-28 01:52:42 +00:00
lukem
2ae31d0241 regenerate 2009-05-28 00:32:07 +00:00
lukem
c26604cdeb wrap "copy the test file" in AT_CHECK 2009-05-28 00:29:06 +00:00
lukem
90194f6da2 libtool is in the builddir not the srcdir.
wrap "copy the test file" in AT_CHECK
2009-05-28 00:28:38 +00:00
lukem
47c3c476b0 sort main tests (arguable asthetic benefit) 2009-05-28 00:27:39 +00:00
lukem
8c3a3d0499 add new tests to TESTSUITE_DEPS 2009-05-28 00:27:03 +00:00
agc
a95ce5ae7c More tests for netpgp 2009-05-27 22:13:06 +00:00
agc
334e533951 Add tests for detached signature creation and verification, and for
encryption and decryption via netpgp.
2009-05-27 14:42:07 +00:00
lukem
9fe7631b77 Ensure we can't verify an unsigned file
Rename a test filename
Add some comments
2009-05-27 07:00:32 +00:00
lukem
0f17222c1c Provide a passphraseless test key for the testsuite.
Use gpg to import the test key until netpgp's key management is overhauled.

Per discussion with Alistair.
2009-05-27 06:47:57 +00:00
agc
d70007f532 CHANGES 1.99.5 -> 1.99.6
+ made --homedir=d consistent with POLS. Default is $HOME/.gnupg, and
  if a directory is specified with --homedir=d, the directory containing
  conf file and keyrings is taken to be "d".
2009-05-27 05:42:24 +00:00
agc
2df14e286f Use a relative path, rather than an absolute one, to find the source 2009-05-27 04:47:08 +00:00
agc
419050018f bump shlib version 2009-05-27 04:46:33 +00:00
lukem
b79d450ba1 simplify definition of TESTROOT 2009-05-27 01:54:22 +00:00
agc
c64158a1df 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
2009-05-27 00:38:26 +00:00
lukem
b0d9fe21fa regenerate 2009-05-26 05:47:32 +00:00
lukem
14bfdb876a rcsid fixup 2009-05-26 05:42:25 +00:00
lukem
9d4ec13409 simplify header install 2009-05-26 05:41:41 +00:00
lukem
fa0f212aba Improve SHA256_CTX checks; OS/X provides it in <CommonCrypto/CommonDigest.h>
even though their <openssl/sha.h> is too old.
2009-05-26 05:40:03 +00:00
lukem
5fc6630f84 Install libnetpgp.3.
Don't build -static
2009-05-26 05:20:25 +00:00
lukem
074150647a Provide a generated config.h in the NetBSD build reachover. 2009-05-26 05:11:17 +00:00
lukem
bd9a120207 regen from configure.ac 1.13 2009-05-26 05:03:57 +00:00
lukem
dd536fdc21 - Require <bzlib.h> -- don't just check for it.
- Check for types: long long, size_t
- <openssl/sha.1> needs <sys/types.h> on some platforms
2009-05-26 05:03:08 +00:00
lukem
1c576705ba Overhaul build infrastructure:
- use automake to generate the Makefile.in
- style reorg in configure.ac
- ensure <openssl/sha.h> provides SHA256_CTX (openssl 0.9.8 or greater)
- move the "build helpers" to buildaux
- add a rudimentary (and not yet functional) test suite

(There's still more to do.)

Per chat with Alistair.
2009-05-26 04:27:28 +00:00
lukem
11076a94d7 remove a generated file 2009-05-26 04:20:22 +00:00
agc
6715e11a99 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
2009-05-25 06:43:31 +00:00
agc
b6d342175b CHANGES 1.99.2 -> 1.99.3
+ modified regression tests to make it easier to see status messages
+ modified --encrypt, --decrypt, --sign, and --clearsign as well as --cat
  to respect the --output argument for the output file. Default behaviour
  remains unchanged - if --output is not specified, standard file names
  and suffixes apply. Note that --verify has not been changed - this is
  for compatibility with gpg, POLA/POLS, and because --verify-cat/--cat
  provides this behaviour
2009-05-22 02:28:54 +00:00
wiz
3f570851bc New sentence, new line. Add ".An -nosplit" to AUTHORS section for better
formatting. Mark up filenames with .Pa. Remove trailing whitespace. Try
only using mdoc macros. Some other minor nits fixed.
2009-05-21 09:21:35 +00:00
agc
2eb852f377 Get rid of a few TODO items that aren't needed. 2009-05-21 00:35:01 +00:00
agc
648b5a9919 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
2009-05-21 00:33:31 +00:00
agc
7e7091d626 Remove files which aren't used any more 2009-05-19 20:07:32 +00:00
agc
0df5e957ce 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()
2009-05-19 05:13:09 +00:00
agc
f4badd9b47 + some more name changes
+ we've had the ability to sign files with a detached signature for
  a while now. We can now verify the files using the detached signature
  file.
+ in honour of this, update version numbers - 1.0.0/20090517
2009-05-18 03:55:42 +00:00
he
8cce58a8c3 Add LDADD+= and DPADD+= settings so that this builds on sun2 as well,
where we can't rely on shared libraries expressing the needs of the
program.
2009-05-17 11:38:42 +00:00
agc
57324b9f3d + 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
2009-05-16 06:30:38 +00:00
wiz
4cb2500307 Remove trailing whitespace. 2009-05-14 09:42:09 +00:00
agc
4b3a3e1885 + 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
2009-05-14 03:59:53 +00:00
agc
2232f8005f 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
2009-05-12 00:37:52 +00:00
agc
b1b5870651 + 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
2009-05-08 06:06:38 +00:00
agc
5b5e53256c Make it obvious what the pointer refers to, rather than its type. 2009-05-06 14:26:12 +00:00
agc
0c31095918 More cosmetic changes, no functional differences. 2009-05-06 07:01:43 +00:00
agc
3326c4c54b 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"
2009-05-06 03:02:02 +00:00
agc
0d85ad6ad7 Don't bother searching for assert.h, it's not needed any more 2009-05-05 15:29:46 +00:00
agc
ed0df671c8 Get rid of remaining assert()s in netpgp. 2009-05-05 15:25:27 +00:00
agc
bcfd85659b + __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
2009-05-05 01:28:15 +00:00
wiz
14a563a89f Punctuation. 2009-05-02 09:40:33 +00:00
wiz
c6b94f4c8a Bump date for netpgp_sign_file signature change. 2009-05-02 09:40:01 +00:00
agc
ea53d15fcc Reorder the args to a static function to mirror some other function calls.
Attempt to use mmap(2) to read a file, and fall back to multiple read(2)
calls if that fails.
2009-05-02 04:19:43 +00:00
agc
7cf9b94e1a Document the way to get detached sig files from this library 2009-05-02 02:44:36 +00:00
agc
32262391d9 Give credit where credit is due. 2009-05-02 02:43:15 +00:00
agc
de70477951 Make this code WARNS=4
Add an option to the netpgp command to produce a detached signature.
2009-05-02 02:38:54 +00:00
agc
71e559c1d8 Fix a build failure reported by Perry 2009-05-02 02:31:35 +00:00
agc
1991192fb5 Retire openpgpsdk - replaced by netpgp 2009-05-01 23:10:29 +00:00
agc
794ef7cba4 Don't descend into openpgpsdk directory - it's about to go away. 2009-05-01 23:00:37 +00:00
agc
1f71d3ede1 Build the netpgp library with WARNS=3 2009-04-30 04:59:14 +00:00
agc
8507301865 WARNS=3 fixes 2009-04-30 04:57:57 +00:00
agc
b0de80b42e Sync the portable autoconfed Makefile with reality 2009-04-28 20:51:16 +00:00
agc
763288c777 Sync the portable autoconf Makefile with reality 2009-04-28 20:50:48 +00:00
agc
aa732d7398 Don't try to be clever here - sizeof(uint32_t) will always be 4... 2009-04-28 20:49:57 +00:00
wiz
4ad6ecab0a Use Fl Fl for long flags. 2009-04-28 09:19:15 +00:00
wiz
fefeeb6f5e Fix In argument (no <> needed). Use .Pa for paths. Drop trailing space.
Punctuation nits.
2009-04-28 07:59:35 +00:00
wiz
7d7afa233d Fix xrefs, comment out the one to libbz2 (no man page exists for that). 2009-04-28 07:56:19 +00:00
agc
167587fd07 Clean up minor pieces of lint 2009-04-28 00:41:40 +00:00
agc
702f5adb30 Use .Ar properly 2009-04-28 00:40:45 +00:00
agc
f5bbd5a825 Let's allocate enough space for the keyring structure, and not a pointer to it. 2009-04-26 16:55:44 +00:00
agc
ee219f892b Enable netpgp in the build, and amend set lists accordingly. 2009-04-25 05:54:50 +00:00
agc
efdd9dba1e WARNS=4 changes 2009-04-25 01:29:14 +00:00