added field type IKE_SPI
This commit is contained in:
@@ -322,6 +322,10 @@ static status_t generate_u_int_type (private_generator_t *this,encoding_type_t i
|
|||||||
case ATTRIBUTE_TYPE:
|
case ATTRIBUTE_TYPE:
|
||||||
number_of_bits = 15;
|
number_of_bits = 15;
|
||||||
break;
|
break;
|
||||||
|
case IKE_SPI:
|
||||||
|
number_of_bits = 64;
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return FAILED;
|
return FAILED;
|
||||||
}
|
}
|
||||||
@@ -437,6 +441,14 @@ static status_t generate_u_int_type (private_generator_t *this,encoding_type_t i
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case IKE_SPI:
|
||||||
|
{
|
||||||
|
/* 64 bit are written as they come :-) */
|
||||||
|
this->write_bytes_to_buffer(this,(this->data_struct + offset),sizeof(u_int64_t));
|
||||||
|
this->logger->log_bytes(this->logger, RAW|MOST, " =>", (void*)(this->data_struct + offset), sizeof(u_int64_t));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
default:
|
default:
|
||||||
this->logger->log(this->logger, ERROR, "U_INT Type %s is not supported", mapping_find(encoding_type_m,int_type));
|
this->logger->log(this->logger, ERROR, "U_INT Type %s is not supported", mapping_find(encoding_type_m,int_type));
|
||||||
return FAILED;
|
return FAILED;
|
||||||
@@ -721,12 +733,13 @@ static status_t generate_payload (private_generator_t *this,payload_t *payload)
|
|||||||
i, mapping_find(encoding_type_m,rules[i].type));
|
i, mapping_find(encoding_type_m,rules[i].type));
|
||||||
switch (rules[i].type)
|
switch (rules[i].type)
|
||||||
{
|
{
|
||||||
/* all u int values and ATTRIBUTE_TYPE are generated in generate_u_int_type */
|
/* all u int values, IKE_SPI and ATTRIBUTE_TYPE are generated in generate_u_int_type */
|
||||||
case U_INT_4:
|
case U_INT_4:
|
||||||
case U_INT_8:
|
case U_INT_8:
|
||||||
case U_INT_16:
|
case U_INT_16:
|
||||||
case U_INT_32:
|
case U_INT_32:
|
||||||
case U_INT_64:
|
case U_INT_64:
|
||||||
|
case IKE_SPI:
|
||||||
case ATTRIBUTE_TYPE:
|
case ATTRIBUTE_TYPE:
|
||||||
{
|
{
|
||||||
status = this->generate_u_int_type(this,rules[i].type,rules[i].offset);
|
status = this->generate_u_int_type(this,rules[i].type,rules[i].offset);
|
||||||
|
|||||||
Reference in New Issue
Block a user