|
nsz |
d7c151 |
#include <mqueue.h>
|
|
nsz |
d7c151 |
#define T(t) (t*)0;
|
|
nsz |
d7c151 |
#define F(t,n) {t *y = &x.;;}
|
|
nsz |
d7c151 |
static void f()
|
|
nsz |
d7c151 |
{
|
|
nsz |
d7c151 |
T(mqd_t)
|
|
nsz |
d7c151 |
T(pthread_attr_t)
|
|
nsz |
d7c151 |
T(size_t)
|
|
nsz |
d7c151 |
T(ssize_t)
|
|
nsz |
d7c151 |
T(struct timespec)
|
|
nsz |
d7c151 |
T(struct sigevent)
|
|
nsz |
d7c151 |
{
|
|
nsz |
d7c151 |
struct mq_attr x;
|
|
nsz |
d7c151 |
F(long, mq_flags)
|
|
nsz |
d7c151 |
F(long, mq_maxmsg)
|
|
nsz |
d7c151 |
F(long, mq_msgsize)
|
|
nsz |
d7c151 |
F(long, mq_curmsgs)
|
|
nsz |
d7c151 |
}
|
|
nsz |
d7c151 |
int(*p_mq_close)(mqd_t) = mq_close;
|
|
nsz |
d7c151 |
int(*p_mq_getattr)(mqd_t,struct mq_attr*) = mq_getattr;
|
|
nsz |
d7c151 |
int(*p_mq_notify)(mqd_t,const struct sigevent*) = mq_notify;
|
|
nsz |
d7c151 |
mqd_t(*p_mq_open)(const char*,int,...) = mq_open;
|
|
nsz |
d7c151 |
ssize_t(*p_mq_receive)(mqd_t,char*,size_t,unsigned*) = mq_receive;
|
|
nsz |
d7c151 |
int(*p_mq_send)(mqd_t,const char*,size_t,unsigned) = mq_send;
|
|
nsz |
d7c151 |
int(*p_mq_setattr)(mqd_t,const struct mq_attr*restrict,struct mq_attr*restrict) = mq_setattr;
|
|
nsz |
d7c151 |
int(*p_mq_unlink)(const char*) = mq_unlink;
|
|
nsz |
d7c151 |
#include <time.h>
|
|
nsz |
d7c151 |
ssize_t(*p_mq_timedreceive)(mqd_t,char*restrict,size_t,unsigned*restrict,const struct timespec*restrict) = mq_timedreceive;
|
|
nsz |
d7c151 |
int(*p_mq_timedsend)(mqd_t,const char*,size_t,unsigned,const struct timespec*) = mq_timedsend;
|
|
nsz |
d7c151 |
}
|