Index: sigma_dut/inc/wfa_miscs.h
===================================================================
--- sigma_dut.orig/inc/wfa_miscs.h
+++ sigma_dut/inc/wfa_miscs.h
@@ -23,11 +23,46 @@
 extern int isString(char *);
 extern int isNumber(char *);
 extern int isIpV4Addr(char *);
-extern inline double wfa_timeval2double(struct timeval *tval);
-extern inline void wfa_double2timeval(struct timeval *tval, double dval);
-extern inline double wfa_ftime_diff(struct timeval *t1, struct timeval *t2);
 extern int wfa_itime_diff(struct timeval *t1, struct timeval *t2);
-extern inline void int2BuffBigEndian(int val, char *buf);
-extern inline int bigEndianBuff2Int(char *buff);
+
+inline double wfa_timeval2double(struct timeval *tval)
+{
+    return ((double) tval->tv_sec + (double) tval->tv_usec*1e-6);
+}
+
+inline void wfa_double2timeval(struct timeval *tval, double dval)
+{
+    tval->tv_sec = (long int) dval;
+    tval->tv_usec = (long int) ((dval - tval->tv_sec) * 1000000);
+}
+
+inline double wfa_ftime_diff(struct timeval *t1, struct timeval *t2)
+{
+    double dtime;
+
+    dtime = wfa_timeval2double(t2) - wfa_timeval2double(t1);
+    return dtime ;
+}
+inline void int2BuffBigEndian(int val, char *buf)
+{
+    char *littleEn = (char *)&val;
+
+    buf[0] = littleEn[3];
+    buf[1] = littleEn[2];
+    buf[2] = littleEn[1];
+    buf[3] = littleEn[0];
+}
+inline int bigEndianBuff2Int(char *buff)
+{
+    int val;
+    char *strval = (char *)&val;
+
+    strval[0] = buff[3];
+    strval[1] = buff[2];
+    strval[2] = buff[1];
+    strval[3] = buff[0];
+
+    return val;
+}
 
 #endif
