1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build ignore
6
7package route
8
9/*
10#include <sys/socket.h>
11#include <sys/sysctl.h>
12
13#include <net/if.h>
14#include <net/if_dl.h>
15#include <net/route.h>
16
17#include <netinet/in.h>
18*/
19import "C"
20
21const (
22	sysAF_UNSPEC = C.AF_UNSPEC
23	sysAF_INET   = C.AF_INET
24	sysAF_ROUTE  = C.AF_ROUTE
25	sysAF_LINK   = C.AF_LINK
26	sysAF_INET6  = C.AF_INET6
27
28	sysSOCK_RAW = C.SOCK_RAW
29
30	sysNET_RT_DUMP   = C.NET_RT_DUMP
31	sysNET_RT_FLAGS  = C.NET_RT_FLAGS
32	sysNET_RT_IFLIST = C.NET_RT_IFLIST
33	sysNET_RT_MAXID  = C.NET_RT_MAXID
34)
35
36const (
37	sysCTL_MAXNAME = C.CTL_MAXNAME
38
39	sysCTL_UNSPEC   = C.CTL_UNSPEC
40	sysCTL_KERN     = C.CTL_KERN
41	sysCTL_VM       = C.CTL_VM
42	sysCTL_VFS      = C.CTL_VFS
43	sysCTL_NET      = C.CTL_NET
44	sysCTL_DEBUG    = C.CTL_DEBUG
45	sysCTL_HW       = C.CTL_HW
46	sysCTL_MACHDEP  = C.CTL_MACHDEP
47	sysCTL_USER     = C.CTL_USER
48	sysCTL_DDB      = C.CTL_DDB
49	sysCTL_PROC     = C.CTL_PROC
50	sysCTL_VENDOR   = C.CTL_VENDOR
51	sysCTL_EMUL     = C.CTL_EMUL
52	sysCTL_SECURITY = C.CTL_SECURITY
53	sysCTL_MAXID    = C.CTL_MAXID
54)
55
56const (
57	sysRTM_VERSION = C.RTM_VERSION
58
59	sysRTM_ADD        = C.RTM_ADD
60	sysRTM_DELETE     = C.RTM_DELETE
61	sysRTM_CHANGE     = C.RTM_CHANGE
62	sysRTM_GET        = C.RTM_GET
63	sysRTM_LOSING     = C.RTM_LOSING
64	sysRTM_REDIRECT   = C.RTM_REDIRECT
65	sysRTM_MISS       = C.RTM_MISS
66	sysRTM_LOCK       = C.RTM_LOCK
67	sysRTM_OLDADD     = C.RTM_OLDADD
68	sysRTM_OLDDEL     = C.RTM_OLDDEL
69	sysRTM_RESOLVE    = C.RTM_RESOLVE
70	sysRTM_NEWADDR    = C.RTM_NEWADDR
71	sysRTM_DELADDR    = C.RTM_DELADDR
72	sysRTM_IFANNOUNCE = C.RTM_IFANNOUNCE
73	sysRTM_IEEE80211  = C.RTM_IEEE80211
74	sysRTM_SETGATE    = C.RTM_SETGATE
75	sysRTM_LLINFO_UPD = C.RTM_LLINFO_UPD
76	sysRTM_IFINFO     = C.RTM_IFINFO
77	sysRTM_CHGADDR    = C.RTM_CHGADDR
78
79	sysRTA_DST     = C.RTA_DST
80	sysRTA_GATEWAY = C.RTA_GATEWAY
81	sysRTA_NETMASK = C.RTA_NETMASK
82	sysRTA_GENMASK = C.RTA_GENMASK
83	sysRTA_IFP     = C.RTA_IFP
84	sysRTA_IFA     = C.RTA_IFA
85	sysRTA_AUTHOR  = C.RTA_AUTHOR
86	sysRTA_BRD     = C.RTA_BRD
87	sysRTA_TAG     = C.RTA_TAG
88
89	sysRTAX_DST     = C.RTAX_DST
90	sysRTAX_GATEWAY = C.RTAX_GATEWAY
91	sysRTAX_NETMASK = C.RTAX_NETMASK
92	sysRTAX_GENMASK = C.RTAX_GENMASK
93	sysRTAX_IFP     = C.RTAX_IFP
94	sysRTAX_IFA     = C.RTAX_IFA
95	sysRTAX_AUTHOR  = C.RTAX_AUTHOR
96	sysRTAX_BRD     = C.RTAX_BRD
97	sysRTAX_TAG     = C.RTAX_TAG
98	sysRTAX_MAX     = C.RTAX_MAX
99)
100
101const (
102	sizeofIfMsghdrNetBSD7         = C.sizeof_struct_if_msghdr
103	sizeofIfaMsghdrNetBSD7        = C.sizeof_struct_ifa_msghdr
104	sizeofIfAnnouncemsghdrNetBSD7 = C.sizeof_struct_if_announcemsghdr
105
106	sizeofRtMsghdrNetBSD7  = C.sizeof_struct_rt_msghdr
107	sizeofRtMetricsNetBSD7 = C.sizeof_struct_rt_metrics
108
109	sizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage
110	sizeofSockaddrInet    = C.sizeof_struct_sockaddr_in
111	sizeofSockaddrInet6   = C.sizeof_struct_sockaddr_in6
112)
113