[LTP] [PATCH v3 1/7] Add more safe macros for mqueue API
Richard Palethorpe
rpalethorpe@suse.de
Tue Nov 1 12:36:58 CET 2022
Hello,
Merged, thanks!
Andrea Cervesato via ltp <ltp@lists.linux.it> writes:
> Added SAFE_MQ_UNLINK and SAFE_MQ_CLOSE in tst_safe_posix_ipc.h
>
> Signed-off-by: Andrea Cervesato <andrea.cervesato@suse.com>
> ---
> include/tst_safe_posix_ipc.h | 45 ++++++++++++++++++++++++++++++++++++
> 1 file changed, 45 insertions(+)
>
> diff --git a/include/tst_safe_posix_ipc.h b/include/tst_safe_posix_ipc.h
> index b60c12c9e..5bfef03a9 100644
> --- a/include/tst_safe_posix_ipc.h
> +++ b/include/tst_safe_posix_ipc.h
> @@ -12,6 +12,12 @@
> #define SAFE_MQ_OPEN(pathname, oflags, ...) \
> safe_mq_open(__FILE__, __LINE__, (pathname), (oflags), ##__VA_ARGS__)
>
> +#define SAFE_MQ_CLOSE(__mqdes) \
> + safe_mq_close(__FILE__, __LINE__, (__mqdes))
> +
> +#define SAFE_MQ_UNLINK(name) \
> + safe_mq_unlink(__FILE__, __LINE__, (name))
> +
> static inline int safe_mq_open(const char *file, const int lineno,
> const char *pathname, int oflags, ...)
> {
> @@ -41,6 +47,45 @@ static inline int safe_mq_open(const char *file, const int lineno,
> tst_brk_(file, lineno, TBROK | TERRNO,
> "mq_open(%s,%d,%04o,%p) failed", pathname, oflags,
> mode, attr);
> + } else if (rval < 0) {
> + tst_brk_(file, lineno, TBROK | TERRNO,
> + "Invalid mq_open(%s) return value %d", pathname, rval);
> + }
> +
> + return rval;
> +}
> +
> +static inline int safe_mq_close(const char *file, const int lineno,
> + mqd_t __mqdes)
> +{
> + int rval;
> +
> + rval = mq_close(__mqdes);
> +
> + if (rval == -1) {
> + tst_brk_(file, lineno, TBROK | TERRNO,
> + "mq_close(%d) failed", __mqdes);
> + } else if (rval < 0) {
> + tst_brk_(file, lineno, TBROK | TERRNO,
> + "Invalid mq_close(%d) return value %d", __mqdes, rval);
> + }
> +
> + return rval;
> +}
> +
> +static inline int safe_mq_unlink(const char *file, const int lineno,
> + const char* name)
> +{
> + int rval;
> +
> + rval = mq_unlink(name);
> +
> + if (rval == -1) {
> + tst_brk_(file, lineno, TBROK | TERRNO,
> + "mq_unlink(%s) failed", name);
> + } else if (rval < 0) {
> + tst_brk_(file, lineno, TBROK | TERRNO,
> + "Invalid mq_unlink(%s) return value %d", name, rval);
> }
>
> return rval;
> --
> 2.35.3
--
Thank you,
Richard.
More information about the ltp
mailing list