Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d5bd8213 authored by Jan Kara's avatar Jan Kara
Browse files

udf: Sanitize nanoseconds for time stamps



Reportedly some UDF filesystems are recorded with bogus subsecond values
resulting in nanoseconds being over 10^9. Sanitize nanoseconds in time
stamps when loading them from disk.

Reported-by: default avatarIan Turner <vectro@vectro.org>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent 1291a0d5
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -62,6 +62,11 @@ udf_disk_stamp_to_time(struct timespec *dest, struct timestamp src)
	dest->tv_sec -= offset * 60;
	dest->tv_nsec = 1000 * (src.centiseconds * 10000 +
			src.hundredsOfMicroseconds * 100 + src.microseconds);
	/*
	 * Sanitize nanosecond field since reportedly some filesystems are
	 * recorded with bogus sub-second values.
	 */
	dest->tv_nsec %= NSEC_PER_SEC;
	return dest;
}