mech_eap.git
8 years agoUpdate kerberos directory in win-build windows-port
Kevin Wasserman [Tue, 28 Apr 2015 14:34:51 +0000 (10:34 -0400)]
Update kerberos directory in win-build

updated to match location in amazon instance.
should be fixed to read from registry.

9 years agoWindows installer for mech_eap
Kevin Wasserman [Tue, 14 Apr 2015 19:59:25 +0000 (15:59 -0400)]
Windows installer for mech_eap

9 years agoFix libmoonshot detection and linking on windows
Kevin Wasserman [Thu, 26 Feb 2015 23:17:24 +0000 (18:17 -0500)]
Fix libmoonshot detection and linking on windows

9 years agouse win-vc-env.cmd build script in win-build.cmd
Kevin Wasserman [Thu, 26 Feb 2015 21:40:25 +0000 (16:40 -0500)]
use win-vc-env.cmd build script in win-build.cmd

9 years agoutil_base64 is required for non-acceptor builds
Kevin Wasserman [Thu, 26 Feb 2015 21:38:08 +0000 (16:38 -0500)]
util_base64 is required for non-acceptor builds

9 years agoUtility to setup vc build env on windows
Kevin Wasserman [Mon, 2 Feb 2015 21:19:09 +0000 (16:19 -0500)]
Utility to setup vc build env on windows

9 years agoUse libmoonshot cflags and lib path
Kevin Wasserman [Mon, 2 Feb 2015 16:44:06 +0000 (11:44 -0500)]
Use libmoonshot cflags and lib path

9 years agoClear PWD so buildbot works
Kevin Wasserman [Mon, 22 Dec 2014 16:37:35 +0000 (11:37 -0500)]
Clear PWD so buildbot works

9 years agoAdd windows build scripts
Kevin Wasserman [Thu, 18 Dec 2014 20:55:08 +0000 (15:55 -0500)]
Add windows build scripts

9 years agoAdd accidentally overlooked mech_eap.def.header
Kevin Wasserman [Thu, 18 Dec 2014 00:18:33 +0000 (19:18 -0500)]
Add accidentally overlooked mech_eap.def.header

9 years agoAdd compite_et replacement for windows
Kevin Wasserman [Wed, 17 Dec 2014 23:59:29 +0000 (18:59 -0500)]
Add compite_et replacement for windows

9 years agoWindows fixes for mech_eap Makefile
Kevin Wasserman [Tue, 16 Dec 2014 19:40:36 +0000 (14:40 -0500)]
Windows fixes for mech_eap Makefile

define CONFIG_NATIVE_WINDOWS, not CONFIG_WIN32_DEFAULTS.
hand-specify link rule on windows; libtool does not properly recognize import
libraries and is generally more trouble than it is worth.

9 years agoOnly define gss_eap_attrid when needed; ensure <utility> is included
Kevin Wasserman [Tue, 16 Dec 2014 19:37:09 +0000 (14:37 -0500)]
Only define gss_eap_attrid when needed; ensure <utility> is included

9 years agoFixup libeap makefile for windows build
Kevin Wasserman [Tue, 16 Dec 2014 19:30:54 +0000 (14:30 -0500)]
Fixup libeap makefile for windows build

9 years agoUpdate krb5 library detection and make variables for windows
Kevin Wasserman [Tue, 16 Dec 2014 19:25:27 +0000 (14:25 -0500)]
Update krb5 library detection and make variables for windows

Currently works for mit-krb5, 32-bit.

9 years agoInclude winsock2.h before openssl/x509v3.h
Kevin Wasserman [Tue, 16 Dec 2014 19:16:03 +0000 (14:16 -0500)]
Include winsock2.h before openssl/x509v3.h

9 years agoEnsure abfab radius attributes are defined
Kevin Wasserman [Tue, 16 Dec 2014 19:15:07 +0000 (14:15 -0500)]
Ensure abfab radius attributes are defined

