X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=netlink.h;h=93b556d477249c42bc1eec65ac64db275522957c;hb=4d9d6e20e19c1aaa0d138e70897d136b36d673c0;hp=ffefd8082ef67f2b662f5391b9baf628080c9e16;hpb=1caa23ff879cec7f8f36b32a987f0610291ef177;p=secnet.git diff --git a/netlink.h b/netlink.h index ffefd80..93b556d 100644 --- a/netlink.h +++ b/netlink.h @@ -1,3 +1,22 @@ +/* + * This file is part of secnet. + * See README for full list of copyright holders. + * + * secnet is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * secnet is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * version 3 along with secnet; if not, see + * https://www.gnu.org/licenses/gpl.html. + */ + #ifndef netlink_h #define netlink_h @@ -31,6 +50,10 @@ struct netlink_client { struct netlink_client *next; }; +/* options field in 'struct netlink_client' */ +#define OPT_SOFTROUTE 1 +#define OPT_ALLOWROUTE 2 + typedef bool_t netlink_route_fn(void *cst, struct netlink_client *routes); /* Netlink provides one function to the device driver, to call to deliver @@ -41,11 +64,10 @@ struct netlink { closure_t cl; void *dst; /* Pointer to host interface state */ cstring_t name; - int32_t max_start_pad; - int32_t max_end_pad; struct ipset *networks; /* Local networks */ struct subnet_list *subnets; /* Same as networks, for display */ struct ipset *remote_networks; /* Allowable remote networks */ + uint32_t local_address; /* host interface address */ uint32_t secnet_address; /* our own address, or the address of the other end of a point-to-point link */ bool_t ptp;