Commit Graph

558 Commits

Author SHA1 Message Date
agc
a2e4cd88b7 fix a repeated typo 2011-03-29 21:43:17 +00:00
wiz
f96ea8d1d8 Sort sections. 2011-03-22 09:42:00 +00:00
jruoho
bed0d8a5ad * Remove saslc_strmech(), which does not appear in the sources.
Instead, document saslc_sess_getmech().

* Add FUNCTIONS and describe the functions in a list for readability.

* Sort SYNOPSIS in the order of appearance in FUNCTIONS.

* Split couple of long paragraphs for readability.

* Split the code example into EXAMPLES.

* Add missing prototypes to SYNOPSIS.

* Small markup improvements.

No contextual change.
2011-03-22 07:06:02 +00:00
joerg
9674b81ed9 Introduce __weakref_visible to handle the different required visibility
for weak references. GCC 4.2+ and Clang require static, older GCC wants
extern. Change __weak_reference to include sym. This requires changes
the existing users to not reuse the name of the symbol, but avoids
further differences between GCC 4.1 and GCC 4.2+/clang.
2011-02-22 05:45:05 +00:00
joerg
729a0eaa85 Include bsd.prog.mk to ensure that make includes actually works. 2011-02-20 05:42:34 +00:00
christos
743bf4fef9 Re-do using bsd.files.mk 2011-02-20 05:17:47 +00:00
christos
761d5d7e88 don't install dirs. 2011-02-20 02:14:42 +00:00
christos
0498c1530c Add example configuration file from Anon Ymous and a README file from me. 2011-02-20 02:12:31 +00:00
christos
09484ebb41 improve error handling, from Anon Ymous 2011-02-20 01:59:46 +00:00
christos
acb231545c Property name change:
SASLC_PROP_SERVICENAME ("SERVICENAME")
to
  SASLC_PROP_SERVNAME ("SERVNAME")

Hopefully this will avoid confusion with SASLC_PROP_SERVICE ("SERVICE").
SERVNAME is also closer to the name used in the RFC2831 ("serv-name").
(Discussed with christos@.)

Change the hash parameters to keep that collision-less after the above
name change.

