Commit Graph

78 Commits

Author SHA1 Message Date
Simon Rozman
6077063599 The credentials are marked "invalid" at transition from handshake to application data phase only to prevent initial handshake problems from popping-up credential prompt when credentials have nothing to do with the connection failure. 2016-08-25 13:08:11 +02:00
Simon Rozman
d1c24efcf0 config_method_with_cred renamed to config_connection to describe it better 2016-08-24 11:39:37 +02:00
Simon Rozman
6835f5279c Certificate (TLS) credentials support custom identity now 2016-08-24 11:03:18 +02:00
Simon Rozman
5332b538aa Our own TLS merged back to master and compiles conditionally 2016-08-23 22:46:00 +02:00
Simon Rozman
9b997408a1 Switched to Schannel to do the TLS 2016-08-23 13:53:23 +02:00
Simon Rozman
df1d431bd0 - TLS revised (again)
- TLS Session resumption issues resolved
- Credential prompt has "Remember" checkbox initially selected when credentials originate from Windows Credential Manager
- Last authentication attempt failure notice is more general and no longer insinuate user credentials are the likely cause of the failure
- Additional log messages added
2016-08-17 11:50:34 +02:00
Simon Rozman
cabae26e0b Flags describing handshake messages received assembled in a boolean table of flags 2016-08-17 09:01:11 +02:00
Simon Rozman
e9839706b6 TLS clean-up 2016-08-16 16:44:19 +02:00
Simon Rozman
85d7c3d4ec Support for TLS 1.2 added 2016-08-16 00:47:47 +02:00
Simon Rozman
de802b7a28 Byte-enums redefined & code clean-up 2016-08-15 21:01:38 +02:00
Simon Rozman
d8ccf7cbc0 Credential management revised 2016-08-15 17:33:10 +02:00
Simon Rozman
e34d2ba275 Prefast declaration update 2016-08-15 15:10:42 +02:00
Simon Rozman
3d6849a523 Peer correctly returns providers configuration instead of method configuration in method_tls::get_result() 2016-08-15 14:13:14 +02:00
Simon Rozman
e807336e7b The TLS phase can be determined from flags alone, therefore m_phase member eliminated 2016-08-15 10:40:27 +02:00
Simon Rozman
95426cde7c Clean-up 2016-08-15 10:09:01 +02:00
Simon Rozman
92c62c53d7 16B PAP password padding added (RFC 5281) 2016-08-15 05:40:23 +02:00
Simon Rozman
99aa53726d - PPP authentication EAP response packet is correctly formed now
- MS-MPPE-Send-Key/MS-MPPE-Recv-Key sorted out
2016-08-14 21:04:19 +02:00
Simon Rozman
956ef9bd4e CryptGenRandom() return status check added 2016-08-14 16:22:59 +02:00
Simon Rozman
d1925a0704 method_tls::prf() simplified 2016-08-14 12:41:19 +02:00
Simon Rozman
a90a7722c7 PAP introduced 2016-08-13 18:56:37 +02:00
Simon Rozman
ae37c9aa6c TLS and TTLS distinction 2016-08-13 18:55:33 +02:00
Simon Rozman
3d54c84430 method_ttls is now descendant of method_tls 2016-08-13 08:48:24 +02:00
Simon Rozman
1306c958fc config_method_ttls is now descendant of config_method_tls 2016-08-13 08:48:01 +02:00
Simon Rozman
09924ea3d2 credentials_ttls is descendant of credentials_tls again 2016-08-13 08:36:10 +02:00
Simon Rozman
f7fdfb8dda EAP packet type check moved to Main.cpp 2016-08-13 08:09:13 +02:00
Simon Rozman
a8c306953a TLS work continues... 2016-08-11 15:13:50 +02:00
Simon Rozman
1bf51fda25 win_runtime_error moved to WinStd; eapxml functions return HRESULT now 2016-08-09 01:05:00 +02:00
Simon Rozman
b71e30f642 EAP_ERROR replaced with C++ exceptions for increased code readability 2016-08-08 22:59:17 +02:00
Simon Rozman
8f4c177d49 eap namespace clean-up 2016-08-08 10:13:34 +02:00
Simon Rozman
d199cb68bb Work continues...
- More event reporting added
- unsigned long and DWORD replaced with unsigned int for code readability and (possibly) portability
- Client hello message fixed
- SSL version reverted to TLS 1.0, will catch-up later if required
2016-08-07 12:15:45 +02:00
Simon Rozman
a0efb6742d EAP-TTLS work continues... 2016-08-06 16:27:15 +02:00
Simon Rozman
b39cc927d2 Session.h/cpp >> Method.h/cpp 2016-08-06 10:36:58 +02:00
Simon Rozman
faadb712fc Sessions are actually methods now 2016-08-06 10:28:15 +02:00
Simon Rozman
4114863a94 Duplicate error logging removed 2016-08-06 08:21:14 +02:00
Simon Rozman
afe5450b95 Peer (Main.cpp) no longer manipulates session directly. Session management moved to eap::peer. 2016-08-06 08:06:38 +02:00
Simon Rozman
ac606b7a2e config_providers renamed to config_provider_list to avoid confusion with config_provider 2016-08-06 07:06:48 +02:00
Simon Rozman
2aa4bce8cc eap::config::m_module reference again 2016-08-06 07:01:12 +02:00
Simon Rozman
b0323d894a Issues with pre-shared credentials after being moved to heap fixed 2016-08-05 16:28:21 +02:00
Simon Rozman
42459ff16a EAP events changed to use numerical EAP type 2016-08-05 16:15:08 +02:00
Simon Rozman
2711425677 Documentation update 2016-08-05 15:52:27 +02:00
Simon Rozman
54bb2050fa peer and peer_ui are no longer templates; method specific BLOB management moved from Main(_UI).cpp to modules. 2016-08-05 15:45:45 +02:00
Simon Rozman
437f5f91b8 eap::peer<> and eap::session<> redundant template argument removed 2016-08-05 13:45:18 +02:00
Simon Rozman
91dcc0bbbc peer_base eliminated 2016-08-05 13:40:54 +02:00
Simon Rozman
f4be571499 Pre-shared credentials moved to heap 2016-08-05 11:38:43 +02:00
Simon Rozman
460adb9858 m_module is now a pointer instead of reference 2016-08-05 11:23:59 +02:00
Simon Rozman
a9ecde86d9 TLS specific package communication moved from TTLS to TLS session 2016-08-05 11:01:30 +02:00
Simon Rozman
f2aa43913d EAP-TTLS session development continues... 2016-08-05 00:32:57 +02:00
Simon Rozman
a102b43a19 eap::type_t >> winstd::eap_type_t 2016-08-04 12:08:20 +02:00
Simon Rozman
22a87bf90d eap::session::get_response_packet() implemented 2016-08-04 10:07:03 +02:00
Simon Rozman
caf0352833 Packet processing methods made pure virtual in eap::session<>, stubs created in eap::session_ttls 2016-08-03 15:31:06 +02:00