From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp61.i.mail.ru (smtp61.i.mail.ru [217.69.128.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 9D6F2469719 for ; Sun, 11 Oct 2020 18:42:57 +0300 (MSK) References: <65256995c6b71c4ea357688e7f19e7e2d7ef2323.1602425022.git.tsafin@tarantool.org> From: Vladislav Shpilevoy Message-ID: <9e8a9db4-77db-75ae-72a2-a0d3cacc5ba9@tarantool.org> Date: Sun, 11 Oct 2020 17:42:55 +0200 MIME-Version: 1.0 In-Reply-To: <65256995c6b71c4ea357688e7f19e7e2d7ef2323.1602425022.git.tsafin@tarantool.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [Tarantool-patches] [PATCH 2.X v2.1 1/4] module api: export box_tuple_validate List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Timur Safin , alexander.turenko@tarantool.org Cc: tarantool-patches@dev.tarantool.org Hi! Thanks for the patch! On 11.10.2020 16:39, Timur Safin wrote: > For external merger we need means to validate tuple data, > thus exporting `box_tuple_validate` which is wrapper around > `tuple_validate_raw` without revealing access to tuple > internals. > > Part of #5384 > --- > src/box/tuple.c | 6 ++++++ > src/box/tuple.h | 11 +++++++++++ > src/exports.h | 1 + > 3 files changed, 18 insertions(+) > > diff --git a/src/box/tuple.c b/src/box/tuple.c > index f3965476e..ddf41567c 100644 > --- a/src/box/tuple.c > +++ b/src/box/tuple.c > @@ -748,6 +748,12 @@ box_tuple_new(box_tuple_format_t *format, const char *data, const char *end) > return tuple_bless(ret); > } > > +int > +box_tuple_validate(box_tuple_format_t *format, box_tuple_t *tuple) If a function is a method of an object, it should have the object name in prefix, and have the object pointer in the first argument. For example, box_tuple_to_buf(), box_tuple_field(), box_tuple_update(), box_tuple_upsert(). So here the tuple should be the first argument.