Merge branch 'master' into next
[paraslash.git] / udp_recv.c
index 759caa3..f978298 100644 (file)
@@ -5,7 +5,9 @@
  */
 /** \file udp_recv.c Paraslash's udp receiver */
 
+#include <regex.h>
 #include <dirent.h>
+#include <sys/socket.h>
 #include <net/if.h>
 
 #include "para.h"
@@ -82,6 +84,9 @@ static void udp_recv_post_select(__a_unused struct sched *s, struct task *t)
        if (!ret)
                return;
        packet_size = ret;
+       if (packet_size >= FEC_EOF_PACKET_LEN)
+               if (!memcmp(tmpbuf, FEC_EOF_PACKET, FEC_EOF_PACKET_LEN))
+                       return;
        t->error = add_rn_output(rn, tmpbuf, packet_size);
        if (t->error < 0)
                return;
@@ -234,4 +239,5 @@ void udp_recv_init(struct receiver *r)
                .short_help = udp_recv_args_info_help,
                .detailed_help = udp_recv_args_info_detailed_help
        };
+       udp_recv_cmdline_parser_free(&dummy);
 }