MRTDump: check return value at writing dump into file

This commit is contained in:
Pavel Tvrdik
2016-05-03 09:25:37 +02:00
parent 9d4bf7cf61
commit e868b1c3d7
+4 -3
View File
@@ -323,7 +323,7 @@ mrt_dump_message_proto(struct proto *p, u16 type, u16 subtype, byte *buf, u32 le
}
void
mrt_dump_message(int file_descriptor, u16 type, u16 subtype, byte *buf, u32 len)
mrt_dump_message(int fd, u16 type, u16 subtype, byte *buf, u32 len)
{
/* Prepare header */
put_u32(buf+0, now_real);
@@ -331,6 +331,7 @@ mrt_dump_message(int file_descriptor, u16 type, u16 subtype, byte *buf, u32 len)
put_u16(buf+6, subtype);
put_u32(buf+8, len - MRT_HDR_LENGTH);
if (file_descriptor >= 0)
write(file_descriptor, buf, len);
if (fd >= 0)
if (write(fd, buf, len) == -1)
log(L_ERR, "Writing into MRTDump file failed: %m"); /* TODO: name of file */
}