WHATSNEW: Add major changes.
[Samba.git] / source4 / torture / drs / drs_init.c
blobb0aeb411da561a68a6a072eb376c19775dd5c855
1 /*
2 Unix SMB/CIFS implementation.
4 DRSUAPI utility functions to be used in torture tests
6 Copyright (C) Kamen Mazdrashki <kamen.mazdrashki@postpath.com> 2009
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>.
22 #include "includes.h"
23 #include "torture/smbtorture.h"
24 #include "torture/rpc/drsuapi.h"
25 #include "dsdb/samdb/samdb.h"
26 #include "torture/drs/proto.h"
28 /**
29 * DRSUAPI tests to be executed remotely
31 static struct torture_suite * torture_drs_rpc_suite(TALLOC_CTX *mem_ctx,
32 const char *suite_name)
34 struct torture_suite *suite = torture_suite_create(mem_ctx, suite_name);
36 torture_drs_rpc_dssync_tcase(suite);
37 torture_drs_rpc_dsintid_tcase(suite);
39 suite->description = talloc_strdup(suite,
40 "DRSUAPI RPC Tests Suite");
42 return suite;
45 /**
46 * DRSUAPI tests to be executed remotely
48 static struct torture_suite * torture_drs_unit_suite(TALLOC_CTX *mem_ctx,
49 const char *suite_name)
51 struct torture_suite *suite = torture_suite_create(mem_ctx, suite_name);
53 torture_drs_unit_prefixmap(suite);
54 torture_drs_unit_schemainfo(suite);
56 suite->description = talloc_strdup(suite,
57 "DRSUAPI Unit Tests Suite");
59 return suite;
62 /**
63 * DRSUAPI torture module initialization
65 NTSTATUS torture_drs_init(void)
67 struct torture_suite *suite;
68 TALLOC_CTX *mem_ctx = talloc_autofree_context();
70 /* register RPC related test cases */
71 suite = torture_drs_rpc_suite(mem_ctx, "drs.rpc");
72 if (!suite) return NT_STATUS_NO_MEMORY;
73 torture_register_suite(suite);
75 /* register DRS Unit test cases */
76 suite = torture_drs_unit_suite(mem_ctx, "drs.unit");
77 if (!suite) return NT_STATUS_NO_MEMORY;
78 torture_register_suite(suite);
80 return NT_STATUS_OK;