int my_handler(unsigned int fifo)
{
struct my_msg_struct msg;
int err;
int handler_fd, rt_fd;
handler_fd = open("/dev/rtf0", O_NONBLOCK);
while ((err = read(handler_fd, &msg, sizeof(msg)))
== sizeof(msg)) {
char dest[10];
sprintf(dest,"/dev/rtf%d",msg.task+1);
rt_fd = open(dest, O_NONBLOCK);
write(rt_fd, &msg, sizeof(msg));
close(rt_fd);
}
close(handler_fd);
if (err < 0)
rtl_printf("Error getting data in handler,
%d\n",err);
return 0;
}