*/
RCSIDH(message_h, "$Id$")
+#include <freeradius-devel/util/time.h>
#include <freeradius-devel/util/ring_buffer.h>
#ifdef __cplusplus
typedef struct fr_message_t {
fr_message_status_t status; //!< free, used, done, etc.
+ fr_time_t when; //!< when this message was sent
fr_ring_buffer_t *rb; //!< pointer to the ring buffer
uint8_t *data; //!< pointer to the data in the ring buffer
size_t data_size; //!< size of the data in the ring buffer
# include <mach/mach_time.h>
#endif
-#define NANOSEC (1000000000)
-#define USEC (1000000)
-
-
static struct timeval tm_started = { 0, 0};
#ifdef HAVE_CLOCK_GETTIME
fr_time_t when; //!< last time we changed a field
fr_time_t start; //!< time this request started being processed
fr_time_t end; //!< when we stopped processing this request
+ fr_time_t predicted; //!< predicted processing time for this request
fr_time_t yielded; //!< time this request yielded
fr_time_t resumed; //!< time this request last resumed;
fr_time_t running; //!< total time spent running
fr_time_t waiting; //!< total time spent waiting
} fr_time_tracking_t;
+#define NANOSEC (1000000000)
+#define USEC (1000000)
+
int fr_time_start(void);
fr_time_t fr_time(void);
void fr_time_to_timeval(struct timeval *tv, fr_time_t when) CC_HINT(nonnull);