Несколько примитивных мутаций одновременно? - PullRequest
0 голосов
/ 02 декабря 2018

Я хотел бы создать сообщение GSM PDU и добавить в него boofuzz, но я хочу изменить мульти-примитивы ad одновременно, а не только один для попытки.Например, давайте предположим, что у меня есть 2 примитива в блоке:

s_initialize(name="Request")
with s_block("Request-Line"):
    s_bit_field(value=0, width=8, full_range=True)
    s_bit_field(value=0, width=8, full_range=True)

Это сгенерирует все мутации для первого байтового поля, а затем второго:

0000, 0100, 0200, ... FF00, 0001, 0002, ... 00FF

Этот конкретный пример прост, потому что достаточно объединить примитив:

s_initialize(name="Request")
with s_block("Request-Line"):
    s_bit_field(value=0, width=16, full_range=True)

и получить 0000,0100, ... FFFF.

Но как этого добиться в более сложномкод?Например:

s_initialize(name="Request")
with s_block("Request-Line"):
    s_bit_field(value=0, width=8, full_range=True)
    s_bit_field(value=0, width=8, full_range=True)
    s_size(block_name="bar", name="foo", fuzzable=False, length=1)
    with s_block("bar"):
        s_random(value=0, min_length=0, max_length=140)

Возможно ли получить мутации от всех примитивов одновременно?

...