9 years agoUse C++ destructors not finalizers
Sam Hartman [Wed, 22 Oct 2014 18:20:37 +0000 (14:20 -0400)]
Use C++ destructors not finalizers

Rather than calling the attribute finalizer from a library level finalizer, do so from a C++ destructor.
Hopefully this addresses a segfault on process termination (LP: #1201939)

9 years agoMech_eap: only output debugging when GSSEAP_TRACE is set
Sam Hartman [Wed, 22 Oct 2014 18:18:09 +0000 (14:18 -0400)]
Mech_eap: only output debugging when GSSEAP_TRACE is set

Previously we only output informational messages from libeap.
However, we also output them all the time to stdout, which is bad
because it disrupts the output of the program.  Now, only output
debugging when the GSSEAP_TRACE environment variable is set.  In that
case output all the libeap debugging, not just informational messages.

In addition, use secure_getenv if it is available to avoid introducing yet more issues if run in a raised privilege situation.

9 years agoDistribute extra files 0.9.2
Sam Hartman [Tue, 16 Sep 2014 11:05:49 +0000 (07:05 -0400)]
Distribute extra files

9 years agoVersion 0.9.2
Sam Hartman [Mon, 15 Sep 2014 19:03:57 +0000 (15:03 -0400)]
Version 0.9.2

9 years agoOnly permit ttls
Sam Hartman [Mon, 15 Sep 2014 19:02:41 +0000 (19:02 +0000)]
Only permit ttls

9 years agoInclude legal notices in distribution
Sam Hartman [Mon, 15 Sep 2014 17:46:01 +0000 (13:46 -0400)]
Include legal notices in distribution

9 years agofix typo
Sam Hartman [Thu, 31 Jul 2014 18:15:42 +0000 (14:15 -0400)]
fix typo

9 years agoRegister new RADIUS attributes
Sam Hartman [Thu, 31 Jul 2014 14:38:14 +0000 (10:38 -0400)]
Register new RADIUS attributes

9 years agoVersion 0.9.1
Sam Hartman [Wed, 30 Jul 2014 22:02:37 +0000 (18:02 -0400)]
Version 0.9.1

9 years agoTreat caCertificate as base64-encoded DER rather than PEM
Kevin Wasserman [Thu, 12 Jun 2014 15:09:55 +0000 (11:09 -0400)]
Treat caCertificate as base64-encoded DER rather than PEM

Openssl's pem parser is very picky and requires newlines.
Moonshot-webp eats newlines from the raw xml, requiring
hand-placed '&#10;' for successful parsing, which is
undersirable. So instead use mech_eap's base64Decode() to
convert caCertificate to DER.

9 years agoAvoid double-free of bio. Better error code for ca cert parsing failure.
Kevin Wasserman [Tue, 10 Jun 2014 22:11:59 +0000 (18:11 -0400)]
Avoid double-free of bio. Better error code for ca cert parsing failure.

9 years agoCorrectly handle "ca-cert" in peerGetConfigBlob
Kevin Wasserman [Tue, 10 Jun 2014 22:05:49 +0000 (18:05 -0400)]
Correctly handle "ca-cert" in peerGetConfigBlob

9 years agoTreat caCertificate as pem contents rather than pem filename
Kevin Wasserman [Fri, 6 Jun 2014 12:11:03 +0000 (08:11 -0400)]
Treat caCertificate as pem contents rather than pem filename

10 years agotake length of display_value, not value
Luke Howard [Mon, 2 Dec 2013 06:10:56 +0000 (17:10 +1100)]
take length of display_value, not value

10 years agogssHeaderLength redundantly initialized
Luke Howard [Mon, 2 Dec 2013 06:10:07 +0000 (17:10 +1100)]
gssHeaderLength redundantly initialized

10 years agoassert name non-NULL before dereferencing
Luke Howard [Mon, 2 Dec 2013 06:09:43 +0000 (17:09 +1100)]
assert name non-NULL before dereferencing

10 years agogss_trailerlen = 0 not used
Luke Howard [Mon, 2 Dec 2013 06:09:24 +0000 (17:09 +1100)]
gss_trailerlen = 0 not used

10 years agozeroAndReleasePassword must be called with non-NULL buffer
Luke Howard [Mon, 2 Dec 2013 06:09:03 +0000 (17:09 +1100)]
zeroAndReleasePassword must be called with non-NULL buffer

10 years agodon't set major = GSS_S_FAILURE twice
Luke Howard [Mon, 2 Dec 2013 06:07:19 +0000 (17:07 +1100)]
don't set major = GSS_S_FAILURE twice

10 years agodo not ignore sequenceCheck() return value
Luke Howard [Mon, 2 Dec 2013 06:04:51 +0000 (17:04 +1100)]
do not ignore sequenceCheck() return value

10 years agocheck gssEapRadiusAddAttr(REALM_NAME) return code
Luke Howard [Mon, 2 Dec 2013 06:03:50 +0000 (17:03 +1100)]
check gssEapRadiusAddAttr(REALM_NAME) return code

10 years agotok_type can never be -1
Luke Howard [Mon, 2 Dec 2013 06:03:36 +0000 (17:03 +1100)]
tok_type can never be -1

10 years agoBump release to turn on sha256
Sam Hartman [Wed, 27 Nov 2013 05:14:43 +0000 (00:14 -0500)]
Bump release to turn on sha256

10 years agolibeap: enable sha256
Sam Hartman [Wed, 20 Nov 2013 14:06:52 +0000 (09:06 -0500)]
libeap: enable sha256

10 years agoBump specfile version
Sam Hartman [Tue, 26 Nov 2013 13:07:10 +0000 (08:07 -0500)]
Bump specfile version

10 years agolibeap: ignore TLS errors before any TLS calls
Sam Hartman [Tue, 26 Nov 2013 13:05:37 +0000 (08:05 -0500)]
libeap: ignore TLS errors before any TLS calls

Ignore any errors that take place before the packet is started.

10 years agobump release
Sam Hartman [Mon, 25 Nov 2013 14:23:40 +0000 (09:23 -0500)]
bump release

10 years agoutil:name: 1 component principals can be services too
Sam Hartman [Thu, 21 Nov 2013 18:27:52 +0000 (13:27 -0500)]
util:name: 1 component principals can be services too

accept_sec_context.c: Only add hostname if we have one

10 years agospecfile: new release
Sam Hartman [Mon, 11 Nov 2013 19:52:11 +0000 (14:52 -0500)]
specfile: new release

10 years agoFix logic for parsing princ components (LP 1249863)
Kevin Wasserman [Mon, 11 Nov 2013 12:09:39 +0000 (07:09 -0500)]
Fix logic for parsing princ components (LP 1249863)

Avoid segfault when missing acceptor realm.

10 years agospecfile: %post handles /etc/gss/mech
Sam Hartman [Mon, 28 Oct 2013 18:16:59 +0000 (14:16 -0400)]
specfile: %post handles /etc/gss/mech

10 years agoTemporary: set mutual in flags token
Sam Hartman [Mon, 28 Oct 2013 17:31:54 +0000 (13:31 -0400)]
Temporary: set mutual in flags token

Force mutual flag on the context prior to sending the flags token until channel binding is better deployed.

10 years agosetting flags in verify MIC too late
Sam Hartman [Mon, 28 Oct 2013 17:21:25 +0000 (13:21 -0400)]
setting flags in verify MIC too late

We've been force setting mutual authentication in the verify mic SM callback.  We need to set mutual authentication prior to sending the flags token.

10 years agoUpdate for another libradsec
Sam Hartman [Fri, 11 Oct 2013 14:03:40 +0000 (10:03 -0400)]
Update for another libradsec

10 years agoForce rebuild for rpm to pick up libmoonshot1
Sam Hartman [Fri, 11 Oct 2013 12:41:32 +0000 (08:41 -0400)]
Force rebuild for rpm to pick up libmoonshot1

10 years agonew release
Sam Hartman [Thu, 10 Oct 2013 16:17:09 +0000 (12:17 -0400)]
new release

10 years agoDon't free parts of the principal in channel bindings (LP: #1237981 ...
Sam Hartman [Thu, 10 Oct 2013 14:13:48 +0000 (10:13 -0400)]
Don't free parts of the principal in channel bindings (LP: #1237981                                            )

10 years agomake dist cleanups
Sam Hartman [Wed, 9 Oct 2013 22:50:25 +0000 (23:50 +0100)]
make dist cleanups

10 years agoMake dist cleanup
Sam Hartman [Wed, 9 Oct 2013 20:15:19 +0000 (16:15 -0400)]
Make dist cleanup

10 years agoAccept NULL data in mech_eap cb response cb
Sam Hartman [Thu, 26 Sep 2013 15:39:16 +0000 (11:39 -0400)]
Accept NULL data in mech_eap cb response cb

10 years agochbind: Always call response callback
Sam Hartman [Thu, 26 Sep 2013 15:34:18 +0000 (11:34 -0400)]
chbind: Always call response callback

Previously the response callback was only called if there was data for
the namespace that is registered.  Now, call the callback whenever any
channel binding response is received.  This permits callbacks to get
failure responses with no attributes.

10 years agoMerge remote-tracking branch 'origin/eap-tls'
Sam Hartman [Fri, 20 Sep 2013 17:04:12 +0000 (13:04 -0400)]
Merge remote-tracking branch 'origin/eap-tls'

The eap-tls branch includes build dependencies on openssl which we
need for the sha2 hash support in IDP certs.  The eap-tls changes are
not widely exposed, but to the extent they are present are harmless.

Conflicts:
libeap/Makefile.am
mech_eap/Makefile.am
mech_eap/gssapiP_eap.h
mech_eap/init_sec_context.c

10 years agoUse service spicifics utility functions correctly
Sam Hartman [Fri, 20 Sep 2013 01:39:11 +0000 (21:39 -0400)]
Use service spicifics utility functions correctly

10 years agoremove extranious declaration
Sam Hartman [Fri, 20 Sep 2013 01:34:36 +0000 (21:34 -0400)]
remove extranious declaration

10 years agotemporary: force mutual
Sam Hartman [Thu, 19 Sep 2013 19:31:19 +0000 (15:31 -0400)]
temporary: force mutual

Until channel bindings are more widely deployed force mutual
authentication even if channel binding fails.

10 years agoEAP Channel binding support
Sam Hartman [Fri, 13 Sep 2013 19:41:19 +0000 (15:41 -0400)]
EAP Channel binding support

Merge remote-tracking branch 'origin/eap-chbind'

Conflicts:
mech_eap/accept_sec_context.c
mech_eap/dictionary.ukerna
mech_eap/gsseap_err.et
mech_eap/util_radius.h

10 years agoupdate for another redhat build
Sam Hartman [Fri, 31 May 2013 13:35:01 +0000 (09:35 -0400)]
update for another redhat build

10 years agoUpdate RPM release to link against libmoonshot
Sam Hartman [Tue, 28 May 2013 19:06:58 +0000 (15:06 -0400)]
Update RPM release to link against libmoonshot

10 years agoIncrease version for redhat because of new OID and IETF changes; this should have...
Sam Hartman [Wed, 8 May 2013 11:58:28 +0000 (07:58 -0400)]
Increase version  for redhat because of new OID and IETF changes; this should have been done back in May

10 years agoUpdate build deps for shibboleth
Sam Hartman [Tue, 30 Apr 2013 19:55:05 +0000 (15:55 -0400)]
Update build deps for shibboleth

10 years agoSupport curl-openssl-devel from shibboleth in RH spec files
Sam Hartman [Mon, 29 Apr 2013 20:26:07 +0000 (16:26 -0400)]
Support curl-openssl-devel from shibboleth in RH spec files

10 years agoUpdate spec for mech_eap
Sam hartman [Fri, 26 Apr 2013 21:26:29 +0000 (22:26 +0100)]
Update spec for mech_eap

11 years agofix build without OpenSAML
Luke Howard [Thu, 18 Apr 2013 22:55:24 +0000 (18:55 -0400)]
fix build without OpenSAML

11 years agoReindent
Luke Howard [Thu, 18 Apr 2013 22:45:10 +0000 (18:45 -0400)]
Reindent

11 years agoReindent
Luke Howard [Thu, 18 Apr 2013 22:41:59 +0000 (18:41 -0400)]
Reindent

11 years agotextual identities to UI
Sam Hartman [Thu, 4 Apr 2013 16:25:17 +0000 (12:25 -0400)]
textual identities to UI

The call to moonshot_get_identity included exported name tokens; the
interface expected C strings. Use gssEapDisplayName instead.

11 years agoClarify where else comes from for code clarity
Sam Hartman [Thu, 20 Sep 2012 00:26:58 +0000 (20:26 -0400)]
Clarify where else comes from for code clarity

11 years agoChbind cleanups eap-chbind
Luke Howard [Tue, 2 Apr 2013 05:48:02 +0000 (16:48 +1100)]
Chbind cleanups

* indentation
* don't use non-booleans as truth values
* consistent cleanup handling
* improved variable names

11 years agottls: defer METHOD_DONE if cb pending
Sam Hartman [Tue, 26 Mar 2013 00:25:22 +0000 (20:25 -0400)]
ttls: defer METHOD_DONE if cb pending

Allow a round trip including CB response.

11 years agottls: chbind_hdr is packed
Sam Hartman [Mon, 25 Mar 2013 20:19:36 +0000 (16:19 -0400)]
ttls: chbind_hdr is packed

11 years agolibeap: Use AM_CFLAGS not CFLAGS
Sam Hartman [Fri, 22 Mar 2013 19:39:43 +0000 (15:39 -0400)]
libeap: Use AM_CFLAGS not CFLAGS

11 years agolibeap: ttls: encapsulate using RADIUS VSA
Sam Hartman [Fri, 22 Mar 2013 18:01:23 +0000 (14:01 -0400)]
libeap: ttls: encapsulate using RADIUS VSA

It turns out that older version of FreeRADIUS will fail if they
receive a diameter VSA not in their dictionary.  A RADIUS VSA is fine
though.  This does not comply with the TTLS spec, but is the best we
can do in terms of interoperability, so do that.

11 years agolibeap: use attribute 135 not 134 for ttls chbind
Sam Hartman [Fri, 22 Mar 2013 17:13:28 +0000 (13:13 -0400)]
libeap: use attribute 135 not 134 for ttls chbind

11 years agochbind: use IETF attributes
Sam hartman [Tue, 19 Mar 2013 18:04:27 +0000 (14:04 -0400)]
chbind: use IETF attributes

Use non-VSA IETF attributes for channel binding. Also, permit more
attributes in response than request.

11 years agoSet GSS_C_MUTUAL_FLAG only on successful channel binding.
Kevin Wasserman [Fri, 17 Feb 2012 19:30:56 +0000 (14:30 -0500)]
Set GSS_C_MUTUAL_FLAG only on successful channel binding.

Previously, GSS_C_MUTUAL_FLAG was always set in the initiator context;
CTX_FLAG_EAP_CHBIND_ACCEPT was also set on successful channel binding.
Then GSS_C_MUTUAL_FLAG was properly specified in the return flags to
gssEapInitSecContext() depending on whether CTX_FLAG_EAP_CHBIND was set,
but eapGssSmInitGssFlags() was improperly sending GSS_C_MUTUAL_FLAG to
the acceptor even when no channel binding had occured.

11 years agoFix bug in eap_ttls_avp_encapsulate() when >248 bytes are encapsulated.
Kevin Wasserman [Wed, 15 Feb 2012 20:22:26 +0000 (15:22 -0500)]
Fix bug in eap_ttls_avp_encapsulate() when >248 bytes are encapsulated.

src pointer wasn't being advanced, so the first 248 bytes were duplicated
in place of the remainder of the message.

11 years agoEap channel bindings cleanup
Kevin Wasserman [Fri, 17 Feb 2012 20:09:28 +0000 (15:09 -0500)]
Eap channel bindings cleanup

Simplify radius buffer construction and parse service-specifics correctly.

11 years agoSimplify and document radius_utils.c and radius_utils.h
Kevin Wasserman [Fri, 10 Feb 2012 16:51:12 +0000 (11:51 -0500)]
Simplify and document radius_utils.c and radius_utils.h

11 years agokrb5_free_unparsed_name deprecated by Heimdal
Luke Howard [Thu, 13 Dec 2012 19:14:15 +0000 (20:14 +0100)]
krb5_free_unparsed_name deprecated by Heimdal

use krb5_xfree

11 years agokrb5_free_data_contents deprecated by Heimdal
Luke Howard [Thu, 13 Dec 2012 19:09:42 +0000 (20:09 +0100)]
krb5_free_data_contents deprecated by Heimdal

Use krb5_data_free instead

11 years agoindentation fix
Luke Howard [Thu, 13 Dec 2012 02:27:39 +0000 (13:27 +1100)]
indentation fix

11 years agoReturn WRONG_ACCEPTOR_NAME
Sam Hartman [Fri, 16 Nov 2012 02:38:27 +0000 (21:38 -0500)]
Return WRONG_ACCEPTOR_NAME

Create a new error for incorrect acceptor name received from acceptor
to aid in debugging.

11 years agoallow empty acceptor names
Luke Howard [Tue, 13 Nov 2012 05:25:20 +0000 (16:25 +1100)]
allow empty acceptor names

11 years agoindentation fix
Luke Howard [Wed, 26 Sep 2012 07:25:22 +0000 (17:25 +1000)]
indentation fix

11 years agoIgnore empty realms comparing acceptor name hint
Luke Howard [Fri, 21 Sep 2012 19:34:11 +0000 (05:34 +1000)]
Ignore empty realms comparing acceptor name hint

Conflicts:

mech_eap/util_name.c

11 years agoCall gssEapReleaseName not gss_release_name
Luke Howard [Wed, 19 Sep 2012 12:32:42 +0000 (22:32 +1000)]
Call gssEapReleaseName not gss_release_name

we have a mech name not a union name so use the local mechanism.

11 years agoindentation fix
Luke Howard [Wed, 19 Sep 2012 12:09:11 +0000 (22:09 +1000)]
indentation fix

11 years agofix indentation
Luke Howard [Wed, 19 Sep 2012 12:06:02 +0000 (22:06 +1000)]
fix indentation

11 years agoCall gssEapCompareName not gss_compare_name ietf-approved
Sam Hartman [Wed, 19 Sep 2012 00:45:25 +0000 (20:45 -0400)]
Call gssEapCompareName not gss_compare_name

we have a mech name not a union name so use the local mechanism.

11 years agoremove references to PADL mechanism OIDs
Luke Howard [Sun, 16 Sep 2012 04:11:31 +0000 (14:11 +1000)]
remove references to PADL mechanism OIDs

11 years agoneglected gss-eap-v1 arc in OID comment table
Luke Howard [Sun, 16 Sep 2012 04:07:44 +0000 (14:07 +1000)]
neglected gss-eap-v1 arc in OID comment table

11 years agoCoding style conform
Luke Howard [Sun, 16 Sep 2012 03:00:04 +0000 (13:00 +1000)]
Coding style conform

11 years agoUpdate to use IETF RADIUS attributes
Sam Hartman [Fri, 14 Sep 2012 17:18:08 +0000 (13:18 -0400)]
Update to use IETF RADIUS attributes

draft-ietf-abfab-gss-eap is approved and IANA has assigned
standardized RADIUS attributes, so these are no longer vendor
specific.

Update dictionary file to change the names of the existing attributes.