[vlc-devel] [PATCH] Possible buffer overflow in vlc_readdir (fixes #9676)
Iwao AVE!
harawata at gmail.com
Mon Jan 20 15:15:06 CET 2014
Hi,
As replacing readdir_r() with readdir() is harder than I thought, how
about increasing the buffer size as a workaround for __APPLE__
environment?
if (len == -1 || len < NAME_MAX)
len = NAME_MAX;
+#ifdef __APPLE__
+ /*
+ * The returned value is in characters instead of bytes.
+ * Each character could occupy 4 bytes in UTF-8.
+ */
+ len *= 4;
+#endif
len += sizeof (*ent) + 1 - sizeof (ent->d_name);
I understand there is nothing wrong with the current VLC
implementation and it's an ugly solution to say the least, but it
would be better than having a buffer overflow.
I will send a new patch email if it's worth considering.
Thank you!
Iwao
More information about the vlc-devel
mailing list