DNP3PointList *points)
{
DNP3ObjectG1V1 *object = NULL;
- int bytes = (count / 8) + 1;
+ uint32_t bytes = (count / 8) + 1;
uint32_t prefix = 0;
- int point_index = start;
+ uint32_t point_index = start;
if (!DNP3ReadPrefix(buf, len, prefix_code, &prefix)) {
goto error;
}
- for (int i = 0; i < bytes; i++) {
+ for (uint32_t i = 0; i < bytes; i++) {
uint8_t octet;
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
DNP3PointList *points)
{
DNP3ObjectG3V1 *object = NULL;
- int bytes = (count / 8) + 1;
+ uint32_t bytes = (count / 8) + 1;
uint32_t prefix = 0;
- int point_index = start;
+ uint32_t point_index = start;
if (!DNP3ReadPrefix(buf, len, prefix_code, &prefix)) {
goto error;
}
- for (int i = 0; i < bytes; i++) {
+ for (uint32_t i = 0; i < bytes; i++) {
uint8_t octet;
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
DNP3PointList *points)
{
DNP3ObjectG10V1 *object = NULL;
- int bytes = (count / 8) + 1;
+ uint32_t bytes = (count / 8) + 1;
uint32_t prefix = 0;
- int point_index = start;
+ uint32_t point_index = start;
if (!DNP3ReadPrefix(buf, len, prefix_code, &prefix)) {
goto error;
}
- for (int i = 0; i < bytes; i++) {
+ for (uint32_t i = 0; i < bytes; i++) {
uint8_t octet;
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
DNP3PointList *points)
{
DNP3ObjectG12V3 *object = NULL;
- int bytes = (count / 8) + 1;
+ uint32_t bytes = (count / 8) + 1;
uint32_t prefix = 0;
- int point_index = start;
+ uint32_t point_index = start;
if (!DNP3ReadPrefix(buf, len, prefix_code, &prefix)) {
goto error;
}
- for (int i = 0; i < bytes; i++) {
+ for (uint32_t i = 0; i < bytes; i++) {
uint8_t octet;
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
DNP3PointList *points)
{
DNP3ObjectG80V1 *object = NULL;
- int bytes = (count / 8) + 1;
+ uint32_t bytes = (count / 8) + 1;
uint32_t prefix = 0;
- int point_index = start;
+ uint32_t point_index = start;
if (!DNP3ReadPrefix(buf, len, prefix_code, &prefix)) {
goto error;
}
- for (int i = 0; i < bytes; i++) {
+ for (uint32_t i = 0; i < bytes; i++) {
uint8_t octet;
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->data_objects != NULL) {
+ SCFree(object->data_objects);
+ }
SCFree(object);
}
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->challenge_data != NULL) {
+ SCFree(object->challenge_data);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->mac_value != NULL) {
+ SCFree(object->mac_value);
+ }
SCFree(object);
}
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->challenge_data != NULL) {
+ SCFree(object->challenge_data);
+ }
+ if (object->mac_value != NULL) {
+ SCFree(object->mac_value);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->wrapped_key_data != NULL) {
+ SCFree(object->wrapped_key_data);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->certificate != NULL) {
+ SCFree(object->certificate);
+ }
SCFree(object);
}
uint32_t point_index = start;
uint32_t offset;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->mac_value != NULL) {
+ SCFree(object->mac_value);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->user_public_key != NULL) {
+ SCFree(object->user_public_key);
+ }
+ if (object->certification_data != NULL) {
+ SCFree(object->certification_data);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->master_challenge_data != NULL) {
+ SCFree(object->master_challenge_data);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->challenge_data != NULL) {
+ SCFree(object->challenge_data);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->encrypted_update_key_data != NULL) {
+ SCFree(object->encrypted_update_key_data);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->digital_signature != NULL) {
+ SCFree(object->digital_signature);
+ }
SCFree(object);
}
goto error;
}
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
return 1;
error:
if (object != NULL) {
+ if (object->mac != NULL) {
+ SCFree(object->mac);
+ }
SCFree(object);
}
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));
uint32_t prefix = 0;
uint32_t point_index = start;
+ if (*len < count/8) {
+ goto error;
+ }
while (count--) {
object = SCCalloc(1, sizeof(*object));