do not include length field in non-fragmented EAP-PEAP packets
This commit is contained in:
@@ -152,6 +152,7 @@ static eap_peap_t *eap_peap_create(private_eap_peap_t * this,
|
||||
{
|
||||
size_t frag_size;
|
||||
int max_msg_count;
|
||||
bool include_length;
|
||||
tls_t *tls;
|
||||
|
||||
if (is_server && !lib->settings->get_bool(lib->settings,
|
||||
@@ -163,8 +164,11 @@ static eap_peap_t *eap_peap_create(private_eap_peap_t * this,
|
||||
"charon.plugins.eap-peap.fragment_size", MAX_FRAGMENT_LEN);
|
||||
max_msg_count = lib->settings->get_int(lib->settings,
|
||||
"charon.plugins.eap-peap.max_message_count", MAX_MESSAGE_COUNT);
|
||||
tls = tls_create(is_server, server, peer, TLS_PURPOSE_EAP_PEAP, application);
|
||||
this->tls_eap = tls_eap_create(EAP_PEAP, tls, frag_size, max_msg_count);
|
||||
include_length = lib->settings->get_bool(lib->settings,
|
||||
"charon.plugins.eap-peap.include_length", FALSE);
|
||||
tls = tls_create(is_server, server, peer, TLS_PURPOSE_EAP_PEAP, application);
|
||||
this->tls_eap = tls_eap_create(EAP_PEAP, tls, frag_size, max_msg_count,
|
||||
include_length);
|
||||
if (!this->tls_eap)
|
||||
{
|
||||
application->destroy(application);
|
||||
|
||||
@@ -125,6 +125,7 @@ static eap_tls_t *eap_tls_create(identification_t *server,
|
||||
private_eap_tls_t *this;
|
||||
size_t frag_size;
|
||||
int max_msg_count;
|
||||
bool include_length;
|
||||
tls_t *tls;
|
||||
|
||||
INIT(this,
|
||||
@@ -146,8 +147,11 @@ static eap_tls_t *eap_tls_create(identification_t *server,
|
||||
"charon.plugins.eap-tls.fragment_size", MAX_FRAGMENT_LEN);
|
||||
max_msg_count = lib->settings->get_int(lib->settings,
|
||||
"charon.plugins.eap-tls.max_message_count", MAX_MESSAGE_COUNT);
|
||||
include_length = lib->settings->get_bool(lib->settings,
|
||||
"charon.plugins.eap-tls.include_length", TRUE);
|
||||
tls = tls_create(is_server, server, peer, TLS_PURPOSE_EAP_TLS, NULL);
|
||||
this->tls_eap = tls_eap_create(EAP_TLS, tls, frag_size, max_msg_count);
|
||||
this->tls_eap = tls_eap_create(EAP_TLS, tls, frag_size, max_msg_count,
|
||||
include_length);
|
||||
if (!this->tls_eap)
|
||||
{
|
||||
free(this);
|
||||
|
||||
@@ -126,6 +126,7 @@ static eap_tnc_t *eap_tnc_create(identification_t *server,
|
||||
private_eap_tnc_t *this;
|
||||
size_t frag_size;
|
||||
int max_msg_count;
|
||||
bool include_length;
|
||||
char* protocol;
|
||||
tnccs_type_t type;
|
||||
tnccs_t *tnccs;
|
||||
@@ -149,7 +150,9 @@ static eap_tnc_t *eap_tnc_create(identification_t *server,
|
||||
"charon.plugins.eap-tnc.fragment_size", MAX_FRAGMENT_LEN);
|
||||
max_msg_count = lib->settings->get_int(lib->settings,
|
||||
"charon.plugins.eap-tnc.max_message_count", MAX_MESSAGE_COUNT);
|
||||
protocol = lib->settings->get_str(lib->settings,
|
||||
include_length = lib->settings->get_bool(lib->settings,
|
||||
"charon.plugins.eap-tnc.include_length", TRUE);
|
||||
protocol = lib->settings->get_str(lib->settings,
|
||||
"charon.plugins.eap-tnc.protocol", "tnccs-1.1");
|
||||
if (strcaseeq(protocol, "tnccs-2.0"))
|
||||
{
|
||||
@@ -170,7 +173,8 @@ static eap_tnc_t *eap_tnc_create(identification_t *server,
|
||||
return NULL;
|
||||
}
|
||||
tnccs = charon->tnccs->create_instance(charon->tnccs, type, is_server);
|
||||
this->tls_eap = tls_eap_create(EAP_TNC, (tls_t*)tnccs, frag_size, max_msg_count);
|
||||
this->tls_eap = tls_eap_create(EAP_TNC, (tls_t*)tnccs, frag_size,
|
||||
max_msg_count, include_length);
|
||||
if (!this->tls_eap)
|
||||
{
|
||||
free(this);
|
||||
|
||||
@@ -128,6 +128,7 @@ static eap_ttls_t *eap_ttls_create(identification_t *server,
|
||||
private_eap_ttls_t *this;
|
||||
size_t frag_size;
|
||||
int max_msg_count;
|
||||
bool include_length;
|
||||
tls_t *tls;
|
||||
|
||||
INIT(this,
|
||||
@@ -153,8 +154,11 @@ static eap_ttls_t *eap_ttls_create(identification_t *server,
|
||||
"charon.plugins.eap-ttls.fragment_size", MAX_FRAGMENT_LEN);
|
||||
max_msg_count = lib->settings->get_int(lib->settings,
|
||||
"charon.plugins.eap-ttls.max_message_count", MAX_MESSAGE_COUNT);
|
||||
tls = tls_create(is_server, server, peer, TLS_PURPOSE_EAP_TTLS, application);
|
||||
this->tls_eap = tls_eap_create(EAP_TTLS, tls, frag_size, max_msg_count);
|
||||
include_length = lib->settings->get_bool(lib->settings,
|
||||
"charon.plugins.eap-ttls.include_length", TRUE);
|
||||
tls = tls_create(is_server, server, peer, TLS_PURPOSE_EAP_TTLS, application);
|
||||
this->tls_eap = tls_eap_create(EAP_TTLS, tls, frag_size, max_msg_count,
|
||||
include_length);
|
||||
if (!this->tls_eap)
|
||||
{
|
||||
application->destroy(application);
|
||||
|
||||
Reference in New Issue
Block a user