Message ID | 20220722120501.28670-2-andrea.cervesato@suse.com |
---|---|
State | Superseded |
Headers | show |
Series | Refactor mqns testing suite | expand |
Hi Andrea, > Added SAFE_MQ_UNLINK and SAFE_MQ_CLOSE in tst_safe_posix_ipc.h Reviewed-by: Petr Vorel <pvorel@suse.cz> Kind regards, Petr
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
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;
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(+)