|
@@ -5,6 +5,8 @@
|
|
|
#include <linux/msg.h>
|
|
|
#include <fcntl.h>
|
|
|
|
|
|
+#include "../kselftest.h"
|
|
|
+
|
|
|
#define MAX_MSG_SIZE 32
|
|
|
|
|
|
struct msg1 {
|
|
@@ -195,58 +197,58 @@ int main(int argc, char **argv)
|
|
|
|
|
|
if (getuid() != 0) {
|
|
|
printf("Please run the test as root - Exiting.\n");
|
|
|
- exit(1);
|
|
|
+ return ksft_exit_fail();
|
|
|
}
|
|
|
|
|
|
msgque.key = ftok(argv[0], 822155650);
|
|
|
if (msgque.key == -1) {
|
|
|
- printf("Can't make key\n");
|
|
|
- return -errno;
|
|
|
+ printf("Can't make key: %d\n", -errno);
|
|
|
+ return ksft_exit_fail();
|
|
|
}
|
|
|
|
|
|
msgque.msq_id = msgget(msgque.key, IPC_CREAT | IPC_EXCL | 0666);
|
|
|
if (msgque.msq_id == -1) {
|
|
|
err = -errno;
|
|
|
- printf("Can't create queue\n");
|
|
|
+ printf("Can't create queue: %d\n", err);
|
|
|
goto err_out;
|
|
|
}
|
|
|
|
|
|
err = fill_msgque(&msgque);
|
|
|
if (err) {
|
|
|
- printf("Failed to fill queue\n");
|
|
|
+ printf("Failed to fill queue: %d\n", err);
|
|
|
goto err_destroy;
|
|
|
}
|
|
|
|
|
|
err = dump_queue(&msgque);
|
|
|
if (err) {
|
|
|
- printf("Failed to dump queue\n");
|
|
|
+ printf("Failed to dump queue: %d\n", err);
|
|
|
goto err_destroy;
|
|
|
}
|
|
|
|
|
|
err = check_and_destroy_queue(&msgque);
|
|
|
if (err) {
|
|
|
- printf("Failed to check and destroy queue\n");
|
|
|
+ printf("Failed to check and destroy queue: %d\n", err);
|
|
|
goto err_out;
|
|
|
}
|
|
|
|
|
|
err = restore_queue(&msgque);
|
|
|
if (err) {
|
|
|
- printf("Failed to restore queue\n");
|
|
|
+ printf("Failed to restore queue: %d\n", err);
|
|
|
goto err_destroy;
|
|
|
}
|
|
|
|
|
|
err = check_and_destroy_queue(&msgque);
|
|
|
if (err) {
|
|
|
- printf("Failed to test queue\n");
|
|
|
+ printf("Failed to test queue: %d\n", err);
|
|
|
goto err_out;
|
|
|
}
|
|
|
- return 0;
|
|
|
+ return ksft_exit_pass();
|
|
|
|
|
|
err_destroy:
|
|
|
if (msgctl(msgque.msq_id, IPC_RMID, 0)) {
|
|
|
printf("Failed to destroy queue: %d\n", -errno);
|
|
|
- return -errno;
|
|
|
+ return ksft_exit_fail();
|
|
|
}
|
|
|
err_out:
|
|
|
- return err;
|
|
|
+ return ksft_exit_fail();
|
|
|
}
|