int main(int argc, char **argv)
{
  Message msg_in("in"), msg_out("out"), msg_empty, msg_test(msg_out);
  Folder fld_in, fld_out;

  msg_in.save(fld_in);
  msg_out.save(fld_out);
}
Exemple #2
0
void
com_pager (int msgnum)
{
        struct qtmsg *qt_msg;

        if (!(qt_msg = msg_in(qt_list.common, msgnum))) {
                impossible("com_pager: message %d not found.", msgnum);
                return;
        }

        (void) dlb_fseek(msg_file, qt_msg->offset, SEEK_SET);
        if (qt_msg->delivery == 'p') deliver_by_pline(qt_msg);
        else if (msgnum == 1) deliver_by_window(qt_msg, NHW_MENU);
        else                 deliver_by_window(qt_msg, NHW_TEXT);
        return;
}
void
qt_pager(int msgnum)
{
    struct qtmsg *qt_msg;

    if (!(qt_msg = msg_in(qt_list.chrole, msgnum))) {
        impossible("qt_pager: message %d not found.", msgnum);
        return;
    }

    dlb_fseek(msg_file, qt_msg->offset, SEEK_SET);
    if (qt_msg->delivery == 'p')
        deliver_by_pline(qt_msg);
    else
        deliver_by_window(qt_msg);
    return;
}
Exemple #4
0
/* buf may be multi 32-bytes msgs.
 */
ssize_t rcv_msg(int fd, void *buf, size_t count)
{
	struct msg in_msg;
	int msg_len = 0, res = 0;

	do {
		res = msg_in(fd, &in_msg);
		if (res < 0)
			return -1;

		if ((count - msg_len - res + 4) < 0)
			return -1;	/* buffer will overflow */
		memcpy((unsigned char *)buf + msg_len, in_msg.value + 1, res - 4);
		msg_len += (res - 4);
	} while (in_msg.data_status == MULTI_MSG);

	return msg_len;
}