quackerd
f655e5f5cb
Summary: + UDP and PTP over UDP & hw timestamping + Khat protocol + Rat protocol + Nanosecond timestamping + Load generation + NUMA detection library + Test scripts + Server & Client multi threading & tx/rx queues + RSS on all packets w/ randomized L4 ports Test Plan: by hand Reviewers: ali Reviewed By: ali Differential Revision: https://review.rcs.uwaterloo.ca/D408
47 lines
613 B
C
47 lines
613 B
C
#include "ntr.h"
|
|
|
|
static int ntr_log_levels[NTR_DEP_MAX] = { NTR_LEVEL_DEFAULT };
|
|
static FILE *ntr_out;
|
|
|
|
void
|
|
ntr_init()
|
|
{
|
|
ntr_out = stdout;
|
|
}
|
|
|
|
void
|
|
ntr(int dep, int level, const char *fmt, ...)
|
|
{
|
|
va_list vl;
|
|
va_start(vl, fmt);
|
|
if (dep < NTR_DEP_MAX && level <= ntr_log_levels[dep]) {
|
|
vfprintf(ntr_out, fmt, vl);
|
|
}
|
|
va_end(vl);
|
|
}
|
|
|
|
void
|
|
ntr_set_level(int dep, int level)
|
|
{
|
|
if (dep < NTR_DEP_MAX) {
|
|
ntr_log_levels[dep] = level;
|
|
}
|
|
}
|
|
|
|
void
|
|
ntr_set_output(FILE *f)
|
|
{
|
|
if (f != NULL) {
|
|
ntr_out = f;
|
|
}
|
|
}
|
|
|
|
int
|
|
ntr_get_level(int dep)
|
|
{
|
|
if (dep < NTR_DEP_MAX) {
|
|
return ntr_log_levels[dep];
|
|
}
|
|
return 0;
|
|
}
|