Листинг 6.11. Функция mesg_recv, работающая с очередью сообщений System V
//svmsgcliserv/mesg_recv.с
1 #include "mesg.h"
2 ssize_t
3 mesg_recv(int id, struct mymesg *mptr)
4 {
5 ssize_t n;
6 n = msgrcv(id, &(mptr->mesg_type), MAXMESGDATA, mptr->mesg_type, 0);
7 mptr->mesg_len = n; /* количество возвращаемых данных */
8 return(n); /* –1 в случае ошибки, 0 – конец файла, иначе – >0 */
9 }