982 Commits

Author SHA1 Message Date
3fa48c3650 MSIBuild: Bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
c40f71462f ui_context: Merge with ui_context_tls_tunnel
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
bef455e5a6 method_defrag: Check minimum send packet size and revise the calculation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
737f51b815 method_tls_tunnel: Cleanup
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
7706e54294 method_tls_tunnel: Revise inner response packet generation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
d2a0c034c1 method_tls_tunnel: Declare authentication success according to EAP
It is usually the outer EAP-Success/Failure message that confirm the
authentication is gracefully over.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
1290d83b9d method_eapmsg: Let inner method handle EAP-Identity packets
With EapHost inner method, this is a must.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
b2edd74270 Introduce localization catalog domain name
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
0a280975fb Rename method_ttls => method_tls_tunnel to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
1e9e5a99c3 peer_ttls: Split to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
41c2be77f5 Make EAP method logging dynamic
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
4331de8605 wxTTLSConfigPanel: Split to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
bacd4fd8d8 Rename wxTTLSConfigPanel and move upstream
wxTTLSConfigPanel is about anonymizing inner identity and was renamed to
wxEAPIdentityConfigPanel and moved upstream to make reusable.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
18184a2762 peer_ui: Move config_xml2blob and config_blob2xml upstream
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
fb8ca2de24 Rename ui_context_ttls => ui_context_tls_tunnel to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
248e15641a config_method_ttls: Split to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
a943a14d0f Rename credentials_ttls => credentials_tls_tunnel to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:27 +01:00
04e6b7064f EapHost: Enable inner methods
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
3e04ca5181 EapHost: Fix EapHostPeerGetSendPacket() call
The packet buffer returned by EapHostPeerGetSendPacket() shall not be
freed.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
017766cb29 EapHost: Disambiguate from native EAP methods
When eap::config_method_eaphost::get_method_id() returns EAP-MSCHAPv2,
XML-to-BLOB gets confused and picks native EAP-MSCHAPv2 implementation.
Therefore, it was updated to always return unknown EAP type. Outer
method does not need to know the exact method implemented by EapHost
inner method.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
213042339b EapHost: Do not reference the Eappprxy.lib when not used
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
4da7785490 method_eap: Refactor
Instead of delayed response packet generation, the
method_eap::process_request_packet() prepares the response packet. This
eliminates the state machine.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
7caa4b12a6 method_eap: tolerate empty request packets
TLS methods call process_request_packet(NULL, 0) to check on the inner
method for the payload to piggyback on the final handshake response.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
2282a2c45f Explicitly check buffer length before touching it and unify exception
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
9d0e261bbe method_eap: Add EAP Success/Failure support
Although, EapHost takes care for EAP Success and Failure packets for us,
it does so for the outer-most method only. When using EAP inside a TLS
tunnel, we are responsible for EAP Success and Failure packets ourselves.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
e5e5f1c63e method_eap: Support EAP identity exchange
Although, EapHost takes care for EAP identity exchange for us, it does
so for the outer-most method only. When using EAP inside a TLS tunnel,
we are responsible for EAP identity exchange ourselves.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:52 +01:00
1c295360fc Double link inner-outer methods
This allows inner methods to access method_defrag to get negotiated
EAP-TTLS/PEAP protocol version.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:00 +01:00
0daa0579fe method_defrag: Merge EAP response/request flags
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:00 +01:00
b908ff3aa9 method_defrag: Add support for version negotiation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:00 +01:00
4af1bdc935 method_defrag: Simplify data length calculation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
a18fb7826c MSCHAPv2: Adopt authentication success from EAP
It is usually the outer EAP-Success/Failure message that confirm the
authentication is gracefully over.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
d8cc9636b5 MSCHAPv2: Set keying material the proper way
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
f4e8ba88ae Omit "B" from reported sizes
There should be a space between the number and a unit. Since everything
is always reported in bytes, there is no need to have a unit.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
9e9648c924 Make modules and methods non-copyable & non-movable
Modules and methods are never duplicated or moved in a memory. Moving
constructors and operators are dead code.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
a75008891b Add ECDHEPHEM and NULL cipher friendly names
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
72398339d3 Update PEAP name
It's PEAP, not EAP-PEAP.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
6addc49df2 wxInitializerPeer: Move upstream and make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
c4fc8d184a config_method_with_cred: Move anonymous identity upstream
This might break BLOB backward compatibility.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
a2a4d75745 method: Cleanup get_result()
fIsSuccess is already set to TRUE by module::get_result().

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
b3291ff8b1 Remove excessive UTF-8 BOM marker
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
5e99c8e1c7 Makefile: Parameterize platform and language component GUIDs
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
14e48f9c8a Parameterize EAP module MSI building
Since this also changes GUIDs of some components, the "EAPTTLS" has been
changed to "EAP-TTLS" in filenames.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
dfa8115883 Simplify EAPMETHOD_PEER(_UI) constants to match other EAPMETHOD... ones
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
b49624fc28 Revise _CRT_SECURE_NO_WARNINGS coverage
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
08a67c561a Make EAP method StdAfx(_UI).h and RC files reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
d3760d33ca Makefile: Parameterize event provider GUID
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
8b66c7ad8d Parameterize EAP method author ID
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
6f4df3dfab Move reusable parts of .vcxproj to .props
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
f05d3f8243 Make _UI suffix consistent
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
1cc7b1a3a0 Simplify .vcxproj and .props
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00