put back the TIMEVAL_TO_TIMESPEC and timersub macros for Linux

--HG--
extra : convert_revision : 8036b55441ef217824185b87697c3d68c849fe7a
diff --git a/scpmisc.h b/scpmisc.h
index c829347..7d0b326 100644
--- a/scpmisc.h
+++ b/scpmisc.h
@@ -46,3 +46,24 @@
 char *ssh_get_progname(char *);
 void fatal(char* fmt,...);
 void sanitise_stdfd(void);
+
+/* Required for non-BSD platforms, from OpenSSH's defines.h */
+#ifndef timersub
+#define timersub(a, b, result)                  \
+   do {                             \
+      (result)->tv_sec = (a)->tv_sec - (b)->tv_sec;     \
+      (result)->tv_usec = (a)->tv_usec - (b)->tv_usec;      \
+      if ((result)->tv_usec < 0) {              \
+     --(result)->tv_sec;                    \
+     (result)->tv_usec += 1000000;              \
+      }                             \
+   } while (0)
+#endif
+
+#ifndef TIMEVAL_TO_TIMESPEC
+#define TIMEVAL_TO_TIMESPEC(tv, ts) {                   \
+    (ts)->tv_sec = (tv)->tv_sec;                    \
+    (ts)->tv_nsec = (tv)->tv_usec * 1000;               \
+}
+#endif
+