+
+void syslog(int priority, char *fmt, ...)
+{
+ /* Mapping syslog prio -> tinc prio */
+ const int priorities[] = { TLOG_CRIT, TLOG_CRIT, TLOG_CRIT, TLOG_ERR,
+ TLOG_NOTICE, TLOG_NOTICE, TLOG_INFO, TLOG_DEBUG };
+ avl_node_t *avlnode;
+ va_list args;
+
+ va_start(args, fmt);
+ for(avlnode = log_hooks_tree->head; avlnode; avlnode = avlnode->next)
+ {
+ assert(avlnode->data);
+ ((log_function_t*)(avlnode->data))(0, priorities[priority], fmt, args);
+ }
+ va_end(args);
+}