unix: regenerate generic netlink controller constants

This adds support for generic netlink policy commands, and also regenerates the
constants using a shell one-liner for reproducibility in the future.

Change-Id: I868965c2a5abe2ff384e81223e03373465462f52
Reviewed-on: https://go-review.googlesource.com/c/sys/+/371654
Trust: Matt Layher <mdlayher@gmail.com>
Run-TryBot: Matt Layher <mdlayher@gmail.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
diff --git a/unix/linux/types.go b/unix/linux/types.go
index 1238146..e28a937 100644
--- a/unix/linux/types.go
+++ b/unix/linux/types.go
@@ -959,6 +959,8 @@
 
 type Genlmsghdr C.struct_genlmsghdr
 
+// Generated by:
+// $ perl -nlE '/^\s*(CTRL_\w+)/ && say "$1 = C.$1"' /usr/include/linux/genetlink.h
 const (
 	CTRL_CMD_UNSPEC            = C.CTRL_CMD_UNSPEC
 	CTRL_CMD_NEWFAMILY         = C.CTRL_CMD_NEWFAMILY
@@ -970,6 +972,7 @@
 	CTRL_CMD_NEWMCAST_GRP      = C.CTRL_CMD_NEWMCAST_GRP
 	CTRL_CMD_DELMCAST_GRP      = C.CTRL_CMD_DELMCAST_GRP
 	CTRL_CMD_GETMCAST_GRP      = C.CTRL_CMD_GETMCAST_GRP
+	CTRL_CMD_GETPOLICY         = C.CTRL_CMD_GETPOLICY
 	CTRL_ATTR_UNSPEC           = C.CTRL_ATTR_UNSPEC
 	CTRL_ATTR_FAMILY_ID        = C.CTRL_ATTR_FAMILY_ID
 	CTRL_ATTR_FAMILY_NAME      = C.CTRL_ATTR_FAMILY_NAME
@@ -978,12 +981,19 @@
 	CTRL_ATTR_MAXATTR          = C.CTRL_ATTR_MAXATTR
 	CTRL_ATTR_OPS              = C.CTRL_ATTR_OPS
 	CTRL_ATTR_MCAST_GROUPS     = C.CTRL_ATTR_MCAST_GROUPS
+	CTRL_ATTR_POLICY           = C.CTRL_ATTR_POLICY
+	CTRL_ATTR_OP_POLICY        = C.CTRL_ATTR_OP_POLICY
+	CTRL_ATTR_OP               = C.CTRL_ATTR_OP
 	CTRL_ATTR_OP_UNSPEC        = C.CTRL_ATTR_OP_UNSPEC
 	CTRL_ATTR_OP_ID            = C.CTRL_ATTR_OP_ID
 	CTRL_ATTR_OP_FLAGS         = C.CTRL_ATTR_OP_FLAGS
 	CTRL_ATTR_MCAST_GRP_UNSPEC = C.CTRL_ATTR_MCAST_GRP_UNSPEC
 	CTRL_ATTR_MCAST_GRP_NAME   = C.CTRL_ATTR_MCAST_GRP_NAME
 	CTRL_ATTR_MCAST_GRP_ID     = C.CTRL_ATTR_MCAST_GRP_ID
+	CTRL_ATTR_POLICY_UNSPEC    = C.CTRL_ATTR_POLICY_UNSPEC
+	CTRL_ATTR_POLICY_DO        = C.CTRL_ATTR_POLICY_DO
+	CTRL_ATTR_POLICY_DUMP      = C.CTRL_ATTR_POLICY_DUMP
+	CTRL_ATTR_POLICY_DUMP_MAX  = C.CTRL_ATTR_POLICY_DUMP_MAX
 )
 
 // CPU affinity
diff --git a/unix/ztypes_linux.go b/unix/ztypes_linux.go
index 37b5214..af18e4f 100644
--- a/unix/ztypes_linux.go
+++ b/unix/ztypes_linux.go
@@ -867,6 +867,7 @@
 	CTRL_CMD_NEWMCAST_GRP      = 0x7
 	CTRL_CMD_DELMCAST_GRP      = 0x8
 	CTRL_CMD_GETMCAST_GRP      = 0x9
+	CTRL_CMD_GETPOLICY         = 0xa
 	CTRL_ATTR_UNSPEC           = 0x0
 	CTRL_ATTR_FAMILY_ID        = 0x1
 	CTRL_ATTR_FAMILY_NAME      = 0x2
@@ -875,12 +876,19 @@
 	CTRL_ATTR_MAXATTR          = 0x5
 	CTRL_ATTR_OPS              = 0x6
 	CTRL_ATTR_MCAST_GROUPS     = 0x7
+	CTRL_ATTR_POLICY           = 0x8
+	CTRL_ATTR_OP_POLICY        = 0x9
+	CTRL_ATTR_OP               = 0xa
 	CTRL_ATTR_OP_UNSPEC        = 0x0
 	CTRL_ATTR_OP_ID            = 0x1
 	CTRL_ATTR_OP_FLAGS         = 0x2
 	CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
 	CTRL_ATTR_MCAST_GRP_NAME   = 0x1
 	CTRL_ATTR_MCAST_GRP_ID     = 0x2
+	CTRL_ATTR_POLICY_UNSPEC    = 0x0
+	CTRL_ATTR_POLICY_DO        = 0x1
+	CTRL_ATTR_POLICY_DUMP      = 0x2
+	CTRL_ATTR_POLICY_DUMP_MAX  = 0x2
 )
 
 const (