/* a schannel test suite */ bool torture_rpc_schannel(struct torture_context *torture) { bool ret = true; struct { uint16_t acct_flags; uint32_t dcerpc_flags; } tests[] = { { ACB_WSTRUST, DCERPC_SCHANNEL | DCERPC_SIGN}, { ACB_WSTRUST, DCERPC_SCHANNEL | DCERPC_SEAL}, { ACB_WSTRUST, DCERPC_SCHANNEL | DCERPC_SIGN | DCERPC_SCHANNEL_128}, { ACB_WSTRUST, DCERPC_SCHANNEL | DCERPC_SEAL | DCERPC_SCHANNEL_128 }, { ACB_SVRTRUST, DCERPC_SCHANNEL | DCERPC_SIGN }, { ACB_SVRTRUST, DCERPC_SCHANNEL | DCERPC_SEAL }, { ACB_SVRTRUST, DCERPC_SCHANNEL | DCERPC_SIGN | DCERPC_SCHANNEL_128 }, { ACB_SVRTRUST, DCERPC_SCHANNEL | DCERPC_SEAL | DCERPC_SCHANNEL_128 } }; int i; for (i=0;i<ARRAY_SIZE(tests);i++) { if (!test_schannel(torture, tests[i].acct_flags, tests[i].dcerpc_flags, i)) { torture_comment(torture, "Failed with acct_flags=0x%x dcerpc_flags=0x%x \n", tests[i].acct_flags, tests[i].dcerpc_flags); ret = false; } } return ret; }
/* a schannel test suite */ BOOL torture_rpc_schannel(struct torture_context *torture) { TALLOC_CTX *mem_ctx; BOOL ret = True; struct { uint16_t acct_flags; uint32_t dcerpc_flags; } tests[] = { { ACB_WSTRUST, DCERPC_SCHANNEL | DCERPC_SIGN}, { ACB_WSTRUST, DCERPC_SCHANNEL | DCERPC_SEAL}, { ACB_WSTRUST, DCERPC_SCHANNEL | DCERPC_SIGN | DCERPC_SCHANNEL_128}, { ACB_WSTRUST, DCERPC_SCHANNEL | DCERPC_SEAL | DCERPC_SCHANNEL_128 }, { ACB_SVRTRUST, DCERPC_SCHANNEL | DCERPC_SIGN }, { ACB_SVRTRUST, DCERPC_SCHANNEL | DCERPC_SEAL }, { ACB_SVRTRUST, DCERPC_SCHANNEL | DCERPC_SIGN | DCERPC_SCHANNEL_128 }, { ACB_SVRTRUST, DCERPC_SCHANNEL | DCERPC_SEAL | DCERPC_SCHANNEL_128 } }; int i; mem_ctx = talloc_init("torture_rpc_schannel"); for (i=0;i<ARRAY_SIZE(tests);i++) { if (!test_schannel(mem_ctx, tests[i].acct_flags, tests[i].dcerpc_flags, i)) { printf("Failed with acct_flags=0x%x dcerpc_flags=0x%x \n", tests[i].acct_flags, tests[i].dcerpc_flags); ret = False; break; } } talloc_free(mem_ctx); return ret; }