diff options
author | julian <julian@FreeBSD.org> | 2000-12-18 20:03:32 +0000 |
---|---|---|
committer | julian <julian@FreeBSD.org> | 2000-12-18 20:03:32 +0000 |
commit | 0c949560a12dd18943b66fe09bd06d3c34e5cf7a (patch) | |
tree | 5466b04ac515e8d01f9b135b6c119744a1138d82 /sys/netgraph/netgraph.h | |
parent | e6bd476191c5b338634a02b0a6de56aa7f23cf37 (diff) | |
download | FreeBSD-src-0c949560a12dd18943b66fe09bd06d3c34e5cf7a.zip FreeBSD-src-0c949560a12dd18943b66fe09bd06d3c34e5cf7a.tar.gz |
Divorce the kernel binary ABI version number from the message
format version number. (userland programs should not need to be
recompiled when the netgraph kernel internal ABI is changed.
Also fix modules that don;t handle the fact that a caller may not supply
a return message pointer. (benign at the moment because the calling code
checks, but that will change)
Diffstat (limited to 'sys/netgraph/netgraph.h')
-rw-r--r-- | sys/netgraph/netgraph.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/netgraph/netgraph.h b/sys/netgraph/netgraph.h index 48fb4f5..56cf7d6f 100644 --- a/sys/netgraph/netgraph.h +++ b/sys/netgraph/netgraph.h @@ -172,7 +172,7 @@ struct ng_cmdlist { */ struct ng_type { - u_int32_t version; /* must equal NG_VERSION */ + u_int32_t version; /* must equal NG_API_VERSION */ const char *name; /* Unique type name */ modeventhand_t mod_event; /* Module event handler (optional) */ ng_constructor_t *constructor; /* Node constructor */ @@ -191,6 +191,13 @@ struct ng_type { int refs; /* number of instances */ }; +/* + * This defines the in-kernel binary interface version. + * It is possible to change this but leave the external message + * API the same. Each type also has it's own cookies for versioning as well. + */ +#define NG_ABI_VERSION 5 + /* Send data packet with meta-data */ #define NG_SEND_DATA(err, hook, m, meta) \ do { \ |