While here, go back to using .Sh in the manpage for unknown section
headers as the PostScript output from .Ss is slightly different.
(Discussed with wiz@.)
2011-02-16 02:14:22 +00:00
christos
1fa7e8d953 From Anon Ymous:
1) Fix a memory leak in cipher_context_create().
2) Fix a goof in the construction of the digest-uri.
3) Allow SASLC_PROP_SERVICENAME to be a hostname qualified comma
delimited list of service names to select from and update the manpage
to reflect this.
4) Make libsaslc.3 pass mdoclint(1).
2011-02-15 18:36:08 +00:00
christos
d02347a68e fix the loop sentinel. 2011-02-14 12:45:31 +00:00
christos
561e85ba95 Make all mechanisms optional, so we can compile in only the ones we want. 2011-02-13 05:39:52 +00:00
christos
beea8b97d4 Fix botched merges of the patch that Anon Ymous sent. From Anon Ymous 2011-02-12 23:21:32 +00:00
christos
16e81cb945 fix size_t inconsistencies. 2011-02-12 22:46:14 +00:00
matt
97519f2fe4 Fix some LP64/IPL32 issues 2011-02-12 22:24:01 +00:00
matt
bb5019fabd Don't use DPADD/LDADD for libraries. Use LIBDPLIBS instead. 2011-02-12 22:23:11 +00:00
christos
e9a3875280 glue in saslc 2011-02-12 19:07:35 +00:00
christos
e43cceb285 just include <sys/types.h>; don't inclue stdbool.h because postfix does not
like it.
2011-02-12 19:03:39 +00:00
wiz
17646a9411 Various formatting fixes and a typo or two. 2011-02-12 16:08:18 +00:00
wiz
35a4803959 Remove trailing whitespace and superfluous Pp before new sections.
Use Nm instead of Xr'ing itself.
2011-02-12 15:58:03 +00:00
christos
1fca038b42 remove NULL check, can't happen. 2011-02-12 14:24:18 +00:00
christos
19c14409b9 Changes from Anon Ymous:
Make this library work.
- several API changes (see the manpage)
- take care to match the spec (hopefully)
- deal with comma delimited lists more systematically
- addition of the DIGEST-MD5 security layer
- syslog messages including debugging messages
- many coding simplifications, changes, rewrites, and additions (i.e.,
  stuff I can't recall at the moment)
- rewrite the manpage

The API changes have been heavily influenced by hooking this up to
postfix(1).

The ANONYMOUS, LOGIN, PLAIN, CRAM-MD5, DIGEST-MD5, and GSSAPI
authentication mechanisms have been tested and shown to work for
authentication with a postfix(1) server using the cyrus-sasl library.
(A postfix(1) libsaslc(3) client wrapper was used for the testing and
will be committed separately.)

The EXTERNAL authentication mechanism should work (it is pretty
simple), but it has not been tested with any servers.

The security layers of DIGEST-MD5 and GSSAPI have also not been tested
with any servers.  Do any SMTP servers really support these security
layers?  Postfix with cyrus-sasl does not, either as a client or
server, even though the cyrus-sasl library has support for the layers.

The new DIGEST-MD5 security layer encode/decode routines have been
tested against themselves (not terribly useful), but nothing else.  As
they use the openssl EVP_* routines (which aren't well documented) to
do the cryptography, the "auth-conf" layer may or may not actually
match the rfc2831 standard.  The "auth-int" layer is much more likely
to be in compliance.

Note: I have left support for a version of AES in the DIGEST-MD5 code
even though it is not part of rfc2831 (May 2000).  This flavor of AES
was in a later draft (June 2003) that was included in the cyrus-sasl
distribution, but changed to a different flavor of AES in subsequent
drafts (and DES disappeared).  AFAIKT, none of those drafts have been
accepted; the last I could find expired in Sept 2007.  rfc2831 is
still listed as standards track.  The AES support is very minor (some
table entries and a few lines of code to construct the IV) and I was
asked to leave it for now.

Hopefully there are not too many bugs, memory leaks, or
spelling/grammar errors.  My apologies in advance.

BTW, if you would prefer to use cyrus-sasl, install it (e.g., from
pkgsrc), and then rebuild postfix with HAVE_CYRUS_SASL defined.
2011-02-11 23:44:42 +00:00
spz
03e283f07f fix for CVE-2011-0014 (OCSP stapling vulnerability in OpenSSL)
patch taken from http://www.openssl.org/news/secadv_20110208.txt
2011-02-10 06:04:54 +00:00
christos
8d527ef179 we have arc4random_buf and uniform now; no need for random.c 2011-02-05 16:01:57 +00:00
spz
0284f45be2 revert previous 2011-02-05 06:42:44 +00:00
spz
8b14c14461 fix compile 2011-02-05 06:23:58 +00:00
christos
afbb9156b8 Fix CVE-2011-0539:
Legacy certificates generated by OpenSSH might contain data
from the stack thus leaking confidential information.
2011-02-04 22:11:09 +00:00
drochner
0bac615281 fix some merge botch and enable cryptodev support on NetBSD again 2011-02-03 19:44:05 +00:00
enami
342e3df70b Note that our installed sshd_config overwrite the LoginGraceTime to 600s. 2011-02-03 04:24:23 +00:00
wiz
c147060a75 Remove trailing whitespace; new sentence, new line; mark up
NULL with Dv; fix Dd argument.
2011-01-29 23:38:34 +00:00
agc
6b63829157 sync sources with sourceforge repository, prompted by Mateusz Kocielski.
+ minor changes to free resources in error cases
+ update return values from some functions
+ wrap some long lines
+ more tests
+ add length argument to digest functions

an additional minor fix to make this build, and to libsaslc.3 man
page, by myself.
2011-01-29 23:35:30 +00:00
christos
f10f86e23c avoid unused variable warning. 2011-01-09 23:17:36 +00:00
stacktic
5df88f3e65 Fixed strvisx usage 2011-01-03 18:55:41 +00:00
agc
70fd33655d avoid a double free - from Anthony Bentley. 2011-01-03 05:34:53 +00:00
agc
61b29b3185 Fix a double free[*], pointed out by Anthony Bentley.
[*] This was actually a triple free. We go all the way to 11.
2011-01-02 18:13:10 +00:00
agc
03e4221328 clean up lint (on amd64) 2011-01-01 23:00:24 +00:00
agc
8f197579aa get rid of some lint on amd64 platform 2011-01-01 22:29:00 +00:00
agc
f14b9450fa Fix a problem with overrunning a base64 decoded number when decoding ssh
keys, from Anthony Bentley.

	% netpgpkeys --ssh -l --hash=md5
	1 key found
	signature  1024/RSA (Encrypt or Sign) 666f47feddcdb77d 2002-07-02
	Key fingerprint: e1d6 b328 8126 e8e3 666f 47fe ddcd b77d
	uid              machinename.com (/home/user/.ssh/id_rsa.pub) <user@machinename.com>

	% ssh-keygen -l -f ~/.ssh/id_rsa.pub
	1024 e1:d6:b3:28:81:26:e8:e3:66:6f:47:fe:dd💿b7:7d /home/user/.ssh/id_rsa.pub (RSA)
	%

ssh keys and netpgp work as above.
2011-01-01 19:53:53 +00:00
christos
3a75b4abed obvious pasto from Anon Ymous 2010-12-18 18:22:24 +00:00
joerg
5aa0f88941 Inline string that should have been const char [] in first place. 2010-12-07 22:50:37 +00:00
drochner
ee60145ccf fix bug introduced by last security patch, from upstream CVS:
Don't assume a decode error if session tlsext_ecpointformatlist is
not NULL: it can be legitimately set elsewhere.
2010-12-07 10:03:29 +00:00
drochner
ad512a613f openssl security patch of the day:
Fix a flaw in the OpenSSL SSL/TLS server code where an old bug
workaround allows malicous clients to modify the stored session cache
ciphersuite. In some cases the ciphersuite can be downgraded to a weaker one
on subsequent connections. See
http://www.openssl.org/news/secadv_20101202.txt
(CVE-2010-4180)
2010-12-07 09:10:21 +00:00
plunky
f33b316b63 Remove the do-external-lib and do-gnu-lib targets, along with
external/lib/Makefile and crypto/external/lib/Makefile, replacing
them all with SUBDIRs directly from lib/Makefile.

compat/compatsubdirs.mk becomes simpler now, as everything is built
from lib/Makefile, meaning all the libraries will now be built under
compat so update the set lists to account for that.
2010-12-03 21:38:46 +00:00
he
1498aa522e Make this build for platforms which don't define HAVE_DLOPEN, notably
our sun2 port.  Eliminates "defined but not used" warnings turned into
errors by our setup.
2010-12-02 10:23:51 +00:00
he
c9162fb054 Don't rely on the shared library dependencies to pull in the ssl and lber
libraries, for the benefit of static linking and our sun2 port.
2010-12-02 10:21:28 +00:00
agc
e914232be0 avoid nameclash - call the generated user id variable "generated userid"
also keep the time of structure initialisation as an internal variable.
2010-12-01 22:14:52 +00:00
agc
735f63ec03 When generating a key, set the new key's userid (last 16 bytes of
fingerprint) as an internal netpgp variable.

This can then be queried using netpgp_getvar(netpgp, "userid") to find the
new key's id.
2010-12-01 22:01:41 +00:00
agc
2f97867c2d fastctype.[ch] source files are gone - use native <ctype.h> 2010-11-29 06:22:20 +00:00
agc
fdfbba4976 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>
2010-11-29 06:21:40 +00:00