[rtems commit] psxtests: add POSIX API signature compliance tests for mqueue.h file (GCI 2018)
Joel Sherrill
joel at rtems.org
Wed Nov 28 16:59:30 UTC 2018
Module: rtems
Branch: master
Commit: 93ccf479e2621109b4711f0cd4568d2463ae6b68
Changeset: http://git.rtems.org/rtems/commit/?id=93ccf479e2621109b4711f0cd4568d2463ae6b68
Author: Himanshu40 <himanshuwindows8.1 at gmail.com>
Date: Wed Nov 28 13:52:34 2018 +0530
psxtests: add POSIX API signature compliance tests for mqueue.h file (GCI 2018)
---
testsuites/psxtests/Makefile.am | 12 ++++-
testsuites/psxtests/psxhdrs/mqueue/mq_close.c | 49 ++++++++++++++++++
testsuites/psxtests/psxhdrs/mqueue/mq_getattr.c | 49 ++++++++++++++++++
testsuites/psxtests/psxhdrs/mqueue/mq_notify.c | 52 +++++++++++++++++++
testsuites/psxtests/psxhdrs/mqueue/mq_open.c | 51 +++++++++++++++++++
testsuites/psxtests/psxhdrs/mqueue/mq_receive.c | 52 +++++++++++++++++++
testsuites/psxtests/psxhdrs/mqueue/mq_send.c | 53 ++++++++++++++++++++
testsuites/psxtests/psxhdrs/mqueue/mq_setattr.c | 50 +++++++++++++++++++
.../psxtests/psxhdrs/mqueue/mq_timedreceive.c | 57 +++++++++++++++++++++
testsuites/psxtests/psxhdrs/mqueue/mq_timedsend.c | 58 ++++++++++++++++++++++
testsuites/psxtests/psxhdrs/mqueue/mq_unlink.c | 39 +++++++++++++++
11 files changed, 521 insertions(+), 1 deletion(-)
diff --git a/testsuites/psxtests/Makefile.am b/testsuites/psxtests/Makefile.am
index bf1befd..2385ec8 100644
--- a/testsuites/psxtests/Makefile.am
+++ b/testsuites/psxtests/Makefile.am
@@ -1093,7 +1093,17 @@ lib_a_SOURCES = psxhdrs/devctl/posix_devctl.c \
psxhdrs/dirent/rewinddir.c \
psxhdrs/dirent/scandir.c \
psxhdrs/dirent/seekdir.c \
- psxhdrs/dirent/telldir.c
+ psxhdrs/dirent/telldir.c \
+ psxhdrs/mqueue/mq_open.c \
+ psxhdrs/mqueue/mq_close.c \
+ psxhdrs/mqueue/mq_getattr.c \
+ psxhdrs/mqueue/mq_setattr.c \
+ psxhdrs/mqueue/mq_notify.c \
+ psxhdrs/mqueue/mq_receive.c \
+ psxhdrs/mqueue/mq_send.c \
+ psxhdrs/mqueue/mq_timedreceive.c \
+ psxhdrs/mqueue/mq_timedsend.c \
+ psxhdrs/mqueue/mq_unlink.c
endif
rtems_tests_PROGRAMS = $(psx_tests)
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_close.c b/testsuites/psxtests/psxhdrs/mqueue/mq_close.c
new file mode 100644
index 0000000..02afecf
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_close.c
@@ -0,0 +1,49 @@
+/**
+ * @file
+ * @brief mq_close() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ const char *q_name;
+ int result;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ result = mq_close( mqdes );
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_getattr.c b/testsuites/psxtests/psxhdrs/mqueue/mq_getattr.c
new file mode 100644
index 0000000..092c6bf
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_getattr.c
@@ -0,0 +1,49 @@
+/**
+ * @file
+ * @brief mq_getattr() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ const char *q_name;
+ int result;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ result = mq_getattr( mqdes, &mqstat );
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_notify.c b/testsuites/psxtests/psxhdrs/mqueue/mq_notify.c
new file mode 100644
index 0000000..3b4ace4
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_notify.c
@@ -0,0 +1,52 @@
+/**
+ * @file
+ * @brief mq_notify() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ struct sigevent sevp;
+ const char *q_name;
+ int result;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ sevp.sigev_notify = SIGEV_SIGNAL;
+ sevp.sigev_signo = SIGUSR1;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ result = mq_notify( mqdes, &sevp );
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_open.c b/testsuites/psxtests/psxhdrs/mqueue/mq_open.c
new file mode 100644
index 0000000..963a8a1
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_open.c
@@ -0,0 +1,51 @@
+/**
+ * @file
+ * @brief mq_open() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int result = 1;
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ const char *q_name;
+ result = 0;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ (void) mqdes;
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_receive.c b/testsuites/psxtests/psxhdrs/mqueue/mq_receive.c
new file mode 100644
index 0000000..b6c4c2b
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_receive.c
@@ -0,0 +1,52 @@
+/**
+ * @file
+ * @brief mq_receive() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ const char *q_name;
+ int message[MQ_MAXMSG];
+ unsigned int msg_prio;
+ int result;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ msg_prio = 1;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ result = mq_receive( mqdes, (char *)message, MQ_MSGSIZE, &msg_prio );
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_send.c b/testsuites/psxtests/psxhdrs/mqueue/mq_send.c
new file mode 100644
index 0000000..a2f457c
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_send.c
@@ -0,0 +1,53 @@
+/**
+ * @file
+ * @brief mq_send() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ const char *q_name;
+ int msg_ptr;
+ unsigned int msg_prio;
+ int result;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ msg_prio = 1;
+ msg_ptr = 9;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ result = mq_send( mqdes, (const char *)&msg_ptr, MQ_MSGSIZE, msg_prio );
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_setattr.c b/testsuites/psxtests/psxhdrs/mqueue/mq_setattr.c
new file mode 100644
index 0000000..b97abaa
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_setattr.c
@@ -0,0 +1,50 @@
+/**
+ * @file
+ * @brief mq_setattr() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ struct mq_attr *omqstat = NULL;
+ const char *q_name;
+ int result;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ result = mq_setattr( mqdes, &mqstat, omqstat );
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_timedreceive.c b/testsuites/psxtests/psxhdrs/mqueue/mq_timedreceive.c
new file mode 100644
index 0000000..7eee364
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_timedreceive.c
@@ -0,0 +1,57 @@
+/**
+ * @file
+ * @brief mq_timedreceive() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <time.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ const char *q_name;
+ int message[MQ_MAXMSG];
+ struct timespec abs_timeout;
+ unsigned int msg_prio;
+ int result;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ abs_timeout.tv_sec = 0;
+ abs_timeout.tv_nsec = 0;
+ msg_prio = 1;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ result = mq_timedreceive(
+ mqdes, (char *)message, MQ_MSGSIZE, &msg_prio, &abs_timeout );
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_timedsend.c b/testsuites/psxtests/psxhdrs/mqueue/mq_timedsend.c
new file mode 100644
index 0000000..6e059ee
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_timedsend.c
@@ -0,0 +1,58 @@
+/**
+ * @file
+ * @brief mq_timedsend() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <fcntl.h>
+ #include <time.h>
+ #include <mqueue.h>
+
+ int test( void );
+
+ #define MQ_MAXMSG 1
+ #define MQ_MSGSIZE sizeof(int)
+
+ int test( void )
+ {
+ mqd_t mqdes;
+ struct mq_attr mqstat;
+ const char *q_name;
+ struct timespec abs_timeout;
+ unsigned int msg_prio;
+ int msg_ptr;
+ int result;
+
+ mqstat.mq_maxmsg = MQ_MAXMSG;
+ mqstat.mq_msgsize = MQ_MSGSIZE;
+ abs_timeout.tv_sec = 0;
+ abs_timeout.tv_nsec = 1;
+ msg_ptr = 5;
+ msg_prio = 1;
+ q_name = "queue";
+
+ mqdes = mq_open( q_name, O_CREAT | O_RDWR, 0x777, &mqstat );
+ result = mq_timedsend(
+ mqdes, (const char *)&msg_ptr, MQ_MSGSIZE, msg_prio, &abs_timeout);
+
+ return result;
+ }
diff --git a/testsuites/psxtests/psxhdrs/mqueue/mq_unlink.c b/testsuites/psxtests/psxhdrs/mqueue/mq_unlink.c
new file mode 100644
index 0000000..7b651d7
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/mqueue/mq_unlink.c
@@ -0,0 +1,39 @@
+/**
+ * @file
+ * @brief mq_unlink() API Conformance Test
+ */
+
+ /*
+ * COPYRIGHT (c) 2018.
+ * Himanshu Sekhar Nayak
+ *
+ * Permission to use, copy, modify, and/or distribute this software
+ * for any purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+ #endif
+
+ #include <mqueue.h>
+
+ int test( void );
+
+ int test( void )
+ {
+ const char *q_name;
+ int result;
+
+ q_name = "queue";
+ result = mq_unlink( q_name );
+
+ return result;
+ }
More information about the vc
mailing list