summaryrefslogtreecommitdiff
path: root/source4/torture/ndr
diff options
context:
space:
mode:
Diffstat (limited to 'source4/torture/ndr')
-rw-r--r--source4/torture/ndr/drsblobs.c42
1 files changed, 35 insertions, 7 deletions
diff --git a/source4/torture/ndr/drsblobs.c b/source4/torture/ndr/drsblobs.c
index 689762afeb..c1abce2bd6 100644
--- a/source4/torture/ndr/drsblobs.c
+++ b/source4/torture/ndr/drsblobs.c
@@ -59,13 +59,6 @@ static bool forest_trust_info_check_out(struct torture_context *tctx,
return true;
}
-static bool trust_domain_passwords_check_in(struct torture_context *tctx,
- struct trustDomainPasswords *r)
-{
- /* FIXME: fill in, once we have working and correct IDL - gd */
- return true;
-}
-
static const uint8_t trust_domain_passwords_in[] = {
0x34, 0x1f, 0x6e, 0xcd, 0x5f, 0x14, 0x99, 0xf9, 0xd8, 0x34, 0x9f, 0x1d,
0x1c, 0xcf, 0x1f, 0x02, 0xb8, 0x30, 0xcc, 0x77, 0x21, 0xc1, 0xf3, 0xe2,
@@ -122,6 +115,41 @@ static const uint8_t trust_domain_passwords_in[] = {
0x38, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00
};
+static bool trust_domain_passwords_check_in(struct torture_context *tctx,
+ struct trustDomainPasswords *r)
+{
+ /* torture_assert_mem_equal(tctx, r->confounder, trust_domain_passwords_in, 512, "confounder mismatch"); */
+
+ torture_assert_int_equal(tctx, r->outgoing.count, 1, "outgoing count mismatch");
+ torture_assert_int_equal(tctx, r->outgoing.current_offset, 0x0000000c, "outgoing current offset mismatch");
+ torture_assert_int_equal(tctx, r->outgoing.previous_offset, 0x00000038, "outgoing previous offset mismatch");
+
+ torture_assert_int_equal(tctx, r->outgoing.current.count, 1, "outgoing current count mismatch");
+ torture_assert_int_equal(tctx, r->outgoing.current.array[0].LastUpdateTime, 0xB6416B4C, "outgoing current last update time mismatch");
+ torture_assert_int_equal(tctx, r->outgoing.current.array[0].AuthType, TRUST_AUTH_TYPE_CLEAR, "outgoing current auth type mismatch");
+ torture_assert_int_equal(tctx, r->outgoing.current.array[0].AuthInfo.clear.size, 0x0000001c, "outgoing current auth info size mismatch");
+ /* torture_assert_mem_equal(tctx, r->outgoing.current.array[0].AuthInfo.clear.password, trust_domain_passwords_in+512+12+8+4+4, 0x0000001c, "outgoing current auth info password mismatch"); */
+
+ torture_assert_int_equal(tctx, r->outgoing.previous.count, 0, "outgoing previous count mismatch");
+
+ torture_assert_int_equal(tctx, r->incoming.count, 1, "incoming count mismatch");
+ torture_assert_int_equal(tctx, r->incoming.current_offset, 0x0000000c, "incoming current offset mismatch");
+ torture_assert_int_equal(tctx, r->incoming.previous_offset, 0x00000038, "incoming previous offset mismatch");
+
+ torture_assert_int_equal(tctx, r->incoming.current.count, 1, "incoming current count mismatch");
+ torture_assert_int_equal(tctx, r->incoming.current.array[0].LastUpdateTime, 0xB6416B4C, "incoming current last update time mismatch");
+ torture_assert_int_equal(tctx, r->incoming.current.array[0].AuthType, TRUST_AUTH_TYPE_CLEAR, "incoming current auth type mismatch");
+ torture_assert_int_equal(tctx, r->incoming.current.array[0].AuthInfo.clear.size, 0x0000001c, "incoming current auth info size mismatch");
+/* torture_assert_mem_equal(tctx, r->incoming.current.array[0].AuthInfo.clear.password, trust_domain_passwords_in+512+12+8+4+4+0x0000001c+12+8+4+4, 0x0000001c, "incoming current auth info password mismatch"); */
+
+ torture_assert_int_equal(tctx, r->incoming.previous.count, 0, "incoming previous count mismatch");
+
+ torture_assert_int_equal(tctx, r->outgoing_size, 0x00000038, "outgoing size mismatch");
+ torture_assert_int_equal(tctx, r->incoming_size, 0x00000038, "incoming size mismatch");
+
+ return true;
+}
+
struct torture_suite *ndr_drsblobs_suite(TALLOC_CTX *ctx)
{
struct torture_suite *suite = torture_suite_create(ctx, "drsblobs");