RESOLVED FIXED 144953
[SOUP] Network Cache: NetworkProcess segfault when file system doesn't support xattrs
https://bugs.webkit.org/show_bug.cgi?id=144953
Summary [SOUP] Network Cache: NetworkProcess segfault when file system doesn't suppor...
Ting-Wei Lan
Reported 2015-05-13 09:53:35 PDT
tmpfs doesn't support user_xattr on Linux. Therefore, if an user have its ~/.cache/epiphany on tmpfs, setting xattr::birthtime fails. When WebKit tries to read the value back in Source/WebKit2/NetworkProcess/cache/NetworkCacheFileSystemPosix.h, it will pass a null pointer to g_ascii_strtoull. This can cause segfault in WebKitNetworkProcess.
Attachments
Patch (1.53 KB, patch)
2015-05-13 09:59 PDT, Carlos Garcia Campos
mrobinson: review+
Ting-Wei Lan
Comment 1 2015-05-13 09:57:48 PDT
This problem also causes WebKitNetworkProcess to segfault on FreeBSD because it doesn't support xattr. Fortunately, FreeBSD has st_birthtime field in struct stat, so we can reuse PLATFORM(COCOA) code in NetworkCacheFileSystemPosix.h.
Carlos Garcia Campos
Comment 2 2015-05-13 09:59:24 PDT
Carlos Garcia Campos
Comment 3 2015-05-13 10:02:48 PDT
(In reply to comment #1) > This problem also causes WebKitNetworkProcess to segfault on FreeBSD because > it doesn't support xattr. Fortunately, FreeBSD has st_birthtime field in > struct stat, so we can reuse PLATFORM(COCOA) code in > NetworkCacheFileSystemPosix.h. Cool, that's a different issue, though. Could you file another bug report for that?
Carlos Garcia Campos
Comment 4 2015-05-13 23:00:50 PDT
Ting-Wei Lan
Comment 5 2015-05-13 23:21:35 PDT
(In reply to comment #3) > (In reply to comment #1) > > This problem also causes WebKitNetworkProcess to segfault on FreeBSD because > > it doesn't support xattr. Fortunately, FreeBSD has st_birthtime field in > > struct stat, so we can reuse PLATFORM(COCOA) code in > > NetworkCacheFileSystemPosix.h. > > Cool, that's a different issue, though. Could you file another bug report > for that? https://bugs.webkit.org/show_bug.cgi?id=144989
Note You need to log in before you can comment on or make changes to this bug.