static void test(void) { unsigned i; for (i = 0; i < sizeof TestCase / sizeof TestCase[0]; i++) { parse_frame pf = { PROT_SMB, T->smblen, T->smb, NULL }; parse_frame pf2 = { PROT_BROWSE, T->browselen, T->browse, NULL }; size_t smbbytes, browsebytes; /* print */ printf("#%2u:\n", i); printf(" SMB len=%lu ", T->smblen); dump_chars(T->smb, T->smblen, stdout); fputc('\n', stdout); printf(" BROWSE len=%lu ", T->browselen); dump_chars(T->browse, T->browselen, stdout); fputc('\n', stdout); /* parse ip and tcp in order */ smbbytes = smb_parse(T->smb, T->smblen, &pf, NULL); printf("smb parsed %u bytes: ", (unsigned)smbbytes); dump_chars((char *)T->smb, smbbytes, stdout); fputc('\n', stdout); browsebytes = parse(T->browse, T->browselen, &pf2, NULL); printf("browse parsed %u bytes: ", (unsigned)browsebytes); dump_chars((char *)T->browse, browsebytes, stdout); fputc('\n', stdout); smb_dump(&pf, 0, stdout); dump(&pf2, 0, stdout); assert(smbbytes == T->smblen); assert(browsebytes == T->browselen); T++; } }
static void test(void) { parse_frame f = { PROT_SMB, sizeof Sample - 1, Sample, NULL }; size_t bytes; printf("Sample(%u bytes):", (unsigned)f.len); dump_chars(Sample, f.len, stdout); fputc('\n', stdout); bytes = smb_parse(f.off, f.len, &f, NULL); printf("Consumed(%u bytes):", (unsigned)bytes); dump_chars(Sample, bytes, stdout); fputc('\n', stdout); dump(&f, 0, stdout); }
static void test(void) { unsigned i; for (i = 0; i < sizeof TestCase / sizeof TestCase[0]; i++) { parse_frame f = { PROT_SMB, T->len, T->txt, NULL }; size_t bytes; printf("Sample(%u bytes):", (unsigned)f.len); dump_chars(f.off, f.len, stdout); fputc('\n', stdout); bytes = smb_parse(f.off, f.len, &f, NULL); printf("Consumed(%u bytes):", (unsigned)bytes); dump_chars(f.off, bytes, stdout); fputc('\n', stdout); smb_dump(&f, 0, stdout); } }