mirror of git://sourceware.org/git/glibc.git
This test implements following logic:
1) Create POSIX message queue.
Register a notification with mq_notify (using NULL attributes).
Then immediately unregister the notification with mq_notify.
Helper thread in a vulnerable version of glibc
should cause NULL pointer dereference after these steps.
2) Once again, register the same notification.
Try to send a dummy message.
Test is considered successfulif the dummy message
is successfully received by the callback function.
Signed-off-by: Nikita Popov <npv1310@gmail.com>
Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
(cherry picked from commit
|
||
|---|---|---|
| .. | ||
| bits | ||
| Depend | ||
| Makefile | ||
| Versions | ||
| aio.h | ||
| aio_cancel.c | ||
| aio_error.c | ||
| aio_fsync.c | ||
| aio_misc.c | ||
| aio_notify.c | ||
| aio_read.c | ||
| aio_read64.c | ||
| aio_return.c | ||
| aio_sigqueue.c | ||
| aio_suspend.c | ||
| aio_write.c | ||
| aio_write64.c | ||
| librt-compat.c | ||
| lio_listio-common.c | ||
| lio_listio.c | ||
| lio_listio64.c | ||
| mq_close.c | ||
| mq_getattr.c | ||
| mq_notify.c | ||
| mq_open.c | ||
| mq_receive.c | ||
| mq_send.c | ||
| mq_setattr.c | ||
| mq_timedreceive.c | ||
| mq_timedsend.c | ||
| mq_unlink.c | ||
| mqueue.h | ||
| shm_open.c | ||
| shm_unlink.c | ||
| timer_create.c | ||
| timer_delete.c | ||
| timer_getoverr.c | ||
| timer_gettime.c | ||
| timer_settime.c | ||
| tst-aio.c | ||
| tst-aio2.c | ||
| tst-aio3.c | ||
| tst-aio4.c | ||
| tst-aio5.c | ||
| tst-aio6-time64.c | ||
| tst-aio6.c | ||
| tst-aio7.c | ||
| tst-aio8.c | ||
| tst-aio9.c | ||
| tst-aio10.c | ||
| tst-aio64.c | ||
| tst-bz28213.c | ||
| tst-cpuclock2-time64.c | ||
| tst-cpuclock2.c | ||
| tst-cputimer1.c | ||
| tst-cputimer2.c | ||
| tst-cputimer3.c | ||
| tst-mqueue.h | ||
| tst-mqueue1-time64.c | ||
| tst-mqueue1.c | ||
| tst-mqueue2-time64.c | ||
| tst-mqueue2.c | ||
| tst-mqueue3.c | ||
| tst-mqueue4-time64.c | ||
| tst-mqueue4.c | ||
| tst-mqueue5.c | ||
| tst-mqueue6.c | ||
| tst-mqueue7.c | ||
| tst-mqueue8-time64.c | ||
| tst-mqueue8.c | ||
| tst-mqueue9.c | ||
| tst-mqueue10-time64.c | ||
| tst-mqueue10.c | ||
| tst-shm-cancel.c | ||
| tst-shm.c | ||
| tst-timer-sigmask.c | ||
| tst-timer.c | ||
| tst-timer2.c | ||
| tst-timer3.c | ||
| tst-timer4-time64.c | ||
| tst-timer4.c | ||
| tst-timer5.c | ||