On 32-bit systems, it seems that some of the timespec definitions have changed with kernel 4.18. On the openSUSE builds, the following patch, released under an MIT license, was needed:

Index: VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c
===================================================================
--- VirtualBox-5.2.12.orig/src/VBox/Additions/linux/sharedfolders/utils.c
+++ VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c
@@ -50,7 +50,11 @@ static void sf_timespec_from_ftime(RTTIM
     RTTimeSpecSetNano(ts, t);
 }
 #else /* >= 2.6.0 */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 18, 0)
+static void sf_ftime_from_timespec(struct timespec64 *tv, RTTIMESPEC *ts)
+#else
 static void sf_ftime_from_timespec(struct timespec *tv, RTTIMESPEC *ts)
+#endif
 {
     int64_t t = RTTimeSpecGetNano(ts);
     int64_t nsec;
@@ -60,7 +64,11 @@ static void sf_ftime_from_timespec(struc
     tv->tv_nsec = nsec;
 }

+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 18, 0)
+static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec64 *tv)
+#else
 static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec *tv)
+#endif
 {
     int64_t t = (int64_t)tv->tv_nsec + (int64_t)tv->tv_sec * 1000000000;
     RTTimeSpecSetNano(ts, t);

_______________________________________________
vbox-dev mailing list
[email protected]
https://www.virtualbox.org/mailman/listinfo/vbox-dev

Reply via email to