diff options
-rw-r--r-- | source4/lib/util/time.c | 8 | ||||
-rw-r--r-- | source4/lib/util/time.h | 5 | ||||
-rw-r--r-- | source4/samba4-knownfail | 2 | ||||
-rw-r--r-- | source4/torture/config.mk | 2 | ||||
-rw-r--r-- | source4/torture/util.c | 73 | ||||
-rw-r--r-- | source4/torture/util_smb.c | 39 |
6 files changed, 54 insertions, 75 deletions
diff --git a/source4/lib/util/time.c b/source4/lib/util/time.c index fc51498009..a181885806 100644 --- a/source4/lib/util/time.c +++ b/source4/lib/util/time.c @@ -612,3 +612,11 @@ _PUBLIC_ int get_time_zone(time_t t) return 0; return tm_diff(&tm_utc,tm); } + +/** + check if 2 NTTIMEs are equal. +*/ +bool nt_time_equal(NTTIME *t1, NTTIME *t2) +{ + return *t1 == *t2; +} diff --git a/source4/lib/util/time.h b/source4/lib/util/time.h index 557c5d4eab..1ab976ca78 100644 --- a/source4/lib/util/time.h +++ b/source4/lib/util/time.h @@ -224,6 +224,9 @@ _PUBLIC_ void nttime_to_timeval(struct timeval *tv, NTTIME t); */ _PUBLIC_ int get_time_zone(time_t t); - +/** + check if 2 NTTIMEs are equal. +*/ +bool nt_time_equal(NTTIME *t1, NTTIME *t2); #endif /* _SAMBA_TIME_H_ */ diff --git a/source4/samba4-knownfail b/source4/samba4-knownfail index b1b2140fec..cf5f97ca74 100644 --- a/source4/samba4-knownfail +++ b/source4/samba4-knownfail @@ -34,3 +34,5 @@ RPC-NETLOGON.*.GetTrustPasswords BASE-CHARSET.*.Testing partial surrogate .*NET-API-DELSHARE.* # DelShare isn't implemented yet RAP.*netservergetinfo +kinit with pkinit # fails with: salt type 3 not supported + diff --git a/source4/torture/config.mk b/source4/torture/config.mk index 0ee7873628..2666a1d0be 100644 --- a/source4/torture/config.mk +++ b/source4/torture/config.mk @@ -14,7 +14,7 @@ PUBLIC_DEPENDENCIES = \ LIBTALLOC [SUBSYSTEM::TORTURE_UTIL] -OBJ_FILES = util.o util_smb.o +OBJ_FILES = util_smb.o PRIVATE_DEPENDENCIES = LIBCLI_RAW PUBLIC_PROTO_HEADER = util.h PUBLIC_DEPENDENCIES = POPT_CREDENTIALS diff --git a/source4/torture/util.c b/source4/torture/util.c deleted file mode 100644 index 0e9dda42fa..0000000000 --- a/source4/torture/util.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - Unix SMB/CIFS implementation. - SMB torture tester utility functions - Copyright (C) Jelmer Vernooij 2006 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include "includes.h" -#include "system/filesys.h" -#include "system/wait.h" -#include "torture/torture.h" -#include "libcli/raw/interfaces.h" -#include "libcli/raw/libcliraw.h" - -/** - check if 2 NTTIMEs are equal. -*/ -bool nt_time_equal(NTTIME *t1, NTTIME *t2) -{ - return *t1 == *t2; -} - -NTSTATUS torture_second_tcon(TALLOC_CTX *mem_ctx, - struct smbcli_session *session, - const char *sharename, - struct smbcli_tree **res) -{ - union smb_tcon tcon; - struct smbcli_tree *result; - TALLOC_CTX *tmp_ctx; - NTSTATUS status; - - if ((tmp_ctx = talloc_new(mem_ctx)) == NULL) { - return NT_STATUS_NO_MEMORY; - } - - result = smbcli_tree_init(session, tmp_ctx, false); - if (result == NULL) { - talloc_free(tmp_ctx); - return NT_STATUS_NO_MEMORY; - } - - tcon.generic.level = RAW_TCON_TCONX; - tcon.tconx.in.flags = 0; - - /* Ignore share mode security here */ - tcon.tconx.in.password = data_blob(NULL, 0); - tcon.tconx.in.path = sharename; - tcon.tconx.in.device = "?????"; - - status = smb_raw_tcon(result, tmp_ctx, &tcon); - if (!NT_STATUS_IS_OK(status)) { - talloc_free(tmp_ctx); - return status; - } - - result->tid = tcon.tconx.out.tid; - *res = talloc_steal(mem_ctx, result); - talloc_free(tmp_ctx); - return NT_STATUS_OK; -} diff --git a/source4/torture/util_smb.c b/source4/torture/util_smb.c index de7303bac8..ddf7b85c63 100644 --- a/source4/torture/util_smb.c +++ b/source4/torture/util_smb.c @@ -863,3 +863,42 @@ _PUBLIC_ struct torture_test *torture_suite_add_1smb_test( } +NTSTATUS torture_second_tcon(TALLOC_CTX *mem_ctx, + struct smbcli_session *session, + const char *sharename, + struct smbcli_tree **res) +{ + union smb_tcon tcon; + struct smbcli_tree *result; + TALLOC_CTX *tmp_ctx; + NTSTATUS status; + + if ((tmp_ctx = talloc_new(mem_ctx)) == NULL) { + return NT_STATUS_NO_MEMORY; + } + + result = smbcli_tree_init(session, tmp_ctx, false); + if (result == NULL) { + talloc_free(tmp_ctx); + return NT_STATUS_NO_MEMORY; + } + + tcon.generic.level = RAW_TCON_TCONX; + tcon.tconx.in.flags = 0; + + /* Ignore share mode security here */ + tcon.tconx.in.password = data_blob(NULL, 0); + tcon.tconx.in.path = sharename; + tcon.tconx.in.device = "?????"; + + status = smb_raw_tcon(result, tmp_ctx, &tcon); + if (!NT_STATUS_IS_OK(status)) { + talloc_free(tmp_ctx); + return status; + } + + result->tid = tcon.tconx.out.tid; + *res = talloc_steal(mem_ctx, result); + talloc_free(tmp_ctx); + return NT_STATUS_OK; +} |