From: Ralph Boehme Date: Tue, 23 Apr 2019 14:47:45 +0000 (+0200) Subject: torture: add torture_assert_errno_equal_goto() X-Git-Tag: tdb-1.4.2~274 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=323f852147524b950bab4628a2824aa2273cb577;p=thirdparty%2Fsamba.git torture: add torture_assert_errno_equal_goto() Signed-off-by: Ralph Boehme Reviewed-by: Andrew Bartlett --- diff --git a/lib/torture/torture.h b/lib/torture/torture.h index a7f3f471b3a..9f55c164ac1 100644 --- a/lib/torture/torture.h +++ b/lib/torture/torture.h @@ -579,6 +579,18 @@ static inline void torture_dump_data_str_cb(const char *buf, void *private_data) } \ } while(0) +#define torture_assert_errno_equal_goto(torture_ctx,expected,ret,label,cmt)\ + do { int __expected = (expected); \ + if (errno != __expected) { \ + torture_result(torture_ctx, TORTURE_FAIL, \ + __location__": errno was %d (%s), expected %d: %s: %s", \ + errno, strerror(errno), __expected, \ + strerror(__expected), cmt); \ + ret = false; \ + goto label; \ + } \ + } while(0) + #define torture_assert_guid_equal(torture_ctx,got,expected,cmt)\ do {const struct GUID __got = (got), __expected = (expected); \ if (!GUID_equal(&__got, &__expected)) { \