1 /* $OpenBSD: kern_compat.h,v 1.4 2016/06/07 07:57:59 mpi Exp $ */ 2 3 #ifndef _KERN_COMPAT_H_ 4 #define _KERN_COMPAT_H_ 5 6 #include <sys/socket.h> 7 #include <sys/domain.h> 8 #include <sys/queue.h> 9 #include <sys/mutex.h> 10 #include <sys/task.h> 11 #include <arpa/inet.h> 12 13 #include <assert.h> 14 #include <err.h> 15 #include <errno.h> 16 #include <stdbool.h> 17 #include <stdio.h> 18 #include <stdlib.h> 19 #include <string.h> 20 21 #include "srp_compat.h" 22 23 #define DIAGNOSTIC 24 #define INET 25 #define INET6 26 27 #define KASSERT(x) assert(x) 28 #define KERNEL_ASSERT_LOCKED() /* nothing */ 29 #define KERNEL_LOCK() /* nothing */ 30 #define KERNEL_UNLOCK() /* nothing */ 31 32 #define panic(x...) errx(1, x) 33 34 #define malloc(size, bucket, flag) calloc(1, size) 35 #define mallocarray(nelems, size, bucket, flag) calloc(nelems, size) 36 #define free(x, bucket, size) free(x) 37 38 struct pool { 39 size_t pr_size; 40 }; 41 42 #define pool_init(a, b, c, d, e, f, g) do { (a)->pr_size = (b); } while (0) 43 #define pool_setipl(pp, ipl) /* nothing */ 44 #define pool_get(pp, flags) malloc((pp)->pr_size, 0, 0) 45 #define pool_put(pp, rp) free((rp), 0, 0) 46 47 #define log(lvl, x...) fprintf(stderr, x) 48 49 #define min(a, b) (a < b ? a : b) 50 #define max(a, b) (a < b ? b : a) 51 52 #ifndef nitems 53 #define nitems(_a) (sizeof((_a)) / sizeof((_a)[0])) 54 #endif 55 56 #define rtref(_rt) ((_rt)->rt_refcnt++) 57 #define rtfree(_rt) (assert(--(_rt)->rt_refcnt >= 0)) 58 59 #define mtx_enter(_mtx) /* nothing */ 60 #define mtx_leave(_mtx) /* nothing */ 61 62 #define task_add(_tq, _t) ((_t)->t_func((_t)->t_arg)) 63 64 extern struct domain *domains[]; 65 66 #define IPL_SOFTNET 0 67 68 #endif /* _KERN_COMPAT_H_ */ 69