2 * Licensed under the Apache License, Version 2.0 (the "License");
3 * you may not use this file except in compliance with the License.
4 * You may obtain a copy of the License at:
6 * http://www.apache.org/licenses/LICENSE-2.0
8 * Unless required by applicable law or agreed to in writing, software
9 * distributed under the License is distributed on an "AS IS" BASIS,
10 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 * See the License for the specific language governing permissions and
12 * limitations under the License.
19 #include "lib/packets.h"
22 ovs_be32 addr; /* 192.168.10.123 */
23 ovs_be32 mask; /* 255.255.255.0 */
24 ovs_be32 network; /* 192.168.10.0 */
25 unsigned int plen; /* CIDR Prefix: 24. */
27 char *addr_s; /* "192.168.10.123" */
28 char *network_s; /* "192.168.10.0" */
29 char *bcast_s; /* "192.168.10.255" */
33 struct in6_addr addr; /* fc00::1 */
34 struct in6_addr mask; /* ffff:ffff:ffff:ffff:: */
35 struct in6_addr network; /* fc00:: */
36 unsigned int plen; /* CIDR Prefix: 64 */
38 char *addr_s; /* "fc00::1" */
39 char *network_s; /* "fc00::" */
42 struct lport_addresses {
46 struct ipv4_netaddr *ipv4_addrs;
48 struct ipv6_netaddr *ipv6_addrs;
52 bool extract_lsp_addresses(char *address, struct lport_addresses *);
53 void destroy_lport_addresses(struct lport_addresses *);
55 char *alloc_nat_zone_key(const char *key, const char *type);